renovate 44.230.1 → 44.232.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.
Files changed (42) hide show
  1. package/dist/config/migrations/custom/dependency-dashboard-migration.js +38 -0
  2. package/dist/config/migrations/custom/dependency-dashboard-migration.js.map +1 -0
  3. package/dist/config/migrations/migrations-service.js +3 -1
  4. package/dist/config/migrations/migrations-service.js.map +1 -1
  5. package/dist/config/options/index.js +82 -59
  6. package/dist/config/options/index.js.map +1 -1
  7. package/dist/config/presets/internal/default.preset.js +2 -2
  8. package/dist/config/presets/internal/default.preset.js.map +1 -1
  9. package/dist/config/types.d.ts +13 -10
  10. package/dist/config/types.js +1 -0
  11. package/dist/config/types.js.map +1 -1
  12. package/dist/config/validation.js +2 -1
  13. package/dist/config/validation.js.map +1 -1
  14. package/dist/modules/manager/custom/jsonata/utils.js +2 -1
  15. package/dist/modules/manager/custom/jsonata/utils.js.map +1 -1
  16. package/dist/modules/manager/custom/regex/index.js.map +1 -1
  17. package/dist/modules/manager/custom/regex/strategies.js.map +1 -1
  18. package/dist/modules/manager/custom/regex/types.d.ts +1 -0
  19. package/dist/modules/manager/custom/regex/utils.js +2 -1
  20. package/dist/modules/manager/custom/regex/utils.js.map +1 -1
  21. package/dist/modules/manager/custom/utils.js +19 -1
  22. package/dist/modules/manager/custom/utils.js.map +1 -1
  23. package/dist/modules/manager/fingerprint.generated.js +2 -2
  24. package/dist/modules/manager/fingerprint.generated.js.map +1 -1
  25. package/dist/modules/platform/github/graphql.js +35 -1
  26. package/dist/modules/platform/github/graphql.js.map +1 -1
  27. package/dist/modules/platform/github/index.js +57 -3
  28. package/dist/modules/platform/github/index.js.map +1 -1
  29. package/dist/modules/platform/github/schema.js +12 -1
  30. package/dist/modules/platform/github/schema.js.map +1 -1
  31. package/dist/modules/platform/index.d.ts +2 -2
  32. package/dist/modules/platform/types.d.ts +12 -0
  33. package/dist/workers/global/config/parse/cli.js +1 -1
  34. package/dist/workers/global/config/parse/cli.js.map +1 -1
  35. package/dist/workers/global/config/parse/env.js +26 -11
  36. package/dist/workers/global/config/parse/env.js.map +1 -1
  37. package/dist/workers/repository/dependency-dashboard.js +21 -19
  38. package/dist/workers/repository/dependency-dashboard.js.map +1 -1
  39. package/dist/workers/repository/update/pr/body/index.js +1 -1
  40. package/dist/workers/repository/update/pr/body/index.js.map +1 -1
  41. package/package.json +1 -1
  42. package/renovate-schema.json +118 -91
