renovate 42.96.5 → 42.97.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/defaults.d.ts +8 -0
- package/dist/config/defaults.js +3 -2
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/index.js +5 -5
- package/dist/config/index.js.map +1 -1
- package/dist/config/massage.js +2 -2
- package/dist/config/massage.js.map +1 -1
- package/dist/config/migration.js +5 -5
- package/dist/config/migration.js.map +1 -1
- package/dist/config/options/index.d.ts +7 -0
- package/dist/config/options/index.js +1 -1
- package/dist/config/options/index.js.map +1 -1
- package/dist/config/presets/gitlab/index.js +2 -2
- package/dist/config/presets/gitlab/index.js.map +1 -1
- package/dist/config/presets/index.js +22 -22
- package/dist/config/presets/index.js.map +1 -1
- package/dist/config/utils.d.ts +5 -0
- package/dist/config/utils.js +2 -2
- package/dist/config/utils.js.map +1 -1
- package/dist/config/validation.js +4 -4
- package/dist/config/validation.js.map +1 -1
- package/dist/config-validator.js +2 -2
- package/dist/config-validator.js.map +1 -1
- package/dist/instrumentation/reporting.js +3 -3
- package/dist/instrumentation/reporting.js.map +1 -1
- package/dist/modules/datasource/deno/index.js +5 -5
- package/dist/modules/datasource/deno/index.js.map +1 -1
- package/dist/modules/datasource/docker/dockerhub-cache.js +3 -3
- package/dist/modules/datasource/docker/dockerhub-cache.js.map +1 -1
- package/dist/modules/datasource/gitlab-packages/index.js +2 -2
- package/dist/modules/datasource/gitlab-packages/index.js.map +1 -1
- package/dist/modules/datasource/gitlab-releases/index.js +2 -2
- package/dist/modules/datasource/gitlab-releases/index.js.map +1 -1
- package/dist/modules/datasource/gitlab-tags/index.js +2 -2
- package/dist/modules/datasource/gitlab-tags/index.js.map +1 -1
- package/dist/modules/datasource/index.js +3 -3
- package/dist/modules/datasource/index.js.map +1 -1
- package/dist/modules/datasource/maven/index.js +6 -6
- package/dist/modules/datasource/maven/index.js.map +1 -1
- package/dist/modules/datasource/maven/util.js +5 -5
- package/dist/modules/datasource/maven/util.js.map +1 -1
- package/dist/modules/datasource/nuget/v3.js +8 -8
- package/dist/modules/datasource/nuget/v3.js.map +1 -1
- package/dist/modules/datasource/rubygems/metadata-cache.js +3 -3
- package/dist/modules/datasource/rubygems/metadata-cache.js.map +1 -1
- package/dist/modules/datasource/sbt-package/index.js +15 -15
- package/dist/modules/datasource/sbt-package/index.js.map +1 -1
- package/dist/modules/manager/bazel/artifacts.js +5 -5
- package/dist/modules/manager/bazel/artifacts.js.map +1 -1
- package/dist/modules/manager/bundler/artifacts.js +2 -2
- package/dist/modules/manager/bundler/artifacts.js.map +1 -1
- package/dist/modules/manager/cocoapods/artifacts.js +2 -2
- package/dist/modules/manager/cocoapods/artifacts.js.map +1 -1
- package/dist/modules/manager/composer/artifacts.js +2 -2
- package/dist/modules/manager/composer/artifacts.js.map +1 -1
- package/dist/modules/manager/copier/artifacts.js +2 -2
- package/dist/modules/manager/copier/artifacts.js.map +1 -1
- package/dist/modules/manager/gomod/artifacts.js +2 -2
- package/dist/modules/manager/gomod/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle/artifacts.js +3 -3
- package/dist/modules/manager/gradle/artifacts.js.map +1 -1
- package/dist/modules/manager/gradle-wrapper/artifacts.js +2 -2
- package/dist/modules/manager/gradle-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/helmfile/artifacts.js +2 -2
- package/dist/modules/manager/helmfile/artifacts.js.map +1 -1
- package/dist/modules/manager/helmv3/artifacts.js +2 -2
- package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
- package/dist/modules/manager/hermit/artifacts.js +2 -2
- package/dist/modules/manager/hermit/artifacts.js.map +1 -1
- package/dist/modules/manager/jsonnet-bundler/artifacts.js +2 -2
- package/dist/modules/manager/jsonnet-bundler/artifacts.js.map +1 -1
- package/dist/modules/manager/kustomize/artifacts.js +2 -2
- package/dist/modules/manager/kustomize/artifacts.js.map +1 -1
- package/dist/modules/manager/maven-wrapper/artifacts.js +2 -2
- package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
- package/dist/modules/manager/nix/artifacts.js +2 -2
- package/dist/modules/manager/nix/artifacts.js.map +1 -1
- package/dist/modules/manager/npm/post-update/index.js +9 -9
- package/dist/modules/manager/npm/post-update/index.js.map +1 -1
- package/dist/modules/manager/nuget/artifacts.js +2 -2
- package/dist/modules/manager/nuget/artifacts.js.map +1 -1
- package/dist/modules/manager/pip-compile/artifacts.js +2 -2
- package/dist/modules/manager/pip-compile/artifacts.js.map +1 -1
- package/dist/modules/manager/pipenv/artifacts.js +2 -2
- package/dist/modules/manager/pipenv/artifacts.js.map +1 -1
- package/dist/modules/manager/vendir/artifacts.js +2 -2
- package/dist/modules/manager/vendir/artifacts.js.map +1 -1
- package/dist/modules/platform/api.js +16 -16
- package/dist/modules/platform/api.js.map +1 -1
- package/dist/modules/platform/azure/index.js +2 -2
- package/dist/modules/platform/azure/index.js.map +1 -1
- package/dist/modules/platform/bitbucket/index.d.ts +91 -0
- package/dist/modules/platform/bitbucket/index.js +30 -3
- package/dist/modules/platform/bitbucket/index.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/index.d.ts +94 -0
- package/dist/modules/platform/bitbucket-server/index.js +38 -7
- package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
- package/dist/modules/platform/bitbucket-server/types.d.ts +10 -0
- package/dist/modules/platform/bitbucket-server/utils.js +2 -2
- package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
- package/dist/modules/platform/codecommit/index.js +2 -2
- package/dist/modules/platform/codecommit/index.js.map +1 -1
- package/dist/modules/platform/default-scm.js +13 -13
- package/dist/modules/platform/default-scm.js.map +1 -1
- package/dist/modules/platform/forgejo/index.js +3 -3
- package/dist/modules/platform/forgejo/index.js.map +1 -1
- package/dist/modules/platform/gerrit/index.js +2 -2
- package/dist/modules/platform/gerrit/index.js.map +1 -1
- package/dist/modules/platform/gerrit/scm.js +7 -7
- package/dist/modules/platform/gerrit/scm.js.map +1 -1
- package/dist/modules/platform/gitea/index.js +3 -3
- package/dist/modules/platform/gitea/index.js.map +1 -1
- package/dist/modules/platform/github/index.js +11 -11
- package/dist/modules/platform/github/index.js.map +1 -1
- package/dist/modules/platform/github/scm.js +4 -4
- package/dist/modules/platform/github/scm.js.map +1 -1
- package/dist/modules/platform/gitlab/code-owners.d.ts +7 -0
- package/dist/modules/platform/gitlab/http.js +2 -2
- package/dist/modules/platform/gitlab/http.js.map +1 -1
- package/dist/modules/platform/gitlab/index.d.ts +97 -0
- package/dist/modules/platform/gitlab/index.js +42 -8
- package/dist/modules/platform/gitlab/index.js.map +1 -1
- package/dist/modules/platform/gitlab/types.d.ts +15 -0
- package/dist/modules/platform/index.js +2 -2
- package/dist/modules/platform/index.js.map +1 -1
- package/dist/types/git.d.ts +6 -0
- package/dist/util/cache/package/index.d.ts +21 -0
- package/dist/util/cache/package/index.js +5 -5
- package/dist/util/cache/package/index.js.map +1 -1
- package/dist/util/cache/package/namespaces.d.ts +6 -0
- package/dist/util/cache/package/redis.d.ts +11 -0
- package/dist/util/cache/package/redis.js +1 -0
- package/dist/util/cache/package/with-cache.js +3 -3
- package/dist/util/cache/package/with-cache.js.map +1 -1
- package/dist/util/cache/repository/impl/s3.js +3 -3
- package/dist/util/cache/repository/impl/s3.js.map +1 -1
- package/dist/util/git/config.d.ts +8 -0
- package/dist/util/git/index.d.ts +160 -0
- package/dist/util/git/index.js +11 -0
- package/dist/util/git/private-key.d.ts +5 -0
- package/dist/util/git/semantic.js +2 -2
- package/dist/util/git/semantic.js.map +1 -1
- package/dist/util/git/set-branch-commit.js +2 -2
- package/dist/util/git/set-branch-commit.js.map +1 -1
- package/dist/util/git/types.d.ts +30 -2
- package/dist/util/github/graphql/cache-strategies/package-cache-strategy.js +3 -3
- package/dist/util/github/graphql/cache-strategies/package-cache-strategy.js.map +1 -1
- package/dist/util/github/graphql/datasource-fetcher.js +3 -3
- package/dist/util/github/graphql/datasource-fetcher.js.map +1 -1
- package/dist/util/http/cache/package-http-cache-provider.js +3 -3
- package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
- package/dist/util/http/gitlab.d.ts +19 -0
- package/dist/util/merge-confidence/index.js +5 -5
- package/dist/util/merge-confidence/index.js.map +1 -1
- package/dist/util/package-rules/index.js +2 -2
- package/dist/util/package-rules/index.js.map +1 -1
- package/dist/util/s3.d.ts +12 -0
- package/dist/workers/global/config/parse/cli.js +2 -2
- package/dist/workers/global/config/parse/cli.js.map +1 -1
- package/dist/workers/global/config/parse/env.js +2 -2
- package/dist/workers/global/config/parse/env.js.map +1 -1
- package/dist/workers/global/config/parse/index.d.ts +8 -0
- package/dist/workers/global/config/parse/index.js +10 -9
- package/dist/workers/global/config/parse/index.js.map +1 -1
- package/dist/workers/global/index.js +8 -8
- package/dist/workers/global/index.js.map +1 -1
- package/dist/workers/global/initialize.js +7 -7
- package/dist/workers/global/initialize.js.map +1 -1
- package/dist/workers/repository/config-migration/branch/rebase.js +2 -2
- package/dist/workers/repository/config-migration/branch/rebase.js.map +1 -1
- package/dist/workers/repository/extract/extract-fingerprint-config.js +2 -2
- package/dist/workers/repository/extract/extract-fingerprint-config.js.map +1 -1
- package/dist/workers/repository/extract/index.js +2 -2
- package/dist/workers/repository/extract/index.js.map +1 -1
- package/dist/workers/repository/finalize/index.js +4 -4
- package/dist/workers/repository/finalize/index.js.map +1 -1
- package/dist/workers/repository/finalize/prune.js +3 -3
- package/dist/workers/repository/finalize/prune.js.map +1 -1
- package/dist/workers/repository/index.js +13 -13
- package/dist/workers/repository/index.js.map +1 -1
- package/dist/workers/repository/init/index.js +3 -3
- package/dist/workers/repository/init/index.js.map +1 -1
- package/dist/workers/repository/init/inherited.js +3 -3
- package/dist/workers/repository/init/inherited.js.map +1 -1
- package/dist/workers/repository/init/merge.js +5 -5
- package/dist/workers/repository/init/merge.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/check.js +2 -2
- package/dist/workers/repository/onboarding/branch/check.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/index.js +8 -8
- package/dist/workers/repository/onboarding/branch/index.js.map +1 -1
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js +5 -5
- package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js.map +1 -1
- package/dist/workers/repository/onboarding/pr/index.js +4 -4
- package/dist/workers/repository/onboarding/pr/index.js.map +1 -1
- package/dist/workers/repository/process/fetch.js +4 -4
- package/dist/workers/repository/process/fetch.js.map +1 -1
- package/dist/workers/repository/process/index.js +7 -7
- package/dist/workers/repository/process/index.js.map +1 -1
- package/dist/workers/repository/process/lookup/filter-checks.js +3 -3
- package/dist/workers/repository/process/lookup/filter-checks.js.map +1 -1
- package/dist/workers/repository/process/lookup/index.js +4 -4
- package/dist/workers/repository/process/lookup/index.js.map +1 -1
- package/dist/workers/repository/process/vulnerabilities.js +2 -2
- package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
- package/dist/workers/repository/reconfigure/index.js +4 -4
- package/dist/workers/repository/reconfigure/index.js.map +1 -1
- package/dist/workers/repository/reconfigure/validate.js +2 -2
- package/dist/workers/repository/reconfigure/validate.js.map +1 -1
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +6 -6
- package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
- package/dist/workers/repository/update/branch/get-updated.js +3 -3
- package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/gitlab/index.js +2 -2
- package/dist/workers/repository/update/pr/changelog/gitlab/index.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/release-notes.js +20 -20
- package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
- package/dist/workers/repository/update/pr/changelog/source.js +3 -3
- package/dist/workers/repository/update/pr/changelog/source.js.map +1 -1
- package/dist/workers/repository/update/pr/code-owners.js +2 -2
- package/dist/workers/repository/update/pr/code-owners.js.map +1 -1
- package/dist/workers/repository/update/pr/index.js +7 -7
- package/dist/workers/repository/update/pr/index.js.map +1 -1
- package/dist/workers/repository/updates/flatten.js +10 -10
- package/dist/workers/repository/updates/flatten.js.map +1 -1
- package/dist/workers/repository/updates/generate.js +2 -2
- package/dist/workers/repository/updates/generate.js.map +1 -1
- package/package.json +3 -3
- package/renovate-schema.json +3 -3
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AllConfig, RenovateOptions } from "./types.js";
|
|
2
|
+
|
|
3
|
+
//#region lib/config/defaults.d.ts
|
|
4
|
+
declare function getDefault(option: RenovateOptions): any;
|
|
5
|
+
declare function getConfig(): AllConfig;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { getConfig, getDefault };
|
|
8
|
+
//# sourceMappingURL=defaults.d.ts.map
|
package/dist/config/defaults.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_clone = require('../util/clone.js');
|
|
2
|
-
const
|
|
2
|
+
const require_config_options_index = require('./options/index.js');
|
|
3
3
|
|
|
4
4
|
//#region lib/config/defaults.ts
|
|
5
5
|
const defaultValueFactories = {
|
|
@@ -13,7 +13,7 @@ function getDefault(option) {
|
|
|
13
13
|
return option.default === void 0 ? defaultValueFactories[option.type]() : require_clone.clone(option.default);
|
|
14
14
|
}
|
|
15
15
|
function getConfig() {
|
|
16
|
-
const options =
|
|
16
|
+
const options = require_config_options_index.getOptions();
|
|
17
17
|
const config = {};
|
|
18
18
|
options.forEach((option) => {
|
|
19
19
|
if (!option.parents || option.parents.includes(".")) config[option.name] = getDefault(option);
|
|
@@ -23,4 +23,5 @@ function getConfig() {
|
|
|
23
23
|
|
|
24
24
|
//#endregion
|
|
25
25
|
exports.getConfig = getConfig;
|
|
26
|
+
exports.getDefault = getDefault;
|
|
26
27
|
//# sourceMappingURL=defaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","names":["clone","getOptions"],"sources":["../../lib/config/defaults.ts"],"sourcesContent":["import { clone } from '../util/clone.ts';\nimport { getOptions } from './options/index.ts';\nimport type { AllConfig, RenovateOptions } from './types.ts';\n\n// Use functions instead of direct values to avoid introducing global references.\n// In particular, we want a new array instance every time we request a default array\n// instead of sharing a single instance - mutation of this value could cause serious problems.\n// See https://github.com/mend/renovate-on-prem/issues/290 for an example\nconst defaultValueFactories = {\n boolean: () => true,\n array: () => [],\n string: () => null,\n object: () => null,\n integer: () => null,\n} as const;\n\nexport function getDefault(option: RenovateOptions): any {\n return option.default === undefined\n ? defaultValueFactories[option.type]()\n : clone(option.default);\n}\n\nexport function getConfig(): AllConfig {\n const options = getOptions();\n const config: AllConfig = {};\n options.forEach((option) => {\n if (!option.parents || option.parents.includes('.')) {\n config[option.name as keyof AllConfig] = getDefault(option);\n }\n });\n return config;\n}\n"],"mappings":";;;;AAQA,MAAM,wBAAwB;CAC5B,eAAe;CACf,aAAa,EAAE;CACf,cAAc;CACd,cAAc;CACd,eAAe;CAChB;AAED,SAAgB,WAAW,QAA8B;AACvD,QAAO,OAAO,YAAY,SACtB,sBAAsB,OAAO,OAAO,GACpCA,oBAAM,OAAO,QAAQ;;AAG3B,SAAgB,YAAuB;CACrC,MAAM,UAAUC,
|
|
1
|
+
{"version":3,"file":"defaults.js","names":["clone","getOptions"],"sources":["../../lib/config/defaults.ts"],"sourcesContent":["import { clone } from '../util/clone.ts';\nimport { getOptions } from './options/index.ts';\nimport type { AllConfig, RenovateOptions } from './types.ts';\n\n// Use functions instead of direct values to avoid introducing global references.\n// In particular, we want a new array instance every time we request a default array\n// instead of sharing a single instance - mutation of this value could cause serious problems.\n// See https://github.com/mend/renovate-on-prem/issues/290 for an example\nconst defaultValueFactories = {\n boolean: () => true,\n array: () => [],\n string: () => null,\n object: () => null,\n integer: () => null,\n} as const;\n\nexport function getDefault(option: RenovateOptions): any {\n return option.default === undefined\n ? defaultValueFactories[option.type]()\n : clone(option.default);\n}\n\nexport function getConfig(): AllConfig {\n const options = getOptions();\n const config: AllConfig = {};\n options.forEach((option) => {\n if (!option.parents || option.parents.includes('.')) {\n config[option.name as keyof AllConfig] = getDefault(option);\n }\n });\n return config;\n}\n"],"mappings":";;;;AAQA,MAAM,wBAAwB;CAC5B,eAAe;CACf,aAAa,EAAE;CACf,cAAc;CACd,cAAc;CACd,eAAe;CAChB;AAED,SAAgB,WAAW,QAA8B;AACvD,QAAO,OAAO,YAAY,SACtB,sBAAsB,OAAO,OAAO,GACpCA,oBAAM,OAAO,QAAQ;;AAG3B,SAAgB,YAAuB;CACrC,MAAM,UAAUC,yCAAY;CAC5B,MAAM,SAAoB,EAAE;AAC5B,SAAQ,SAAS,WAAW;AAC1B,MAAI,CAAC,OAAO,WAAW,OAAO,QAAQ,SAAS,IAAI,CACjD,QAAO,OAAO,QAA2B,WAAW,OAAO;GAE7D;AACF,QAAO"}
|
package/dist/config/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const require_logger_index = require('../logger/index.js');
|
|
2
2
|
const require_modules_manager_index = require('../modules/manager/index.js');
|
|
3
|
-
const
|
|
4
|
-
const
|
|
3
|
+
const require_config_options_index = require('./options/index.js');
|
|
4
|
+
const require_config_utils = require('./utils.js');
|
|
5
5
|
|
|
6
6
|
//#region lib/config/index.ts
|
|
7
7
|
require_logger_index.init_logger();
|
|
@@ -12,13 +12,13 @@ function getManagerConfig(config, manager) {
|
|
|
12
12
|
};
|
|
13
13
|
const categories = require_modules_manager_index.get(manager, "categories");
|
|
14
14
|
if (categories) managerConfig.categories = categories;
|
|
15
|
-
managerConfig =
|
|
15
|
+
managerConfig = require_config_utils.mergeChildConfig(managerConfig, config[manager]);
|
|
16
16
|
for (const i of require_modules_manager_index.allManagersList) delete managerConfig[i];
|
|
17
17
|
return managerConfig;
|
|
18
18
|
}
|
|
19
19
|
function removeGlobalConfig(config, keepInherited) {
|
|
20
20
|
const outputConfig = { ...config };
|
|
21
|
-
for (const option of
|
|
21
|
+
for (const option of require_config_options_index.getOptions()) {
|
|
22
22
|
if (keepInherited && option.inheritConfigSupport) continue;
|
|
23
23
|
if (option.globalOnly) delete outputConfig[option.name];
|
|
24
24
|
}
|
|
@@ -36,7 +36,7 @@ function filterConfig(inputConfig, targetStage) {
|
|
|
36
36
|
"pr"
|
|
37
37
|
];
|
|
38
38
|
const targetIndex = stages.indexOf(targetStage);
|
|
39
|
-
for (const option of
|
|
39
|
+
for (const option of require_config_options_index.getOptions()) {
|
|
40
40
|
const optionIndex = stages.indexOf(option.stage);
|
|
41
41
|
if (optionIndex !== -1 && optionIndex < targetIndex) delete outputConfig[option.name];
|
|
42
42
|
}
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["get","mergeChildConfig","allManagersList"],"sources":["../../lib/config/index.ts"],"sourcesContent":["import { logger } from '../logger/index.ts';\nimport { allManagersList, get } from '../modules/manager/index.ts';\nimport * as options from './options/index.ts';\nimport type {\n AllConfig,\n ManagerConfig,\n RenovateConfig,\n RenovateConfigStage,\n} from './types.ts';\nimport { mergeChildConfig } from './utils.ts';\n\nexport { mergeChildConfig };\n\nexport function getManagerConfig(\n config: RenovateConfig,\n manager: string,\n): ManagerConfig {\n let managerConfig: ManagerConfig = {\n ...config,\n manager,\n };\n const categories = get(manager, 'categories');\n if (categories) {\n managerConfig.categories = categories;\n }\n // TODO: fix types #22198\n // @ts-expect-error -- not easily typed\n managerConfig = mergeChildConfig(managerConfig, config[manager] as any);\n for (const i of allManagersList) {\n // @ts-expect-error -- not easily typed\n delete managerConfig[i];\n }\n return managerConfig;\n}\n\nexport function removeGlobalConfig(\n config: RenovateConfig,\n keepInherited: boolean,\n): RenovateConfig {\n const outputConfig: RenovateConfig = { ...config };\n for (const option of options.getOptions()) {\n if (keepInherited && option.inheritConfigSupport) {\n continue;\n }\n if (option.globalOnly) {\n // @ts-expect-error -- not easily typed\n delete outputConfig[option.name];\n }\n }\n return outputConfig;\n}\n\nexport function filterConfig<T extends AllConfig = AllConfig>(\n inputConfig: T,\n targetStage: RenovateConfigStage,\n): T {\n logger.trace({ config: inputConfig }, `filterConfig('${targetStage}')`);\n const outputConfig: T = { ...inputConfig };\n const stages: (string | undefined)[] = [\n 'global',\n 'inherit',\n 'repository',\n 'package',\n 'branch',\n 'pr',\n ];\n const targetIndex = stages.indexOf(targetStage);\n for (const option of options.getOptions()) {\n const optionIndex = stages.indexOf(option.stage);\n if (optionIndex !== -1 && optionIndex < targetIndex) {\n // @ts-expect-error -- not easily typed\n delete outputConfig[option.name];\n }\n }\n return outputConfig;\n}\n"],"mappings":";;;;;;kCAA4C;AAa5C,SAAgB,iBACd,QACA,SACe;CACf,IAAI,gBAA+B;EACjC,GAAG;EACH;EACD;CACD,MAAM,aAAaA,kCAAI,SAAS,aAAa;AAC7C,KAAI,WACF,eAAc,aAAa;AAI7B,iBAAgBC
|
|
1
|
+
{"version":3,"file":"index.js","names":["get","mergeChildConfig","allManagersList"],"sources":["../../lib/config/index.ts"],"sourcesContent":["import { logger } from '../logger/index.ts';\nimport { allManagersList, get } from '../modules/manager/index.ts';\nimport * as options from './options/index.ts';\nimport type {\n AllConfig,\n ManagerConfig,\n RenovateConfig,\n RenovateConfigStage,\n} from './types.ts';\nimport { mergeChildConfig } from './utils.ts';\n\nexport { mergeChildConfig };\n\nexport function getManagerConfig(\n config: RenovateConfig,\n manager: string,\n): ManagerConfig {\n let managerConfig: ManagerConfig = {\n ...config,\n manager,\n };\n const categories = get(manager, 'categories');\n if (categories) {\n managerConfig.categories = categories;\n }\n // TODO: fix types #22198\n // @ts-expect-error -- not easily typed\n managerConfig = mergeChildConfig(managerConfig, config[manager] as any);\n for (const i of allManagersList) {\n // @ts-expect-error -- not easily typed\n delete managerConfig[i];\n }\n return managerConfig;\n}\n\nexport function removeGlobalConfig(\n config: RenovateConfig,\n keepInherited: boolean,\n): RenovateConfig {\n const outputConfig: RenovateConfig = { ...config };\n for (const option of options.getOptions()) {\n if (keepInherited && option.inheritConfigSupport) {\n continue;\n }\n if (option.globalOnly) {\n // @ts-expect-error -- not easily typed\n delete outputConfig[option.name];\n }\n }\n return outputConfig;\n}\n\nexport function filterConfig<T extends AllConfig = AllConfig>(\n inputConfig: T,\n targetStage: RenovateConfigStage,\n): T {\n logger.trace({ config: inputConfig }, `filterConfig('${targetStage}')`);\n const outputConfig: T = { ...inputConfig };\n const stages: (string | undefined)[] = [\n 'global',\n 'inherit',\n 'repository',\n 'package',\n 'branch',\n 'pr',\n ];\n const targetIndex = stages.indexOf(targetStage);\n for (const option of options.getOptions()) {\n const optionIndex = stages.indexOf(option.stage);\n if (optionIndex !== -1 && optionIndex < targetIndex) {\n // @ts-expect-error -- not easily typed\n delete outputConfig[option.name];\n }\n }\n return outputConfig;\n}\n"],"mappings":";;;;;;kCAA4C;AAa5C,SAAgB,iBACd,QACA,SACe;CACf,IAAI,gBAA+B;EACjC,GAAG;EACH;EACD;CACD,MAAM,aAAaA,kCAAI,SAAS,aAAa;AAC7C,KAAI,WACF,eAAc,aAAa;AAI7B,iBAAgBC,sCAAiB,eAAe,OAAO,SAAgB;AACvE,MAAK,MAAM,KAAKC,8CAEd,QAAO,cAAc;AAEvB,QAAO;;AAGT,SAAgB,mBACd,QACA,eACgB;CAChB,MAAM,eAA+B,EAAE,GAAG,QAAQ;AAClD,MAAK,MAAM,mDAA8B,EAAE;AACzC,MAAI,iBAAiB,OAAO,qBAC1B;AAEF,MAAI,OAAO,WAET,QAAO,aAAa,OAAO;;AAG/B,QAAO;;AAGT,SAAgB,aACd,aACA,aACG;AACH,6BAAO,MAAM,EAAE,QAAQ,aAAa,EAAE,iBAAiB,YAAY,IAAI;CACvE,MAAM,eAAkB,EAAE,GAAG,aAAa;CAC1C,MAAM,SAAiC;EACrC;EACA;EACA;EACA;EACA;EACA;EACD;CACD,MAAM,cAAc,OAAO,QAAQ,YAAY;AAC/C,MAAK,MAAM,mDAA8B,EAAE;EACzC,MAAM,cAAc,OAAO,QAAQ,OAAO,MAAM;AAChD,MAAI,gBAAgB,MAAM,cAAc,YAEtC,QAAO,aAAa,OAAO;;AAG/B,QAAO"}
|
package/dist/config/massage.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.js');
|
|
2
2
|
const require_clone = require('../util/clone.js');
|
|
3
|
-
const
|
|
3
|
+
const require_config_options_index = require('./options/index.js');
|
|
4
4
|
let _sindresorhus_is = require("@sindresorhus/is");
|
|
5
5
|
|
|
6
6
|
//#region lib/config/massage.ts
|
|
7
|
-
const options =
|
|
7
|
+
const options = require_config_options_index.getOptions();
|
|
8
8
|
let allowedStrings;
|
|
9
9
|
function massageConfig(config) {
|
|
10
10
|
if (!allowedStrings) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"massage.js","names":["getOptions","clone"],"sources":["../../lib/config/massage.ts"],"sourcesContent":["import { isArray, isNonEmptyArray, isObject, isString } from '@sindresorhus/is';\nimport { clone } from '../util/clone.ts';\nimport { getOptions } from './options/index.ts';\nimport type { PackageRule, RenovateConfig, UpdateType } from './types.ts';\n\nconst options = getOptions();\n\nlet allowedStrings: string[];\n\n// Returns a massaged config\nexport function massageConfig(config: RenovateConfig): RenovateConfig {\n if (!allowedStrings) {\n allowedStrings = [];\n options.forEach((option) => {\n if (option.allowString) {\n allowedStrings.push(option.name);\n }\n });\n }\n const massagedConfig = clone(config);\n for (const [key, val] of Object.entries(config)) {\n if (allowedStrings.includes(key) && isString(val)) {\n // @ts-expect-error -- TODO: fix me\n massagedConfig[key] = [val];\n } else if (isArray(val)) {\n // @ts-expect-error -- TODO: fix me\n massagedConfig[key] = [];\n val.forEach((item) => {\n if (isObject(item)) {\n // @ts-expect-error -- TODO: fix me\n (massagedConfig[key] as RenovateConfig[]).push(\n massageConfig(item as RenovateConfig),\n );\n } else {\n // @ts-expect-error -- TODO: fix me\n (massagedConfig[key] as unknown[]).push(item);\n }\n });\n } else if (isObject(val) && key !== 'encrypted') {\n // @ts-expect-error -- TODO: fix me\n massagedConfig[key] = massageConfig(val as RenovateConfig);\n }\n }\n if (isNonEmptyArray(massagedConfig.packageRules)) {\n let newRules: PackageRule[] = [];\n const updateTypes: UpdateType[] = [\n 'major',\n 'minor',\n 'patch',\n 'pin',\n 'digest',\n 'rollback',\n ];\n for (const rule of massagedConfig.packageRules) {\n newRules.push(rule);\n for (const [key, val] of Object.entries(rule) as [\n UpdateType,\n PackageRule,\n ][]) {\n if (updateTypes.includes(key)) {\n let newRule = clone(rule);\n Object.keys(newRule).forEach((newKey) => {\n if (!(newKey.startsWith(`match`) || newKey.startsWith('exclude'))) {\n // @ts-expect-error -- TODO: fix me\n delete newRule[newKey];\n }\n });\n newRule.matchUpdateTypes = rule.matchUpdateTypes ?? [];\n newRule.matchUpdateTypes.push(key);\n newRule = { ...newRule, ...val };\n newRules.push(newRule);\n }\n }\n }\n for (const rule of newRules) {\n updateTypes.forEach((updateType) => {\n delete rule[updateType];\n });\n }\n newRules = newRules.filter((rule) => {\n if (\n Object.keys(rule).every(\n (key) => key.startsWith('match') || key.startsWith('exclude'),\n )\n ) {\n // Exclude rules which contain only match or exclude options\n return false;\n }\n return true;\n });\n massagedConfig.packageRules = newRules;\n }\n return massagedConfig;\n}\n"],"mappings":";;;;;;AAKA,MAAM,UAAUA,
|
|
1
|
+
{"version":3,"file":"massage.js","names":["getOptions","clone"],"sources":["../../lib/config/massage.ts"],"sourcesContent":["import { isArray, isNonEmptyArray, isObject, isString } from '@sindresorhus/is';\nimport { clone } from '../util/clone.ts';\nimport { getOptions } from './options/index.ts';\nimport type { PackageRule, RenovateConfig, UpdateType } from './types.ts';\n\nconst options = getOptions();\n\nlet allowedStrings: string[];\n\n// Returns a massaged config\nexport function massageConfig(config: RenovateConfig): RenovateConfig {\n if (!allowedStrings) {\n allowedStrings = [];\n options.forEach((option) => {\n if (option.allowString) {\n allowedStrings.push(option.name);\n }\n });\n }\n const massagedConfig = clone(config);\n for (const [key, val] of Object.entries(config)) {\n if (allowedStrings.includes(key) && isString(val)) {\n // @ts-expect-error -- TODO: fix me\n massagedConfig[key] = [val];\n } else if (isArray(val)) {\n // @ts-expect-error -- TODO: fix me\n massagedConfig[key] = [];\n val.forEach((item) => {\n if (isObject(item)) {\n // @ts-expect-error -- TODO: fix me\n (massagedConfig[key] as RenovateConfig[]).push(\n massageConfig(item as RenovateConfig),\n );\n } else {\n // @ts-expect-error -- TODO: fix me\n (massagedConfig[key] as unknown[]).push(item);\n }\n });\n } else if (isObject(val) && key !== 'encrypted') {\n // @ts-expect-error -- TODO: fix me\n massagedConfig[key] = massageConfig(val as RenovateConfig);\n }\n }\n if (isNonEmptyArray(massagedConfig.packageRules)) {\n let newRules: PackageRule[] = [];\n const updateTypes: UpdateType[] = [\n 'major',\n 'minor',\n 'patch',\n 'pin',\n 'digest',\n 'rollback',\n ];\n for (const rule of massagedConfig.packageRules) {\n newRules.push(rule);\n for (const [key, val] of Object.entries(rule) as [\n UpdateType,\n PackageRule,\n ][]) {\n if (updateTypes.includes(key)) {\n let newRule = clone(rule);\n Object.keys(newRule).forEach((newKey) => {\n if (!(newKey.startsWith(`match`) || newKey.startsWith('exclude'))) {\n // @ts-expect-error -- TODO: fix me\n delete newRule[newKey];\n }\n });\n newRule.matchUpdateTypes = rule.matchUpdateTypes ?? [];\n newRule.matchUpdateTypes.push(key);\n newRule = { ...newRule, ...val };\n newRules.push(newRule);\n }\n }\n }\n for (const rule of newRules) {\n updateTypes.forEach((updateType) => {\n delete rule[updateType];\n });\n }\n newRules = newRules.filter((rule) => {\n if (\n Object.keys(rule).every(\n (key) => key.startsWith('match') || key.startsWith('exclude'),\n )\n ) {\n // Exclude rules which contain only match or exclude options\n return false;\n }\n return true;\n });\n massagedConfig.packageRules = newRules;\n }\n return massagedConfig;\n}\n"],"mappings":";;;;;;AAKA,MAAM,UAAUA,yCAAY;AAE5B,IAAI;AAGJ,SAAgB,cAAc,QAAwC;AACpE,KAAI,CAAC,gBAAgB;AACnB,mBAAiB,EAAE;AACnB,UAAQ,SAAS,WAAW;AAC1B,OAAI,OAAO,YACT,gBAAe,KAAK,OAAO,KAAK;IAElC;;CAEJ,MAAM,iBAAiBC,oBAAM,OAAO;AACpC,MAAK,MAAM,CAAC,KAAK,QAAQ,OAAO,QAAQ,OAAO,CAC7C,KAAI,eAAe,SAAS,IAAI,mCAAa,IAAI,CAE/C,gBAAe,OAAO,CAAC,IAAI;wCACV,IAAI,EAAE;AAEvB,iBAAe,OAAO,EAAE;AACxB,MAAI,SAAS,SAAS;AACpB,sCAAa,KAAK,CAEhB,CAAC,eAAe,KAA0B,KACxC,cAAc,KAAuB,CACtC;OAGD,CAAC,eAAe,KAAmB,KAAK,KAAK;IAE/C;2CACgB,IAAI,IAAI,QAAQ,YAElC,gBAAe,OAAO,cAAc,IAAsB;AAG9D,2CAAoB,eAAe,aAAa,EAAE;EAChD,IAAI,WAA0B,EAAE;EAChC,MAAM,cAA4B;GAChC;GACA;GACA;GACA;GACA;GACA;GACD;AACD,OAAK,MAAM,QAAQ,eAAe,cAAc;AAC9C,YAAS,KAAK,KAAK;AACnB,QAAK,MAAM,CAAC,KAAK,QAAQ,OAAO,QAAQ,KAAK,CAI3C,KAAI,YAAY,SAAS,IAAI,EAAE;IAC7B,IAAI,UAAUA,oBAAM,KAAK;AACzB,WAAO,KAAK,QAAQ,CAAC,SAAS,WAAW;AACvC,SAAI,EAAE,OAAO,WAAW,QAAQ,IAAI,OAAO,WAAW,UAAU,EAE9D,QAAO,QAAQ;MAEjB;AACF,YAAQ,mBAAmB,KAAK,oBAAoB,EAAE;AACtD,YAAQ,iBAAiB,KAAK,IAAI;AAClC,cAAU;KAAE,GAAG;KAAS,GAAG;KAAK;AAChC,aAAS,KAAK,QAAQ;;;AAI5B,OAAK,MAAM,QAAQ,SACjB,aAAY,SAAS,eAAe;AAClC,UAAO,KAAK;IACZ;AAEJ,aAAW,SAAS,QAAQ,SAAS;AACnC,OACE,OAAO,KAAK,KAAK,CAAC,OACf,QAAQ,IAAI,WAAW,QAAQ,IAAI,IAAI,WAAW,UAAU,CAC9D,CAGD,QAAO;AAET,UAAO;IACP;AACF,iBAAe,eAAe;;AAEhC,QAAO"}
|
package/dist/config/migration.js
CHANGED
|
@@ -2,17 +2,17 @@ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.js');
|
|
|
2
2
|
const require_regex = require('../util/regex.js');
|
|
3
3
|
const require_logger_index = require('../logger/index.js');
|
|
4
4
|
const require_clone = require('../util/clone.js');
|
|
5
|
-
const
|
|
5
|
+
const require_config_options_index = require('./options/index.js');
|
|
6
6
|
const require_migrations_service = require('./migrations/migrations-service.js');
|
|
7
7
|
require('./migrations/index.js');
|
|
8
|
-
const
|
|
8
|
+
const require_config_utils = require('./utils.js');
|
|
9
9
|
let dequal = require("dequal");
|
|
10
10
|
let _sindresorhus_is = require("@sindresorhus/is");
|
|
11
11
|
|
|
12
12
|
//#region lib/config/migration.ts
|
|
13
13
|
require_logger_index.init_logger();
|
|
14
14
|
require_regex.init_regex();
|
|
15
|
-
const options =
|
|
15
|
+
const options = require_config_options_index.getOptions();
|
|
16
16
|
function fixShortHours(input) {
|
|
17
17
|
return input.replace(require_regex.regEx(/( \d?\d)((a|p)m)/g), "$1:00$2");
|
|
18
18
|
}
|
|
@@ -88,7 +88,7 @@ function migrateConfig(config, parentKey) {
|
|
|
88
88
|
for (const packageRule of existingRules) if ((0, _sindresorhus_is.isArray)(packageRule.packageRules)) {
|
|
89
89
|
require_logger_index.logger.debug("Flattening nested packageRules");
|
|
90
90
|
for (const subrule of packageRule.packageRules) {
|
|
91
|
-
const combinedRule =
|
|
91
|
+
const combinedRule = require_config_utils.mergeChildConfig(packageRule, subrule);
|
|
92
92
|
delete combinedRule.packageRules;
|
|
93
93
|
migratedConfig.packageRules.push(combinedRule);
|
|
94
94
|
}
|
|
@@ -107,7 +107,7 @@ function migrateConfig(config, parentKey) {
|
|
|
107
107
|
migratedConfig.matchManagers = migratedConfig.matchManagers.filter((manager) => manager !== "gradle-lite");
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
-
if ((0, _sindresorhus_is.isNonEmptyObject)(migratedConfig["gradle-lite"])) migratedConfig.gradle =
|
|
110
|
+
if ((0, _sindresorhus_is.isNonEmptyObject)(migratedConfig["gradle-lite"])) migratedConfig.gradle = require_config_utils.mergeChildConfig(migratedConfig.gradle ?? {}, migratedConfig["gradle-lite"]);
|
|
111
111
|
delete migratedConfig["gradle-lite"];
|
|
112
112
|
const isMigrated = !(0, dequal.dequal)(config, migratedConfig);
|
|
113
113
|
if (isMigrated) return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.js","names":["getOptions","regEx","MigrationsService","clone","mergeChildConfig"],"sources":["../../lib/config/migration.ts"],"sourcesContent":["import {\n isArray,\n isBoolean,\n isNonEmptyArray,\n isNonEmptyObject,\n isObject,\n isString,\n} from '@sindresorhus/is';\nimport { dequal } from 'dequal';\nimport { logger } from '../logger/index.ts';\nimport { clone } from '../util/clone.ts';\nimport { regEx } from '../util/regex.ts';\nimport { MigrationsService } from './migrations/index.ts';\nimport { getOptions } from './options/index.ts';\nimport type {\n MigratedConfig,\n MigratedRenovateConfig,\n PackageRule,\n RenovateConfig,\n RenovateOptions,\n} from './types.ts';\nimport { mergeChildConfig } from './utils.ts';\n\nconst options = getOptions();\nexport function fixShortHours(input: string): string {\n return input.replace(regEx(/( \\d?\\d)((a|p)m)/g), '$1:00$2');\n}\n\nlet optionTypes: Record<string, RenovateOptions['type']>;\n// Returns a migrated config\nexport function migrateConfig(\n config: RenovateConfig,\n parentKey?: string,\n): MigratedConfig {\n try {\n if (!optionTypes) {\n optionTypes = {};\n options.forEach((option) => {\n optionTypes[option.name] = option.type;\n });\n }\n const newConfig = MigrationsService.run(config, parentKey);\n const migratedConfig = clone(newConfig) as MigratedRenovateConfig;\n\n for (const [key, val] of Object.entries(newConfig)) {\n if (isString(val) && val.includes('{{baseDir}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n regEx(/{{baseDir}}/g),\n '{{packageFileDir}}',\n );\n } else if (isString(val) && val.includes('{{lookupName}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n regEx(/{{lookupName}}/g),\n '{{packageName}}',\n );\n } else if (isString(val) && val.includes('{{depNameShort}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n regEx(/{{depNameShort}}/g),\n '{{depName}}',\n );\n } else if (isString(val) && val.startsWith('{{semanticPrefix}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n '{{semanticPrefix}}',\n '{{#if semanticCommitType}}{{semanticCommitType}}{{#if semanticCommitScope}}({{semanticCommitScope}}){{/if}}: {{/if}}',\n );\n } else if (optionTypes[key] === 'object' && isBoolean(val)) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = { enabled: val };\n } else if (optionTypes[key] === 'boolean') {\n if (val === 'true') {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = true;\n } else if (val === 'false') {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = false;\n }\n } else if (\n optionTypes[key] === 'string' &&\n isArray(val) &&\n val.length === 1\n ) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = String(val[0]);\n } else if (isArray(val)) {\n // @ts-expect-error -- TODO: fix me\n // v8 ignore else -- TODO: add test #40625\n if (isArray(migratedConfig?.[key])) {\n const newArray = [];\n // @ts-expect-error -- TODO: fix me\n for (const item of migratedConfig[key]) {\n if (isObject(item) && !isArray(item)) {\n const arrMigrate = migrateConfig(item as RenovateConfig);\n newArray.push(arrMigrate.migratedConfig);\n } else {\n newArray.push(item);\n }\n }\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = newArray;\n }\n } else if (isObject(val)) {\n const subMigrate = migrateConfig(\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] as RenovateConfig,\n key,\n );\n if (subMigrate.isMigrated) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = subMigrate.migratedConfig;\n }\n }\n\n const migratedTemplates = {\n fromVersion: 'currentVersion',\n newValueMajor: 'newMajor',\n newValueMinor: 'newMinor',\n newVersionMajor: 'newMajor',\n newVersionMinor: 'newMinor',\n toVersion: 'newVersion',\n };\n // @ts-expect-error -- TODO: fix me\n if (isString(migratedConfig[key])) {\n for (const [from, to] of Object.entries(migratedTemplates)) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = (migratedConfig[key] as string).replace(\n regEx(from, 'g'),\n to,\n );\n }\n }\n }\n const languages = [\n 'docker',\n 'dotnet',\n 'golang',\n 'java',\n 'js',\n 'node',\n 'php',\n 'python',\n 'ruby',\n 'rust',\n ];\n for (const language of languages) {\n // @ts-expect-error -- TODO: fix me\n if (isNonEmptyObject(migratedConfig[language])) {\n migratedConfig.packageRules ??= [];\n // @ts-expect-error -- TODO: fix me\n const currentContent = migratedConfig[language] as any;\n const packageRule = {\n matchCategories: [language],\n ...currentContent,\n };\n migratedConfig.packageRules.unshift(packageRule);\n // @ts-expect-error -- TODO: fix me\n delete migratedConfig[language];\n }\n }\n // Migrate nested packageRules\n if (isNonEmptyArray(migratedConfig.packageRules)) {\n const existingRules = migratedConfig.packageRules;\n migratedConfig.packageRules = [];\n for (const packageRule of existingRules) {\n // @ts-expect-error -- TODO: fix me\n if (isArray(packageRule.packageRules)) {\n logger.debug('Flattening nested packageRules');\n // merge each subrule and add to the parent list\n // @ts-expect-error -- TODO: fix me\n for (const subrule of packageRule.packageRules) {\n // TODO: fix types #22198\n const combinedRule = mergeChildConfig(\n packageRule,\n subrule as PackageRule,\n );\n // @ts-expect-error -- TODO: fix me\n delete combinedRule.packageRules;\n migratedConfig.packageRules.push(combinedRule);\n }\n } else {\n migratedConfig.packageRules.push(packageRule);\n }\n }\n }\n if (\n // @ts-expect-error -- TODO: fix me\n isNonEmptyObject(migratedConfig['pip-compile']) &&\n // @ts-expect-error -- TODO: fix me\n isNonEmptyArray(migratedConfig['pip-compile'].managerFilePatterns)\n ) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig['pip-compile'].managerFilePatterns = migratedConfig[\n 'pip-compile'\n ].managerFilePatterns.map((filePattern) => {\n const pattern = filePattern as string;\n if (pattern.endsWith('.in')) {\n return pattern.replace(/\\.in$/, '.txt');\n }\n if (pattern.endsWith('.in/')) {\n return pattern.replace(/\\.in\\/$/, '.txt/');\n }\n return pattern.replace(/\\.in\\$\\/$/, '.txt$/');\n });\n }\n // @ts-expect-error -- TODO: fix me\n if (isNonEmptyArray(migratedConfig.matchManagers)) {\n // @ts-expect-error -- TODO: fix me\n if (migratedConfig.matchManagers.includes('gradle-lite')) {\n // @ts-expect-error -- TODO: fix me\n // v8 ignore else -- TODO: add test #40625\n if (!migratedConfig.matchManagers.includes('gradle')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig.matchManagers.push('gradle');\n }\n // @ts-expect-error -- TODO: fix me\n migratedConfig.matchManagers = migratedConfig.matchManagers.filter(\n // @ts-expect-error -- TODO: fix me\n (manager) => manager !== 'gradle-lite',\n );\n }\n }\n // @ts-expect-error -- TODO: fix me\n if (isNonEmptyObject(migratedConfig['gradle-lite'])) {\n migratedConfig.gradle = mergeChildConfig(\n migratedConfig.gradle ?? {},\n // @ts-expect-error -- TODO: fix me\n migratedConfig['gradle-lite'],\n );\n }\n // @ts-expect-error -- TODO: fix me\n delete migratedConfig['gradle-lite'];\n const isMigrated = !dequal(config, migratedConfig);\n if (isMigrated) {\n // recursive call in case any migrated configs need further migrating\n return {\n isMigrated,\n migratedConfig: migrateConfig(migratedConfig).migratedConfig,\n };\n }\n return { isMigrated, migratedConfig };\n } catch (err) {\n logger.debug({ config, err }, 'migrateConfig() error');\n throw err;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migration.js","names":["getOptions","regEx","MigrationsService","clone","mergeChildConfig"],"sources":["../../lib/config/migration.ts"],"sourcesContent":["import {\n isArray,\n isBoolean,\n isNonEmptyArray,\n isNonEmptyObject,\n isObject,\n isString,\n} from '@sindresorhus/is';\nimport { dequal } from 'dequal';\nimport { logger } from '../logger/index.ts';\nimport { clone } from '../util/clone.ts';\nimport { regEx } from '../util/regex.ts';\nimport { MigrationsService } from './migrations/index.ts';\nimport { getOptions } from './options/index.ts';\nimport type {\n MigratedConfig,\n MigratedRenovateConfig,\n PackageRule,\n RenovateConfig,\n RenovateOptions,\n} from './types.ts';\nimport { mergeChildConfig } from './utils.ts';\n\nconst options = getOptions();\nexport function fixShortHours(input: string): string {\n return input.replace(regEx(/( \\d?\\d)((a|p)m)/g), '$1:00$2');\n}\n\nlet optionTypes: Record<string, RenovateOptions['type']>;\n// Returns a migrated config\nexport function migrateConfig(\n config: RenovateConfig,\n parentKey?: string,\n): MigratedConfig {\n try {\n if (!optionTypes) {\n optionTypes = {};\n options.forEach((option) => {\n optionTypes[option.name] = option.type;\n });\n }\n const newConfig = MigrationsService.run(config, parentKey);\n const migratedConfig = clone(newConfig) as MigratedRenovateConfig;\n\n for (const [key, val] of Object.entries(newConfig)) {\n if (isString(val) && val.includes('{{baseDir}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n regEx(/{{baseDir}}/g),\n '{{packageFileDir}}',\n );\n } else if (isString(val) && val.includes('{{lookupName}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n regEx(/{{lookupName}}/g),\n '{{packageName}}',\n );\n } else if (isString(val) && val.includes('{{depNameShort}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n regEx(/{{depNameShort}}/g),\n '{{depName}}',\n );\n } else if (isString(val) && val.startsWith('{{semanticPrefix}}')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = val.replace(\n '{{semanticPrefix}}',\n '{{#if semanticCommitType}}{{semanticCommitType}}{{#if semanticCommitScope}}({{semanticCommitScope}}){{/if}}: {{/if}}',\n );\n } else if (optionTypes[key] === 'object' && isBoolean(val)) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = { enabled: val };\n } else if (optionTypes[key] === 'boolean') {\n if (val === 'true') {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = true;\n } else if (val === 'false') {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = false;\n }\n } else if (\n optionTypes[key] === 'string' &&\n isArray(val) &&\n val.length === 1\n ) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = String(val[0]);\n } else if (isArray(val)) {\n // @ts-expect-error -- TODO: fix me\n // v8 ignore else -- TODO: add test #40625\n if (isArray(migratedConfig?.[key])) {\n const newArray = [];\n // @ts-expect-error -- TODO: fix me\n for (const item of migratedConfig[key]) {\n if (isObject(item) && !isArray(item)) {\n const arrMigrate = migrateConfig(item as RenovateConfig);\n newArray.push(arrMigrate.migratedConfig);\n } else {\n newArray.push(item);\n }\n }\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = newArray;\n }\n } else if (isObject(val)) {\n const subMigrate = migrateConfig(\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] as RenovateConfig,\n key,\n );\n if (subMigrate.isMigrated) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = subMigrate.migratedConfig;\n }\n }\n\n const migratedTemplates = {\n fromVersion: 'currentVersion',\n newValueMajor: 'newMajor',\n newValueMinor: 'newMinor',\n newVersionMajor: 'newMajor',\n newVersionMinor: 'newMinor',\n toVersion: 'newVersion',\n };\n // @ts-expect-error -- TODO: fix me\n if (isString(migratedConfig[key])) {\n for (const [from, to] of Object.entries(migratedTemplates)) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig[key] = (migratedConfig[key] as string).replace(\n regEx(from, 'g'),\n to,\n );\n }\n }\n }\n const languages = [\n 'docker',\n 'dotnet',\n 'golang',\n 'java',\n 'js',\n 'node',\n 'php',\n 'python',\n 'ruby',\n 'rust',\n ];\n for (const language of languages) {\n // @ts-expect-error -- TODO: fix me\n if (isNonEmptyObject(migratedConfig[language])) {\n migratedConfig.packageRules ??= [];\n // @ts-expect-error -- TODO: fix me\n const currentContent = migratedConfig[language] as any;\n const packageRule = {\n matchCategories: [language],\n ...currentContent,\n };\n migratedConfig.packageRules.unshift(packageRule);\n // @ts-expect-error -- TODO: fix me\n delete migratedConfig[language];\n }\n }\n // Migrate nested packageRules\n if (isNonEmptyArray(migratedConfig.packageRules)) {\n const existingRules = migratedConfig.packageRules;\n migratedConfig.packageRules = [];\n for (const packageRule of existingRules) {\n // @ts-expect-error -- TODO: fix me\n if (isArray(packageRule.packageRules)) {\n logger.debug('Flattening nested packageRules');\n // merge each subrule and add to the parent list\n // @ts-expect-error -- TODO: fix me\n for (const subrule of packageRule.packageRules) {\n // TODO: fix types #22198\n const combinedRule = mergeChildConfig(\n packageRule,\n subrule as PackageRule,\n );\n // @ts-expect-error -- TODO: fix me\n delete combinedRule.packageRules;\n migratedConfig.packageRules.push(combinedRule);\n }\n } else {\n migratedConfig.packageRules.push(packageRule);\n }\n }\n }\n if (\n // @ts-expect-error -- TODO: fix me\n isNonEmptyObject(migratedConfig['pip-compile']) &&\n // @ts-expect-error -- TODO: fix me\n isNonEmptyArray(migratedConfig['pip-compile'].managerFilePatterns)\n ) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig['pip-compile'].managerFilePatterns = migratedConfig[\n 'pip-compile'\n ].managerFilePatterns.map((filePattern) => {\n const pattern = filePattern as string;\n if (pattern.endsWith('.in')) {\n return pattern.replace(/\\.in$/, '.txt');\n }\n if (pattern.endsWith('.in/')) {\n return pattern.replace(/\\.in\\/$/, '.txt/');\n }\n return pattern.replace(/\\.in\\$\\/$/, '.txt$/');\n });\n }\n // @ts-expect-error -- TODO: fix me\n if (isNonEmptyArray(migratedConfig.matchManagers)) {\n // @ts-expect-error -- TODO: fix me\n if (migratedConfig.matchManagers.includes('gradle-lite')) {\n // @ts-expect-error -- TODO: fix me\n // v8 ignore else -- TODO: add test #40625\n if (!migratedConfig.matchManagers.includes('gradle')) {\n // @ts-expect-error -- TODO: fix me\n migratedConfig.matchManagers.push('gradle');\n }\n // @ts-expect-error -- TODO: fix me\n migratedConfig.matchManagers = migratedConfig.matchManagers.filter(\n // @ts-expect-error -- TODO: fix me\n (manager) => manager !== 'gradle-lite',\n );\n }\n }\n // @ts-expect-error -- TODO: fix me\n if (isNonEmptyObject(migratedConfig['gradle-lite'])) {\n migratedConfig.gradle = mergeChildConfig(\n migratedConfig.gradle ?? {},\n // @ts-expect-error -- TODO: fix me\n migratedConfig['gradle-lite'],\n );\n }\n // @ts-expect-error -- TODO: fix me\n delete migratedConfig['gradle-lite'];\n const isMigrated = !dequal(config, migratedConfig);\n if (isMigrated) {\n // recursive call in case any migrated configs need further migrating\n return {\n isMigrated,\n migratedConfig: migrateConfig(migratedConfig).migratedConfig,\n };\n }\n return { isMigrated, migratedConfig };\n } catch (err) {\n logger.debug({ config, err }, 'migrateConfig() error');\n throw err;\n }\n}\n"],"mappings":"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"}
|
|
@@ -596,7 +596,7 @@ const options = [
|
|
|
596
596
|
name: "dockerSidecarImage",
|
|
597
597
|
description: "Change this value to override the default Renovate sidecar image.",
|
|
598
598
|
type: "string",
|
|
599
|
-
default: "ghcr.io/renovatebot/base-image:12.
|
|
599
|
+
default: "ghcr.io/renovatebot/base-image:12.33.0",
|
|
600
600
|
globalOnly: true
|
|
601
601
|
},
|
|
602
602
|
{
|