renovate 43.278.4 → 43.279.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 (97) hide show
  1. package/dist/config/migration.js.map +1 -1
  2. package/dist/config/migrations/custom/dep-types-migration.js.map +1 -1
  3. package/dist/config/options/index.js +1 -1
  4. package/dist/config/options/index.js.map +1 -1
  5. package/dist/config/secrets.js.map +1 -1
  6. package/dist/config/validation-helpers/utils.js.map +1 -1
  7. package/dist/config/validation.js.map +1 -1
  8. package/dist/global-config-option-defaults.generated.js +1 -1
  9. package/dist/global-config-option-defaults.generated.js.map +1 -1
  10. package/dist/logger/remap.js.map +1 -1
  11. package/dist/modules/datasource/bazel/index.js +2 -1
  12. package/dist/modules/datasource/bazel/index.js.map +1 -1
  13. package/dist/modules/datasource/deb/index.js.map +1 -1
  14. package/dist/modules/datasource/deb/packages.js.map +1 -1
  15. package/dist/modules/datasource/docker/index.js.map +1 -1
  16. package/dist/modules/datasource/golang-version/index.js.map +1 -1
  17. package/dist/modules/datasource/index.js.map +1 -1
  18. package/dist/modules/datasource/maven/util.js.map +1 -1
  19. package/dist/modules/manager/bazel/artifacts.js.map +1 -1
  20. package/dist/modules/manager/bazel-module/parser/maven.js.map +1 -1
  21. package/dist/modules/manager/buildpacks/extract.js.map +1 -1
  22. package/dist/modules/manager/bundler/extract.js.map +1 -1
  23. package/dist/modules/manager/cargo/extract.js.map +1 -1
  24. package/dist/modules/manager/deps-edn/extract.js.map +1 -1
  25. package/dist/modules/manager/deps-edn/parser.js.map +1 -1
  26. package/dist/modules/manager/dockerfile/extract.js.map +1 -1
  27. package/dist/modules/manager/flux/common.js.map +1 -1
  28. package/dist/modules/manager/github-actions/community.js +1 -2
  29. package/dist/modules/manager/github-actions/community.js.map +1 -1
  30. package/dist/modules/manager/github-actions/extract.js +1 -2
  31. package/dist/modules/manager/github-actions/extract.js.map +1 -1
  32. package/dist/modules/manager/github-actions/schema.js +3 -1
  33. package/dist/modules/manager/github-actions/schema.js.map +1 -1
  34. package/dist/modules/manager/gradle/parser/handlers.js.map +1 -1
  35. package/dist/modules/manager/jenkins/extract.js.map +1 -1
  36. package/dist/modules/manager/leiningen/extract.js.map +1 -1
  37. package/dist/modules/manager/maven/extract.js.map +1 -1
  38. package/dist/modules/manager/npm/artifacts.js.map +1 -1
  39. package/dist/modules/manager/npm/extract/common/package-file.js.map +1 -1
  40. package/dist/modules/manager/npm/extract/index.js.map +1 -1
  41. package/dist/modules/manager/npm/extract/post/locked-versions.js.map +1 -1
  42. package/dist/modules/manager/npm/extract/yarnrc.js.map +1 -1
  43. package/dist/modules/manager/npm/post-update/index.js.map +1 -1
  44. package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
  45. package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
  46. package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
  47. package/dist/modules/manager/npm/update/locked-dependency/common/parent-version.js.map +1 -1
  48. package/dist/modules/manager/npm/update/locked-dependency/package-lock/dep-constraints.js.map +1 -1
  49. package/dist/modules/manager/nuget/extract.js.map +1 -1
  50. package/dist/modules/manager/nuget/util.js.map +1 -1
  51. package/dist/modules/manager/pep621/processors/pdm.js.map +1 -1
  52. package/dist/modules/manager/pre-commit/extract.js.map +1 -1
  53. package/dist/modules/manager/terraform/lockfile/index.js.map +1 -1
  54. package/dist/modules/manager/tflint-plugin/plugins.js.map +1 -1
  55. package/dist/modules/manager/travis/extract.js.map +1 -1
  56. package/dist/modules/platform/comment.js.map +1 -1
  57. package/dist/modules/platform/gerrit/scm.js.map +1 -1
  58. package/dist/modules/platform/github/index.js +2 -2
  59. package/dist/modules/platform/github/index.js.map +1 -1
  60. package/dist/modules/platform/github/issue.js +1 -31
  61. package/dist/modules/platform/github/issue.js.map +1 -1
  62. package/dist/modules/platform/github/schema.js +30 -1
  63. package/dist/modules/platform/github/schema.js.map +1 -1
  64. package/dist/modules/platform/gitlab/http.js +2 -1
  65. package/dist/modules/platform/gitlab/http.js.map +1 -1
  66. package/dist/modules/platform/gitlab/index.js +1 -1
  67. package/dist/modules/platform/gitlab/roles.js +3 -4
  68. package/dist/modules/platform/gitlab/roles.js.map +1 -1
  69. package/dist/modules/platform/gitlab/schema.js +5 -1
  70. package/dist/modules/platform/gitlab/schema.js.map +1 -1
  71. package/dist/modules/versioning/conan/range.js.map +1 -1
  72. package/dist/modules/versioning/maven/compare.js.map +1 -1
  73. package/dist/modules/versioning/nuget/range.js.map +1 -1
  74. package/dist/modules/versioning/poetry/transform.js.map +1 -1
  75. package/dist/util/cache/memory/index.js.map +1 -1
  76. package/dist/util/cache/repository/impl/base.js.map +1 -1
  77. package/dist/util/check-token.js.map +1 -1
  78. package/dist/util/exec/containerbase.js.map +1 -1
  79. package/dist/util/git/index.js.map +1 -1
  80. package/dist/util/http/github.js.map +1 -1
  81. package/dist/util/interpolator.js.map +1 -1
  82. package/dist/workers/global/config/parse/cli.js.map +1 -1
  83. package/dist/workers/global/config/parse/env.js.map +1 -1
  84. package/dist/workers/global/config/parse/index.js.map +1 -1
  85. package/dist/workers/repository/extract/index.js.map +1 -1
  86. package/dist/workers/repository/extract/manager-files.js.map +1 -1
  87. package/dist/workers/repository/init/vulnerability.js.map +1 -1
  88. package/dist/workers/repository/process/limits.js.map +1 -1
  89. package/dist/workers/repository/process/lookup/filter-checks.js.map +1 -1
  90. package/dist/workers/repository/process/lookup/index.js.map +1 -1
  91. package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
  92. package/dist/workers/repository/update/pr/changelog/release-notes.js +1 -1
  93. package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
  94. package/dist/workers/repository/update/pr/index.js.map +1 -1
  95. package/dist/workers/repository/updates/generate.js.map +1 -1
  96. package/package.json +3 -3
  97. package/renovate-schema.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"migration.js","names":[],"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 if (\n // @ts-expect-error -- TODO: fix me\n isNonEmptyArray(migratedConfig.matchManagers) &&\n // @ts-expect-error -- TODO: fix me\n migratedConfig.matchManagers.includes('gradle-lite')\n ) {\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 // @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":[],"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 if (\n // @ts-expect-error -- TODO: fix me\n isNonEmptyArray(migratedConfig.matchManagers) &&\n // @ts-expect-error -- TODO: fix me\n migratedConfig.matchManagers.includes('gradle-lite')\n ) {\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 // @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 +1 @@
