renovate 40.0.0-next.4 → 40.0.0-next.41

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 (810) hide show
  1. package/dist/config/decrypt/legacy.js +0 -1
  2. package/dist/config/decrypt/legacy.js.map +1 -1
  3. package/dist/config/decrypt.d.ts +3 -1
  4. package/dist/config/decrypt.js +56 -13
  5. package/dist/config/decrypt.js.map +1 -1
  6. package/dist/config/migrate-validate.js +3 -2
  7. package/dist/config/migrate-validate.js.map +1 -1
  8. package/dist/config/migration.js +2 -1
  9. package/dist/config/migration.js.map +1 -1
  10. package/dist/config/migrations/custom/rebase-stale-prs-migration.js +1 -1
  11. package/dist/config/migrations/custom/rebase-stale-prs-migration.js.map +1 -1
  12. package/dist/config/options/index.js +17 -3
  13. package/dist/config/options/index.js.map +1 -1
  14. package/dist/config/parse.js +2 -2
  15. package/dist/config/parse.js.map +1 -1
  16. package/dist/config/presets/common.js +1 -0
  17. package/dist/config/presets/common.js.map +1 -1
  18. package/dist/config/presets/gitea/index.js +0 -1
  19. package/dist/config/presets/gitea/index.js.map +1 -1
  20. package/dist/config/presets/github/index.js +0 -1
  21. package/dist/config/presets/github/index.js.map +1 -1
  22. package/dist/config/presets/gitlab/index.js +1 -1
  23. package/dist/config/presets/gitlab/index.js.map +1 -1
  24. package/dist/config/presets/http/index.js +1 -2
  25. package/dist/config/presets/http/index.js.map +1 -1
  26. package/dist/config/presets/index.js +0 -7
  27. package/dist/config/presets/index.js.map +1 -1
  28. package/dist/config/presets/internal/custom-managers.js +18 -4
  29. package/dist/config/presets/internal/custom-managers.js.map +1 -1
  30. package/dist/config/presets/internal/group.js +30 -1
  31. package/dist/config/presets/internal/group.js.map +1 -1
  32. package/dist/config/presets/internal/index.js +1 -3
  33. package/dist/config/presets/internal/index.js.map +1 -1
  34. package/dist/config/presets/internal/workarounds.js +1 -0
  35. package/dist/config/presets/internal/workarounds.js.map +1 -1
  36. package/dist/config/presets/parse.js +2 -1
  37. package/dist/config/presets/parse.js.map +1 -1
  38. package/dist/config/schema.d.ts +2 -2
  39. package/dist/config/types.d.ts +4 -1
  40. package/dist/config/types.js.map +1 -1
  41. package/dist/config/validation.js +3 -5
  42. package/dist/config/validation.js.map +1 -1
  43. package/dist/config-validator.js +0 -1
  44. package/dist/config-validator.js.map +1 -1
  45. package/dist/constants/category.js +0 -1
  46. package/dist/constants/category.js.map +1 -1
  47. package/dist/constants/platforms.js +5 -1
  48. package/dist/constants/platforms.js.map +1 -1
  49. package/dist/data/monorepo.json +8 -2
  50. package/dist/data/source-urls.json +1 -0
  51. package/dist/data-files.generated.js +2 -2
  52. package/dist/data-files.generated.js.map +1 -1
  53. package/dist/instrumentation/index.js +39 -15
  54. package/dist/instrumentation/index.js.map +1 -1
  55. package/dist/instrumentation/utils.js +1 -1
  56. package/dist/instrumentation/utils.js.map +1 -1
  57. package/dist/logger/cmd-serializer.js +0 -1
  58. package/dist/logger/cmd-serializer.js.map +1 -1
  59. package/dist/logger/config-serializer.js +0 -1
  60. package/dist/logger/config-serializer.js.map +1 -1
  61. package/dist/logger/index.js +1 -4
  62. package/dist/logger/index.js.map +1 -1
  63. package/dist/logger/once.js +4 -2
  64. package/dist/logger/once.js.map +1 -1
  65. package/dist/logger/pretty-stdout.js +0 -1
  66. package/dist/logger/pretty-stdout.js.map +1 -1
  67. package/dist/logger/renovate-logger.js +1 -1
  68. package/dist/logger/renovate-logger.js.map +1 -1
  69. package/dist/logger/utils.js +6 -11
  70. package/dist/logger/utils.js.map +1 -1
  71. package/dist/modules/datasource/api.js +4 -0
  72. package/dist/modules/datasource/api.js.map +1 -1
  73. package/dist/modules/datasource/artifactory/index.js +1 -2
  74. package/dist/modules/datasource/artifactory/index.js.map +1 -1
  75. package/dist/modules/datasource/aws-eks-addon/index.d.ts +11 -0
  76. package/dist/modules/datasource/aws-eks-addon/index.js +75 -0
  77. package/dist/modules/datasource/aws-eks-addon/index.js.map +1 -0
  78. package/dist/modules/datasource/aws-eks-addon/schema.d.ts +40 -0
  79. package/dist/modules/datasource/aws-eks-addon/schema.js +31 -0
  80. package/dist/modules/datasource/aws-eks-addon/schema.js.map +1 -0
  81. package/dist/modules/datasource/aws-machine-image/index.js +6 -5
  82. package/dist/modules/datasource/aws-machine-image/index.js.map +1 -1
  83. package/dist/modules/datasource/azure-pipelines-tasks/index.js +15 -1
  84. package/dist/modules/datasource/azure-pipelines-tasks/index.js.map +1 -1
  85. package/dist/modules/datasource/azure-pipelines-tasks/schema.d.ts +24 -0
  86. package/dist/modules/datasource/azure-pipelines-tasks/schema.js +3 -0
  87. package/dist/modules/datasource/azure-pipelines-tasks/schema.js.map +1 -1
  88. package/dist/modules/datasource/bazel/index.js +18 -2
  89. package/dist/modules/datasource/bazel/index.js.map +1 -1
  90. package/dist/modules/datasource/bazel/schema.d.ts +1 -0
  91. package/dist/modules/datasource/bazel/schema.js.map +1 -1
  92. package/dist/modules/datasource/bitbucket-server-tags/index.d.ts +19 -0
  93. package/dist/modules/datasource/bitbucket-server-tags/index.js +133 -0
  94. package/dist/modules/datasource/bitbucket-server-tags/index.js.map +1 -0
  95. package/dist/modules/datasource/bitbucket-server-tags/schema.d.ts +28 -0
  96. package/dist/modules/datasource/bitbucket-server-tags/schema.js +13 -0
  97. package/dist/modules/datasource/bitbucket-server-tags/schema.js.map +1 -0
  98. package/dist/modules/datasource/bitrise/index.js +1 -1
  99. package/dist/modules/datasource/bitrise/index.js.map +1 -1
  100. package/dist/modules/datasource/cdnjs/schema.d.ts +2 -2
  101. package/dist/modules/datasource/conda/index.js +18 -1
  102. package/dist/modules/datasource/conda/index.js.map +1 -1
  103. package/dist/modules/datasource/conda/prefix-dev.d.ts +3 -0
  104. package/dist/modules/datasource/conda/prefix-dev.js +81 -0
  105. package/dist/modules/datasource/conda/prefix-dev.js.map +1 -0
  106. package/dist/modules/datasource/conda/schema/prefix-dev.d.ts +189 -0
  107. package/dist/modules/datasource/conda/schema/prefix-dev.js +31 -0
  108. package/dist/modules/datasource/conda/schema/prefix-dev.js.map +1 -0
  109. package/dist/modules/datasource/conda/types.d.ts +1 -20
  110. package/dist/modules/datasource/conda/types.js.map +1 -1
  111. package/dist/modules/datasource/cpan/index.js +2 -4
  112. package/dist/modules/datasource/cpan/index.js.map +1 -1
  113. package/dist/modules/datasource/crate/index.js +3 -3
  114. package/dist/modules/datasource/crate/index.js.map +1 -1
  115. package/dist/modules/datasource/custom/formats/html.js +1 -1
  116. package/dist/modules/datasource/custom/formats/html.js.map +1 -1
  117. package/dist/modules/datasource/custom/formats/yaml.js +1 -1
  118. package/dist/modules/datasource/custom/formats/yaml.js.map +1 -1
  119. package/dist/modules/datasource/custom/index.js +4 -2
  120. package/dist/modules/datasource/custom/index.js.map +1 -1
  121. package/dist/modules/datasource/custom/schema.d.ts +22 -22
  122. package/dist/modules/datasource/custom/utils.js +1 -0
  123. package/dist/modules/datasource/custom/utils.js.map +1 -1
  124. package/dist/modules/datasource/dart/index.js +1 -1
  125. package/dist/modules/datasource/dart/index.js.map +1 -1
  126. package/dist/modules/datasource/dart-version/index.js +1 -1
  127. package/dist/modules/datasource/dart-version/index.js.map +1 -1
  128. package/dist/modules/datasource/datasource.js +0 -1
  129. package/dist/modules/datasource/datasource.js.map +1 -1
  130. package/dist/modules/datasource/deb/index.d.ts +4 -5
  131. package/dist/modules/datasource/deb/index.js +10 -11
  132. package/dist/modules/datasource/deb/index.js.map +1 -1
  133. package/dist/modules/datasource/deb/url.d.ts +3 -3
  134. package/dist/modules/datasource/deb/url.js +17 -13
  135. package/dist/modules/datasource/deb/url.js.map +1 -1
  136. package/dist/modules/datasource/deno/index.js +1 -1
  137. package/dist/modules/datasource/deno/index.js.map +1 -1
  138. package/dist/modules/datasource/deno/schema.d.ts +1 -1
  139. package/dist/modules/datasource/devbox/index.js +0 -1
  140. package/dist/modules/datasource/devbox/index.js.map +1 -1
  141. package/dist/modules/datasource/docker/common.js +5 -2
  142. package/dist/modules/datasource/docker/common.js.map +1 -1
  143. package/dist/modules/datasource/docker/index.js +10 -8
  144. package/dist/modules/datasource/docker/index.js.map +1 -1
  145. package/dist/modules/datasource/docker/schema.d.ts +77 -101
  146. package/dist/modules/datasource/docker/schema.js +2 -1
  147. package/dist/modules/datasource/docker/schema.js.map +1 -1
  148. package/dist/modules/datasource/flutter-version/index.js +1 -1
  149. package/dist/modules/datasource/flutter-version/index.js.map +1 -1
  150. package/dist/modules/datasource/galaxy/schema.d.ts +1 -1
  151. package/dist/modules/datasource/galaxy-collection/schema.d.ts +8 -8
  152. package/dist/modules/datasource/git-refs/index.js +1 -1
  153. package/dist/modules/datasource/git-refs/index.js.map +1 -1
  154. package/dist/modules/datasource/gitea-releases/schema.d.ts +2 -2
  155. package/dist/modules/datasource/gitea-tags/schema.d.ts +4 -4
  156. package/dist/modules/datasource/github-release-attachments/index.js +2 -2
  157. package/dist/modules/datasource/github-release-attachments/index.js.map +1 -1
  158. package/dist/modules/datasource/github-runners/index.js +2 -2
  159. package/dist/modules/datasource/github-runners/index.js.map +1 -1
  160. package/dist/modules/datasource/gitlab-packages/index.js +1 -1
  161. package/dist/modules/datasource/gitlab-packages/index.js.map +1 -1
  162. package/dist/modules/datasource/gitlab-releases/index.js +1 -3
  163. package/dist/modules/datasource/gitlab-releases/index.js.map +1 -1
  164. package/dist/modules/datasource/go/base.js +1 -1
  165. package/dist/modules/datasource/go/base.js.map +1 -1
  166. package/dist/modules/datasource/go/index.js +1 -1
  167. package/dist/modules/datasource/go/index.js.map +1 -1
  168. package/dist/modules/datasource/go/releases-direct.js +7 -4
  169. package/dist/modules/datasource/go/releases-direct.js.map +1 -1
  170. package/dist/modules/datasource/go/releases-goproxy.js +1 -1
  171. package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
  172. package/dist/modules/datasource/golang-version/index.js +2 -2
  173. package/dist/modules/datasource/golang-version/index.js.map +1 -1
  174. package/dist/modules/datasource/gradle-version/index.js +1 -1
  175. package/dist/modules/datasource/gradle-version/index.js.map +1 -1
  176. package/dist/modules/datasource/helm/index.js +1 -1
  177. package/dist/modules/datasource/helm/index.js.map +1 -1
  178. package/dist/modules/datasource/hex/index.js +1 -1
  179. package/dist/modules/datasource/hex/index.js.map +1 -1
  180. package/dist/modules/datasource/hex/schema.d.ts +11 -11
  181. package/dist/modules/datasource/hexpm-bob/index.js +1 -1
  182. package/dist/modules/datasource/hexpm-bob/index.js.map +1 -1
  183. package/dist/modules/datasource/index.js +4 -4
  184. package/dist/modules/datasource/index.js.map +1 -1
  185. package/dist/modules/datasource/java-version/index.js +0 -1
  186. package/dist/modules/datasource/java-version/index.js.map +1 -1
  187. package/dist/modules/datasource/jenkins-plugins/index.js +1 -1
  188. package/dist/modules/datasource/jenkins-plugins/index.js.map +1 -1
  189. package/dist/modules/datasource/maven/index.js +35 -27
  190. package/dist/modules/datasource/maven/index.js.map +1 -1
  191. package/dist/modules/datasource/maven/types.d.ts +3 -6
  192. package/dist/modules/datasource/maven/types.js.map +1 -1
  193. package/dist/modules/datasource/maven/util.d.ts +4 -5
  194. package/dist/modules/datasource/maven/util.js +94 -157
  195. package/dist/modules/datasource/maven/util.js.map +1 -1
  196. package/dist/modules/datasource/metadata.js +9 -1
  197. package/dist/modules/datasource/metadata.js.map +1 -1
  198. package/dist/modules/datasource/node-version/index.js +1 -1
  199. package/dist/modules/datasource/node-version/index.js.map +1 -1
  200. package/dist/modules/datasource/npm/get.d.ts +0 -1
  201. package/dist/modules/datasource/npm/get.js +14 -68
  202. package/dist/modules/datasource/npm/get.js.map +1 -1
  203. package/dist/modules/datasource/npm/index.js +1 -1
  204. package/dist/modules/datasource/npm/index.js.map +1 -1
  205. package/dist/modules/datasource/npm/npmrc.js +1 -1
  206. package/dist/modules/datasource/npm/npmrc.js.map +1 -1
  207. package/dist/modules/datasource/npm/types.d.ts +0 -8
  208. package/dist/modules/datasource/npm/types.js.map +1 -1
  209. package/dist/modules/datasource/nuget/index.js +1 -1
  210. package/dist/modules/datasource/nuget/index.js.map +1 -1
  211. package/dist/modules/datasource/nuget/v2.js +1 -1
  212. package/dist/modules/datasource/nuget/v2.js.map +1 -1
  213. package/dist/modules/datasource/nuget/v3.js +6 -6
  214. package/dist/modules/datasource/nuget/v3.js.map +1 -1
  215. package/dist/modules/datasource/orb/index.js +1 -1
  216. package/dist/modules/datasource/orb/index.js.map +1 -1
  217. package/dist/modules/datasource/packagist/index.js +2 -2
  218. package/dist/modules/datasource/packagist/index.js.map +1 -1
  219. package/dist/modules/datasource/packagist/schema.d.ts +32 -32
  220. package/dist/modules/datasource/pod/index.js +2 -2
  221. package/dist/modules/datasource/pod/index.js.map +1 -1
  222. package/dist/modules/datasource/postprocess-release.js +1 -1
  223. package/dist/modules/datasource/postprocess-release.js.map +1 -1
  224. package/dist/modules/datasource/pypi/index.js +1 -1
  225. package/dist/modules/datasource/pypi/index.js.map +1 -1
  226. package/dist/modules/datasource/python-version/index.js +1 -1
  227. package/dist/modules/datasource/python-version/index.js.map +1 -1
  228. package/dist/modules/datasource/repology/index.js +1 -1
  229. package/dist/modules/datasource/repology/index.js.map +1 -1
  230. package/dist/modules/datasource/ruby-version/index.js +1 -1
  231. package/dist/modules/datasource/ruby-version/index.js.map +1 -1
  232. package/dist/modules/datasource/rubygems/index.js +2 -2
  233. package/dist/modules/datasource/rubygems/index.js.map +1 -1
  234. package/dist/modules/datasource/rubygems/versions-endpoint-cache.js +2 -2
  235. package/dist/modules/datasource/rubygems/versions-endpoint-cache.js.map +1 -1
  236. package/dist/modules/datasource/sbt-package/index.js +1 -1
  237. package/dist/modules/datasource/sbt-package/index.js.map +1 -1
  238. package/dist/modules/datasource/sbt-plugin/index.js +1 -1
  239. package/dist/modules/datasource/sbt-plugin/index.js.map +1 -1
  240. package/dist/modules/datasource/schema.d.ts +4 -4
  241. package/dist/modules/datasource/terraform-module/index.js +1 -1
  242. package/dist/modules/datasource/terraform-module/index.js.map +1 -1
  243. package/dist/modules/datasource/terraform-provider/index.js +2 -3
  244. package/dist/modules/datasource/terraform-provider/index.js.map +1 -1
  245. package/dist/modules/datasource/types.d.ts +2 -0
  246. package/dist/modules/datasource/types.js.map +1 -1
  247. package/dist/modules/datasource/unity3d/index.d.ts +4 -1
  248. package/dist/modules/datasource/unity3d/index.js +36 -42
  249. package/dist/modules/datasource/unity3d/index.js.map +1 -1
  250. package/dist/modules/datasource/unity3d/schema.d.ts +47 -0
  251. package/dist/modules/datasource/unity3d/schema.js +17 -0
  252. package/dist/modules/datasource/unity3d/schema.js.map +1 -0
  253. package/dist/modules/manager/api.js +2 -0
  254. package/dist/modules/manager/api.js.map +1 -1
  255. package/dist/modules/manager/argocd/extract.js +1 -1
  256. package/dist/modules/manager/argocd/extract.js.map +1 -1
  257. package/dist/modules/manager/argocd/schema.d.ts +22 -22
  258. package/dist/modules/manager/asdf/upgradeable-tooling.js +94 -0
  259. package/dist/modules/manager/asdf/upgradeable-tooling.js.map +1 -1
  260. package/dist/modules/manager/azure-pipelines/schema.d.ts +32 -32
  261. package/dist/modules/manager/batect/schema.d.ts +4 -4
  262. package/dist/modules/manager/batect-wrapper/artifacts.js +1 -1
  263. package/dist/modules/manager/batect-wrapper/artifacts.js.map +1 -1
  264. package/dist/modules/manager/bazel/rules/docker.d.ts +6 -6
  265. package/dist/modules/manager/bazel/rules/git.d.ts +10 -10
  266. package/dist/modules/manager/bazel/rules/git.js +9 -2
  267. package/dist/modules/manager/bazel/rules/git.js.map +1 -1
  268. package/dist/modules/manager/bazel/rules/go.d.ts +5 -5
  269. package/dist/modules/manager/bazel/rules/maven.d.ts +7 -7
  270. package/dist/modules/manager/bazel/rules/oci.d.ts +6 -6
  271. package/dist/modules/manager/bazel-module/parser/fragments.d.ts +40 -40
  272. package/dist/modules/manager/bazel-module/parser/maven.d.ts +44 -90
  273. package/dist/modules/manager/bazel-module/parser/oci.d.ts +19 -42
  274. package/dist/modules/manager/bazel-module/rules.d.ts +50 -160
  275. package/dist/modules/manager/bun/artifacts.js +0 -1
  276. package/dist/modules/manager/bun/artifacts.js.map +1 -1
  277. package/dist/modules/manager/bun/extract.d.ts +1 -0
  278. package/dist/modules/manager/bun/extract.js +53 -27
  279. package/dist/modules/manager/bun/extract.js.map +1 -1
  280. package/dist/modules/manager/bun/index.js +1 -1
  281. package/dist/modules/manager/bun/index.js.map +1 -1
  282. package/dist/modules/manager/bun/utils.d.ts +2 -0
  283. package/dist/modules/manager/bun/utils.js +22 -0
  284. package/dist/modules/manager/bun/utils.js.map +1 -0
  285. package/dist/modules/manager/bundler/artifacts.js +0 -1
  286. package/dist/modules/manager/bundler/artifacts.js.map +1 -1
  287. package/dist/modules/manager/bundler/extract.js +2 -1
  288. package/dist/modules/manager/bundler/extract.js.map +1 -1
  289. package/dist/modules/manager/cake/index.js +4 -2
  290. package/dist/modules/manager/cake/index.js.map +1 -1
  291. package/dist/modules/manager/cargo/artifacts.js +5 -7
  292. package/dist/modules/manager/cargo/artifacts.js.map +1 -1
  293. package/dist/modules/manager/cargo/schema.d.ts +117 -117
  294. package/dist/modules/manager/circleci/extract.js +21 -30
  295. package/dist/modules/manager/circleci/extract.js.map +1 -1
  296. package/dist/modules/manager/circleci/schema.d.ts +33 -144
  297. package/dist/modules/manager/circleci/schema.js +21 -17
  298. package/dist/modules/manager/circleci/schema.js.map +1 -1
  299. package/dist/modules/manager/cocoapods/artifacts.js +1 -2
  300. package/dist/modules/manager/cocoapods/artifacts.js.map +1 -1
  301. package/dist/modules/manager/composer/artifacts.js +1 -2
  302. package/dist/modules/manager/composer/artifacts.js.map +1 -1
  303. package/dist/modules/manager/composer/schema.d.ts +32 -34
  304. package/dist/modules/manager/composer/schema.js +1 -1
  305. package/dist/modules/manager/composer/schema.js.map +1 -1
  306. package/dist/modules/manager/composer/utils.d.ts +1 -0
  307. package/dist/modules/manager/composer/utils.js +18 -6
  308. package/dist/modules/manager/composer/utils.js.map +1 -1
  309. package/dist/modules/manager/conan/artifacts.d.ts +2 -0
  310. package/dist/modules/manager/conan/artifacts.js +76 -0
  311. package/dist/modules/manager/conan/artifacts.js.map +1 -0
  312. package/dist/modules/manager/conan/index.d.ts +2 -0
  313. package/dist/modules/manager/conan/index.js +4 -1
  314. package/dist/modules/manager/conan/index.js.map +1 -1
  315. package/dist/modules/manager/copier/artifacts.js +0 -1
  316. package/dist/modules/manager/copier/artifacts.js.map +1 -1
  317. package/dist/modules/manager/crossplane/schema.d.ts +2 -2
  318. package/dist/modules/manager/custom/jsonata/index.js +4 -0
  319. package/dist/modules/manager/custom/jsonata/index.js.map +1 -1
  320. package/dist/modules/manager/custom/jsonata/schema.d.ts +21 -21
  321. package/dist/modules/manager/custom/regex/index.js +2 -0
  322. package/dist/modules/manager/custom/regex/index.js.map +1 -1
  323. package/dist/modules/manager/deps-edn/extract.js +2 -1
  324. package/dist/modules/manager/deps-edn/extract.js.map +1 -1
  325. package/dist/modules/manager/devbox/artifacts.d.ts +1 -1
  326. package/dist/modules/manager/devbox/artifacts.js +35 -11
  327. package/dist/modules/manager/devbox/artifacts.js.map +1 -1
  328. package/dist/modules/manager/devbox/schema.js +1 -1
  329. package/dist/modules/manager/devbox/schema.js.map +1 -1
  330. package/dist/modules/manager/devcontainer/extract.js +43 -1
  331. package/dist/modules/manager/devcontainer/extract.js.map +1 -1
  332. package/dist/modules/manager/devcontainer/index.js +11 -1
  333. package/dist/modules/manager/devcontainer/index.js.map +1 -1
  334. package/dist/modules/manager/devcontainer/schema.d.ts +7 -3
  335. package/dist/modules/manager/devcontainer/schema.js +3 -1
  336. package/dist/modules/manager/devcontainer/schema.js.map +1 -1
  337. package/dist/modules/manager/docker-compose/schema.d.ts +6 -6
  338. package/dist/modules/manager/dockerfile/extract.js +2 -6
  339. package/dist/modules/manager/dockerfile/extract.js.map +1 -1
  340. package/dist/modules/manager/fingerprint.generated.js +86 -85
  341. package/dist/modules/manager/fingerprint.generated.js.map +1 -1
  342. package/dist/modules/manager/flux/artifacts.js +0 -1
  343. package/dist/modules/manager/flux/artifacts.js.map +1 -1
  344. package/dist/modules/manager/flux/extract.js +27 -24
  345. package/dist/modules/manager/flux/extract.js.map +1 -1
  346. package/dist/modules/manager/flux/schema.d.ts +130 -154
  347. package/dist/modules/manager/github-actions/extract.js +60 -39
  348. package/dist/modules/manager/github-actions/extract.js.map +1 -1
  349. package/dist/modules/manager/github-actions/schema.d.ts +66 -0
  350. package/dist/modules/manager/github-actions/schema.js +38 -0
  351. package/dist/modules/manager/github-actions/schema.js.map +1 -0
  352. package/dist/modules/manager/gitlabci/extract.d.ts +1 -5
  353. package/dist/modules/manager/gitlabci/extract.js +27 -126
  354. package/dist/modules/manager/gitlabci/extract.js.map +1 -1
  355. package/dist/modules/manager/gitlabci/schema.d.ts +55 -0
  356. package/dist/modules/manager/gitlabci/schema.js +63 -0
  357. package/dist/modules/manager/gitlabci/schema.js.map +1 -0
  358. package/dist/modules/manager/gitlabci-include/extract.js +6 -54
  359. package/dist/modules/manager/gitlabci-include/extract.js.map +1 -1
  360. package/dist/modules/manager/gitlabci-include/schema.d.ts +13 -0
  361. package/dist/modules/manager/gitlabci-include/schema.js +46 -0
  362. package/dist/modules/manager/gitlabci-include/schema.js.map +1 -0
  363. package/dist/modules/manager/glasskube/schema.d.ts +8 -8
  364. package/dist/modules/manager/gomod/artifacts-extra.js +12 -4
  365. package/dist/modules/manager/gomod/artifacts-extra.js.map +1 -1
  366. package/dist/modules/manager/gomod/artifacts.js +24 -10
  367. package/dist/modules/manager/gomod/artifacts.js.map +1 -1
  368. package/dist/modules/manager/gomod/extract.js +23 -0
  369. package/dist/modules/manager/gomod/extract.js.map +1 -1
  370. package/dist/modules/manager/gomod/line-parser.js +16 -0
  371. package/dist/modules/manager/gomod/line-parser.js.map +1 -1
  372. package/dist/modules/manager/gomod/update.js +5 -3
  373. package/dist/modules/manager/gomod/update.js.map +1 -1
  374. package/dist/modules/manager/gradle/artifacts.js +0 -1
  375. package/dist/modules/manager/gradle/artifacts.js.map +1 -1
  376. package/dist/modules/manager/gradle/extract/catalog.js +1 -1
  377. package/dist/modules/manager/gradle/extract/catalog.js.map +1 -1
  378. package/dist/modules/manager/gradle/extract.js +8 -13
  379. package/dist/modules/manager/gradle/extract.js.map +1 -1
  380. package/dist/modules/manager/gradle/parser/assignments.js +2 -2
  381. package/dist/modules/manager/gradle/parser/assignments.js.map +1 -1
  382. package/dist/modules/manager/gradle/parser/handlers.d.ts +1 -2
  383. package/dist/modules/manager/gradle/parser/handlers.js +17 -24
  384. package/dist/modules/manager/gradle/parser/handlers.js.map +1 -1
  385. package/dist/modules/manager/gradle/parser/registry-urls.js +46 -12
  386. package/dist/modules/manager/gradle/parser/registry-urls.js.map +1 -1
  387. package/dist/modules/manager/gradle/types.d.ts +1 -0
  388. package/dist/modules/manager/gradle/types.js.map +1 -1
  389. package/dist/modules/manager/gradle-wrapper/artifacts.js +1 -2
  390. package/dist/modules/manager/gradle-wrapper/artifacts.js.map +1 -1
  391. package/dist/modules/manager/helmfile/artifacts.js +0 -1
  392. package/dist/modules/manager/helmfile/artifacts.js.map +1 -1
  393. package/dist/modules/manager/helmfile/extract.js +4 -0
  394. package/dist/modules/manager/helmfile/extract.js.map +1 -1
  395. package/dist/modules/manager/helmfile/schema.d.ts +9 -9
  396. package/dist/modules/manager/helmv3/artifacts.js +0 -1
  397. package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
  398. package/dist/modules/manager/helmv3/utils.js +3 -1
  399. package/dist/modules/manager/helmv3/utils.js.map +1 -1
  400. package/dist/modules/manager/hermit/artifacts.js +0 -1
  401. package/dist/modules/manager/hermit/artifacts.js.map +1 -1
  402. package/dist/modules/manager/homebrew/extract.js +0 -1
  403. package/dist/modules/manager/homebrew/extract.js.map +1 -1
  404. package/dist/modules/manager/jsonnet-bundler/artifacts.js +0 -1
  405. package/dist/modules/manager/jsonnet-bundler/artifacts.js.map +1 -1
  406. package/dist/modules/manager/kustomize/artifacts.d.ts +2 -0
  407. package/dist/modules/manager/kustomize/artifacts.js +154 -0
  408. package/dist/modules/manager/kustomize/artifacts.js.map +1 -0
  409. package/dist/modules/manager/kustomize/common.d.ts +3 -0
  410. package/dist/modules/manager/kustomize/common.js +22 -0
  411. package/dist/modules/manager/kustomize/common.js.map +1 -0
  412. package/dist/modules/manager/kustomize/index.d.ts +1 -0
  413. package/dist/modules/manager/kustomize/index.js +3 -1
  414. package/dist/modules/manager/kustomize/index.js.map +1 -1
  415. package/dist/modules/manager/kustomize/types.d.ts +4 -0
  416. package/dist/modules/manager/kustomize/types.js.map +1 -1
  417. package/dist/modules/manager/maven/extract.js +4 -4
  418. package/dist/modules/manager/maven/extract.js.map +1 -1
  419. package/dist/modules/manager/maven-wrapper/artifacts.js +0 -1
  420. package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
  421. package/dist/modules/manager/mise/extract.js +1 -1
  422. package/dist/modules/manager/mise/extract.js.map +1 -1
  423. package/dist/modules/manager/mix/artifacts.js +64 -14
  424. package/dist/modules/manager/mix/artifacts.js.map +1 -1
  425. package/dist/modules/manager/mix/index.d.ts +1 -0
  426. package/dist/modules/manager/mix/index.js +2 -1
  427. package/dist/modules/manager/mix/index.js.map +1 -1
  428. package/dist/modules/manager/nix/artifacts.js +0 -1
  429. package/dist/modules/manager/nix/artifacts.js.map +1 -1
  430. package/dist/modules/manager/nix/extract.js +1 -1
  431. package/dist/modules/manager/nix/extract.js.map +1 -1
  432. package/dist/modules/manager/nix/schema.d.ts +20 -20
  433. package/dist/modules/manager/nix/schema.js +1 -0
  434. package/dist/modules/manager/nix/schema.js.map +1 -1
  435. package/dist/modules/manager/npm/artifacts.js +0 -1
  436. package/dist/modules/manager/npm/artifacts.js.map +1 -1
  437. package/dist/modules/manager/npm/extract/common/package-file.js +1 -0
  438. package/dist/modules/manager/npm/extract/common/package-file.js.map +1 -1
  439. package/dist/modules/manager/npm/extract/yarn.js +2 -2
  440. package/dist/modules/manager/npm/extract/yarn.js.map +1 -1
  441. package/dist/modules/manager/npm/post-update/npm.js +0 -1
  442. package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
  443. package/dist/modules/manager/npm/post-update/pnpm.js +13 -2
  444. package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
  445. package/dist/modules/manager/npm/post-update/rules.js +11 -1
  446. package/dist/modules/manager/npm/post-update/rules.js.map +1 -1
  447. package/dist/modules/manager/npm/post-update/yarn.js +0 -1
  448. package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
  449. package/dist/modules/manager/npm/schema.d.ts +13 -13
  450. package/dist/modules/manager/npm/update/dependency/index.js +1 -1
  451. package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
  452. package/dist/modules/manager/nuget/artifacts.js +1 -2
  453. package/dist/modules/manager/nuget/artifacts.js.map +1 -1
  454. package/dist/modules/manager/nuget/extract.js +21 -18
  455. package/dist/modules/manager/nuget/extract.js.map +1 -1
  456. package/dist/modules/manager/nuget/package-tree.js +4 -0
  457. package/dist/modules/manager/nuget/package-tree.js.map +1 -1
  458. package/dist/modules/manager/nuget/schema.d.ts +8 -8
  459. package/dist/modules/manager/nuget/util.js +4 -1
  460. package/dist/modules/manager/nuget/util.js.map +1 -1
  461. package/dist/modules/manager/ocb/schema.d.ts +6 -6
  462. package/dist/modules/manager/pep621/processors/pdm.js +0 -1
  463. package/dist/modules/manager/pep621/processors/pdm.js.map +1 -1
  464. package/dist/modules/manager/pep621/processors/uv.js +0 -1
  465. package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
  466. package/dist/modules/manager/pep621/schema.d.ts +346 -54
  467. package/dist/modules/manager/pep621/schema.js +2 -0
  468. package/dist/modules/manager/pep621/schema.js.map +1 -1
  469. package/dist/modules/manager/pep621/utils.js +1 -1
  470. package/dist/modules/manager/pep621/utils.js.map +1 -1
  471. package/dist/modules/manager/pip-compile/common.js +0 -1
  472. package/dist/modules/manager/pip-compile/common.js.map +1 -1
  473. package/dist/modules/manager/pip_requirements/artifacts.js +0 -1
  474. package/dist/modules/manager/pip_requirements/artifacts.js.map +1 -1
  475. package/dist/modules/manager/pip_requirements/common.js +2 -6
  476. package/dist/modules/manager/pip_requirements/common.js.map +1 -1
  477. package/dist/modules/manager/pipenv/artifacts.js +0 -1
  478. package/dist/modules/manager/pipenv/artifacts.js.map +1 -1
  479. package/dist/modules/manager/pixi/artifacts.d.ts +3 -0
  480. package/dist/modules/manager/pixi/artifacts.js +78 -0
  481. package/dist/modules/manager/pixi/artifacts.js.map +1 -0
  482. package/dist/modules/manager/pixi/extract.d.ts +4 -0
  483. package/dist/modules/manager/pixi/extract.js +131 -0
  484. package/dist/modules/manager/pixi/extract.js.map +1 -0
  485. package/dist/modules/manager/pixi/index.d.ts +10 -0
  486. package/dist/modules/manager/pixi/index.js +20 -0
  487. package/dist/modules/manager/pixi/index.js.map +1 -0
  488. package/dist/modules/manager/pixi/schema.d.ts +405 -0
  489. package/dist/modules/manager/pixi/schema.js +147 -0
  490. package/dist/modules/manager/pixi/schema.js.map +1 -0
  491. package/dist/modules/manager/poetry/artifacts.js +3 -4
  492. package/dist/modules/manager/poetry/artifacts.js.map +1 -1
  493. package/dist/modules/manager/poetry/extract.js +2 -1
  494. package/dist/modules/manager/poetry/extract.js.map +1 -1
  495. package/dist/modules/manager/poetry/schema.d.ts +48 -48
  496. package/dist/modules/manager/pub/artifacts.js +0 -1
  497. package/dist/modules/manager/pub/artifacts.js.map +1 -1
  498. package/dist/modules/manager/pub/schema.d.ts +8 -8
  499. package/dist/modules/manager/scalafmt/extract.js +1 -1
  500. package/dist/modules/manager/scalafmt/extract.js.map +1 -1
  501. package/dist/modules/manager/sveltos/schema.d.ts +30 -42
  502. package/dist/modules/manager/terraform/lockfile/hash.d.ts +1 -1
  503. package/dist/modules/manager/terraform/util.js +1 -3
  504. package/dist/modules/manager/terraform/util.js.map +1 -1
  505. package/dist/modules/manager/types.d.ts +6 -2
  506. package/dist/modules/manager/types.js.map +1 -1
  507. package/dist/modules/manager/vendir/schema.d.ts +7 -7
  508. package/dist/modules/platform/api.d.ts +1 -1
  509. package/dist/modules/platform/azure/azure-helper.js +2 -2
  510. package/dist/modules/platform/azure/azure-helper.js.map +1 -1
  511. package/dist/modules/platform/azure/index.js +14 -14
  512. package/dist/modules/platform/azure/index.js.map +1 -1
  513. package/dist/modules/platform/bitbucket/comments.js +4 -4
  514. package/dist/modules/platform/bitbucket/comments.js.map +1 -1
  515. package/dist/modules/platform/bitbucket/index.d.ts +1 -0
  516. package/dist/modules/platform/bitbucket/index.js +54 -44
  517. package/dist/modules/platform/bitbucket/index.js.map +1 -1
  518. package/dist/modules/platform/bitbucket/schema.d.ts +14 -14
  519. package/dist/modules/platform/bitbucket/utils.js +3 -3
  520. package/dist/modules/platform/bitbucket/utils.js.map +1 -1
  521. package/dist/modules/platform/bitbucket-server/index.d.ts +3 -3
  522. package/dist/modules/platform/bitbucket-server/index.js +81 -81
  523. package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
  524. package/dist/modules/platform/bitbucket-server/pr-cache.d.ts +23 -0
  525. package/dist/modules/platform/bitbucket-server/pr-cache.js +125 -0
  526. package/dist/modules/platform/bitbucket-server/pr-cache.js.map +1 -0
  527. package/dist/modules/platform/bitbucket-server/schema.d.ts +76 -0
  528. package/dist/modules/platform/bitbucket-server/schema.js +15 -1
  529. package/dist/modules/platform/bitbucket-server/schema.js.map +1 -1
  530. package/dist/modules/platform/bitbucket-server/types.d.ts +8 -2
  531. package/dist/modules/platform/bitbucket-server/types.js.map +1 -1
  532. package/dist/modules/platform/bitbucket-server/utils.d.ts +0 -2
  533. package/dist/modules/platform/bitbucket-server/utils.js +6 -52
  534. package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
  535. package/dist/modules/platform/codecommit/codecommit-client.js +6 -6
  536. package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
  537. package/dist/modules/platform/codecommit/index.js +24 -24
  538. package/dist/modules/platform/codecommit/index.js.map +1 -1
  539. package/dist/modules/platform/gerrit/client.d.ts +0 -3
  540. package/dist/modules/platform/gerrit/client.js +20 -29
  541. package/dist/modules/platform/gerrit/client.js.map +1 -1
  542. package/dist/modules/platform/gerrit/index.js +0 -6
  543. package/dist/modules/platform/gerrit/index.js.map +1 -1
  544. package/dist/modules/platform/gerrit/scm.js +5 -6
  545. package/dist/modules/platform/gerrit/scm.js.map +1 -1
  546. package/dist/modules/platform/gerrit/types.d.ts +1 -4
  547. package/dist/modules/platform/gerrit/types.js.map +1 -1
  548. package/dist/modules/platform/gerrit/utils.d.ts +3 -2
  549. package/dist/modules/platform/gerrit/utils.js +4 -8
  550. package/dist/modules/platform/gerrit/utils.js.map +1 -1
  551. package/dist/modules/platform/gitea/gitea-helper.d.ts +1 -0
  552. package/dist/modules/platform/gitea/gitea-helper.js +16 -0
  553. package/dist/modules/platform/gitea/gitea-helper.js.map +1 -1
  554. package/dist/modules/platform/gitea/index.d.ts +1 -0
  555. package/dist/modules/platform/gitea/index.js +33 -16
  556. package/dist/modules/platform/gitea/index.js.map +1 -1
  557. package/dist/modules/platform/gitea/schema.d.ts +8 -8
  558. package/dist/modules/platform/gitea/types.d.ts +1 -1
  559. package/dist/modules/platform/gitea/types.js.map +1 -1
  560. package/dist/modules/platform/github/common.d.ts +2 -0
  561. package/dist/modules/platform/github/common.js +16 -0
  562. package/dist/modules/platform/github/common.js.map +1 -1
  563. package/dist/modules/platform/github/index.d.ts +1 -1
  564. package/dist/modules/platform/github/index.js +87 -82
  565. package/dist/modules/platform/github/index.js.map +1 -1
  566. package/dist/modules/platform/github/issue.d.ts +18 -18
  567. package/dist/modules/platform/github/massage-markdown-links.js +2 -2
  568. package/dist/modules/platform/github/massage-markdown-links.js.map +1 -1
  569. package/dist/modules/platform/github/pr.js +3 -3
  570. package/dist/modules/platform/github/pr.js.map +1 -1
  571. package/dist/modules/platform/github/schema.d.ts +128 -128
  572. package/dist/modules/platform/github/schema.js +3 -1
  573. package/dist/modules/platform/github/schema.js.map +1 -1
  574. package/dist/modules/platform/gitlab/index.d.ts +1 -0
  575. package/dist/modules/platform/gitlab/index.js +72 -49
  576. package/dist/modules/platform/gitlab/index.js.map +1 -1
  577. package/dist/modules/platform/index.js +0 -1
  578. package/dist/modules/platform/index.js.map +1 -1
  579. package/dist/modules/platform/scm.d.ts +1 -1
  580. package/dist/modules/versioning/api.js +2 -0
  581. package/dist/modules/versioning/api.js.map +1 -1
  582. package/dist/modules/versioning/composer/index.js +10 -0
  583. package/dist/modules/versioning/composer/index.js.map +1 -1
  584. package/dist/modules/versioning/conda/index.d.ts +41 -0
  585. package/dist/modules/versioning/conda/index.js +178 -0
  586. package/dist/modules/versioning/conda/index.js.map +1 -0
  587. package/dist/modules/versioning/distro.js +1 -3
  588. package/dist/modules/versioning/distro.js.map +1 -1
  589. package/dist/modules/versioning/hashicorp/convertor.d.ts +2 -1
  590. package/dist/modules/versioning/hashicorp/convertor.js +13 -8
  591. package/dist/modules/versioning/hashicorp/convertor.js.map +1 -1
  592. package/dist/modules/versioning/hex/index.js +3 -3
  593. package/dist/modules/versioning/hex/index.js.map +1 -1
  594. package/dist/modules/versioning/npm/index.js +2 -1
  595. package/dist/modules/versioning/npm/index.js.map +1 -1
  596. package/dist/modules/versioning/schema.js +1 -1
  597. package/dist/modules/versioning/schema.js.map +1 -1
  598. package/dist/modules/versioning/types.d.ts +4 -0
  599. package/dist/modules/versioning/types.js.map +1 -1
  600. package/dist/proxy.js +2 -1
  601. package/dist/proxy.js.map +1 -1
  602. package/dist/renovate.js +2 -2
  603. package/dist/renovate.js.map +1 -1
  604. package/dist/util/cache/package/decorator.js +2 -2
  605. package/dist/util/cache/package/decorator.js.map +1 -1
  606. package/dist/util/cache/package/redis.js +0 -1
  607. package/dist/util/cache/package/redis.js.map +1 -1
  608. package/dist/util/cache/package/types.d.ts +1 -1
  609. package/dist/util/cache/package/types.js.map +1 -1
  610. package/dist/util/cache/repository/impl/base.d.ts +1 -1
  611. package/dist/util/cache/repository/impl/base.js +4 -0
  612. package/dist/util/cache/repository/impl/base.js.map +1 -1
  613. package/dist/util/cache/repository/schema.d.ts +4 -4
  614. package/dist/util/cache/repository/types.d.ts +3 -0
  615. package/dist/util/cache/repository/types.js.map +1 -1
  616. package/dist/util/common.d.ts +4 -2
  617. package/dist/util/common.js +17 -3
  618. package/dist/util/common.js.map +1 -1
  619. package/dist/util/env.d.ts +4 -0
  620. package/dist/util/env.js +22 -0
  621. package/dist/util/env.js.map +1 -0
  622. package/dist/util/exec/containerbase.js +19 -14
  623. package/dist/util/exec/containerbase.js.map +1 -1
  624. package/dist/util/exec/index.js +5 -2
  625. package/dist/util/exec/index.js.map +1 -1
  626. package/dist/util/exec/types.d.ts +0 -2
  627. package/dist/util/exec/types.js.map +1 -1
  628. package/dist/util/exec/utils.d.ts +1 -1
  629. package/dist/util/exec/utils.js +6 -5
  630. package/dist/util/exec/utils.js.map +1 -1
  631. package/dist/util/git/auth.js +8 -5
  632. package/dist/util/git/auth.js.map +1 -1
  633. package/dist/util/git/author.js +1 -1
  634. package/dist/util/git/author.js.map +1 -1
  635. package/dist/util/git/config.js +0 -1
  636. package/dist/util/git/config.js.map +1 -1
  637. package/dist/util/git/error.js +4 -2
  638. package/dist/util/git/error.js.map +1 -1
  639. package/dist/util/git/index.js +75 -52
  640. package/dist/util/git/index.js.map +1 -1
  641. package/dist/util/git/private-key.js +2 -4
  642. package/dist/util/git/private-key.js.map +1 -1
  643. package/dist/util/git/types.d.ts +2 -0
  644. package/dist/util/git/types.js.map +1 -1
  645. package/dist/util/git/url.js +1 -1
  646. package/dist/util/git/url.js.map +1 -1
  647. package/dist/util/github/graphql/datasource-fetcher.js +3 -5
  648. package/dist/util/github/graphql/datasource-fetcher.js.map +1 -1
  649. package/dist/util/github/graphql/query-adapters/releases-query-adapter.d.ts +2 -2
  650. package/dist/util/github/graphql/query-adapters/tags-query-adapter.d.ts +2 -2
  651. package/dist/util/http/auth.js +0 -1
  652. package/dist/util/http/auth.js.map +1 -1
  653. package/dist/util/http/bitbucket-server.d.ts +7 -5
  654. package/dist/util/http/bitbucket-server.js +26 -23
  655. package/dist/util/http/bitbucket-server.js.map +1 -1
  656. package/dist/util/http/bitbucket.d.ts +6 -5
  657. package/dist/util/http/bitbucket.js +34 -31
  658. package/dist/util/http/bitbucket.js.map +1 -1
  659. package/dist/util/http/cache/abstract-http-cache-provider.js +2 -2
  660. package/dist/util/http/cache/abstract-http-cache-provider.js.map +1 -1
  661. package/dist/util/http/cache/memory-http-cache-provider.d.ts +10 -0
  662. package/dist/util/http/cache/memory-http-cache-provider.js +29 -0
  663. package/dist/util/http/cache/memory-http-cache-provider.js.map +1 -0
  664. package/dist/util/http/cache/package-http-cache-provider.d.ts +23 -0
  665. package/dist/util/http/cache/package-http-cache-provider.js +80 -0
  666. package/dist/util/http/cache/package-http-cache-provider.js.map +1 -0
  667. package/dist/util/http/cache/schema.d.ts +2 -2
  668. package/dist/util/http/errors.d.ts +2 -0
  669. package/dist/util/http/errors.js +8 -0
  670. package/dist/util/http/errors.js.map +1 -0
  671. package/dist/util/http/gerrit.d.ts +6 -4
  672. package/dist/util/http/gerrit.js +11 -12
  673. package/dist/util/http/gerrit.js.map +1 -1
  674. package/dist/util/http/gitea.d.ts +5 -4
  675. package/dist/util/http/gitea.js +14 -13
  676. package/dist/util/http/gitea.js.map +1 -1
  677. package/dist/util/http/github.d.ts +14 -8
  678. package/dist/util/http/github.js +65 -60
  679. package/dist/util/http/github.js.map +1 -1
  680. package/dist/util/http/gitlab.d.ts +7 -5
  681. package/dist/util/http/gitlab.js +58 -46
  682. package/dist/util/http/gitlab.js.map +1 -1
  683. package/dist/util/http/got.d.ts +9 -0
  684. package/dist/util/http/got.js +54 -0
  685. package/dist/util/http/got.js.map +1 -0
  686. package/dist/util/http/host-rules.d.ts +2 -1
  687. package/dist/util/http/host-rules.js +17 -4
  688. package/dist/util/http/host-rules.js.map +1 -1
  689. package/dist/util/http/http.d.ts +93 -0
  690. package/dist/util/http/http.js +346 -0
  691. package/dist/util/http/http.js.map +1 -0
  692. package/dist/util/http/index.d.ts +6 -74
  693. package/dist/util/http/index.js +5 -359
  694. package/dist/util/http/index.js.map +1 -1
  695. package/dist/util/http/legacy.js +4 -1
  696. package/dist/util/http/legacy.js.map +1 -1
  697. package/dist/util/http/types.d.ts +9 -16
  698. package/dist/util/http/types.js.map +1 -1
  699. package/dist/util/schema-utils.d.ts +1 -0
  700. package/dist/util/schema-utils.js +43 -8
  701. package/dist/util/schema-utils.js.map +1 -1
  702. package/dist/util/stats.d.ts +10 -0
  703. package/dist/util/stats.js +45 -1
  704. package/dist/util/stats.js.map +1 -1
  705. package/dist/util/string.d.ts +16 -0
  706. package/dist/util/string.js +79 -0
  707. package/dist/util/string.js.map +1 -1
  708. package/dist/util/toml.d.ts +1 -0
  709. package/dist/util/toml.js +6 -0
  710. package/dist/util/toml.js.map +1 -1
  711. package/dist/util/url.js +3 -8
  712. package/dist/util/url.js.map +1 -1
  713. package/dist/util/yaml.js +3 -8
  714. package/dist/util/yaml.js.map +1 -1
  715. package/dist/workers/global/config/parse/env.js +3 -2
  716. package/dist/workers/global/config/parse/env.js.map +1 -1
  717. package/dist/workers/global/config/parse/file.js +19 -9
  718. package/dist/workers/global/config/parse/file.js.map +1 -1
  719. package/dist/workers/global/config/parse/host-rules-from-env.js +6 -2
  720. package/dist/workers/global/config/parse/host-rules-from-env.js.map +1 -1
  721. package/dist/workers/global/config/parse/index.js +15 -0
  722. package/dist/workers/global/config/parse/index.js.map +1 -1
  723. package/dist/workers/global/index.js +4 -2
  724. package/dist/workers/global/index.js.map +1 -1
  725. package/dist/workers/repository/cache.js +1 -2
  726. package/dist/workers/repository/cache.js.map +1 -1
  727. package/dist/workers/repository/config-migration/branch/migrated-data.js +2 -0
  728. package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
  729. package/dist/workers/repository/index.js +1 -0
  730. package/dist/workers/repository/index.js.map +1 -1
  731. package/dist/workers/repository/init/merge.js +6 -3
  732. package/dist/workers/repository/init/merge.js.map +1 -1
  733. package/dist/workers/repository/onboarding/pr/config-description.js +3 -1
  734. package/dist/workers/repository/onboarding/pr/config-description.js.map +1 -1
  735. package/dist/workers/repository/process/extract-update.js +0 -1
  736. package/dist/workers/repository/process/extract-update.js.map +1 -1
  737. package/dist/workers/repository/process/fingerprint-fields.js +0 -1
  738. package/dist/workers/repository/process/fingerprint-fields.js.map +1 -1
  739. package/dist/workers/repository/process/libyear.js +2 -2
  740. package/dist/workers/repository/process/libyear.js.map +1 -1
  741. package/dist/workers/repository/process/lookup/index.js +15 -4
  742. package/dist/workers/repository/process/lookup/index.js.map +1 -1
  743. package/dist/workers/repository/process/lookup/timestamps.d.ts +18 -0
  744. package/dist/workers/repository/process/lookup/timestamps.js +69 -0
  745. package/dist/workers/repository/process/lookup/timestamps.js.map +1 -0
  746. package/dist/workers/repository/process/lookup/types.d.ts +1 -0
  747. package/dist/workers/repository/process/lookup/types.js.map +1 -1
  748. package/dist/workers/repository/process/lookup/utils.js +20 -9
  749. package/dist/workers/repository/process/lookup/utils.js.map +1 -1
  750. package/dist/workers/repository/process/sort.js +1 -1
  751. package/dist/workers/repository/process/sort.js.map +1 -1
  752. package/dist/workers/repository/process/vulnerabilities.js +1 -1
  753. package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
  754. package/dist/workers/repository/process/write.js +1 -8
  755. package/dist/workers/repository/process/write.js.map +1 -1
  756. package/dist/workers/repository/reconfigure/utils.d.ts +2 -0
  757. package/dist/workers/repository/reconfigure/utils.js +16 -0
  758. package/dist/workers/repository/reconfigure/utils.js.map +1 -1
  759. package/dist/workers/repository/reconfigure/validate.js +6 -17
  760. package/dist/workers/repository/reconfigure/validate.js.map +1 -1
  761. package/dist/workers/repository/update/branch/auto-replace.js +25 -5
  762. package/dist/workers/repository/update/branch/auto-replace.js.map +1 -1
  763. package/dist/workers/repository/update/branch/commit.js +2 -0
  764. package/dist/workers/repository/update/branch/commit.js.map +1 -1
  765. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +10 -1
  766. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
  767. package/dist/workers/repository/update/pr/body/config-description.js +26 -1
  768. package/dist/workers/repository/update/pr/body/config-description.js.map +1 -1
  769. package/dist/workers/repository/update/pr/body/index.js +21 -14
  770. package/dist/workers/repository/update/pr/body/index.js.map +1 -1
  771. package/dist/workers/repository/update/pr/changelog/api.js +8 -6
  772. package/dist/workers/repository/update/pr/changelog/api.js.map +1 -1
  773. package/dist/workers/repository/update/pr/changelog/bitbucket/index.js +1 -1
  774. package/dist/workers/repository/update/pr/changelog/bitbucket/index.js.map +1 -1
  775. package/dist/workers/repository/update/pr/changelog/bitbucket-server/index.d.ts +3 -0
  776. package/dist/workers/repository/update/pr/changelog/bitbucket-server/index.js +39 -0
  777. package/dist/workers/repository/update/pr/changelog/bitbucket-server/index.js.map +1 -0
  778. package/dist/workers/repository/update/pr/changelog/bitbucket-server/source.d.ts +8 -0
  779. package/dist/workers/repository/update/pr/changelog/bitbucket-server/source.js +31 -0
  780. package/dist/workers/repository/update/pr/changelog/bitbucket-server/source.js.map +1 -0
  781. package/dist/workers/repository/update/pr/changelog/github/index.js +6 -3
  782. package/dist/workers/repository/update/pr/changelog/github/index.js.map +1 -1
  783. package/dist/workers/repository/update/pr/changelog/gitlab/index.js +1 -1
  784. package/dist/workers/repository/update/pr/changelog/gitlab/index.js.map +1 -1
  785. package/dist/workers/repository/update/pr/changelog/release-notes.js +12 -8
  786. package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
  787. package/dist/workers/repository/update/pr/changelog/source.d.ts +1 -1
  788. package/dist/workers/repository/update/pr/changelog/source.js +1 -0
  789. package/dist/workers/repository/update/pr/changelog/source.js.map +1 -1
  790. package/dist/workers/repository/update/pr/changelog/types.d.ts +1 -1
  791. package/dist/workers/repository/update/pr/changelog/types.js.map +1 -1
  792. package/dist/workers/repository/update/pr/index.js +2 -4
  793. package/dist/workers/repository/update/pr/index.js.map +1 -1
  794. package/dist/workers/repository/updates/flatten.js +8 -4
  795. package/dist/workers/repository/updates/flatten.js.map +1 -1
  796. package/dist/workers/repository/updates/generate.js +3 -2
  797. package/dist/workers/repository/updates/generate.js.map +1 -1
  798. package/dist/workers/types.d.ts +1 -4
  799. package/dist/workers/types.js.map +1 -1
  800. package/package.json +85 -85
  801. package/renovate-schema.json +24 -3
  802. package/dist/modules/manager/github-actions/types.d.ts +0 -30
  803. package/dist/modules/manager/github-actions/types.js +0 -3
  804. package/dist/modules/manager/github-actions/types.js.map +0 -1
  805. package/dist/modules/manager/gitlabci/common.d.ts +0 -6
  806. package/dist/modules/manager/gitlabci/common.js +0 -30
  807. package/dist/modules/manager/gitlabci/common.js.map +0 -1
  808. package/dist/modules/manager/gitlabci/types.d.ts +0 -35
  809. package/dist/modules/manager/gitlabci/types.js +0 -3
  810. package/dist/modules/manager/gitlabci/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/env.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport JSON5 from 'json5';\nimport { getOptions } from '../../../../config/options';\nimport type { AllConfig } from '../../../../config/types';\nimport { logger } from '../../../../logger';\nimport { parseJson } from '../../../../util/common';\nimport { coersions } from './coersions';\nimport type { ParseConfigOptions } from './types';\nimport { migrateAndValidateConfig } from './util';\n\nfunction normalizePrefixes(\n env: NodeJS.ProcessEnv,\n prefix: string | undefined,\n): NodeJS.ProcessEnv {\n const result = { ...env };\n if (prefix) {\n for (const [key, val] of Object.entries(result)) {\n if (key.startsWith(prefix)) {\n const newKey = key.replace(prefix, 'RENOVATE_');\n result[newKey] = val;\n delete result[key];\n }\n }\n }\n return result;\n}\n\nexport function getEnvName(option: ParseConfigOptions): string {\n if (option.env === false) {\n return '';\n }\n if (option.env) {\n return option.env;\n }\n const nameWithUnderscores = option.name.replace(/([A-Z])/g, '_$1');\n return `RENOVATE_${nameWithUnderscores.toUpperCase()}`;\n}\n\nconst renameKeys = {\n aliases: 'registryAliases',\n azureAutoComplete: 'platformAutomerge', // migrate: azureAutoComplete\n gitLabAutomerge: 'platformAutomerge', // migrate: gitLabAutomerge\n mergeConfidenceApiBaseUrl: 'mergeConfidenceEndpoint',\n mergeConfidenceSupportedDatasources: 'mergeConfidenceDatasources',\n allowPostUpgradeCommandTemplating: 'allowCommandTemplating',\n allowedPostUpgradeCommands: 'allowedCommands',\n};\n\nfunction renameEnvKeys(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv {\n const result = { ...env };\n for (const [from, to] of Object.entries(renameKeys)) {\n const fromKey = getEnvName({ name: from });\n const toKey = getEnvName({ name: to });\n if (env[fromKey]) {\n result[toKey] = env[fromKey];\n delete result[fromKey];\n }\n }\n return result;\n}\n\nconst migratedKeysWithValues = [\n {\n oldName: 'recreateClosed',\n newName: 'recreateWhen',\n from: 'true',\n to: 'always',\n },\n {\n oldName: 'recreateClosed',\n newName: 'recreateWhen',\n from: 'false',\n to: 'auto',\n },\n];\n\nfunction massageEnvKeyValues(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv {\n const result = { ...env };\n for (const { oldName, newName, from, to } of migratedKeysWithValues) {\n const key = getEnvName({ name: oldName });\n if (env[key] !== undefined) {\n if (result[key] === from) {\n delete result[key];\n result[getEnvName({ name: newName })] = to;\n }\n }\n }\n return result;\n}\n\n// these experimental env vars have been converted into self-hosted config options\nconst convertedExperimentalEnvVars = [\n 'RENOVATE_X_AUTODISCOVER_REPO_SORT',\n 'RENOVATE_X_AUTODISCOVER_REPO_ORDER',\n 'RENOVATE_X_DOCKER_MAX_PAGES',\n 'RENOVATE_X_DELETE_CONFIG_FILE',\n 'RENOVATE_X_S3_ENDPOINT',\n 'RENOVATE_X_S3_PATH_STYLE',\n 'RENOVATE_X_MERGE_CONFIDENCE_API_BASE_URL',\n 'RENOVATE_X_MERGE_CONFIDENCE_SUPPORTED_DATASOURCES',\n];\n\n/**\n * Massages the experimental env vars which have been converted to config options\n *\n * e.g. RENOVATE_X_AUTODISCOVER_REPO_SORT -> RENOVATE_AUTODISCOVER_REPO_SORT\n */\nfunction massageConvertedExperimentalVars(\n env: NodeJS.ProcessEnv,\n): NodeJS.ProcessEnv {\n const result = { ...env };\n for (const key of convertedExperimentalEnvVars) {\n if (env[key] !== undefined) {\n const newKey = key.replace('RENOVATE_X_', 'RENOVATE_');\n result[newKey] = env[key];\n delete result[key];\n }\n }\n return result;\n}\n\nexport async function getConfig(\n inputEnv: NodeJS.ProcessEnv,\n configEnvKey = 'RENOVATE_CONFIG',\n): Promise<AllConfig> {\n const env = prepareEnv(inputEnv);\n const config = await parseAndValidateOrExit(env, configEnvKey);\n\n const options = getOptions();\n config.hostRules ??= [];\n\n for (const option of options) {\n if (option.env === false) {\n continue;\n }\n\n const envName = getEnvName(option);\n const envVal = env[envName];\n if (!envVal) {\n continue;\n }\n\n if (option.type === 'array' && option.subType === 'object') {\n try {\n const parsed = JSON5.parse(envVal);\n if (is.array(parsed)) {\n config[option.name] = parsed;\n } else {\n logger.debug(\n { val: envVal, envName },\n 'Could not parse object array',\n );\n }\n } catch {\n logger.debug(\n { val: envVal, envName },\n 'Could not parse environment variable',\n );\n }\n } else {\n const coerce = coersions[option.type];\n config[option.name] = coerce(envVal);\n if (option.name === 'dryRun') {\n if ((config[option.name] as string) === 'true') {\n logger.warn('env config dryRun property has been changed to full');\n config[option.name] = 'full';\n } else if ((config[option.name] as string) === 'false') {\n logger.warn('env config dryRun property has been changed to null');\n delete config[option.name];\n } else if ((config[option.name] as string) === 'null') {\n delete config[option.name];\n }\n }\n\n if (option.name === 'requireConfig') {\n if ((config[option.name] as string) === 'true') {\n logger.warn(\n 'env config requireConfig property has been changed to required',\n );\n config[option.name] = 'required';\n } else if ((config[option.name] as string) === 'false') {\n logger.warn(\n 'env config requireConfig property has been changed to optional',\n );\n config[option.name] = 'optional';\n }\n }\n\n if (option.name === 'platformCommit') {\n if ((config[option.name] as string) === 'true') {\n logger.warn(\n 'env config platformCommit property has been changed to enabled',\n );\n config[option.name] = 'enabled';\n } else if ((config[option.name] as string) === 'false') {\n logger.warn(\n 'env config platformCommit property has been changed to disabled',\n );\n config[option.name] = 'disabled';\n }\n }\n }\n }\n\n if (env.GITHUB_COM_TOKEN) {\n logger.debug(`Converting GITHUB_COM_TOKEN into a global host rule`);\n config.hostRules.push({\n hostType: 'github',\n matchHost: 'github.com',\n token: env.GITHUB_COM_TOKEN,\n });\n }\n\n // These env vars are deprecated and deleted to make sure they're not used\n const unsupportedEnv = [\n 'BITBUCKET_TOKEN',\n 'BITBUCKET_USERNAME',\n 'BITBUCKET_PASSWORD',\n 'GITHUB_ENDPOINT',\n 'GITHUB_TOKEN',\n 'GITLAB_ENDPOINT',\n 'GITLAB_TOKEN',\n 'VSTS_ENDPOINT',\n 'VSTS_TOKEN',\n ];\n\n for (const val of unsupportedEnv) {\n delete env[val];\n }\n\n return config;\n}\n\nexport function prepareEnv(inputEnv: NodeJS.ProcessEnv): NodeJS.ProcessEnv {\n let env = normalizePrefixes(inputEnv, inputEnv.ENV_PREFIX);\n env = massageConvertedExperimentalVars(env);\n env = renameEnvKeys(env);\n // massage the values of migrated configuration keys\n return massageEnvKeyValues(env);\n}\n\nexport async function parseAndValidateOrExit(\n env: NodeJS.ProcessEnv,\n configEnvKey: string,\n): Promise<AllConfig> {\n if (!env[configEnvKey]) {\n return {};\n }\n\n try {\n const config = parseJson(\n env[configEnvKey],\n `${configEnvKey}.env.json5`,\n ) as AllConfig;\n logger.debug({ config }, `Detected config in env ${configEnvKey}`);\n\n return await migrateAndValidateConfig(config, `${configEnvKey}`);\n } catch (err) {\n logger.fatal({ err }, `Could not parse ${configEnvKey}`);\n process.exit(1);\n }\n}\n"]}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/env.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport JSON5 from 'json5';\nimport { getOptions } from '../../../../config/options';\nimport type { AllConfig } from '../../../../config/types';\nimport { logger } from '../../../../logger';\nimport { parseJson } from '../../../../util/common';\nimport { coersions } from './coersions';\nimport type { ParseConfigOptions } from './types';\nimport { migrateAndValidateConfig } from './util';\n\nfunction normalizePrefixes(\n env: NodeJS.ProcessEnv,\n prefix: string | undefined,\n): NodeJS.ProcessEnv {\n const result = { ...env };\n if (prefix) {\n for (const [key, val] of Object.entries(result)) {\n if (key.startsWith(prefix)) {\n const newKey = key.replace(prefix, 'RENOVATE_');\n result[newKey] = val;\n delete result[key];\n }\n }\n }\n return result;\n}\n\nexport function getEnvName(option: ParseConfigOptions): string {\n if (option.env === false) {\n return '';\n }\n if (option.env) {\n return option.env;\n }\n const nameWithUnderscores = option.name.replace(/([A-Z])/g, '_$1');\n return `RENOVATE_${nameWithUnderscores.toUpperCase()}`;\n}\n\nconst renameKeys = {\n aliases: 'registryAliases',\n azureAutoComplete: 'platformAutomerge', // migrate: azureAutoComplete\n gitLabAutomerge: 'platformAutomerge', // migrate: gitLabAutomerge\n mergeConfidenceApiBaseUrl: 'mergeConfidenceEndpoint',\n mergeConfidenceSupportedDatasources: 'mergeConfidenceDatasources',\n allowPostUpgradeCommandTemplating: 'allowCommandTemplating',\n allowedPostUpgradeCommands: 'allowedCommands',\n};\n\nfunction renameEnvKeys(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv {\n const result = { ...env };\n for (const [from, to] of Object.entries(renameKeys)) {\n const fromKey = getEnvName({ name: from });\n const toKey = getEnvName({ name: to });\n if (env[fromKey]) {\n result[toKey] = env[fromKey];\n delete result[fromKey];\n }\n }\n return result;\n}\n\nconst migratedKeysWithValues = [\n {\n oldName: 'recreateClosed',\n newName: 'recreateWhen',\n from: 'true',\n to: 'always',\n },\n {\n oldName: 'recreateClosed',\n newName: 'recreateWhen',\n from: 'false',\n to: 'auto',\n },\n];\n\nfunction massageEnvKeyValues(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv {\n const result = { ...env };\n for (const { oldName, newName, from, to } of migratedKeysWithValues) {\n const key = getEnvName({ name: oldName });\n if (env[key] !== undefined) {\n if (result[key] === from) {\n delete result[key];\n result[getEnvName({ name: newName })] = to;\n }\n }\n }\n return result;\n}\n\n// these experimental env vars have been converted into self-hosted config options\nconst convertedExperimentalEnvVars = [\n 'RENOVATE_X_AUTODISCOVER_REPO_SORT',\n 'RENOVATE_X_AUTODISCOVER_REPO_ORDER',\n 'RENOVATE_X_DOCKER_MAX_PAGES',\n 'RENOVATE_X_DELETE_CONFIG_FILE',\n 'RENOVATE_X_S3_ENDPOINT',\n 'RENOVATE_X_S3_PATH_STYLE',\n 'RENOVATE_X_MERGE_CONFIDENCE_API_BASE_URL',\n 'RENOVATE_X_MERGE_CONFIDENCE_SUPPORTED_DATASOURCES',\n];\n\n/**\n * Massages the experimental env vars which have been converted to config options\n *\n * e.g. RENOVATE_X_AUTODISCOVER_REPO_SORT -> RENOVATE_AUTODISCOVER_REPO_SORT\n */\nfunction massageConvertedExperimentalVars(\n env: NodeJS.ProcessEnv,\n): NodeJS.ProcessEnv {\n const result = { ...env };\n for (const key of convertedExperimentalEnvVars) {\n if (env[key] !== undefined) {\n const newKey = key.replace('RENOVATE_X_', 'RENOVATE_');\n result[newKey] = env[key];\n delete result[key];\n }\n }\n return result;\n}\n\nexport async function getConfig(\n inputEnv: NodeJS.ProcessEnv,\n configEnvKey = 'RENOVATE_CONFIG',\n): Promise<AllConfig> {\n const env = prepareEnv(inputEnv);\n const config = await parseAndValidateOrExit(env, configEnvKey);\n\n const options = getOptions();\n config.hostRules ??= [];\n\n for (const option of options) {\n if (option.env === false) {\n continue;\n }\n\n const envName = getEnvName(option);\n const envVal = env[envName];\n if (!envVal) {\n continue;\n }\n\n if (option.type === 'array' && option.subType === 'object') {\n try {\n const parsed = JSON5.parse(envVal);\n if (is.array(parsed)) {\n config[option.name] = parsed;\n } else {\n logger.debug(\n { val: envVal, envName },\n 'Could not parse object array',\n );\n }\n } catch {\n logger.debug(\n { val: envVal, envName },\n 'Could not parse environment variable',\n );\n }\n } else {\n const coerce = coersions[option.type];\n config[option.name] = coerce(envVal);\n if (option.name === 'dryRun') {\n if ((config[option.name] as string) === 'true') {\n logger.warn('env config dryRun property has been changed to full');\n config[option.name] = 'full';\n } else if ((config[option.name] as string) === 'false') {\n logger.warn('env config dryRun property has been changed to null');\n delete config[option.name];\n } else if ((config[option.name] as string) === 'null') {\n delete config[option.name];\n }\n }\n\n if (option.name === 'requireConfig') {\n if ((config[option.name] as string) === 'true') {\n logger.warn(\n 'env config requireConfig property has been changed to required',\n );\n config[option.name] = 'required';\n } else if ((config[option.name] as string) === 'false') {\n logger.warn(\n 'env config requireConfig property has been changed to optional',\n );\n config[option.name] = 'optional';\n }\n }\n\n if (option.name === 'platformCommit') {\n if ((config[option.name] as string) === 'true') {\n logger.warn(\n 'env config platformCommit property has been changed to enabled',\n );\n config[option.name] = 'enabled';\n } else if ((config[option.name] as string) === 'false') {\n logger.warn(\n 'env config platformCommit property has been changed to disabled',\n );\n config[option.name] = 'disabled';\n }\n }\n }\n }\n\n const githubComToken = env.GITHUB_COM_TOKEN ?? env.RENOVATE_GITHUB_COM_TOKEN;\n if (githubComToken) {\n logger.debug(`Converting GITHUB_COM_TOKEN into a global host rule`);\n config.hostRules.push({\n hostType: 'github',\n matchHost: 'github.com',\n token: githubComToken,\n });\n }\n\n // These env vars are deprecated and deleted to make sure they're not used\n const unsupportedEnv = [\n 'BITBUCKET_TOKEN',\n 'BITBUCKET_USERNAME',\n 'BITBUCKET_PASSWORD',\n 'GITHUB_ENDPOINT',\n 'GITHUB_TOKEN',\n 'GITLAB_ENDPOINT',\n 'GITLAB_TOKEN',\n 'VSTS_ENDPOINT',\n 'VSTS_TOKEN',\n ];\n\n for (const val of unsupportedEnv) {\n delete env[val];\n }\n\n return config;\n}\n\nexport function prepareEnv(inputEnv: NodeJS.ProcessEnv): NodeJS.ProcessEnv {\n let env = normalizePrefixes(inputEnv, inputEnv.ENV_PREFIX);\n env = massageConvertedExperimentalVars(env);\n env = renameEnvKeys(env);\n // massage the values of migrated configuration keys\n return massageEnvKeyValues(env);\n}\n\nexport async function parseAndValidateOrExit(\n env: NodeJS.ProcessEnv,\n configEnvKey: string,\n): Promise<AllConfig> {\n if (!env[configEnvKey]) {\n return {};\n }\n\n try {\n const config = parseJson(\n env[configEnvKey],\n `${configEnvKey}.env.json5`,\n ) as AllConfig;\n logger.debug({ config }, `Detected config in env ${configEnvKey}`);\n\n return await migrateAndValidateConfig(config, `${configEnvKey}`);\n } catch (err) {\n logger.fatal({ err }, `Could not parse ${configEnvKey}`);\n process.exit(1);\n }\n}\n"]}
@@ -4,6 +4,7 @@ exports.getParsedContent = getParsedContent;
4
4
  exports.getConfig = getConfig;
5
5
  exports.deleteNonDefaultConfig = deleteNonDefaultConfig;
6
6
  const tslib_1 = require("tslib");
7
+ const url_1 = require("url");
7
8
  const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
8
9
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
9
10
  const json5_1 = tslib_1.__importDefault(require("json5"));
@@ -25,13 +26,18 @@ async function getParsedContent(file) {
25
26
  case '.json':
26
27
  return (0, common_1.parseJson)(await (0, fs_1.readSystemFile)(file, 'utf8'), file);
27
28
  case '.cjs':
29
+ case '.mjs':
28
30
  case '.js': {
29
- const tmpConfig = await Promise.resolve(`${upath_1.default.isAbsolute(file) ? file : `${process.cwd()}/${file}`}`).then(s => tslib_1.__importStar(require(s)));
30
- let config = tmpConfig.default
31
- ? tmpConfig.default
32
- : /* istanbul ignore next: hard to test */ tmpConfig;
31
+ const absoluteFilePath = upath_1.default.isAbsolute(file)
32
+ ? file
33
+ : `${process.cwd()}/${file}`;
34
+ // use file url paths to avoid issues with windows paths
35
+ // typescript does not support file URL for import
36
+ const tmpConfig = await import((0, url_1.pathToFileURL)(absoluteFilePath).href);
37
+ /* v8 ignore next -- not testable */
38
+ let config = tmpConfig.default ?? tmpConfig;
33
39
  // Allow the config to be a function
34
- if (is_1.default.function_(config)) {
40
+ if (is_1.default.function(config)) {
35
41
  config = config();
36
42
  }
37
43
  return config;
@@ -42,12 +48,17 @@ async function getParsedContent(file) {
42
48
  }
43
49
  async function getConfig(env) {
44
50
  const configFile = env.RENOVATE_CONFIG_FILE ?? 'config.js';
45
- if (env.RENOVATE_CONFIG_FILE && !(await fs_extra_1.default.pathExists(configFile))) {
51
+ const configFileExists = await fs_extra_1.default.pathExists(configFile);
52
+ if (env.RENOVATE_CONFIG_FILE && !configFileExists) {
46
53
  logger_1.logger.fatal({ configFile }, `Custom config file specified in RENOVATE_CONFIG_FILE must exist`);
47
54
  process.exit(1);
48
55
  }
49
- logger_1.logger.debug('Checking for config file in ' + configFile);
50
56
  let config = {};
57
+ if (!configFileExists) {
58
+ logger_1.logger.debug('No config file found on disk - skipping');
59
+ return config;
60
+ }
61
+ logger_1.logger.debug('Checking for config file in ' + configFile);
51
62
  try {
52
63
  config = await getParsedContent(configFile);
53
64
  }
@@ -69,8 +80,7 @@ async function getConfig(env) {
69
80
  logger_1.logger.fatal('Error parsing config file');
70
81
  process.exit(1);
71
82
  }
72
- // istanbul ignore next: we can ignore this
73
- logger_1.logger.debug('No config file found on disk - skipping');
83
+ logger_1.logger.debug('Error reading or parsing file - skipping');
74
84
  }
75
85
  if (is_1.default.nonEmptyObject(config.processEnv)) {
76
86
  const exportedKeys = [];
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/file.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport fs from 'fs-extra';\nimport JSON5 from 'json5';\nimport upath from 'upath';\nimport type { AllConfig, RenovateConfig } from '../../../../config/types';\nimport { logger } from '../../../../logger';\nimport { parseJson } from '../../../../util/common';\nimport { readSystemFile } from '../../../../util/fs';\nimport { parseSingleYaml } from '../../../../util/yaml';\nimport { migrateAndValidateConfig } from './util';\n\nexport async function getParsedContent(file: string): Promise<RenovateConfig> {\n if (upath.basename(file) === '.renovaterc') {\n return JSON5.parse(await readSystemFile(file, 'utf8'));\n }\n switch (upath.extname(file)) {\n case '.yaml':\n case '.yml':\n return parseSingleYaml(await readSystemFile(file, 'utf8'));\n case '.json5':\n case '.json':\n return parseJson(\n await readSystemFile(file, 'utf8'),\n file,\n ) as RenovateConfig;\n case '.cjs':\n case '.js': {\n const tmpConfig = await import(\n upath.isAbsolute(file) ? file : `${process.cwd()}/${file}`\n );\n let config = tmpConfig.default\n ? tmpConfig.default\n : /* istanbul ignore next: hard to test */ tmpConfig;\n // Allow the config to be a function\n if (is.function_(config)) {\n config = config();\n }\n return config;\n }\n default:\n throw new Error('Unsupported file type');\n }\n}\n\nexport async function getConfig(env: NodeJS.ProcessEnv): Promise<AllConfig> {\n const configFile = env.RENOVATE_CONFIG_FILE ?? 'config.js';\n\n if (env.RENOVATE_CONFIG_FILE && !(await fs.pathExists(configFile))) {\n logger.fatal(\n { configFile },\n `Custom config file specified in RENOVATE_CONFIG_FILE must exist`,\n );\n process.exit(1);\n }\n\n logger.debug('Checking for config file in ' + configFile);\n let config: AllConfig = {};\n try {\n config = await getParsedContent(configFile);\n } catch (err) {\n if (err instanceof SyntaxError || err instanceof TypeError) {\n logger.fatal({ error: err.stack }, 'Could not parse config file');\n process.exit(1);\n } else if (err instanceof ReferenceError) {\n logger.fatal(\n `Error parsing config file due to unresolved variable(s): ${err.message}`,\n );\n process.exit(1);\n } else if (err.message === 'Unsupported file type') {\n logger.fatal(err.message);\n process.exit(1);\n } else if (env.RENOVATE_CONFIG_FILE) {\n logger.debug({ err }, 'Parse error');\n logger.fatal('Error parsing config file');\n process.exit(1);\n }\n // istanbul ignore next: we can ignore this\n logger.debug('No config file found on disk - skipping');\n }\n\n if (is.nonEmptyObject(config.processEnv)) {\n const exportedKeys = [];\n for (const [key, value] of Object.entries(config.processEnv)) {\n if (!is.nonEmptyString(value)) {\n logger.error({ key }, 'processEnv value is not a string.');\n continue;\n }\n\n exportedKeys.push(key);\n process.env[key] = value;\n }\n logger.debug(\n { keys: exportedKeys },\n 'processEnv keys were exported to env',\n );\n delete config.processEnv;\n }\n\n return migrateAndValidateConfig(config, configFile);\n}\n\nexport async function deleteNonDefaultConfig(\n env: NodeJS.ProcessEnv,\n deleteConfigFile: boolean,\n): Promise<void> {\n const configFile = env.RENOVATE_CONFIG_FILE;\n\n if (is.undefined(configFile) || is.emptyStringOrWhitespace(configFile)) {\n return;\n }\n\n if (!deleteConfigFile) {\n return;\n }\n\n if (!(await fs.pathExists(configFile))) {\n return;\n }\n\n try {\n await fs.remove(configFile);\n logger.trace({ path: configFile }, 'config file successfully deleted');\n } catch (err) {\n logger.warn({ err }, 'error deleting config file');\n }\n}\n"]}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/file.ts"],"names":[],"mappings":"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","sourcesContent":["import { pathToFileURL } from 'url';\nimport is from '@sindresorhus/is';\nimport fs from 'fs-extra';\nimport JSON5 from 'json5';\nimport upath from 'upath';\nimport type { AllConfig, RenovateConfig } from '../../../../config/types';\nimport { logger } from '../../../../logger';\nimport { parseJson } from '../../../../util/common';\nimport { readSystemFile } from '../../../../util/fs';\nimport { parseSingleYaml } from '../../../../util/yaml';\nimport { migrateAndValidateConfig } from './util';\n\nexport async function getParsedContent(file: string): Promise<RenovateConfig> {\n if (upath.basename(file) === '.renovaterc') {\n return JSON5.parse(await readSystemFile(file, 'utf8'));\n }\n switch (upath.extname(file)) {\n case '.yaml':\n case '.yml':\n return parseSingleYaml(await readSystemFile(file, 'utf8'));\n case '.json5':\n case '.json':\n return parseJson(\n await readSystemFile(file, 'utf8'),\n file,\n ) as RenovateConfig;\n case '.cjs':\n case '.mjs':\n case '.js': {\n const absoluteFilePath = upath.isAbsolute(file)\n ? file\n : `${process.cwd()}/${file}`;\n // use file url paths to avoid issues with windows paths\n // typescript does not support file URL for import\n const tmpConfig = await import(pathToFileURL(absoluteFilePath).href);\n /* v8 ignore next -- not testable */\n let config = tmpConfig.default ?? tmpConfig;\n // Allow the config to be a function\n if (is.function(config)) {\n config = config();\n }\n return config;\n }\n default:\n throw new Error('Unsupported file type');\n }\n}\n\nexport async function getConfig(env: NodeJS.ProcessEnv): Promise<AllConfig> {\n const configFile = env.RENOVATE_CONFIG_FILE ?? 'config.js';\n\n const configFileExists = await fs.pathExists(configFile);\n if (env.RENOVATE_CONFIG_FILE && !configFileExists) {\n logger.fatal(\n { configFile },\n `Custom config file specified in RENOVATE_CONFIG_FILE must exist`,\n );\n process.exit(1);\n }\n\n let config: AllConfig = {};\n\n if (!configFileExists) {\n logger.debug('No config file found on disk - skipping');\n return config;\n }\n\n logger.debug('Checking for config file in ' + configFile);\n try {\n config = await getParsedContent(configFile);\n } catch (err) {\n if (err instanceof SyntaxError || err instanceof TypeError) {\n logger.fatal({ error: err.stack }, 'Could not parse config file');\n process.exit(1);\n } else if (err instanceof ReferenceError) {\n logger.fatal(\n `Error parsing config file due to unresolved variable(s): ${err.message}`,\n );\n process.exit(1);\n } else if (err.message === 'Unsupported file type') {\n logger.fatal(err.message);\n process.exit(1);\n } else if (env.RENOVATE_CONFIG_FILE) {\n logger.debug({ err }, 'Parse error');\n logger.fatal('Error parsing config file');\n process.exit(1);\n }\n logger.debug('Error reading or parsing file - skipping');\n }\n\n if (is.nonEmptyObject(config.processEnv)) {\n const exportedKeys = [];\n for (const [key, value] of Object.entries(config.processEnv)) {\n if (!is.nonEmptyString(value)) {\n logger.error({ key }, 'processEnv value is not a string.');\n continue;\n }\n\n exportedKeys.push(key);\n process.env[key] = value;\n }\n logger.debug(\n { keys: exportedKeys },\n 'processEnv keys were exported to env',\n );\n delete config.processEnv;\n }\n\n return migrateAndValidateConfig(config, configFile);\n}\n\nexport async function deleteNonDefaultConfig(\n env: NodeJS.ProcessEnv,\n deleteConfigFile: boolean,\n): Promise<void> {\n const configFile = env.RENOVATE_CONFIG_FILE;\n\n if (is.undefined(configFile) || is.emptyStringOrWhitespace(configFile)) {\n return;\n }\n\n if (!deleteConfigFile) {\n return;\n }\n\n if (!(await fs.pathExists(configFile))) {\n return;\n }\n\n try {\n await fs.remove(configFile);\n logger.trace({ path: configFile }, 'config file successfully deleted');\n } catch (err) {\n logger.warn({ err }, 'error deleting config file');\n }\n}\n"]}
@@ -41,7 +41,7 @@ function hostRulesFromEnv(env) {
41
41
  const hostRules = [];
42
42
  const npmEnvPrefixes = ['npm_config_', 'npm_lifecycle_', 'npm_package_'];
43
43
  for (const envName of Object.keys(env).sort()) {
44
- if (envName === 'GITHUB_COM_TOKEN') {
44
+ if (['GITHUB_COM_TOKEN', 'RENOVATE_GITHUB_COM_TOKEN'].includes(envName)) {
45
45
  continue;
46
46
  }
47
47
  if (npmEnvPrefixes.some((prefix) => envName.startsWith(prefix))) {
@@ -49,7 +49,11 @@ function hostRulesFromEnv(env) {
49
49
  continue;
50
50
  }
51
51
  // Double underscore __ is used in place of hyphen -
52
- const splitEnv = envName.toLowerCase().replace(/__/g, '-').split('_');
52
+ const splitEnv = envName
53
+ .replace(/^RENOVATE_/, '')
54
+ .toLowerCase()
55
+ .replace(/__/g, '-')
56
+ .split('_');
53
57
  const hostType = splitEnv.shift();
54
58
  if (datasources.has(hostType) ||
55
59
  (platforms.has(hostType) && splitEnv.length > 1)) {
@@ -1 +1 @@
1
- {"version":3,"file":"host-rules-from-env.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/host-rules-from-env.ts"],"names":[],"mappings":"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","sourcesContent":["import { logger } from '../../../../logger';\nimport { getDatasourceList } from '../../../../modules/datasource';\nimport type { HostRule } from '../../../../types';\n\ntype AuthField = 'token' | 'username' | 'password';\n\ntype HttpsAuthField =\n | 'httpscertificate'\n | 'httpsprivatekey'\n | 'httpscertificateauthority';\n\nfunction isAuthField(x: unknown): x is AuthField {\n return x === 'token' || x === 'username' || x === 'password';\n}\n\nfunction isHttpsAuthField(x: unknown): x is HttpsAuthField {\n return (\n x === 'httpscertificate' ||\n x === 'httpsprivatekey' ||\n x === 'httpscertificateauthority'\n );\n}\n\nfunction restoreHttpsAuthField(x: HttpsAuthField | AuthField): string {\n switch (x) {\n case 'httpsprivatekey':\n return 'httpsPrivateKey';\n case 'httpscertificate':\n return 'httpsCertificate';\n case 'httpscertificateauthority':\n return 'httpsCertificateAuthority';\n }\n\n return x;\n}\n\nfunction setHostRuleValue(\n rule: HostRule,\n key: string,\n value: string | undefined,\n): void {\n if (value !== undefined) {\n switch (key) {\n case 'token':\n case 'username':\n case 'password':\n case 'httpsCertificateAuthority':\n case 'httpsCertificate':\n case 'httpsPrivateKey':\n rule[key] = value;\n }\n }\n}\n\nexport function hostRulesFromEnv(env: NodeJS.ProcessEnv): HostRule[] {\n const datasources = new Set(getDatasourceList());\n const platforms = new Set(['github']);\n\n const hostRules: HostRule[] = [];\n\n const npmEnvPrefixes = ['npm_config_', 'npm_lifecycle_', 'npm_package_'];\n\n for (const envName of Object.keys(env).sort()) {\n if (envName === 'GITHUB_COM_TOKEN') {\n continue;\n }\n if (npmEnvPrefixes.some((prefix) => envName.startsWith(prefix))) {\n logger.trace('Ignoring npm env: ' + envName);\n continue;\n }\n // Double underscore __ is used in place of hyphen -\n const splitEnv = envName.toLowerCase().replace(/__/g, '-').split('_');\n const hostType = splitEnv.shift()!;\n if (\n datasources.has(hostType) ||\n (platforms.has(hostType) && splitEnv.length > 1)\n ) {\n let suffix = splitEnv.pop()!;\n if (isAuthField(suffix) || isHttpsAuthField(suffix)) {\n suffix = restoreHttpsAuthField(suffix);\n\n let matchHost: string | undefined = undefined;\n const rule: HostRule = {};\n setHostRuleValue(rule, suffix, env[envName]);\n if (splitEnv.length === 0) {\n // host-less rule\n } else if (splitEnv.length === 1) {\n logger.warn({ env: envName }, 'Cannot parse env');\n continue;\n } else {\n matchHost = splitEnv.join('.');\n }\n const existingRule = hostRules.find(\n (hr) => hr.hostType === hostType && hr.matchHost === matchHost,\n );\n logger.debug(`Converting ${envName} into a global host rule`);\n if (existingRule) {\n // Add current field to existing rule\n setHostRuleValue(existingRule, suffix, env[envName]);\n } else {\n // Create a new rule\n const newRule: HostRule = {\n hostType,\n };\n if (matchHost) {\n newRule.matchHost = matchHost;\n }\n setHostRuleValue(newRule, suffix, env[envName]);\n hostRules.push(newRule);\n }\n }\n }\n }\n return hostRules;\n}\n"]}
1
+ {"version":3,"file":"host-rules-from-env.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/host-rules-from-env.ts"],"names":[],"mappings":"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","sourcesContent":["import { logger } from '../../../../logger';\nimport { getDatasourceList } from '../../../../modules/datasource';\nimport type { HostRule } from '../../../../types';\n\ntype AuthField = 'token' | 'username' | 'password';\n\ntype HttpsAuthField =\n | 'httpscertificate'\n | 'httpsprivatekey'\n | 'httpscertificateauthority';\n\nfunction isAuthField(x: unknown): x is AuthField {\n return x === 'token' || x === 'username' || x === 'password';\n}\n\nfunction isHttpsAuthField(x: unknown): x is HttpsAuthField {\n return (\n x === 'httpscertificate' ||\n x === 'httpsprivatekey' ||\n x === 'httpscertificateauthority'\n );\n}\n\nfunction restoreHttpsAuthField(x: HttpsAuthField | AuthField): string {\n switch (x) {\n case 'httpsprivatekey':\n return 'httpsPrivateKey';\n case 'httpscertificate':\n return 'httpsCertificate';\n case 'httpscertificateauthority':\n return 'httpsCertificateAuthority';\n }\n\n return x;\n}\n\nfunction setHostRuleValue(\n rule: HostRule,\n key: string,\n value: string | undefined,\n): void {\n if (value !== undefined) {\n switch (key) {\n case 'token':\n case 'username':\n case 'password':\n case 'httpsCertificateAuthority':\n case 'httpsCertificate':\n case 'httpsPrivateKey':\n rule[key] = value;\n }\n }\n}\n\nexport function hostRulesFromEnv(env: NodeJS.ProcessEnv): HostRule[] {\n const datasources = new Set(getDatasourceList());\n const platforms = new Set(['github']);\n\n const hostRules: HostRule[] = [];\n\n const npmEnvPrefixes = ['npm_config_', 'npm_lifecycle_', 'npm_package_'];\n\n for (const envName of Object.keys(env).sort()) {\n if (['GITHUB_COM_TOKEN', 'RENOVATE_GITHUB_COM_TOKEN'].includes(envName)) {\n continue;\n }\n if (npmEnvPrefixes.some((prefix) => envName.startsWith(prefix))) {\n logger.trace('Ignoring npm env: ' + envName);\n continue;\n }\n // Double underscore __ is used in place of hyphen -\n const splitEnv = envName\n .replace(/^RENOVATE_/, '')\n .toLowerCase()\n .replace(/__/g, '-')\n .split('_');\n const hostType = splitEnv.shift()!;\n if (\n datasources.has(hostType) ||\n (platforms.has(hostType) && splitEnv.length > 1)\n ) {\n let suffix = splitEnv.pop()!;\n if (isAuthField(suffix) || isHttpsAuthField(suffix)) {\n suffix = restoreHttpsAuthField(suffix);\n\n let matchHost: string | undefined = undefined;\n const rule: HostRule = {};\n setHostRuleValue(rule, suffix, env[envName]);\n if (splitEnv.length === 0) {\n // host-less rule\n } else if (splitEnv.length === 1) {\n logger.warn({ env: envName }, 'Cannot parse env');\n continue;\n } else {\n matchHost = splitEnv.join('.');\n }\n const existingRule = hostRules.find(\n (hr) => hr.hostType === hostType && hr.matchHost === matchHost,\n );\n logger.debug(`Converting ${envName} into a global host rule`);\n if (existingRule) {\n // Add current field to existing rule\n setHostRuleValue(existingRule, suffix, env[envName]);\n } else {\n // Create a new rule\n const newRule: HostRule = {\n hostType,\n };\n if (matchHost) {\n newRule.matchHost = matchHost;\n }\n setHostRuleValue(newRule, suffix, env[envName]);\n hostRules.push(newRule);\n }\n }\n }\n }\n return hostRules;\n}\n"]}
@@ -2,11 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseConfigs = parseConfigs;
4
4
  const tslib_1 = require("tslib");
5
+ const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
5
6
  const defaultsParser = tslib_1.__importStar(require("../../../../config/defaults"));
7
+ const secrets_1 = require("../../../../config/secrets");
6
8
  const utils_1 = require("../../../../config/utils");
7
9
  const logger_1 = require("../../../../logger");
8
10
  const manager_1 = require("../../../../modules/manager");
9
11
  const array_1 = require("../../../../util/array");
12
+ const env_1 = require("../../../../util/env");
10
13
  const fs_1 = require("../../../../util/fs");
11
14
  const sanitize_1 = require("../../../../util/sanitize");
12
15
  const url_1 = require("../../../../util/url");
@@ -86,6 +89,18 @@ async function parseConfigs(env, argv) {
86
89
  logger_1.logger.debug('Enabling onboardingNoDeps while in non-autodiscover mode');
87
90
  config.onboardingNoDeps = 'enabled';
88
91
  }
92
+ // do not add these secrets to repoSecrets and,
93
+ // do not delete the secrets object after applying on global config as it needs to be re-used for repo config
94
+ if (is_1.default.nonEmptyObject(config.secrets)) {
95
+ config = (0, secrets_1.applySecretsToConfig)(config, undefined, false);
96
+ // adding these secrets to the globalSecrets set so that they can be redacted from logs
97
+ for (const secret of Object.values(config.secrets)) {
98
+ (0, sanitize_1.addSecretForSanitizing)(secret, 'global');
99
+ }
100
+ }
101
+ if (is_1.default.nonEmptyObject(config.customEnvVariables)) {
102
+ (0, env_1.setCustomEnv)(config.customEnvVariables);
103
+ }
89
104
  return config;
90
105
  }
91
106
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/index.ts"],"names":[],"mappings":"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","sourcesContent":["import * as defaultsParser from '../../../../config/defaults';\nimport type { AllConfig } from '../../../../config/types';\nimport { mergeChildConfig } from '../../../../config/utils';\nimport { logger, setContext } from '../../../../logger';\nimport { detectAllGlobalConfig } from '../../../../modules/manager';\nimport { coerceArray } from '../../../../util/array';\nimport { readSystemFile } from '../../../../util/fs';\nimport { addSecretForSanitizing } from '../../../../util/sanitize';\nimport { ensureTrailingSlash } from '../../../../util/url';\nimport * as cliParser from './cli';\nimport * as codespaces from './codespaces';\nimport * as envParser from './env';\nimport * as fileParser from './file';\nimport { hostRulesFromEnv } from './host-rules-from-env';\n\nexport async function parseConfigs(\n env: NodeJS.ProcessEnv,\n argv: string[],\n): Promise<AllConfig> {\n logger.debug('Parsing configs');\n\n // Get configs\n const defaultConfig = defaultsParser.getConfig();\n const fileConfig = await fileParser.getConfig(env);\n const cliConfig = cliParser.getConfig(argv);\n const envConfig = await envParser.getConfig(env);\n\n let config: AllConfig = mergeChildConfig(fileConfig, envConfig);\n config = mergeChildConfig(config, cliConfig);\n\n config = await codespaces.setConfig(config);\n\n const combinedConfig = config;\n\n config = mergeChildConfig(defaultConfig, config);\n\n if (config.forceCli) {\n const forcedCli = { ...cliConfig };\n delete forcedCli.token;\n delete forcedCli.hostRules;\n if (config.force) {\n config.force = { ...config.force, ...forcedCli };\n } else {\n config.force = forcedCli;\n }\n }\n\n if (!config.privateKey && config.privateKeyPath) {\n config.privateKey = await readSystemFile(config.privateKeyPath, 'utf8');\n delete config.privateKeyPath;\n }\n\n if (!config.privateKeyOld && config.privateKeyPathOld) {\n config.privateKeyOld = await readSystemFile(\n config.privateKeyPathOld,\n 'utf8',\n );\n delete config.privateKeyPathOld;\n }\n\n addSecretForSanitizing(config.privateKey, 'global');\n addSecretForSanitizing(config.privateKeyOld, 'global');\n\n if (config.logContext) {\n // This only has an effect if logContext was defined via file or CLI, otherwise it would already have been detected in env\n setContext(config.logContext);\n }\n\n logger.trace({ config: defaultConfig }, 'Default config');\n logger.debug({ config: fileConfig }, 'File config');\n logger.debug({ config: cliConfig }, 'CLI config');\n logger.debug({ config: envConfig }, 'Env config');\n logger.debug({ config: combinedConfig }, 'Combined config');\n\n if (config.detectGlobalManagerConfig) {\n logger.debug('Detecting global manager config');\n const globalManagerConfig = await detectAllGlobalConfig();\n logger.debug({ config: globalManagerConfig }, 'Global manager config');\n config = mergeChildConfig(config, globalManagerConfig);\n }\n\n if (config.detectHostRulesFromEnv) {\n const hostRules = hostRulesFromEnv(env);\n config.hostRules = [...coerceArray(config.hostRules), ...hostRules];\n }\n // Get global config\n logger.trace({ config }, 'Full config');\n\n // Massage endpoint to have a trailing slash\n if (config.endpoint) {\n logger.debug('Adding trailing slash to endpoint');\n config.endpoint = ensureTrailingSlash(config.endpoint);\n }\n\n // Massage forkProcessing\n if (!config.autodiscover && config.forkProcessing !== 'disabled') {\n logger.debug('Enabling forkProcessing while in non-autodiscover mode');\n config.forkProcessing = 'enabled';\n }\n\n // Only try deletion if RENOVATE_CONFIG_FILE is set\n await fileParser.deleteNonDefaultConfig(env, !!config.deleteConfigFile);\n\n // Massage onboardingNoDeps\n if (!config.autodiscover && config.onboardingNoDeps !== 'disabled') {\n logger.debug('Enabling onboardingNoDeps while in non-autodiscover mode');\n config.onboardingNoDeps = 'enabled';\n }\n\n return config;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/workers/global/config/parse/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport * as defaultsParser from '../../../../config/defaults';\nimport { applySecretsToConfig } from '../../../../config/secrets';\nimport type { AllConfig } from '../../../../config/types';\nimport { mergeChildConfig } from '../../../../config/utils';\nimport { logger, setContext } from '../../../../logger';\nimport { detectAllGlobalConfig } from '../../../../modules/manager';\nimport { coerceArray } from '../../../../util/array';\nimport { setCustomEnv } from '../../../../util/env';\nimport { readSystemFile } from '../../../../util/fs';\nimport { addSecretForSanitizing } from '../../../../util/sanitize';\nimport { ensureTrailingSlash } from '../../../../util/url';\nimport * as cliParser from './cli';\nimport * as codespaces from './codespaces';\nimport * as envParser from './env';\nimport * as fileParser from './file';\nimport { hostRulesFromEnv } from './host-rules-from-env';\n\nexport async function parseConfigs(\n env: NodeJS.ProcessEnv,\n argv: string[],\n): Promise<AllConfig> {\n logger.debug('Parsing configs');\n\n // Get configs\n const defaultConfig = defaultsParser.getConfig();\n const fileConfig = await fileParser.getConfig(env);\n const cliConfig = cliParser.getConfig(argv);\n const envConfig = await envParser.getConfig(env);\n\n let config: AllConfig = mergeChildConfig(fileConfig, envConfig);\n config = mergeChildConfig(config, cliConfig);\n\n config = await codespaces.setConfig(config);\n\n const combinedConfig = config;\n\n config = mergeChildConfig(defaultConfig, config);\n\n if (config.forceCli) {\n const forcedCli = { ...cliConfig };\n delete forcedCli.token;\n delete forcedCli.hostRules;\n if (config.force) {\n config.force = { ...config.force, ...forcedCli };\n } else {\n config.force = forcedCli;\n }\n }\n\n if (!config.privateKey && config.privateKeyPath) {\n config.privateKey = await readSystemFile(config.privateKeyPath, 'utf8');\n delete config.privateKeyPath;\n }\n\n if (!config.privateKeyOld && config.privateKeyPathOld) {\n config.privateKeyOld = await readSystemFile(\n config.privateKeyPathOld,\n 'utf8',\n );\n delete config.privateKeyPathOld;\n }\n\n addSecretForSanitizing(config.privateKey, 'global');\n addSecretForSanitizing(config.privateKeyOld, 'global');\n\n if (config.logContext) {\n // This only has an effect if logContext was defined via file or CLI, otherwise it would already have been detected in env\n setContext(config.logContext);\n }\n\n logger.trace({ config: defaultConfig }, 'Default config');\n logger.debug({ config: fileConfig }, 'File config');\n logger.debug({ config: cliConfig }, 'CLI config');\n logger.debug({ config: envConfig }, 'Env config');\n logger.debug({ config: combinedConfig }, 'Combined config');\n\n if (config.detectGlobalManagerConfig) {\n logger.debug('Detecting global manager config');\n const globalManagerConfig = await detectAllGlobalConfig();\n logger.debug({ config: globalManagerConfig }, 'Global manager config');\n config = mergeChildConfig(config, globalManagerConfig);\n }\n\n if (config.detectHostRulesFromEnv) {\n const hostRules = hostRulesFromEnv(env);\n config.hostRules = [...coerceArray(config.hostRules), ...hostRules];\n }\n // Get global config\n logger.trace({ config }, 'Full config');\n\n // Massage endpoint to have a trailing slash\n if (config.endpoint) {\n logger.debug('Adding trailing slash to endpoint');\n config.endpoint = ensureTrailingSlash(config.endpoint);\n }\n\n // Massage forkProcessing\n if (!config.autodiscover && config.forkProcessing !== 'disabled') {\n logger.debug('Enabling forkProcessing while in non-autodiscover mode');\n config.forkProcessing = 'enabled';\n }\n\n // Only try deletion if RENOVATE_CONFIG_FILE is set\n await fileParser.deleteNonDefaultConfig(env, !!config.deleteConfigFile);\n\n // Massage onboardingNoDeps\n if (!config.autodiscover && config.onboardingNoDeps !== 'disabled') {\n logger.debug('Enabling onboardingNoDeps while in non-autodiscover mode');\n config.onboardingNoDeps = 'enabled';\n }\n\n // do not add these secrets to repoSecrets and,\n // do not delete the secrets object after applying on global config as it needs to be re-used for repo config\n if (is.nonEmptyObject(config.secrets)) {\n config = applySecretsToConfig(config, undefined, false);\n // adding these secrets to the globalSecrets set so that they can be redacted from logs\n for (const secret of Object.values(config.secrets!)) {\n addSecretForSanitizing(secret, 'global');\n }\n }\n\n if (is.nonEmptyObject(config.customEnvVariables)) {\n setCustomEnv(config.customEnvVariables);\n }\n\n return config;\n}\n"]}
@@ -115,17 +115,19 @@ async function start() {
115
115
  // resolve global presets immediately
116
116
  config = (0, config_1.mergeChildConfig)(await resolveGlobalExtends(config.globalExtends, config.ignorePresets), config);
117
117
  }
118
- // Set allowedHeaders in case hostRules headers are configured in file config
118
+ // Set allowedHeaders and userAgent in case hostRules headers are configured in file config
119
119
  global_1.GlobalConfig.set({
120
120
  allowedHeaders: config.allowedHeaders,
121
+ userAgent: config.userAgent,
121
122
  });
122
123
  // initialize all submodules
123
124
  config = await (0, initialize_1.globalInitialize)(config);
124
- // Set platform, endpoint and allowedHeaders in case local presets are used
125
+ // Set platform, endpoint, allowedHeaders and userAgent in case local presets are used
125
126
  global_1.GlobalConfig.set({
126
127
  allowedHeaders: config.allowedHeaders,
127
128
  platform: config.platform,
128
129
  endpoint: config.endpoint,
130
+ userAgent: config.userAgent,
129
131
  });
130
132
  await validatePresets(config);
131
133
  (0, remap_1.setGlobalLogLevelRemaps)(config.logLevelRemap);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/workers/global/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { ERROR } from 'bunyan';\nimport fs from 'fs-extra';\nimport semver from 'semver';\nimport upath from 'upath';\nimport * as configParser from '../../config';\nimport { mergeChildConfig } from '../../config';\nimport { GlobalConfig } from '../../config/global';\nimport { resolveConfigPresets } from '../../config/presets';\nimport { validateConfigSecrets } from '../../config/secrets';\nimport type {\n AllConfig,\n RenovateConfig,\n RenovateRepository,\n} from '../../config/types';\nimport { CONFIG_PRESETS_INVALID } from '../../constants/error-messages';\nimport { pkg } from '../../expose.cjs';\nimport { instrument } from '../../instrumentation';\nimport { exportStats, finalizeReport } from '../../instrumentation/reporting';\nimport { getProblems, logLevel, logger, setMeta } from '../../logger';\nimport { setGlobalLogLevelRemaps } from '../../logger/remap';\nimport * as hostRules from '../../util/host-rules';\nimport * as queue from '../../util/http/queue';\nimport * as throttle from '../../util/http/throttle';\nimport { regexEngineStatus } from '../../util/regex';\nimport { addSecretForSanitizing } from '../../util/sanitize';\nimport * as repositoryWorker from '../repository';\nimport { autodiscoverRepositories } from './autodiscover';\nimport { parseConfigs } from './config/parse';\nimport { globalFinalize, globalInitialize } from './initialize';\nimport { isLimitReached } from './limits';\n\nexport async function getRepositoryConfig(\n globalConfig: RenovateConfig,\n repository: RenovateRepository,\n): Promise<RenovateConfig> {\n const repoConfig = configParser.mergeChildConfig(\n globalConfig,\n is.string(repository) ? { repository } : repository,\n );\n const repoParts = repoConfig.repository.split('/');\n repoParts.pop();\n repoConfig.parentOrg = repoParts.join('/');\n repoConfig.topLevelOrg = repoParts.shift();\n // TODO: types (#22198)\n const platform = GlobalConfig.get('platform')!;\n repoConfig.localDir =\n platform === 'local'\n ? process.cwd()\n : upath.join(\n repoConfig.baseDir,\n `./repos/${platform}/${repoConfig.repository}`,\n );\n await fs.ensureDir(repoConfig.localDir);\n delete repoConfig.baseDir;\n return configParser.filterConfig(repoConfig, 'repository');\n}\n\nfunction getGlobalConfig(): Promise<RenovateConfig> {\n return parseConfigs(process.env, process.argv);\n}\n\nfunction haveReachedLimits(): boolean {\n if (isLimitReached('Commits')) {\n logger.info('Max commits created for this run.');\n return true;\n }\n return false;\n}\n\n/* istanbul ignore next */\nfunction checkEnv(): void {\n const range = pkg.engines!.node!;\n if (process.release?.name !== 'node' || !process.versions?.node) {\n logger.warn(\n { release: process.release, versions: process.versions },\n 'Unknown node environment detected.',\n );\n } else if (!semver.satisfies(process.versions?.node, range)) {\n logger.error(\n { versions: process.versions, range },\n 'Unsupported node environment detected. Please update your node version.',\n );\n }\n}\n\nexport async function validatePresets(config: AllConfig): Promise<void> {\n logger.debug('validatePresets()');\n try {\n await resolveConfigPresets(config);\n } catch (err) /* istanbul ignore next */ {\n logger.error({ err }, CONFIG_PRESETS_INVALID);\n throw new Error(CONFIG_PRESETS_INVALID);\n }\n}\n\nexport async function resolveGlobalExtends(\n globalExtends: string[],\n ignorePresets?: string[],\n): Promise<AllConfig> {\n try {\n // Make a \"fake\" config to pass to resolveConfigPresets and resolve globalPresets\n const config = { extends: globalExtends, ignorePresets };\n const resolvedConfig = await resolveConfigPresets(config);\n return resolvedConfig;\n } catch (err) {\n logger.error({ err }, 'Error resolving config preset');\n throw new Error(CONFIG_PRESETS_INVALID);\n }\n}\n\nexport async function start(): Promise<number> {\n // istanbul ignore next\n if (regexEngineStatus.type === 'available') {\n logger.debug('Using RE2 regex engine');\n } else if (regexEngineStatus.type === 'unavailable') {\n logger.warn(\n { err: regexEngineStatus.err },\n 'RE2 not usable, falling back to RegExp',\n );\n } else if (regexEngineStatus.type === 'ignored') {\n logger.debug('RE2 regex engine is ignored via RENOVATE_X_IGNORE_RE2');\n }\n\n let config: AllConfig;\n try {\n if (is.nonEmptyStringAndNotWhitespace(process.env.AWS_SECRET_ACCESS_KEY)) {\n addSecretForSanitizing(process.env.AWS_SECRET_ACCESS_KEY, 'global');\n }\n if (is.nonEmptyStringAndNotWhitespace(process.env.AWS_SESSION_TOKEN)) {\n addSecretForSanitizing(process.env.AWS_SESSION_TOKEN, 'global');\n }\n\n await instrument('config', async () => {\n // read global config from file, env and cli args\n config = await getGlobalConfig();\n if (is.nonEmptyArray(config?.globalExtends)) {\n // resolve global presets immediately\n config = mergeChildConfig(\n await resolveGlobalExtends(\n config.globalExtends,\n config.ignorePresets,\n ),\n config,\n );\n }\n\n // Set allowedHeaders in case hostRules headers are configured in file config\n GlobalConfig.set({\n allowedHeaders: config.allowedHeaders,\n });\n // initialize all submodules\n config = await globalInitialize(config);\n\n // Set platform, endpoint and allowedHeaders in case local presets are used\n GlobalConfig.set({\n allowedHeaders: config.allowedHeaders,\n platform: config.platform,\n endpoint: config.endpoint,\n });\n\n await validatePresets(config);\n\n setGlobalLogLevelRemaps(config.logLevelRemap);\n\n checkEnv();\n\n // validate secrets. Will throw and abort if invalid\n validateConfigSecrets(config);\n });\n\n // autodiscover repositories (needs to come after platform initialization)\n config = await instrument('discover', () =>\n autodiscoverRepositories(config),\n );\n\n if (is.nonEmptyString(config.writeDiscoveredRepos)) {\n const content = JSON.stringify(config.repositories);\n await fs.writeFile(config.writeDiscoveredRepos, content);\n logger.info(\n `Written discovered repositories to ${config.writeDiscoveredRepos}`,\n );\n return 0;\n }\n\n // Iterate through repositories sequentially\n for (const repository of config.repositories!) {\n if (haveReachedLimits()) {\n break;\n }\n await instrument(\n 'repository',\n async () => {\n const repoConfig = await getRepositoryConfig(config, repository);\n if (repoConfig.hostRules) {\n logger.debug('Reinitializing hostRules for repo');\n hostRules.clear();\n repoConfig.hostRules.forEach((rule) => hostRules.add(rule));\n repoConfig.hostRules = [];\n }\n\n // host rules can change concurrency\n queue.clear();\n throttle.clear();\n\n await repositoryWorker.renovateRepository(repoConfig);\n setMeta({});\n },\n {\n attributes: {\n repository:\n typeof repository === 'string'\n ? repository\n : repository.repository,\n },\n },\n );\n }\n\n finalizeReport();\n await exportStats(config);\n } catch (err) /* istanbul ignore next */ {\n if (err.message.startsWith('Init: ')) {\n logger.fatal(\n { errorMessage: err.message.substring(6) },\n 'Initialization error',\n );\n } else {\n logger.fatal({ err }, 'Unknown error');\n }\n if (!config!) {\n // return early if we can't parse config options\n logger.debug(`Missing config`);\n return 2;\n }\n } finally {\n await globalFinalize(config!);\n if (logLevel() === 'info') {\n logger.info(\n `Renovate was run at log level \"${logLevel()}\". Set LOG_LEVEL=debug in environment variables to see extended debug logs.`,\n );\n }\n }\n const loggerErrors = getProblems().filter((p) => p.level >= ERROR);\n if (loggerErrors.length) {\n logger.info(\n { loggerErrors },\n 'Renovate is exiting with a non-zero code due to the following logged errors',\n );\n return 1;\n }\n return 0;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/workers/global/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { ERROR } from 'bunyan';\nimport fs from 'fs-extra';\nimport semver from 'semver';\nimport upath from 'upath';\nimport * as configParser from '../../config';\nimport { mergeChildConfig } from '../../config';\nimport { GlobalConfig } from '../../config/global';\nimport { resolveConfigPresets } from '../../config/presets';\nimport { validateConfigSecrets } from '../../config/secrets';\nimport type {\n AllConfig,\n RenovateConfig,\n RenovateRepository,\n} from '../../config/types';\nimport { CONFIG_PRESETS_INVALID } from '../../constants/error-messages';\nimport { pkg } from '../../expose.cjs';\nimport { instrument } from '../../instrumentation';\nimport { exportStats, finalizeReport } from '../../instrumentation/reporting';\nimport { getProblems, logLevel, logger, setMeta } from '../../logger';\nimport { setGlobalLogLevelRemaps } from '../../logger/remap';\nimport * as hostRules from '../../util/host-rules';\nimport * as queue from '../../util/http/queue';\nimport * as throttle from '../../util/http/throttle';\nimport { regexEngineStatus } from '../../util/regex';\nimport { addSecretForSanitizing } from '../../util/sanitize';\nimport * as repositoryWorker from '../repository';\nimport { autodiscoverRepositories } from './autodiscover';\nimport { parseConfigs } from './config/parse';\nimport { globalFinalize, globalInitialize } from './initialize';\nimport { isLimitReached } from './limits';\n\nexport async function getRepositoryConfig(\n globalConfig: RenovateConfig,\n repository: RenovateRepository,\n): Promise<RenovateConfig> {\n const repoConfig = configParser.mergeChildConfig(\n globalConfig,\n is.string(repository) ? { repository } : repository,\n );\n const repoParts = repoConfig.repository.split('/');\n repoParts.pop();\n repoConfig.parentOrg = repoParts.join('/');\n repoConfig.topLevelOrg = repoParts.shift();\n // TODO: types (#22198)\n const platform = GlobalConfig.get('platform')!;\n repoConfig.localDir =\n platform === 'local'\n ? process.cwd()\n : upath.join(\n repoConfig.baseDir,\n `./repos/${platform}/${repoConfig.repository}`,\n );\n await fs.ensureDir(repoConfig.localDir);\n delete repoConfig.baseDir;\n return configParser.filterConfig(repoConfig, 'repository');\n}\n\nfunction getGlobalConfig(): Promise<RenovateConfig> {\n return parseConfigs(process.env, process.argv);\n}\n\nfunction haveReachedLimits(): boolean {\n if (isLimitReached('Commits')) {\n logger.info('Max commits created for this run.');\n return true;\n }\n return false;\n}\n\n/* istanbul ignore next */\nfunction checkEnv(): void {\n const range = pkg.engines!.node!;\n if (process.release?.name !== 'node' || !process.versions?.node) {\n logger.warn(\n { release: process.release, versions: process.versions },\n 'Unknown node environment detected.',\n );\n } else if (!semver.satisfies(process.versions?.node, range)) {\n logger.error(\n { versions: process.versions, range },\n 'Unsupported node environment detected. Please update your node version.',\n );\n }\n}\n\nexport async function validatePresets(config: AllConfig): Promise<void> {\n logger.debug('validatePresets()');\n try {\n await resolveConfigPresets(config);\n } catch (err) /* istanbul ignore next */ {\n logger.error({ err }, CONFIG_PRESETS_INVALID);\n throw new Error(CONFIG_PRESETS_INVALID);\n }\n}\n\nexport async function resolveGlobalExtends(\n globalExtends: string[],\n ignorePresets?: string[],\n): Promise<AllConfig> {\n try {\n // Make a \"fake\" config to pass to resolveConfigPresets and resolve globalPresets\n const config = { extends: globalExtends, ignorePresets };\n const resolvedConfig = await resolveConfigPresets(config);\n return resolvedConfig;\n } catch (err) {\n logger.error({ err }, 'Error resolving config preset');\n throw new Error(CONFIG_PRESETS_INVALID);\n }\n}\n\nexport async function start(): Promise<number> {\n // istanbul ignore next\n if (regexEngineStatus.type === 'available') {\n logger.debug('Using RE2 regex engine');\n } else if (regexEngineStatus.type === 'unavailable') {\n logger.warn(\n { err: regexEngineStatus.err },\n 'RE2 not usable, falling back to RegExp',\n );\n } else if (regexEngineStatus.type === 'ignored') {\n logger.debug('RE2 regex engine is ignored via RENOVATE_X_IGNORE_RE2');\n }\n\n let config: AllConfig;\n try {\n if (is.nonEmptyStringAndNotWhitespace(process.env.AWS_SECRET_ACCESS_KEY)) {\n addSecretForSanitizing(process.env.AWS_SECRET_ACCESS_KEY, 'global');\n }\n if (is.nonEmptyStringAndNotWhitespace(process.env.AWS_SESSION_TOKEN)) {\n addSecretForSanitizing(process.env.AWS_SESSION_TOKEN, 'global');\n }\n\n await instrument('config', async () => {\n // read global config from file, env and cli args\n config = await getGlobalConfig();\n if (is.nonEmptyArray(config?.globalExtends)) {\n // resolve global presets immediately\n config = mergeChildConfig(\n await resolveGlobalExtends(\n config.globalExtends,\n config.ignorePresets,\n ),\n config,\n );\n }\n\n // Set allowedHeaders and userAgent in case hostRules headers are configured in file config\n GlobalConfig.set({\n allowedHeaders: config.allowedHeaders,\n userAgent: config.userAgent,\n });\n // initialize all submodules\n config = await globalInitialize(config);\n\n // Set platform, endpoint, allowedHeaders and userAgent in case local presets are used\n GlobalConfig.set({\n allowedHeaders: config.allowedHeaders,\n platform: config.platform,\n endpoint: config.endpoint,\n userAgent: config.userAgent,\n });\n\n await validatePresets(config);\n\n setGlobalLogLevelRemaps(config.logLevelRemap);\n\n checkEnv();\n\n // validate secrets. Will throw and abort if invalid\n validateConfigSecrets(config);\n });\n\n // autodiscover repositories (needs to come after platform initialization)\n config = await instrument('discover', () =>\n autodiscoverRepositories(config),\n );\n\n if (is.nonEmptyString(config.writeDiscoveredRepos)) {\n const content = JSON.stringify(config.repositories);\n await fs.writeFile(config.writeDiscoveredRepos, content);\n logger.info(\n `Written discovered repositories to ${config.writeDiscoveredRepos}`,\n );\n return 0;\n }\n\n // Iterate through repositories sequentially\n for (const repository of config.repositories!) {\n if (haveReachedLimits()) {\n break;\n }\n await instrument(\n 'repository',\n async () => {\n const repoConfig = await getRepositoryConfig(config, repository);\n if (repoConfig.hostRules) {\n logger.debug('Reinitializing hostRules for repo');\n hostRules.clear();\n repoConfig.hostRules.forEach((rule) => hostRules.add(rule));\n repoConfig.hostRules = [];\n }\n\n // host rules can change concurrency\n queue.clear();\n throttle.clear();\n\n await repositoryWorker.renovateRepository(repoConfig);\n setMeta({});\n },\n {\n attributes: {\n repository:\n typeof repository === 'string'\n ? repository\n : repository.repository,\n },\n },\n );\n }\n\n finalizeReport();\n await exportStats(config);\n } catch (err) /* istanbul ignore next */ {\n if (err.message.startsWith('Init: ')) {\n logger.fatal(\n { errorMessage: err.message.substring(6) },\n 'Initialization error',\n );\n } else {\n logger.fatal({ err }, 'Unknown error');\n }\n if (!config!) {\n // return early if we can't parse config options\n logger.debug(`Missing config`);\n return 2;\n }\n } finally {\n await globalFinalize(config!);\n if (logLevel() === 'info') {\n logger.info(\n `Renovate was run at log level \"${logLevel()}\". Set LOG_LEVEL=debug in environment variables to see extended debug logs.`,\n );\n }\n }\n const loggerErrors = getProblems().filter((p) => p.level >= ERROR);\n if (loggerErrors.length) {\n logger.info(\n { loggerErrors },\n 'Renovate is exiting with a non-zero code due to the following logged errors',\n );\n return 1;\n }\n return 0;\n}\n"]}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- /* istanbul ignore file */
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.setBranchCache = setBranchCache;
5
4
  const error_messages_1 = require("../../constants/error-messages");
@@ -87,7 +86,7 @@ async function generateBranchCache(branch) {
87
86
  };
88
87
  }
89
88
  catch (error) {
90
- const err = error.err || error; // external host error nests err
89
+ const err = error.err ?? error; // external host error nests err
91
90
  const errCodes = [401, 404];
92
91
  // istanbul ignore if
93
92
  if (errCodes.includes(err.response?.statusCode)) {
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../lib/workers/repository/cache.ts"],"names":[],"mappings":"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","sourcesContent":["/* istanbul ignore file */\n\nimport { REPOSITORY_CHANGED } from '../../constants/error-messages';\nimport { logger } from '../../logger';\nimport { platform } from '../../modules/platform';\nimport { scm } from '../../modules/platform/scm';\nimport { getCache } from '../../util/cache/repository';\nimport type {\n BranchCache,\n BranchUpgradeCache,\n} from '../../util/cache/repository/types';\nimport { getCachedBehindBaseResult } from '../../util/git/behind-base-branch-cache';\nimport { getCachedConflictResult } from '../../util/git/conflicts-cache';\nimport { getCachedModifiedResult } from '../../util/git/modified-cache';\nimport { getCachedPristineResult } from '../../util/git/pristine';\nimport type { BranchConfig, BranchUpgradeConfig } from '../types';\nimport { getPrCache } from './update/pr/pr-cache';\n\nfunction generateBranchUpgradeCache(\n upgrade: BranchUpgradeConfig,\n): BranchUpgradeCache {\n const {\n datasource,\n depName,\n depType,\n displayPending,\n packageName,\n fixedVersion,\n currentVersion,\n newVersion,\n currentValue,\n newValue,\n currentDigest,\n newDigest,\n packageFile,\n sourceUrl,\n remediationNotPossible,\n updateType,\n } = upgrade;\n const result: BranchUpgradeCache = {\n datasource,\n depName,\n depType,\n displayPending,\n fixedVersion,\n currentVersion,\n currentValue,\n newValue,\n newVersion,\n currentDigest,\n newDigest,\n packageFile,\n sourceUrl,\n remediationNotPossible,\n updateType,\n };\n if (packageName) {\n result.packageName = packageName;\n }\n return result;\n}\n\nasync function generateBranchCache(\n branch: BranchConfig,\n): Promise<BranchCache | null> {\n const { baseBranch, branchName, prBlockedBy, prTitle, result } = branch;\n try {\n const branchSha = await scm.getBranchCommit(branchName);\n const baseBranchSha = await scm.getBranchCommit(baseBranch);\n const pristine = getCachedPristineResult(branchName);\n let prNo = null;\n let isModified: boolean | undefined;\n let isBehindBase: boolean | undefined;\n let isConflicted: boolean | undefined;\n if (baseBranchSha && branchSha) {\n const branchPr = await platform.getBranchPr(branchName, baseBranch);\n if (branchPr) {\n prNo = branchPr.number;\n }\n isModified = getCachedModifiedResult(branchName, branchSha) ?? undefined;\n isBehindBase =\n getCachedBehindBaseResult(\n branchName,\n branchSha,\n baseBranch,\n baseBranchSha,\n ) ?? undefined;\n isConflicted =\n getCachedConflictResult(\n branchName,\n branchSha,\n baseBranch,\n baseBranchSha,\n ) ?? undefined;\n } else if (baseBranchSha && !branchSha && branch.prNo) {\n // if branch was deleted/ PR exists and ignored\n prNo = branch.prNo;\n }\n\n const automerge = !!branch.automerge;\n const upgrades: BranchUpgradeCache[] = branch.upgrades\n ? branch.upgrades.map(generateBranchUpgradeCache)\n : [];\n const commitFingerprint = branch.commitFingerprint;\n const prCache = getPrCache(branchName);\n\n return {\n automerge,\n baseBranchSha,\n baseBranch,\n commitFingerprint,\n branchName,\n isBehindBase,\n isConflicted,\n isModified,\n prBlockedBy,\n pristine,\n prCache,\n prNo,\n prTitle,\n result,\n sha: branchSha,\n upgrades,\n };\n } catch (error) {\n const err = error.err || error; // external host error nests err\n const errCodes = [401, 404];\n // istanbul ignore if\n if (errCodes.includes(err.response?.statusCode)) {\n logger.warn({ err, branchName }, 'HTTP error generating branch cache');\n return null;\n }\n if (err.message === REPOSITORY_CHANGED) {\n throw err;\n }\n logger.error({ err, branchName }, 'Error generating branch cache');\n return null;\n }\n}\n\nexport async function setBranchCache(branches: BranchConfig[]): Promise<void> {\n const branchCaches: BranchCache[] = [];\n for (const branch of branches) {\n const branchCache = await generateBranchCache(branch);\n if (branchCache) {\n branchCaches.push(branchCache);\n }\n }\n getCache().branches = branchCaches;\n}\n"]}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../lib/workers/repository/cache.ts"],"names":[],"mappings":"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","sourcesContent":["import { REPOSITORY_CHANGED } from '../../constants/error-messages';\nimport { logger } from '../../logger';\nimport { platform } from '../../modules/platform';\nimport { scm } from '../../modules/platform/scm';\nimport { getCache } from '../../util/cache/repository';\nimport type {\n BranchCache,\n BranchUpgradeCache,\n} from '../../util/cache/repository/types';\nimport { getCachedBehindBaseResult } from '../../util/git/behind-base-branch-cache';\nimport { getCachedConflictResult } from '../../util/git/conflicts-cache';\nimport { getCachedModifiedResult } from '../../util/git/modified-cache';\nimport { getCachedPristineResult } from '../../util/git/pristine';\nimport type { BranchConfig, BranchUpgradeConfig } from '../types';\nimport { getPrCache } from './update/pr/pr-cache';\n\nfunction generateBranchUpgradeCache(\n upgrade: BranchUpgradeConfig,\n): BranchUpgradeCache {\n const {\n datasource,\n depName,\n depType,\n displayPending,\n packageName,\n fixedVersion,\n currentVersion,\n newVersion,\n currentValue,\n newValue,\n currentDigest,\n newDigest,\n packageFile,\n sourceUrl,\n remediationNotPossible,\n updateType,\n } = upgrade;\n const result: BranchUpgradeCache = {\n datasource,\n depName,\n depType,\n displayPending,\n fixedVersion,\n currentVersion,\n currentValue,\n newValue,\n newVersion,\n currentDigest,\n newDigest,\n packageFile,\n sourceUrl,\n remediationNotPossible,\n updateType,\n };\n if (packageName) {\n result.packageName = packageName;\n }\n return result;\n}\n\nasync function generateBranchCache(\n branch: BranchConfig,\n): Promise<BranchCache | null> {\n const { baseBranch, branchName, prBlockedBy, prTitle, result } = branch;\n try {\n const branchSha = await scm.getBranchCommit(branchName);\n const baseBranchSha = await scm.getBranchCommit(baseBranch);\n const pristine = getCachedPristineResult(branchName);\n let prNo = null;\n let isModified: boolean | undefined;\n let isBehindBase: boolean | undefined;\n let isConflicted: boolean | undefined;\n if (baseBranchSha && branchSha) {\n const branchPr = await platform.getBranchPr(branchName, baseBranch);\n if (branchPr) {\n prNo = branchPr.number;\n }\n isModified = getCachedModifiedResult(branchName, branchSha) ?? undefined;\n isBehindBase =\n getCachedBehindBaseResult(\n branchName,\n branchSha,\n baseBranch,\n baseBranchSha,\n ) ?? undefined;\n isConflicted =\n getCachedConflictResult(\n branchName,\n branchSha,\n baseBranch,\n baseBranchSha,\n ) ?? undefined;\n } else if (baseBranchSha && !branchSha && branch.prNo) {\n // if branch was deleted/ PR exists and ignored\n prNo = branch.prNo;\n }\n\n const automerge = !!branch.automerge;\n const upgrades: BranchUpgradeCache[] = branch.upgrades\n ? branch.upgrades.map(generateBranchUpgradeCache)\n : [];\n const commitFingerprint = branch.commitFingerprint;\n const prCache = getPrCache(branchName);\n\n return {\n automerge,\n baseBranchSha,\n baseBranch,\n commitFingerprint,\n branchName,\n isBehindBase,\n isConflicted,\n isModified,\n prBlockedBy,\n pristine,\n prCache,\n prNo,\n prTitle,\n result,\n sha: branchSha,\n upgrades,\n };\n } catch (error) {\n const err = error.err ?? error; // external host error nests err\n const errCodes = [401, 404];\n // istanbul ignore if\n if (errCodes.includes(err.response?.statusCode)) {\n logger.warn({ err, branchName }, 'HTTP error generating branch cache');\n return null;\n }\n if (err.message === REPOSITORY_CHANGED) {\n throw err;\n }\n logger.error({ err, branchName }, 'Error generating branch cache');\n return null;\n }\n}\n\nexport async function setBranchCache(branches: BranchConfig[]): Promise<void> {\n const branchCaches: BranchCache[] = [];\n for (const branch of branches) {\n const branchCache = await generateBranchCache(branch);\n if (branchCache) {\n branchCaches.push(branchCache);\n }\n }\n getCache().branches = branchCaches;\n}\n"]}
@@ -23,8 +23,10 @@ const prettierConfigFilenames = new Set([
23
23
  '.prettierrc.json5',
24
24
  '.prettierrc.js',
25
25
  '.prettierrc.cjs',
26
+ '.prettierrc.mjs',
26
27
  'prettier.config.js',
27
28
  'prettier.config.cjs',
29
+ 'prettier.config.mjs',
28
30
  '.prettierrc.toml',
29
31
  ]);
30
32
  async function applyPrettierFormatting(filename, content, parser, indent) {
@@ -1 +1 @@
1
- {"version":3,"file":"migrated-data.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/config-migration/branch/migrated-data.ts"],"names":[],"mappings":";;;AAyCA,0DAwDC;;AAjGD,kEAAkC;AAClC,0EAAyC;AACzC,0DAA0B;AAE1B,0DAA0B;AAC1B,4DAA6D;AAC7D,uDAAkD;AAClD,+CAA4C;AAC5C,2DAAwD;AACxD,0DAAuD;AACvD,4CAAoD;AACpD,8DAA4D;AAC5D,4CAAwD;AAcxD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACtC,aAAa;IACb,kBAAkB;IAClB,iBAAiB;IACjB,kBAAkB;IAClB,mBAAmB;IACnB,gBAAgB;IAChB,iBAAiB;IACjB,oBAAoB;IACpB,qBAAqB;IACrB,kBAAkB;CACnB,CAAC,CAAC;AAII,KAAK,UAAU,uBAAuB,CAC3C,QAAgB,EAChB,OAAe,EACf,MAAsB,EACtB,MAAe;IAEf,IAAI,CAAC;QACH,eAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,SAAG,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1C,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAClC,CAAC;QAEF,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CACtC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,CACnC,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,MAAM,IAAA,kBAAa,EAAC,cAAc,EAAE,MAAM,CAAC,CAAC;gBACvE,cAAc;oBACZ,kBAAkB,IAAI,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC;YAClE,CAAC;YAAC,MAAM,CAAC;gBACP,eAAM,CAAC,IAAI,CACT,8DAA8D,CAC/D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,OAAO,GAAY;YACvB,MAAM;YACN,QAAQ,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM;YACnD,OAAO,EAAE,MAAM,EAAE,IAAI,KAAK,KAAK;SAChC,CAAC;QAEF,IAAI,kBAAkB,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,MAAM,0BAAY,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAE9D,6IAA6I;YAC7I,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;gBAC7B,OAAO,CAAC,UAAU,GAAG,YAAE,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC;oBACtD,CAAC,CAAC,UAAU,CAAC,aAAa;oBAC1B,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;YAC/B,CAAC;YAED,+DAA+D;QACjE,CAAC;QAED,OAAO,IAAA,qBAAQ,GAAE,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;YAAS,CAAC;QACT,eAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,MAAa,mBAAmB;IAC9B,YAAY;IACJ,MAAM,CAAC,IAAI,CAAsB;IAEzC,MAAM,CAAC,KAAK,CAAC,QAAQ;QACnB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAEpC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK;QACV,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,uBAAuB,CAAC,EAC7B,OAAO,EACP,QAAQ,EACR,MAAM,GACO;QACb,MAAM,MAAM,GAAG,eAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAmB,CAAC;QAC1E,OAAO,uBAAuB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,KAAK;QACxB,IAAI,GAAG,GAAwB,IAAI,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,EAAE,cAAc,EAAE,gBAAgB,GAAG,EAAE,EAAE,GAC7C,MAAM,IAAA,4BAAoB,GAAE,CAAC;YAE/B,sBAAsB;YACtB,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,IAAA,yBAAa,EAAC,gBAAgB,CAAC,CAAC;YACvE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,cAAc,CAAC,MAAM,CAAC;YAC7B,OAAO,cAAc,CAAC,QAAQ,CAAC;YAE/B,cAAc;YACd,MAAM,GAAG,GAAG,MAAM,mBAAQ,CAAC,UAAU,CAAC,cAAe,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,IAAA,uBAAY,EAAC,GAAG,IAAI,EAAE,CAAC,CAAC;YACvC,8BAA8B;YAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;YAC1C,MAAM,QAAQ,GAAG,cAAe,CAAC;YACjC,IAAI,OAAe,CAAC;YAEpB,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,OAAO,GAAG,eAAK,CAAC,SAAS,CAAC,cAAc,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;YACnE,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,IAAI,CAAC;YAClB,CAAC;YAED,GAAG,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,eAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,EACP,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAzED,kDAyEC","sourcesContent":["import is from '@sindresorhus/is';\nimport detectIndent from 'detect-indent';\nimport JSON5 from 'json5';\nimport type { BuiltInParserName, Options } from 'prettier';\nimport upath from 'upath';\nimport { migrateConfig } from '../../../../config/migration';\nimport { prettier } from '../../../../expose.cjs';\nimport { logger } from '../../../../logger';\nimport { platform } from '../../../../modules/platform';\nimport { scm } from '../../../../modules/platform/scm';\nimport { readLocalFile } from '../../../../util/fs';\nimport { EditorConfig } from '../../../../util/json-writer';\nimport { detectRepoFileConfig } from '../../init/merge';\n\nexport interface MigratedData {\n content: string;\n filename: string;\n indent: Indent;\n}\n\ninterface Indent {\n amount: number;\n indent: string;\n type?: string;\n}\n\nconst prettierConfigFilenames = new Set([\n '.prettierrc',\n '.prettierrc.json',\n '.prettierrc.yml',\n '.prettierrc.yaml',\n '.prettierrc.json5',\n '.prettierrc.js',\n '.prettierrc.cjs',\n 'prettier.config.js',\n 'prettier.config.cjs',\n '.prettierrc.toml',\n]);\n\nexport type PrettierParser = BuiltInParserName;\n\nexport async function applyPrettierFormatting(\n filename: string,\n content: string,\n parser: PrettierParser,\n indent?: Indent,\n): Promise<string> {\n try {\n logger.trace('applyPrettierFormatting - START');\n const fileList = await scm.getFileList();\n let prettierExists = fileList.some((file) =>\n prettierConfigFilenames.has(file),\n );\n\n const editorconfigExists = fileList.some(\n (file) => file === '.editorconfig',\n );\n\n if (!prettierExists) {\n try {\n const packageJsonContent = await readLocalFile('package.json', 'utf8');\n prettierExists =\n packageJsonContent && JSON.parse(packageJsonContent).prettier;\n } catch {\n logger.warn(\n 'applyPrettierFormatting - Error processing package.json file',\n );\n }\n }\n\n if (!prettierExists) {\n return content;\n }\n\n const options: Options = {\n parser,\n tabWidth: indent?.amount === 0 ? 2 : indent?.amount,\n useTabs: indent?.type === 'tab',\n };\n\n if (editorconfigExists) {\n const editorconf = await EditorConfig.getCodeFormat(filename);\n\n // https://github.com/prettier/prettier/blob/bab892242a1f9d8fcae50514b9304bf03f2e25ab/src/config/editorconfig/editorconfig-to-prettier.js#L47\n if (editorconf.maxLineLength) {\n options.printWidth = is.number(editorconf.maxLineLength)\n ? editorconf.maxLineLength\n : Number.POSITIVE_INFINITY;\n }\n\n // TODO: support editor config `indent_style` and `indent_size`\n }\n\n return prettier().format(content, options);\n } finally {\n logger.trace('applyPrettierFormatting - END');\n }\n}\n\nexport class MigratedDataFactory {\n // singleton\n private static data: MigratedData | null;\n\n static async getAsync(): Promise<MigratedData | null> {\n if (this.data) {\n return this.data;\n }\n const migrated = await this.build();\n\n if (!migrated) {\n return null;\n }\n\n this.data = migrated;\n return this.data;\n }\n\n static reset(): void {\n this.data = null;\n }\n\n static applyPrettierFormatting({\n content,\n filename,\n indent,\n }: MigratedData): Promise<string> {\n const parser = upath.extname(filename).replace('.', '') as PrettierParser;\n return applyPrettierFormatting(filename, content, parser, indent);\n }\n\n private static async build(): Promise<MigratedData | null> {\n let res: MigratedData | null = null;\n try {\n const { configFileName, configFileParsed = {} } =\n await detectRepoFileConfig();\n\n // get migrated config\n const { isMigrated, migratedConfig } = migrateConfig(configFileParsed);\n if (!isMigrated) {\n return null;\n }\n\n delete migratedConfig.errors;\n delete migratedConfig.warnings;\n\n // TODO #22198\n const raw = await platform.getRawFile(configFileName!);\n const indent = detectIndent(raw ?? '');\n // indent defaults to 2 spaces\n const indentSpace = indent.indent ?? ' ';\n const filename = configFileName!;\n let content: string;\n\n if (filename.endsWith('.json5')) {\n content = JSON5.stringify(migratedConfig, undefined, indentSpace);\n } else {\n content = JSON.stringify(migratedConfig, undefined, indentSpace);\n }\n\n if (!content.endsWith('\\n')) {\n content += '\\n';\n }\n\n res = { content, filename, indent };\n } catch (err) {\n logger.debug(\n { err },\n 'MigratedDataFactory.getAsync() Error initializing renovate MigratedData',\n );\n }\n return res;\n }\n}\n"]}
1
+ {"version":3,"file":"migrated-data.js","sourceRoot":"","sources":["../../../../../lib/workers/repository/config-migration/branch/migrated-data.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport detectIndent from 'detect-indent';\nimport JSON5 from 'json5';\nimport type { BuiltInParserName, Options } from 'prettier';\nimport upath from 'upath';\nimport { migrateConfig } from '../../../../config/migration';\nimport { prettier } from '../../../../expose.cjs';\nimport { logger } from '../../../../logger';\nimport { platform } from '../../../../modules/platform';\nimport { scm } from '../../../../modules/platform/scm';\nimport { readLocalFile } from '../../../../util/fs';\nimport { EditorConfig } from '../../../../util/json-writer';\nimport { detectRepoFileConfig } from '../../init/merge';\n\nexport interface MigratedData {\n content: string;\n filename: string;\n indent: Indent;\n}\n\ninterface Indent {\n amount: number;\n indent: string;\n type?: string;\n}\n\nconst prettierConfigFilenames = new Set([\n '.prettierrc',\n '.prettierrc.json',\n '.prettierrc.yml',\n '.prettierrc.yaml',\n '.prettierrc.json5',\n '.prettierrc.js',\n '.prettierrc.cjs',\n '.prettierrc.mjs',\n 'prettier.config.js',\n 'prettier.config.cjs',\n 'prettier.config.mjs',\n '.prettierrc.toml',\n]);\n\nexport type PrettierParser = BuiltInParserName;\n\nexport async function applyPrettierFormatting(\n filename: string,\n content: string,\n parser: PrettierParser,\n indent?: Indent,\n): Promise<string> {\n try {\n logger.trace('applyPrettierFormatting - START');\n const fileList = await scm.getFileList();\n let prettierExists = fileList.some((file) =>\n prettierConfigFilenames.has(file),\n );\n\n const editorconfigExists = fileList.some(\n (file) => file === '.editorconfig',\n );\n\n if (!prettierExists) {\n try {\n const packageJsonContent = await readLocalFile('package.json', 'utf8');\n prettierExists =\n packageJsonContent && JSON.parse(packageJsonContent).prettier;\n } catch {\n logger.warn(\n 'applyPrettierFormatting - Error processing package.json file',\n );\n }\n }\n\n if (!prettierExists) {\n return content;\n }\n\n const options: Options = {\n parser,\n tabWidth: indent?.amount === 0 ? 2 : indent?.amount,\n useTabs: indent?.type === 'tab',\n };\n\n if (editorconfigExists) {\n const editorconf = await EditorConfig.getCodeFormat(filename);\n\n // https://github.com/prettier/prettier/blob/bab892242a1f9d8fcae50514b9304bf03f2e25ab/src/config/editorconfig/editorconfig-to-prettier.js#L47\n if (editorconf.maxLineLength) {\n options.printWidth = is.number(editorconf.maxLineLength)\n ? editorconf.maxLineLength\n : Number.POSITIVE_INFINITY;\n }\n\n // TODO: support editor config `indent_style` and `indent_size`\n }\n\n return prettier().format(content, options);\n } finally {\n logger.trace('applyPrettierFormatting - END');\n }\n}\n\nexport class MigratedDataFactory {\n // singleton\n private static data: MigratedData | null;\n\n static async getAsync(): Promise<MigratedData | null> {\n if (this.data) {\n return this.data;\n }\n const migrated = await this.build();\n\n if (!migrated) {\n return null;\n }\n\n this.data = migrated;\n return this.data;\n }\n\n static reset(): void {\n this.data = null;\n }\n\n static applyPrettierFormatting({\n content,\n filename,\n indent,\n }: MigratedData): Promise<string> {\n const parser = upath.extname(filename).replace('.', '') as PrettierParser;\n return applyPrettierFormatting(filename, content, parser, indent);\n }\n\n private static async build(): Promise<MigratedData | null> {\n let res: MigratedData | null = null;\n try {\n const { configFileName, configFileParsed = {} } =\n await detectRepoFileConfig();\n\n // get migrated config\n const { isMigrated, migratedConfig } = migrateConfig(configFileParsed);\n if (!isMigrated) {\n return null;\n }\n\n delete migratedConfig.errors;\n delete migratedConfig.warnings;\n\n // TODO #22198\n const raw = await platform.getRawFile(configFileName!);\n const indent = detectIndent(raw ?? '');\n // indent defaults to 2 spaces\n const indentSpace = indent.indent ?? ' ';\n const filename = configFileName!;\n let content: string;\n\n if (filename.endsWith('.json5')) {\n content = JSON5.stringify(migratedConfig, undefined, indentSpace);\n } else {\n content = JSON.stringify(migratedConfig, undefined, indentSpace);\n }\n\n if (!content.endsWith('\\n')) {\n content += '\\n';\n }\n\n res = { content, filename, indent };\n } catch (err) {\n logger.debug(\n { err },\n 'MigratedDataFactory.getAsync() Error initializing renovate MigratedData',\n );\n }\n return res;\n }\n}\n"]}
@@ -122,6 +122,7 @@ async function renovateRepository(repoConfig, canRetry = true) {
122
122
  stats_1.HttpStats.report();
123
123
  stats_1.HttpCacheStats.report();
124
124
  stats_1.LookupStats.report();
125
+ stats_1.ObsoleteCacheHitLogger.report();
125
126
  const cloned = (0, git_1.isCloned)();
126
127
  logger_1.logger.info({ cloned, durationMs: splits.total }, 'Repository finished');
127
128
  (0, remap_1.resetRepositoryLogLevelRemaps)();