Files
renovate/lib/modules/manager/npm/index.ts
Jamie Tanna 5ffc308673 docs(manager): indicate where lockFileMaintenance runs external commands (#44914)
As found with recent changes to the Terraform manager, although we
generally have `lockFileMaintenance` being executed by an external
package manager being invoked by `exec(...)`, there are a few package
managers that do not do so.

To make it very clear how this happens, we can add a new field to the
Manager API, which will provide a means to document this.

Co-authored-by: Claude Sonnet 5 <jamie.tanna+claude-code@mend.io>
2026-07-28 11:44:22 +00:00

54 lines
2.0 KiB
TypeScript

import type { Category } from '../../../constants/index.ts';
import { GithubTagsDatasource } from '../../datasource/github-tags/index.ts';
import { NodeVersionDatasource } from '../../datasource/node-version/index.ts';
import { NpmDatasource } from '../../datasource/npm/index.ts';
export { updateArtifacts } from './artifacts.ts';
export { detectGlobalConfig } from './detect.ts';
export { extractAllPackageFiles } from './extract/index.ts';
export { getRangeStrategy } from './range.ts';
export {
bumpPackageVersion,
updateDependency,
updateLockedDependency,
} from './update/index.ts';
export const supportsLockFileMaintenance = true;
export const lockFileNames = [
'package-lock.json',
'pnpm-lock.yaml',
'yarn.lock',
];
export const lockFileMaintenanceIsDelegatedToPackageManager =
'Delegated to the underlying package manager CLI - `npm`, `pnpm`, or Yarn - depending on which lock file is present.';
export const displayName = 'npm';
export const url = 'https://docs.npmjs.com';
export const categories: Category[] = ['js'];
export const defaultConfig = {
managerFilePatterns: [
'/(^|/)package\\.json$/',
'/(^|/)pnpm-workspace\\.yaml$/',
'/(^|/)\\.yarnrc\\.yml$/',
],
digest: {
prBodyDefinitions: {
Change:
'{{#if displayFrom}}`{{{displayFrom}}}` → {{else}}{{#if currentValue}}`{{{currentValue}}}` → {{/if}}{{/if}}{{#if displayTo}}`{{{displayTo}}}`{{else}}`{{{newValue}}}`{{/if}}',
},
},
prBodyDefinitions: {
Change:
"[{{#if displayFrom}}`{{{displayFrom}}}` → {{else}}{{#if currentValue}}`{{{currentValue}}}` → {{/if}}{{/if}}{{#if displayTo}}`{{{displayTo}}}`{{else}}`{{{newValue}}}`{{/if}}]({{#if depName}}https://renovatebot.com/diffs/npm/{{replace '/' '%2f' depName}}/{{{currentVersion}}}/{{{newVersion}}}{{/if}})",
},
};
export const supportedDatasources = [
GithubTagsDatasource.id,
NpmDatasource.id,
NodeVersionDatasource.id,
];
export { knownDepTypes, supportsDynamicDepTypesNote } from './dep-types.ts';