@@ -0,0 +1,38 @@
1
+ import { AbstractMigration } from "../base/abstract-migration.js";
2
+ import { isBoolean, isNullOrUndefined, isPlainObject } from "@sindresorhus/is";
3
+ // lib/config/migrations/custom/dependency-dashboard-migration.ts
4
+ const dependencyDashboardFields = {
5
+ customizeDashboard: "customize",
6
+ dependencyDashboardAutoclose: "autoclose",
7
+ dependencyDashboardFooter: "footer",
8
+ dependencyDashboardHeader: "header",
9
+ dependencyDashboardLabels: "labels",
10
+ dependencyDashboardOSVVulnerabilitySummary: "osvVulnerabilitySummary",
11
+ dependencyDashboardReportAbandonment: "reportAbandonment",
12
+ dependencyDashboardTitle: "title"
13
+ };
14
+ /**
15
+ * Converts a `dependencyDashboard` value from before it was an object, including the strings which were accepted for the boolean.
16
+ *
17
+ * Returns `undefined` for a value which can't be converted, so it's left for validation to report.
18
+ */
19
+ function toObject(value) {
20
+ if (isNullOrUndefined(value)) return {};
21
+ if (isPlainObject(value)) return { ...value };
22
+ if (isBoolean(value) || value === "true" || value === "false") return { enabled: value === true || value === "true" };
23
+ }
24
+ var DependencyDashboardMigration = class extends AbstractMigration {
25
+ propertyName = /^(?:customizeDashboard|dependencyDashboard(?:Autoclose|Footer|Header|Labels|OSVVulnerabilitySummary|ReportAbandonment|Title)?)$/;
26
+ run(value, key) {
27
+ const dependencyDashboard = toObject(this.get("dependencyDashboard"));
28
+ if (!dependencyDashboard) return;
29
+ if (key !== "dependencyDashboard") {
30
+ dependencyDashboard[dependencyDashboardFields[key]] ??= value;
31
+ this.delete(key);
32
+ }
33
+ this.setHard("dependencyDashboard", dependencyDashboard);
34
+ }
35
+ };
36
+ export { DependencyDashboardMigration };
37
+
38
+ //# sourceMappingURL=dependency-dashboard-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-dashboard-migration.js","names":[],"sources":["../../../../lib/config/migrations/custom/dependency-dashboard-migration.ts"],"sourcesContent":["import { isBoolean, isNullOrUndefined, isPlainObject } from '@sindresorhus/is';\nimport type { DependencyDashboardConfig } from '../../types.ts';\nimport { AbstractMigration } from '../base/abstract-migration.ts';\n\nconst dependencyDashboardFields: Record<\n string,\n keyof DependencyDashboardConfig\n> = {\n customizeDashboard: 'customize',\n dependencyDashboardAutoclose: 'autoclose',\n dependencyDashboardFooter: 'footer',\n dependencyDashboardHeader: 'header',\n dependencyDashboardLabels: 'labels',\n dependencyDashboardOSVVulnerabilitySummary: 'osvVulnerabilitySummary',\n dependencyDashboardReportAbandonment: 'reportAbandonment',\n dependencyDashboardTitle: 'title',\n};\n\n/**\n * Converts a `dependencyDashboard` value from before it was an object, including the strings which were accepted for the boolean.\n *\n * Returns `undefined` for a value which can't be converted, so it's left for validation to report.\n */\nfunction toObject(value: unknown): Record<string, unknown> | undefined {\n if (isNullOrUndefined(value)) {\n return {};\n }\n if (isPlainObject(value)) {\n return { ...value };\n }\n if (isBoolean(value) || value === 'true' || value === 'false') {\n return { enabled: value === true || value === 'true' };\n }\n return undefined;\n}\n\nexport class DependencyDashboardMigration extends AbstractMigration {\n override readonly propertyName =\n // oxlint-disable-next-line renovate/require-regex-util -- must stay a native RegExp: MigrationsService matches propertyName via isRegExp(), which RE2 instances fail\n /^(?:customizeDashboard|dependencyDashboard(?:Autoclose|Footer|Header|Labels|OSVVulnerabilitySummary|ReportAbandonment|Title)?)$/;\n\n override run(value: unknown, key: string): void {\n const dependencyDashboard = toObject(this.get('dependencyDashboard'));\n if (!dependencyDashboard) {\n return;\n }\n\n if (key !== 'dependencyDashboard') {\n dependencyDashboard[dependencyDashboardFields[key]] ??= value;\n this.delete(key);\n }\n this.setHard('dependencyDashboard', dependencyDashboard);\n }\n}\n"],"mappings":";;;AAIA,MAAM,4BAGF;CACF,oBAAoB;CACpB,8BAA8B;CAC9B,2BAA2B;CAC3B,2BAA2B;CAC3B,2BAA2B;CAC3B,4CAA4C;CAC5C,sCAAsC;CACtC,0BAA0B;AAC5B;;;;;;AAOA,SAAS,SAAS,OAAqD;CACrE,IAAI,kBAAkB,KAAK,GACzB,OAAO,CAAC;CAEV,IAAI,cAAc,KAAK,GACrB,OAAO,EAAE,GAAG,MAAM;CAEpB,IAAI,UAAU,KAAK,KAAK,UAAU,UAAU,UAAU,SACpD,OAAO,EAAE,SAAS,UAAU,QAAQ,UAAU,OAAO;AAGzD;AAEA,IAAa,+BAAb,cAAkD,kBAAkB;CAClE,eAEE;CAEF,IAAa,OAAgB,KAAmB;EAC9C,MAAM,sBAAsB,SAAS,KAAK,IAAI,qBAAqB,CAAC;EACpE,IAAI,CAAC,qBACH;EAGF,IAAI,QAAQ,uBAAuB;GACjC,oBAAoB,0BAA0B,UAAU;GACxD,KAAK,OAAO,GAAG;EACjB;EACA,KAAK,QAAQ,uBAAuB,mBAAmB;CACzD;AACF"}
@@ -16,6 +16,7 @@ import { ConstraintsMigration } from "./custom/constraints-migration.js";
16
16
  import { CustomManagersMigration } from "./custom/custom-managers-migration.js";
17
17
  import { DatasourceMigration } from "./custom/datasource-migration.js";
18
18
  import { DepTypesMigration } from "./custom/dep-types-migration.js";
19
+ import { DependencyDashboardMigration } from "./custom/dependency-dashboard-migration.js";
19
20
  import { DryRunMigration } from "./custom/dry-run-migration.js";
20
21
  import { EnabledManagersMigration } from "./custom/enabled-managers-migration.js";
21
22
  import { ExtendsMigration } from "./custom/extends-migration.js";
@@ -166,7 +167,8 @@ var MigrationsService = class MigrationsService {
166
167
  PlatformCommitMigration,
167
168
  FileMatchMigration,
168
169
  UpdateLockFilesMigration,
169
- ConstraintsMigration
170
+ ConstraintsMigration,
171
+ DependencyDashboardMigration
170
172
  ];