1
- {"version":3,"file":"dep-types-migration.js","names":[],"sources":["../../../../lib/config/migrations/custom/dep-types-migration.ts"],"sourcesContent":["import { isArray, isNonEmptyObject, isObject } from '@sindresorhus/is';\nimport type { PackageRule } from '../../types.ts';\nimport { AbstractMigration } from '../base/abstract-migration.ts';\n\ninterface DepTypesRule extends PackageRule {\n depType?: string;\n}\n\nexport class DepTypesMigration extends AbstractMigration {\n override readonly deprecated = true;\n override readonly propertyName =\n /^(?:(?:d|devD|optionalD|peerD)ependencies|engines|depTypes)$/;\n\n override run(value: unknown, key: string): void {\n const packageRules: PackageRule[] = this.get('packageRules') ?? [];\n if (isNonEmptyObject(value) && !isArray(value)) {\n packageRules.push({\n matchDepTypes: [key],\n ...value,\n });\n }\n\n if (isArray(value)) {\n for (const depType of value as DepTypesRule[]) {\n if (isObject(depType) && !isArray(depType)) {\n const depTypeName = depType.depType;\n if (depTypeName) {\n delete depType.depType;\n depType.matchDepTypes = [depTypeName];\n packageRules.push({ ...(depType as PackageRule) });\n }\n }\n }\n }\n\n if (packageRules.length) {\n this.setHard('packageRules', packageRules);\n }\n }\n}\n"],"mappings":";;;AAQA,IAAa,oBAAb,cAAuC,kBAAkB;CACvD,aAA+B;CAC/B,eACE;CAEF,IAAa,OAAgB,KAAmB;EAC9C,MAAM,eAA8B,KAAK,IAAI,cAAc,KAAK,CAAC;EACjE,IAAI,iBAAiB,KAAK,KAAK,CAAC,QAAQ,KAAK,GAC3C,aAAa,KAAK;GAChB,eAAe,CAAC,GAAG;GACnB,GAAG;EACL,CAAC;EAGH,IAAI,QAAQ,KAAK;QACV,MAAM,WAAW,OACpB,IAAI,SAAS,OAAO,KAAK,CAAC,QAAQ,OAAO,GAAG;IAC1C,MAAM,cAAc,QAAQ;IAC5B,IAAI,aAAa;KACf,OAAO,QAAQ;KACf,QAAQ,gBAAgB,CAAC,WAAW;KACpC,aAAa,KAAK,EAAE,GAAI,QAAwB,CAAC;IACnD;GACF;;EAIJ,IAAI,aAAa,QACf,KAAK,QAAQ,gBAAgB,YAAY;CAE7C;AACF"}
1
+ {"version":3,"file":"dep-types-migration.js","names":[],"sources":["../../../../lib/config/migrations/custom/dep-types-migration.ts"],"sourcesContent":["import { isArray, isNonEmptyObject, isObject } from '@sindresorhus/is';\nimport type { PackageRule } from '../../types.ts';\nimport { AbstractMigration } from '../base/abstract-migration.ts';\n\ninterface DepTypesRule extends PackageRule {\n depType?: string;\n}\n\nexport class DepTypesMigration extends AbstractMigration {\n override readonly deprecated = true;\n override readonly propertyName =\n /^(?:(?:d|devD|optionalD|peerD)ependencies|engines|depTypes)$/;\n\n override run(value: unknown, key: string): void {\n const packageRules: PackageRule[] = this.get('packageRules') ?? [];\n if (isNonEmptyObject(value) && !isArray(value)) {\n packageRules.push({\n matchDepTypes: [key],\n ...value,\n });\n }\n\n if (isArray(value)) {\n for (const depType of value as DepTypesRule[]) {\n if (isObject(depType) && !isArray(depType)) {\n const depTypeName = depType.depType;\n if (depTypeName) {\n delete depType.depType;\n depType.matchDepTypes = [depTypeName];\n packageRules.push({ ...(depType as PackageRule) });\n }\n }\n }\n }\n\n if (packageRules.length) {\n this.setHard('packageRules', packageRules);\n }\n }\n}\n"],"mappings":";;;AAQA,IAAa,oBAAb,cAAuC,kBAAkB;CACvD,aAA+B;CAC/B,eACE;CAEF,IAAa,OAAgB,KAAmB;EAC9C,MAAM,eAA8B,KAAK,IAAI,cAAc,KAAK,CAAC;EACjE,IAAI,iBAAiB,KAAK,KAAK,CAAC,QAAQ,KAAK,GAC3C,aAAa,KAAK;GAChB,eAAe,CAAC,GAAG;GACnB,GAAG;EACL,CAAC;EAGH,IAAI,QAAQ,KAAK,GACV;QAAA,MAAM,WAAW,OACpB,IAAI,SAAS,OAAO,KAAK,CAAC,QAAQ,OAAO,GAAG;IAC1C,MAAM,cAAc,QAAQ;IAC5B,IAAI,aAAa;KACf,OAAO,QAAQ;KACf,QAAQ,gBAAgB,CAAC,WAAW;KACpC,aAAa,KAAK,EAAE,GAAI,QAAwB,CAAC;IACnD;GACF;;EAIJ,IAAI,aAAa,QACf,KAAK,QAAQ,gBAAgB,YAAY;CAE7C;AACF"}
@@ -656,7 +656,7 @@ const options = [
656
656
  name: "dockerSidecarImage",
657
657
  description: "Change this value to override the default Renovate sidecar image.",
658
658
  type: "string",
659
- default: "ghcr.io/renovatebot/base-image:13.76.12",
659
+ default: "ghcr.io/renovatebot/base-image:13.77.0",
660
660
  globalOnly: true,
661
661
  deprecationMsg: "The usage of `binarySource=docker` is deprecated, and will be removed in the future"
662
662
  },