171
173
  static run(originalConfig, parentKey) {
172
174
  const migratedConfig = {};
@@ -1 +1 @@
1
- {"version":3,"file":"migrations-service.js","names":[],"sources":["../../../lib/config/migrations/migrations-service.ts"],"sourcesContent":["import { isRegExp } from '@sindresorhus/is';\nimport { dequal } from 'dequal';\nimport type { RenovateConfig } from '../types.ts';\nimport { RemovePropertyMigration } from './base/remove-property-migration.ts';\nimport { RenamePropertyMigration } from './base/rename-property-migration.ts';\nimport { AutomergeMajorMigration } from './custom/automerge-major-migration.ts';\nimport { AutomergeMigration } from './custom/automerge-migration.ts';\nimport { AutomergeMinorMigration } from './custom/automerge-minor-migration.ts';\nimport { AutomergePatchMigration } from './custom/automerge-patch-migration.ts';\nimport { AutomergeTypeMigration } from './custom/automerge-type-migration.ts';\nimport { AzureGitLabAutomergeMigration } from './custom/azure-gitlab-automerge-migration.ts';\nimport { BaseBranchMigration } from './custom/base-branch-migration.ts';\nimport { BinarySourceMigration } from './custom/binary-source-migration.ts';\nimport { BranchNameMigration } from './custom/branch-name-migration.ts';\nimport { BranchPrefixMigration } from './custom/branch-prefix-migration.ts';\nimport { CompatibilityMigration } from './custom/compatibility-migration.ts';\nimport { ComposerIgnorePlatformReqsMigration } from './custom/composer-ignore-platform-reqs-migration.ts';\nimport { ConstraintsMigration } from './custom/constraints-migration.ts';\nimport { CustomManagersMigration } from './custom/custom-managers-migration.ts';\nimport { DatasourceMigration } from './custom/datasource-migration.ts';\nimport { DepTypesMigration } from './custom/dep-types-migration.ts';\nimport { DryRunMigration } from './custom/dry-run-migration.ts';\nimport { EnabledManagersMigration } from './custom/enabled-managers-migration.ts';\nimport { ExtendsMigration } from './custom/extends-migration.ts';\nimport { FetchReleaseNotesMigration } from './custom/fetch-release-notes-migration.ts';\nimport { FileMatchMigration } from './custom/file-match-migration.ts';\nimport { GoModTidyMigration } from './custom/go-mod-tidy-migration.ts';\nimport { HostRulesMigration } from './custom/host-rules-migration.ts';\nimport { IgnoreNodeModulesMigration } from './custom/ignore-node-modules-migration.ts';\nimport { IgnoreNpmrcFileMigration } from './custom/ignore-npmrc-file-migration.ts';\nimport { IncludeForksMigration } from './custom/include-forks-migration.ts';\nimport { MatchDatasourcesMigration } from './custom/match-datasources-migration.ts';\nimport { MatchManagersMigration } from './custom/match-managers-migration.ts';\nimport { MatchStringsMigration } from './custom/match-strings-migration.ts';\nimport { NodeMigration } from './custom/node-migration.ts';\nimport { PackageFilesMigration } from './custom/package-files-migration.ts';\nimport { PackageNameMigration } from './custom/package-name-migration.ts';\nimport { PackagePatternMigration } from './custom/package-pattern-migration.ts';\nimport { PackageRulesMigration } from './custom/package-rules-migration.ts';\nimport { PackagesMigration } from './custom/packages-migration.ts';\nimport { PathRulesMigration } from './custom/path-rules-migration.ts';\nimport { PinVersionsMigration } from './custom/pin-versions-migration.ts';\nimport { PlatformCommitMigration } from './custom/platform-commit-migration.ts';\nimport { PostUpdateOptionsMigration } from './custom/post-update-options-migration.ts';\nimport { RebaseConflictedPrs } from './custom/rebase-conflicted-prs-migration.ts';\nimport { RebaseStalePrsMigration } from './custom/rebase-stale-prs-migration.ts';\nimport { RecreateClosedMigration } from './custom/recreate-closed-migration.ts';\nimport { RenovateForkMigration } from './custom/renovate-fork-migration.ts';\nimport { RequireConfigMigration } from './custom/require-config-migration.ts';\nimport { RequiredStatusChecksMigration } from './custom/required-status-checks-migration.ts';\nimport { ScheduleMigration } from './custom/schedule-migration.ts';\nimport { SemanticCommitsMigration } from './custom/semantic-commits-migration.ts';\nimport { SemanticPrefixMigration } from './custom/semantic-prefix-migration.ts';\nimport { SeparateMajorReleasesMigration } from './custom/separate-major-release-migration.ts';\nimport { SeparateMultipleMajorMigration } from './custom/separate-multiple-major-migration.ts';\nimport { StabilityDaysMigration } from './custom/stability-days-migration.ts';\nimport { SuppressNotificationsMigration } from './custom/suppress-notifications-migration.ts';\nimport { TrustLevelMigration } from './custom/trust-level-migration.ts';\nimport { UnpublishSafeMigration } from './custom/unpublish-safe-migration.ts';\nimport { UpdateLockFilesMigration } from './custom/update-lock-files-migration.ts';\nimport { UpgradeInRangeMigration } from './custom/upgrade-in-range-migration.ts';\nimport { VersionStrategyMigration } from './custom/version-strategy-migration.ts';\nimport type {\n MigratableConfig,\n Migration,\n MigrationConstructor,\n} from './types.ts';\n\nexport class MigrationsService {\n static readonly removedProperties: ReadonlySet<string> = new Set([\n 'allowCommandTemplating',\n 'allowPostUpgradeCommandTemplating',\n 'deepExtract',\n 'gitFs',\n 'groupBranchName',\n 'groupCommitMessage',\n 'groupPrBody',\n 'groupPrTitle',\n 'lazyGrouping',\n 'maintainYarnLock',\n 'raiseDeprecationWarnings',\n 'statusCheckVerify',\n 'supportPolicy',\n 'transitiveRemediation',\n 'yarnCacheFolder',\n 'yarnMaintenanceBranchName',\n 'yarnMaintenanceCommitMessage',\n 'yarnMaintenancePrBody',\n 'yarnMaintenancePrTitle',\n ]);\n\n static readonly renamedProperties: ReadonlyMap<string, string> = new Map([\n ['adoptium-java', 'java-version'],\n ['allowCustomCrateRegistries', 'allowCustomCrateGitRegistries'],\n ['allowedPostUpgradeCommands', 'allowedCommands'],\n ['azureAutoApprove', 'autoApprove'],\n ['customChangelogUrl', 'changelogUrl'],\n ['endpoints', 'hostRules'],\n ['excludedPackageNames', 'excludePackageNames'],\n ['exposeEnv', 'exposeAllEnv'],\n ['keepalive', 'keepAlive'],\n ['managerBranchPrefix', 'additionalBranchPrefix'],\n ['multipleMajorPrs', 'separateMultipleMajor'],\n ['separatePatchReleases', 'separateMinorPatch'],\n ['versionScheme', 'versioning'],\n ['lookupNameTemplate', 'packageNameTemplate'],\n ['aliases', 'registryAliases'],\n ['masterIssue', 'dependencyDashboard'],\n ['masterIssueApproval', 'dependencyDashboardApproval'],\n ['masterIssueAutoclose', 'dependencyDashboardAutoclose'],\n ['masterIssueHeader', 'dependencyDashboardHeader'],\n ['masterIssueFooter', 'dependencyDashboardFooter'],\n ['masterIssueTitle', 'dependencyDashboardTitle'],\n ['masterIssueLabels', 'dependencyDashboardLabels'],\n ['regexManagers', 'customManagers'],\n ['baseBranches', 'baseBranchPatterns'],\n ['renovate-config-presets', 'renovate-config'],\n ]);\n\n static readonly customMigrations: readonly MigrationConstructor[] = [\n AutomergeMajorMigration,\n AutomergeMigration,\n AutomergeMinorMigration,\n AutomergePatchMigration,\n AutomergeTypeMigration,\n AzureGitLabAutomergeMigration,\n BaseBranchMigration,\n BinarySourceMigration,\n BranchNameMigration,\n BranchPrefixMigration,\n CompatibilityMigration,\n ComposerIgnorePlatformReqsMigration,\n EnabledManagersMigration,\n ExtendsMigration,\n GoModTidyMigration,\n HostRulesMigration,\n IgnoreNodeModulesMigration,\n IgnoreNpmrcFileMigration,\n IncludeForksMigration,\n MatchStringsMigration,\n PackageNameMigration,\n PackagePatternMigration,\n PackagesMigration,\n PathRulesMigration,\n PinVersionsMigration,\n PostUpdateOptionsMigration,\n RebaseConflictedPrs,\n RebaseStalePrsMigration,\n RenovateForkMigration,\n RequiredStatusChecksMigration,\n ScheduleMigration,\n SemanticCommitsMigration,\n SeparateMajorReleasesMigration,\n SeparateMultipleMajorMigration,\n SuppressNotificationsMigration,\n TrustLevelMigration,\n UnpublishSafeMigration,\n UpgradeInRangeMigration,\n VersionStrategyMigration,\n DryRunMigration,\n RequireConfigMigration,\n PackageFilesMigration,\n DepTypesMigration,\n PackageRulesMigration,\n NodeMigration,\n SemanticPrefixMigration,\n MatchDatasourcesMigration,\n DatasourceMigration,\n RecreateClosedMigration,\n StabilityDaysMigration,\n FetchReleaseNotesMigration,\n MatchManagersMigration,\n CustomManagersMigration,\n PlatformCommitMigration,\n FileMatchMigration,\n UpdateLockFilesMigration,\n ConstraintsMigration,\n ];\n\n static run(\n originalConfig: MigratableConfig,\n parentKey?: string,\n ): RenovateConfig {\n const migratedConfig: RenovateConfig = {};\n const migrations = this.getMigrations(originalConfig, migratedConfig);\n\n for (const [key, value] of Object.entries(originalConfig) as [\n keyof RenovateConfig,\n unknown,\n ][]) {\n // @ts-expect-error -- can't be narrowed\n migratedConfig[key] ??= value;\n const migration = MigrationsService.getMigration(migrations, key);\n\n if (migration) {\n migration.run(value, key, parentKey);\n\n if (migration.deprecated) {\n delete migratedConfig[key];\n }\n }\n }\n\n return migratedConfig;\n }\n\n static isMigrated(\n originalConfig: MigratableConfig,\n migratedConfig: RenovateConfig,\n ): boolean {\n return !dequal(originalConfig, migratedConfig);\n }\n\n public static getMigrations(\n originalConfig: MigratableConfig,\n migratedConfig: RenovateConfig,\n ): readonly Migration[] {\n const migrations: Migration[] = [];\n\n for (const propertyName of MigrationsService.removedProperties) {\n migrations.push(\n new RemovePropertyMigration(\n propertyName,\n originalConfig,\n migratedConfig,\n ),\n );\n }\n\n for (const [\n oldPropertyName,\n newPropertyName,\n ] of MigrationsService.renamedProperties.entries()) {\n migrations.push(\n new RenamePropertyMigration(\n oldPropertyName,\n newPropertyName,\n originalConfig,\n migratedConfig,\n ),\n );\n }\n\n for (const CustomMigration of this.customMigrations) {\n migrations.push(new CustomMigration(originalConfig, migratedConfig));\n }\n\n return migrations;\n }\n\n private static getMigration(\n migrations: readonly Migration[],\n key: string,\n ): Migration | undefined {\n return migrations.find((migration) => {\n if (isRegExp(migration.propertyName)) {\n return migration.propertyName.test(key);\n }\n\n return migration.propertyName === key;\n });\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"migrations-service.js","names":[],"sources":["../../../lib/config/migrations/migrations-service.ts"],"sourcesContent":["import { isRegExp } from '@sindresorhus/is';\nimport { dequal } from 'dequal';\nimport type { RenovateConfig } from '../types.ts';\nimport { RemovePropertyMigration } from './base/remove-property-migration.ts';\nimport { RenamePropertyMigration } from './base/rename-property-migration.ts';\nimport { AutomergeMajorMigration } from './custom/automerge-major-migration.ts';\nimport { AutomergeMigration } from './custom/automerge-migration.ts';\nimport { AutomergeMinorMigration } from './custom/automerge-minor-migration.ts';\nimport { AutomergePatchMigration } from './custom/automerge-patch-migration.ts';\nimport { AutomergeTypeMigration } from './custom/automerge-type-migration.ts';\nimport { AzureGitLabAutomergeMigration } from './custom/azure-gitlab-automerge-migration.ts';\nimport { BaseBranchMigration } from './custom/base-branch-migration.ts';\nimport { BinarySourceMigration } from './custom/binary-source-migration.ts';\nimport { BranchNameMigration } from './custom/branch-name-migration.ts';\nimport { BranchPrefixMigration } from './custom/branch-prefix-migration.ts';\nimport { CompatibilityMigration } from './custom/compatibility-migration.ts';\nimport { ComposerIgnorePlatformReqsMigration } from './custom/composer-ignore-platform-reqs-migration.ts';\nimport { ConstraintsMigration } from './custom/constraints-migration.ts';\nimport { CustomManagersMigration } from './custom/custom-managers-migration.ts';\nimport { DatasourceMigration } from './custom/datasource-migration.ts';\nimport { DepTypesMigration } from './custom/dep-types-migration.ts';\nimport { DependencyDashboardMigration } from './custom/dependency-dashboard-migration.ts';\nimport { DryRunMigration } from './custom/dry-run-migration.ts';\nimport { EnabledManagersMigration } from './custom/enabled-managers-migration.ts';\nimport { ExtendsMigration } from './custom/extends-migration.ts';\nimport { FetchReleaseNotesMigration } from './custom/fetch-release-notes-migration.ts';\nimport { FileMatchMigration } from './custom/file-match-migration.ts';\nimport { GoModTidyMigration } from './custom/go-mod-tidy-migration.ts';\nimport { HostRulesMigration } from './custom/host-rules-migration.ts';\nimport { IgnoreNodeModulesMigration } from './custom/ignore-node-modules-migration.ts';\nimport { IgnoreNpmrcFileMigration } from './custom/ignore-npmrc-file-migration.ts';\nimport { IncludeForksMigration } from './custom/include-forks-migration.ts';\nimport { MatchDatasourcesMigration } from './custom/match-datasources-migration.ts';\nimport { MatchManagersMigration } from './custom/match-managers-migration.ts';\nimport { MatchStringsMigration } from './custom/match-strings-migration.ts';\nimport { NodeMigration } from './custom/node-migration.ts';\nimport { PackageFilesMigration } from './custom/package-files-migration.ts';\nimport { PackageNameMigration } from './custom/package-name-migration.ts';\nimport { PackagePatternMigration } from './custom/package-pattern-migration.ts';\nimport { PackageRulesMigration } from './custom/package-rules-migration.ts';\nimport { PackagesMigration } from './custom/packages-migration.ts';\nimport { PathRulesMigration } from './custom/path-rules-migration.ts';\nimport { PinVersionsMigration } from './custom/pin-versions-migration.ts';\nimport { PlatformCommitMigration } from './custom/platform-commit-migration.ts';\nimport { PostUpdateOptionsMigration } from './custom/post-update-options-migration.ts';\nimport { RebaseConflictedPrs } from './custom/rebase-conflicted-prs-migration.ts';\nimport { RebaseStalePrsMigration } from './custom/rebase-stale-prs-migration.ts';\nimport { RecreateClosedMigration } from './custom/recreate-closed-migration.ts';\nimport { RenovateForkMigration } from './custom/renovate-fork-migration.ts';\nimport { RequireConfigMigration } from './custom/require-config-migration.ts';\nimport { RequiredStatusChecksMigration } from './custom/required-status-checks-migration.ts';\nimport { ScheduleMigration } from './custom/schedule-migration.ts';\nimport { SemanticCommitsMigration } from './custom/semantic-commits-migration.ts';\nimport { SemanticPrefixMigration } from './custom/semantic-prefix-migration.ts';\nimport { SeparateMajorReleasesMigration } from './custom/separate-major-release-migration.ts';\nimport { SeparateMultipleMajorMigration } from './custom/separate-multiple-major-migration.ts';\nimport { StabilityDaysMigration } from './custom/stability-days-migration.ts';\nimport { SuppressNotificationsMigration } from './custom/suppress-notifications-migration.ts';\nimport { TrustLevelMigration } from './custom/trust-level-migration.ts';\nimport { UnpublishSafeMigration } from './custom/unpublish-safe-migration.ts';\nimport { UpdateLockFilesMigration } from './custom/update-lock-files-migration.ts';\nimport { UpgradeInRangeMigration } from './custom/upgrade-in-range-migration.ts';\nimport { VersionStrategyMigration } from './custom/version-strategy-migration.ts';\nimport type {\n MigratableConfig,\n Migration,\n MigrationConstructor,\n} from './types.ts';\n\nexport class MigrationsService {\n static readonly removedProperties: ReadonlySet<string> = new Set([\n 'allowCommandTemplating',\n 'allowPostUpgradeCommandTemplating',\n 'deepExtract',\n 'gitFs',\n 'groupBranchName',\n 'groupCommitMessage',\n 'groupPrBody',\n 'groupPrTitle',\n 'lazyGrouping',\n 'maintainYarnLock',\n 'raiseDeprecationWarnings',\n 'statusCheckVerify',\n 'supportPolicy',\n 'transitiveRemediation',\n 'yarnCacheFolder',\n 'yarnMaintenanceBranchName',\n 'yarnMaintenanceCommitMessage',\n 'yarnMaintenancePrBody',\n 'yarnMaintenancePrTitle',\n ]);\n\n static readonly renamedProperties: ReadonlyMap<string, string> = new Map([\n ['adoptium-java', 'java-version'],\n ['allowCustomCrateRegistries', 'allowCustomCrateGitRegistries'],\n ['allowedPostUpgradeCommands', 'allowedCommands'],\n ['azureAutoApprove', 'autoApprove'],\n ['customChangelogUrl', 'changelogUrl'],\n ['endpoints', 'hostRules'],\n ['excludedPackageNames', 'excludePackageNames'],\n ['exposeEnv', 'exposeAllEnv'],\n ['keepalive', 'keepAlive'],\n ['managerBranchPrefix', 'additionalBranchPrefix'],\n ['multipleMajorPrs', 'separateMultipleMajor'],\n ['separatePatchReleases', 'separateMinorPatch'],\n ['versionScheme', 'versioning'],\n ['lookupNameTemplate', 'packageNameTemplate'],\n ['aliases', 'registryAliases'],\n ['masterIssue', 'dependencyDashboard'],\n ['masterIssueApproval', 'dependencyDashboardApproval'],\n ['masterIssueAutoclose', 'dependencyDashboardAutoclose'],\n ['masterIssueHeader', 'dependencyDashboardHeader'],\n ['masterIssueFooter', 'dependencyDashboardFooter'],\n ['masterIssueTitle', 'dependencyDashboardTitle'],\n ['masterIssueLabels', 'dependencyDashboardLabels'],\n ['regexManagers', 'customManagers'],\n ['baseBranches', 'baseBranchPatterns'],\n ['renovate-config-presets', 'renovate-config'],\n ]);\n\n static readonly customMigrations: readonly MigrationConstructor[] = [\n AutomergeMajorMigration,\n AutomergeMigration,\n AutomergeMinorMigration,\n AutomergePatchMigration,\n AutomergeTypeMigration,\n AzureGitLabAutomergeMigration,\n BaseBranchMigration,\n BinarySourceMigration,\n BranchNameMigration,\n BranchPrefixMigration,\n CompatibilityMigration,\n ComposerIgnorePlatformReqsMigration,\n EnabledManagersMigration,\n ExtendsMigration,\n GoModTidyMigration,\n HostRulesMigration,\n IgnoreNodeModulesMigration,\n IgnoreNpmrcFileMigration,\n IncludeForksMigration,\n MatchStringsMigration,\n PackageNameMigration,\n PackagePatternMigration,\n PackagesMigration,\n PathRulesMigration,\n PinVersionsMigration,\n PostUpdateOptionsMigration,\n RebaseConflictedPrs,\n RebaseStalePrsMigration,\n RenovateForkMigration,\n RequiredStatusChecksMigration,\n ScheduleMigration,\n SemanticCommitsMigration,\n SeparateMajorReleasesMigration,\n SeparateMultipleMajorMigration,\n SuppressNotificationsMigration,\n TrustLevelMigration,\n UnpublishSafeMigration,\n UpgradeInRangeMigration,\n VersionStrategyMigration,\n DryRunMigration,\n RequireConfigMigration,\n PackageFilesMigration,\n DepTypesMigration,\n PackageRulesMigration,\n NodeMigration,\n SemanticPrefixMigration,\n MatchDatasourcesMigration,\n DatasourceMigration,\n RecreateClosedMigration,\n StabilityDaysMigration,\n FetchReleaseNotesMigration,\n MatchManagersMigration,\n CustomManagersMigration,\n PlatformCommitMigration,\n FileMatchMigration,\n UpdateLockFilesMigration,\n ConstraintsMigration,\n DependencyDashboardMigration,\n ];\n\n static run(\n originalConfig: MigratableConfig,\n parentKey?: string,\n ): RenovateConfig {\n const migratedConfig: RenovateConfig = {};\n const migrations = this.getMigrations(originalConfig, migratedConfig);\n\n for (const [key, value] of Object.entries(originalConfig) as [\n keyof RenovateConfig,\n unknown,\n ][]) {\n // @ts-expect-error -- can't be narrowed\n migratedConfig[key] ??= value;\n const migration = MigrationsService.getMigration(migrations, key);\n\n if (migration) {\n migration.run(value, key, parentKey);\n\n if (migration.deprecated) {\n delete migratedConfig[key];\n }\n }\n }\n\n return migratedConfig;\n }\n\n static isMigrated(\n originalConfig: MigratableConfig,\n migratedConfig: RenovateConfig,\n ): boolean {\n return !dequal(originalConfig, migratedConfig);\n }\n\n public static getMigrations(\n originalConfig: MigratableConfig,\n migratedConfig: RenovateConfig,\n ): readonly Migration[] {\n const migrations: Migration[] = [];\n\n for (const propertyName of MigrationsService.removedProperties) {\n migrations.push(\n new RemovePropertyMigration(\n propertyName,\n originalConfig,\n migratedConfig,\n ),\n );\n }\n\n for (const [\n oldPropertyName,\n newPropertyName,\n ] of MigrationsService.renamedProperties.entries()) {\n migrations.push(\n new RenamePropertyMigration(\n oldPropertyName,\n newPropertyName,\n originalConfig,\n migratedConfig,\n ),\n );\n }\n\n for (const CustomMigration of this.customMigrations) {\n migrations.push(new CustomMigration(originalConfig, migratedConfig));\n }\n\n return migrations;\n }\n\n private static getMigration(\n migrations: readonly Migration[],\n key: string,\n ): Migration | undefined {\n return migrations.find((migration) => {\n if (isRegExp(migration.propertyName)) {\n return migration.propertyName.test(key);\n }\n\n return migration.propertyName === key;\n });\n }\n}\n"],"mappings":"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"}
@@ -549,7 +549,11 @@ const options = [
549
549
  "manager",
550
550
  "updateType"
551
551
  ],
552
- parents: ["hostRules", "vulnerabilityAlerts"]
552
+ parents: [
553
+ "dependencyDashboard",
554
+ "hostRules",
555
+ "vulnerabilityAlerts"
556
+ ]
553
557
  },
554
558
  {
555
559
  name: "constraintsFiltering",
@@ -967,75 +971,107 @@ const options = [
967
971
  {
968
972
  name: "dependencyDashboard",
969
973
  scopes: ["repo"],
970
- description: "Whether to create a \"Dependency Dashboard\" issue in the repository.",
971
- type: "boolean",
972
- default: false
973
- },
974
- {
975
- name: "dependencyDashboardApproval",
976
- scopes: sharedScopes,
977
- description: "Controls if updates need manual approval from the Dependency Dashboard issue before PRs are created.",
978
- type: "boolean",
979
- default: false
974
+ description: "Configuration for the \"Dependency Dashboard\" issue.",
975
+ type: "object",
976
+ default: {
977
+ enabled: false,
978
+ autoclose: false,
979
+ title: "Dependency Dashboard",
980
+ header: "This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.",
981
+ osvVulnerabilitySummary: "none",
982
+ reportAbandonment: true,
983
+ customize: {}
984
+ },
985
+ mergeable: true,
986
+ additionalProperties: false
980
987
  },
981
988
  {
982
- name: "dependencyDashboardAutoclose",
983
- scopes: ["repo"],
989
+ name: "autoclose",
984
990
  description: "Set to `true` to let Renovate close the Dependency Dashboard issue if there are no more updates.",
985
991
  type: "boolean",
986
- default: false
992
+ parents: ["dependencyDashboard"],
993
+ default: false,
994
+ cli: false,
995
+ env: false
987
996
  },
988
997
  {
989
- name: "dependencyDashboardTitle",
990
- scopes: ["repo"],
998
+ name: "title",
991
999
  description: "Title for the Dependency Dashboard issue.",
992
1000
  type: "string",
993
- default: `Dependency Dashboard`
994
- },
995
- {
996
- name: "dependencyDashboardCategory",
997
- scopes: sharedScopes,
998
- description: "The category to group branches on the Dependency Dashboard issue.",
999
- type: "string",
1000
- default: null,
1001
+ parents: ["dependencyDashboard"],
1002
+ default: `Dependency Dashboard`,
1001
1003
  cli: false,
1002
1004
  env: false
1003
1005
  },
1004
1006
  {
1005
- name: "dependencyDashboardHeader",
1006
- scopes: ["repo"],
1007
+ name: "header",
1007
1008
  description: "Any text added here will be placed first in the Dependency Dashboard issue body.",
1008
1009
  type: "string",
1010
+ parents: ["dependencyDashboard"],
1009
1011
  default: "This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.",
1010
- supportsTemplating: true
1012
+ supportsTemplating: true,
1013
+ cli: false,
1014
+ env: false
1011
1015
  },
1012
1016
  {
1013
- name: "dependencyDashboardFooter",
1014
- scopes: ["repo"],
1017
+ name: "footer",
1015
1018
  description: "Any text added here will be placed last in the Dependency Dashboard issue body, with a divider separator before it.",
1016
1019
  type: "string",
1017
- supportsTemplating: true
1018
- },
1019
- {
1020
- name: "dependencyDashboardLabels",
1021
- scopes: ["repo"],
1022
- description: "These labels will always be applied on the Dependency Dashboard issue, even when they have been removed manually.",
1023
- type: "array",
1024
- subType: "string",
1025
- default: null
1020
+ parents: ["dependencyDashboard"],
1021
+ supportsTemplating: true,
1022
+ cli: false,
1023
+ env: false
1026
1024
  },
1027
1025
  {
1028
- name: "dependencyDashboardOSVVulnerabilitySummary",
1029
- scopes: ["repo"],
1026
+ name: "osvVulnerabilitySummary",
1030
1027
  description: "Control if the Dependency Dashboard issue lists CVEs supplied by [osv.dev](https://osv.dev).",
1031
1028
  type: "string",
1029
+ parents: ["dependencyDashboard"],
1032
1030
  allowedValues: [
1033
1031
  "none",
1034
1032
  "all",
1035
1033
  "unresolved"
1036
1034
  ],
1037
1035
  default: "none",
1038
- experimental: true
1036
+ experimental: true,
1037
+ cli: false,
1038
+ env: false
1039
+ },
1040
+ {
1041
+ name: "reportAbandonment",
1042
+ description: "Controls whether abandoned packages are reported in the Dependency Dashboard issue.",
1043
+ type: "boolean",
1044
+ parents: ["dependencyDashboard"],
1045
+ default: true,
1046
+ cli: false,
1047
+ env: false
1048
+ },
1049
+ {
1050
+ name: "customize",
1051
+ description: "Customize sections in the Dependency Dashboard issue.",
1052
+ type: "object",
1053
+ parents: ["dependencyDashboard"],
1054
+ default: {},
1055
+ freeChoice: true,
1056
+ additionalProperties: { type: "string" },
1057
+ cli: false,
1058
+ env: false
1059
+ },
1060
+ {
1061
+ name: "dependencyDashboardApproval",
1062
+ scopes: sharedScopes,
1063
+ description: "Controls if updates need manual approval from the Dependency Dashboard issue before PRs are created.",
1064
+ type: "boolean",
1065
+ default: false
1066
+ },
1067
+ {
1068
+ name: "dependencyDashboardCategory",
1069
+ scopes: sharedScopes,
1070
+ description: "The category to group branches on the Dependency Dashboard issue.",
1071
+ type: "string",
1072
+ default: null,
1073
+ cli: false,
1074
+ env: false
1039
1075
  },
1040
1076
  {
1041
1077
  name: "configWarningReuseIssue",
@@ -1486,9 +1522,11 @@ const options = [
1486
1522
  "helmfile",
1487
1523
  "helmsman",
1488
1524
  "helmv3",
1525
+ "jsonata",
1489
1526
  "kubernetes",
1490
1527
  "kustomize",
1491
1528
  "maven",
1529
+ "regex",
1492
1530
  "terraform",
1493
1531
  "vendir",
1494
1532
  "woodpecker"
@@ -1669,7 +1707,7 @@ const options = [
1669
1707
  type: "array",
1670
1708
  subType: "string",
1671
1709
  allowString: true,
1672
- suggestedValues: [...AllManagersListLiteral, ...CustomManagersListLiteral.map((manager) => `custom.${manager}`)],
1710
+ allowedValues: [...AllManagersListLiteral, ...CustomManagersListLiteral.map((manager) => `custom.${manager}`)],
1673
1711
  parents: ["packageRules"],
1674
1712
  stage: "package",
1675
1713
  mergeable: true,
@@ -2379,13 +2417,6 @@ const options = [
2379
2417
  type: "string",
2380
2418
  default: null
2381
2419
  },
2382
- {
2383
- name: "dependencyDashboardReportAbandonment",
2384
- scopes: ["repo"],
2385
- description: "Controls whether abandoned packages are reported in the dependency dashboard.",
2386
- type: "boolean",
2387
- default: true
2388
- },
2389
2420
  {
2390
2421
  name: "internalChecksAsSuccess",
2391
2422
  scopes: sharedScopes,
@@ -2802,15 +2833,6 @@ const options = [
2802
2833
  default: `This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).`,
2803
2834
  supportsTemplating: true
2804
2835
  },
2805
- {
2806
- name: "customizeDashboard",
2807
- scopes: ["repo"],
2808
- description: "Customize sections in the Dependency Dashboard issue.",
2809
- type: "object",
2810
- default: {},
2811
- freeChoice: true,
2812
- additionalProperties: { type: "string" }
2813
- },
2814
2836
  {
2815
2837
  name: "lockFileMaintenance",
2816
2838
  scopes: [
@@ -2888,7 +2910,8 @@ const options = [
2888
2910
  {
2889
2911
  name: "labels",
2890
2912
  scopes: sharedScopes,
2891
- description: "Labels to set in Pull Request.",
2913
+ parents: ["dependencyDashboard"],
2914
+ description: "Labels to set in Pull Request, or on the Dependency Dashboard issue when used in `dependencyDashboard`.",
2892
2915
  type: "array",
2893
2916
  subType: "string",
2894
2917
  supportsTemplating: true