renovate 42.4.0 → 42.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (708) hide show
  1. package/dist/config/decrypt.js +13 -14
  2. package/dist/config/decrypt.js.map +1 -1
  3. package/dist/config/massage.js +6 -7
  4. package/dist/config/massage.js.map +1 -1
  5. package/dist/config/migrate-validate.js +3 -3
  6. package/dist/config/migrate-validate.js.map +1 -1
  7. package/dist/config/migration.js +19 -20
  8. package/dist/config/migration.js.map +1 -1
  9. package/dist/config/migrations/base/abstract-migration.js +5 -6
  10. package/dist/config/migrations/base/abstract-migration.js.map +1 -1
  11. package/dist/config/migrations/custom/automerge-major-migration.js +2 -3
  12. package/dist/config/migrations/custom/automerge-major-migration.js.map +1 -1
  13. package/dist/config/migrations/custom/automerge-migration.js +4 -5
  14. package/dist/config/migrations/custom/automerge-migration.js.map +1 -1
  15. package/dist/config/migrations/custom/automerge-minor-migration.js +2 -3
  16. package/dist/config/migrations/custom/automerge-minor-migration.js.map +1 -1
  17. package/dist/config/migrations/custom/automerge-patch-migration.js +2 -3
  18. package/dist/config/migrations/custom/automerge-patch-migration.js.map +1 -1
  19. package/dist/config/migrations/custom/automerge-type-migration.js +2 -3
  20. package/dist/config/migrations/custom/automerge-type-migration.js.map +1 -1
  21. package/dist/config/migrations/custom/base-branch-migration.js +3 -4
  22. package/dist/config/migrations/custom/base-branch-migration.js.map +1 -1
  23. package/dist/config/migrations/custom/branch-name-migration.js +2 -3
  24. package/dist/config/migrations/custom/branch-name-migration.js.map +1 -1
  25. package/dist/config/migrations/custom/branch-prefix-migration.js +2 -3
  26. package/dist/config/migrations/custom/branch-prefix-migration.js.map +1 -1
  27. package/dist/config/migrations/custom/compatibility-migration.js +2 -3
  28. package/dist/config/migrations/custom/compatibility-migration.js.map +1 -1
  29. package/dist/config/migrations/custom/composer-ignore-platform-reqs-migration.js +2 -3
  30. package/dist/config/migrations/custom/composer-ignore-platform-reqs-migration.js.map +1 -1
  31. package/dist/config/migrations/custom/custom-managers-migration.js +2 -3
  32. package/dist/config/migrations/custom/custom-managers-migration.js.map +1 -1
  33. package/dist/config/migrations/custom/datasource-migration.js +2 -3
  34. package/dist/config/migrations/custom/datasource-migration.js.map +1 -1
  35. package/dist/config/migrations/custom/dep-types-migration.js +4 -5
  36. package/dist/config/migrations/custom/dep-types-migration.js.map +1 -1
  37. package/dist/config/migrations/custom/enabled-managers-migration.js +2 -3
  38. package/dist/config/migrations/custom/enabled-managers-migration.js.map +1 -1
  39. package/dist/config/migrations/custom/extends-migration.js +4 -5
  40. package/dist/config/migrations/custom/extends-migration.js.map +1 -1
  41. package/dist/config/migrations/custom/fetch-release-notes-migration.js +2 -3
  42. package/dist/config/migrations/custom/fetch-release-notes-migration.js.map +1 -1
  43. package/dist/config/migrations/custom/file-match-migration.js +3 -4
  44. package/dist/config/migrations/custom/file-match-migration.js.map +1 -1
  45. package/dist/config/migrations/custom/host-rules-migration.js +6 -7
  46. package/dist/config/migrations/custom/host-rules-migration.js.map +1 -1
  47. package/dist/config/migrations/custom/ignore-npmrc-file-migration.js +2 -3
  48. package/dist/config/migrations/custom/ignore-npmrc-file-migration.js.map +1 -1
  49. package/dist/config/migrations/custom/include-forks-migration.js +2 -3
  50. package/dist/config/migrations/custom/include-forks-migration.js.map +1 -1
  51. package/dist/config/migrations/custom/match-datasources-migration.js +2 -3
  52. package/dist/config/migrations/custom/match-datasources-migration.js.map +1 -1
  53. package/dist/config/migrations/custom/match-managers-migration.js +2 -3
  54. package/dist/config/migrations/custom/match-managers-migration.js.map +1 -1
  55. package/dist/config/migrations/custom/match-strings-migration.js +2 -3
  56. package/dist/config/migrations/custom/match-strings-migration.js.map +1 -1
  57. package/dist/config/migrations/custom/package-files-migration.js +6 -7
  58. package/dist/config/migrations/custom/package-files-migration.js.map +1 -1
  59. package/dist/config/migrations/custom/package-rules-migration.js +15 -16
  60. package/dist/config/migrations/custom/package-rules-migration.js.map +1 -1
  61. package/dist/config/migrations/custom/packages-migration.js +3 -4
  62. package/dist/config/migrations/custom/packages-migration.js.map +1 -1
  63. package/dist/config/migrations/custom/path-rules-migration.js +3 -4
  64. package/dist/config/migrations/custom/path-rules-migration.js.map +1 -1
  65. package/dist/config/migrations/custom/pin-versions-migration.js +2 -3
  66. package/dist/config/migrations/custom/pin-versions-migration.js.map +1 -1
  67. package/dist/config/migrations/custom/platform-commit-migration.js +2 -3
  68. package/dist/config/migrations/custom/platform-commit-migration.js.map +1 -1
  69. package/dist/config/migrations/custom/post-update-options-migration.js +2 -3
  70. package/dist/config/migrations/custom/post-update-options-migration.js.map +1 -1
  71. package/dist/config/migrations/custom/rebase-stale-prs-migration.js +2 -3
  72. package/dist/config/migrations/custom/rebase-stale-prs-migration.js.map +1 -1
  73. package/dist/config/migrations/custom/recreate-closed-migration.js +2 -3
  74. package/dist/config/migrations/custom/recreate-closed-migration.js.map +1 -1
  75. package/dist/config/migrations/custom/renovate-fork-migration.js +2 -3
  76. package/dist/config/migrations/custom/renovate-fork-migration.js.map +1 -1
  77. package/dist/config/migrations/custom/schedule-migration.js +4 -4
  78. package/dist/config/migrations/custom/schedule-migration.js.map +1 -1
  79. package/dist/config/migrations/custom/semantic-commits-migration.js +2 -3
  80. package/dist/config/migrations/custom/semantic-commits-migration.js.map +1 -1
  81. package/dist/config/migrations/custom/semantic-prefix-migration.js +2 -3
  82. package/dist/config/migrations/custom/semantic-prefix-migration.js.map +1 -1
  83. package/dist/config/migrations/custom/stability-days-migration.js +2 -3
  84. package/dist/config/migrations/custom/stability-days-migration.js.map +1 -1
  85. package/dist/config/migrations/custom/suppress-notifications-migration.js +2 -3
  86. package/dist/config/migrations/custom/suppress-notifications-migration.js.map +1 -1
  87. package/dist/config/migrations/custom/unpublish-safe-migration.js +2 -3
  88. package/dist/config/migrations/custom/unpublish-safe-migration.js.map +1 -1
  89. package/dist/config/migrations/migrations-service.js +2 -3
  90. package/dist/config/migrations/migrations-service.js.map +1 -1
  91. package/dist/config/options/index.js +7 -0
  92. package/dist/config/options/index.js.map +1 -1
  93. package/dist/config/presets/github/index.js +2 -3
  94. package/dist/config/presets/github/index.js.map +1 -1
  95. package/dist/config/presets/gitlab/index.js +2 -3
  96. package/dist/config/presets/gitlab/index.js.map +1 -1
  97. package/dist/config/presets/index.js +8 -8
  98. package/dist/config/presets/index.js.map +1 -1
  99. package/dist/config/presets/parse.js +2 -3
  100. package/dist/config/presets/parse.js.map +1 -1
  101. package/dist/config/secrets.js +3 -4
  102. package/dist/config/secrets.js.map +1 -1
  103. package/dist/config/types.d.ts +1 -0
  104. package/dist/config/types.js.map +1 -1
  105. package/dist/config/validation-helpers/match-base-branches.js +2 -3
  106. package/dist/config/validation-helpers/match-base-branches.js.map +1 -1
  107. package/dist/config/validation-helpers/regex-glob-matchers.js +2 -3
  108. package/dist/config/validation-helpers/regex-glob-matchers.js.map +1 -1
  109. package/dist/config/validation-helpers/utils.js +6 -6
  110. package/dist/config/validation-helpers/utils.js.map +1 -1
  111. package/dist/config/validation.js +29 -29
  112. package/dist/config/validation.js.map +1 -1
  113. package/dist/instrumentation/reporting.js +7 -8
  114. package/dist/instrumentation/reporting.js.map +1 -1
  115. package/dist/instrumentation/utils.js +2 -3
  116. package/dist/instrumentation/utils.js.map +1 -1
  117. package/dist/logger/err-serializer.js +2 -2
  118. package/dist/logger/err-serializer.js.map +1 -1
  119. package/dist/logger/index.js +3 -3
  120. package/dist/logger/index.js.map +1 -1
  121. package/dist/logger/renovate-logger.js +4 -5
  122. package/dist/logger/renovate-logger.js.map +1 -1
  123. package/dist/logger/utils.js +19 -19
  124. package/dist/logger/utils.js.map +1 -1
  125. package/dist/modules/datasource/aws-eks-addon/index.js +2 -2
  126. package/dist/modules/datasource/aws-eks-addon/index.js.map +1 -1
  127. package/dist/modules/datasource/bazel/index.js +2 -2
  128. package/dist/modules/datasource/bazel/index.js.map +1 -1
  129. package/dist/modules/datasource/bitrise/index.js +2 -2
  130. package/dist/modules/datasource/bitrise/index.js.map +1 -1
  131. package/dist/modules/datasource/common.js +4 -4
  132. package/dist/modules/datasource/common.js.map +1 -1
  133. package/dist/modules/datasource/conan/index.js +3 -3
  134. package/dist/modules/datasource/conan/index.js.map +1 -1
  135. package/dist/modules/datasource/custom/formats/html.js +2 -5
  136. package/dist/modules/datasource/custom/formats/html.js.map +1 -1
  137. package/dist/modules/datasource/custom/index.js +2 -3
  138. package/dist/modules/datasource/custom/index.js.map +1 -1
  139. package/dist/modules/datasource/custom/utils.js +4 -4
  140. package/dist/modules/datasource/custom/utils.js.map +1 -1
  141. package/dist/modules/datasource/dart-version/index.js +2 -3
  142. package/dist/modules/datasource/dart-version/index.js.map +1 -1
  143. package/dist/modules/datasource/deno/index.js +2 -2
  144. package/dist/modules/datasource/deno/index.js.map +1 -1
  145. package/dist/modules/datasource/docker/common.js +5 -5
  146. package/dist/modules/datasource/docker/common.js.map +1 -1
  147. package/dist/modules/datasource/docker/index.js +6 -6
  148. package/dist/modules/datasource/docker/index.js.map +1 -1
  149. package/dist/modules/datasource/endoflife-date/index.js +2 -2
  150. package/dist/modules/datasource/endoflife-date/index.js.map +1 -1
  151. package/dist/modules/datasource/galaxy/index.js +2 -2
  152. package/dist/modules/datasource/galaxy/index.js.map +1 -1
  153. package/dist/modules/datasource/galaxy-collection/index.js +2 -2
  154. package/dist/modules/datasource/galaxy-collection/index.js.map +1 -1
  155. package/dist/modules/datasource/git-refs/base.js +2 -2
  156. package/dist/modules/datasource/git-refs/base.js.map +1 -1
  157. package/dist/modules/datasource/github-release-attachments/index.js +2 -2
  158. package/dist/modules/datasource/github-release-attachments/index.js.map +1 -1
  159. package/dist/modules/datasource/github-releases/index.js +2 -3
  160. package/dist/modules/datasource/github-releases/index.js.map +1 -1
  161. package/dist/modules/datasource/github-tags/index.js +2 -3
  162. package/dist/modules/datasource/github-tags/index.js.map +1 -1
  163. package/dist/modules/datasource/go/goproxy-parser.js +3 -3
  164. package/dist/modules/datasource/go/goproxy-parser.js.map +1 -1
  165. package/dist/modules/datasource/go/index.js +2 -2
  166. package/dist/modules/datasource/go/index.js.map +1 -1
  167. package/dist/modules/datasource/go/releases-goproxy.js +3 -3
  168. package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
  169. package/dist/modules/datasource/hackage/index.js +2 -2
  170. package/dist/modules/datasource/hackage/index.js.map +1 -1
  171. package/dist/modules/datasource/hex/schema.js +2 -3
  172. package/dist/modules/datasource/hex/schema.js.map +1 -1
  173. package/dist/modules/datasource/hexpm-bob/index.js +2 -2
  174. package/dist/modules/datasource/hexpm-bob/index.js.map +1 -1
  175. package/dist/modules/datasource/index.js +14 -14
  176. package/dist/modules/datasource/index.js.map +1 -1
  177. package/dist/modules/datasource/jsr/index.js +2 -2
  178. package/dist/modules/datasource/jsr/index.js.map +1 -1
  179. package/dist/modules/datasource/jsr/util.js +3 -4
  180. package/dist/modules/datasource/jsr/util.js.map +1 -1
  181. package/dist/modules/datasource/metadata.js +5 -5
  182. package/dist/modules/datasource/metadata.js.map +1 -1
  183. package/dist/modules/datasource/npm/get.js +2 -2
  184. package/dist/modules/datasource/npm/get.js.map +1 -1
  185. package/dist/modules/datasource/npm/npmrc.js +7 -7
  186. package/dist/modules/datasource/npm/npmrc.js.map +1 -1
  187. package/dist/modules/datasource/nuget/v3.js +2 -2
  188. package/dist/modules/datasource/nuget/v3.js.map +1 -1
  189. package/dist/modules/datasource/packagist/index.js +2 -2
  190. package/dist/modules/datasource/packagist/index.js.map +1 -1
  191. package/dist/modules/datasource/packagist/schema.js +3 -4
  192. package/dist/modules/datasource/packagist/schema.js.map +1 -1
  193. package/dist/modules/datasource/pypi/index.js +2 -2
  194. package/dist/modules/datasource/pypi/index.js.map +1 -1
  195. package/dist/modules/datasource/repology/index.js +3 -3
  196. package/dist/modules/datasource/repology/index.js.map +1 -1
  197. package/dist/modules/datasource/rubygems/schema.js +5 -6
  198. package/dist/modules/datasource/rubygems/schema.js.map +1 -1
  199. package/dist/modules/datasource/util.js +2 -3
  200. package/dist/modules/datasource/util.js.map +1 -1
  201. package/dist/modules/manager/argocd/extract.js +3 -4
  202. package/dist/modules/manager/argocd/extract.js.map +1 -1
  203. package/dist/modules/manager/asdf/extract.js +2 -3
  204. package/dist/modules/manager/asdf/extract.js.map +1 -1
  205. package/dist/modules/manager/bazel/artifacts.js +2 -2
  206. package/dist/modules/manager/bazel/artifacts.js.map +1 -1
  207. package/dist/modules/manager/bazel/common.js +4 -5
  208. package/dist/modules/manager/bazel/common.js.map +1 -1
  209. package/dist/modules/manager/bazel/rules/http.js +3 -4
  210. package/dist/modules/manager/bazel/rules/http.js.map +1 -1
  211. package/dist/modules/manager/bazel/rules/maven.js +2 -3
  212. package/dist/modules/manager/bazel/rules/maven.js.map +1 -1
  213. package/dist/modules/manager/bazel-module/parser/starlark.js +2 -3
  214. package/dist/modules/manager/bazel-module/parser/starlark.js.map +1 -1
  215. package/dist/modules/manager/bazel-module/rules.js +3 -3
  216. package/dist/modules/manager/bazel-module/rules.js.map +1 -1
  217. package/dist/modules/manager/bitrise/utils.js +3 -4
  218. package/dist/modules/manager/bitrise/utils.js.map +1 -1
  219. package/dist/modules/manager/buildpacks/extract.js +2 -3
  220. package/dist/modules/manager/buildpacks/extract.js.map +1 -1
  221. package/dist/modules/manager/bun/artifacts.js +2 -2
  222. package/dist/modules/manager/bun/artifacts.js.map +1 -1
  223. package/dist/modules/manager/bun/extract.js +2 -3
  224. package/dist/modules/manager/bun/extract.js.map +1 -1
  225. package/dist/modules/manager/bundler/artifacts.js +3 -3
  226. package/dist/modules/manager/bundler/artifacts.js.map +1 -1
  227. package/dist/modules/manager/bundler/extract.js +5 -6
  228. package/dist/modules/manager/bundler/extract.js.map +1 -1
  229. package/dist/modules/manager/cargo/extract.js +3 -4
  230. package/dist/modules/manager/cargo/extract.js.map +1 -1
  231. package/dist/modules/manager/composer/artifacts.js +3 -3
  232. package/dist/modules/manager/composer/artifacts.js.map +1 -1
  233. package/dist/modules/manager/composer/utils.js +3 -4
  234. package/dist/modules/manager/composer/utils.js.map +1 -1
  235. package/dist/modules/manager/conan/extract.js +2 -3
  236. package/dist/modules/manager/conan/extract.js.map +1 -1
  237. package/dist/modules/manager/copier/utils.js +3 -4
  238. package/dist/modules/manager/copier/utils.js.map +1 -1
  239. package/dist/modules/manager/crow/extract.js +2 -3
  240. package/dist/modules/manager/crow/extract.js.map +1 -1
  241. package/dist/modules/manager/custom/jsonata/index.js +2 -3
  242. package/dist/modules/manager/custom/jsonata/index.js.map +1 -1
  243. package/dist/modules/manager/custom/jsonata/utils.js +3 -3
  244. package/dist/modules/manager/custom/jsonata/utils.js.map +1 -1
  245. package/dist/modules/manager/custom/regex/index.js +2 -3
  246. package/dist/modules/manager/custom/regex/index.js.map +1 -1
  247. package/dist/modules/manager/custom/regex/strategies.js +4 -5
  248. package/dist/modules/manager/custom/regex/strategies.js.map +1 -1
  249. package/dist/modules/manager/custom/regex/utils.js +2 -2
  250. package/dist/modules/manager/custom/regex/utils.js.map +1 -1
  251. package/dist/modules/manager/custom/utils.js +6 -7
  252. package/dist/modules/manager/custom/utils.js.map +1 -1
  253. package/dist/modules/manager/deps-edn/extract.js +13 -14
  254. package/dist/modules/manager/deps-edn/extract.js.map +1 -1
  255. package/dist/modules/manager/deps-edn/parser.js +2 -2
  256. package/dist/modules/manager/deps-edn/parser.js.map +1 -1
  257. package/dist/modules/manager/devbox/artifacts.js +2 -2
  258. package/dist/modules/manager/devbox/artifacts.js.map +1 -1
  259. package/dist/modules/manager/docker-compose/extract.js +3 -4
  260. package/dist/modules/manager/docker-compose/extract.js.map +1 -1
  261. package/dist/modules/manager/docker-compose/schema.js +2 -3
  262. package/dist/modules/manager/docker-compose/schema.js.map +1 -1
  263. package/dist/modules/manager/dockerfile/extract.js +5 -5
  264. package/dist/modules/manager/dockerfile/extract.js.map +1 -1
  265. package/dist/modules/manager/fingerprint.generated.js +5 -5
  266. package/dist/modules/manager/fingerprint.generated.js.map +1 -1
  267. package/dist/modules/manager/fleet/extract.js +2 -3
  268. package/dist/modules/manager/fleet/extract.js.map +1 -1
  269. package/dist/modules/manager/flux/extract.js +2 -3
  270. package/dist/modules/manager/flux/extract.js.map +1 -1
  271. package/dist/modules/manager/glasskube/extract.js +2 -3
  272. package/dist/modules/manager/glasskube/extract.js.map +1 -1
  273. package/dist/modules/manager/gleam/artifacts.js +3 -4
  274. package/dist/modules/manager/gleam/artifacts.js.map +1 -1
  275. package/dist/modules/manager/gomod/artifacts.js +2 -2
  276. package/dist/modules/manager/gomod/artifacts.js.map +1 -1
  277. package/dist/modules/manager/gradle/artifacts.js +2 -2
  278. package/dist/modules/manager/gradle/artifacts.js.map +1 -1
  279. package/dist/modules/manager/gradle/extract/catalog.js +5 -5
  280. package/dist/modules/manager/gradle/extract/catalog.js.map +1 -1
  281. package/dist/modules/manager/gradle-wrapper/artifacts.js +2 -2
  282. package/dist/modules/manager/gradle-wrapper/artifacts.js.map +1 -1
  283. package/dist/modules/manager/helm-requirements/extract.js +2 -3
  284. package/dist/modules/manager/helm-requirements/extract.js.map +1 -1
  285. package/dist/modules/manager/helmfile/artifacts.js +2 -3
  286. package/dist/modules/manager/helmfile/artifacts.js.map +1 -1
  287. package/dist/modules/manager/helmfile/extract.js +4 -5
  288. package/dist/modules/manager/helmfile/extract.js.map +1 -1
  289. package/dist/modules/manager/helmsman/extract.js +4 -5
  290. package/dist/modules/manager/helmsman/extract.js.map +1 -1
  291. package/dist/modules/manager/helmv3/artifacts.js +4 -4
  292. package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
  293. package/dist/modules/manager/helmv3/extract.js +4 -5
  294. package/dist/modules/manager/helmv3/extract.js.map +1 -1
  295. package/dist/modules/manager/helmv3/oci.js +3 -4
  296. package/dist/modules/manager/helmv3/oci.js.map +1 -1
  297. package/dist/modules/manager/jenkins/extract.js +3 -3
  298. package/dist/modules/manager/jenkins/extract.js.map +1 -1
  299. package/dist/modules/manager/kotlin-script/extract.js +3 -4
  300. package/dist/modules/manager/kotlin-script/extract.js.map +1 -1
  301. package/dist/modules/manager/kubernetes/extract.js +4 -4
  302. package/dist/modules/manager/kubernetes/extract.js.map +1 -1
  303. package/dist/modules/manager/kustomize/artifacts.js +8 -8
  304. package/dist/modules/manager/kustomize/artifacts.js.map +1 -1
  305. package/dist/modules/manager/kustomize/extract.js +8 -8
  306. package/dist/modules/manager/kustomize/extract.js.map +1 -1
  307. package/dist/modules/manager/maven/extract.js +4 -4
  308. package/dist/modules/manager/maven/extract.js.map +1 -1
  309. package/dist/modules/manager/maven/update.js +2 -2
  310. package/dist/modules/manager/maven/update.js.map +1 -1
  311. package/dist/modules/manager/maven-wrapper/artifacts.js +2 -2
  312. package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
  313. package/dist/modules/manager/mise/backends.js +9 -10
  314. package/dist/modules/manager/mise/backends.js.map +1 -1
  315. package/dist/modules/manager/mise/extract.js +7 -8
  316. package/dist/modules/manager/mise/extract.js.map +1 -1
  317. package/dist/modules/manager/mix/artifacts.js +3 -3
  318. package/dist/modules/manager/mix/artifacts.js.map +1 -1
  319. package/dist/modules/manager/nix/artifacts.js +2 -2
  320. package/dist/modules/manager/nix/artifacts.js.map +1 -1
  321. package/dist/modules/manager/npm/detect.js +2 -2
  322. package/dist/modules/manager/npm/detect.js.map +1 -1
  323. package/dist/modules/manager/npm/extract/common/dependency.js +2 -2
  324. package/dist/modules/manager/npm/extract/common/dependency.js.map +1 -1
  325. package/dist/modules/manager/npm/extract/common/overrides.js +3 -4
  326. package/dist/modules/manager/npm/extract/common/overrides.js.map +1 -1
  327. package/dist/modules/manager/npm/extract/common/package-file.js +8 -9
  328. package/dist/modules/manager/npm/extract/common/package-file.js.map +1 -1
  329. package/dist/modules/manager/npm/extract/index.js +10 -10
  330. package/dist/modules/manager/npm/extract/index.js.map +1 -1
  331. package/dist/modules/manager/npm/extract/pnpm.js +7 -7
  332. package/dist/modules/manager/npm/extract/pnpm.js.map +1 -1
  333. package/dist/modules/manager/npm/extract/post/locked-versions.js +3 -3
  334. package/dist/modules/manager/npm/extract/post/locked-versions.js.map +1 -1
  335. package/dist/modules/manager/npm/extract/post/monorepo.js +3 -4
  336. package/dist/modules/manager/npm/extract/post/monorepo.js.map +1 -1
  337. package/dist/modules/manager/npm/extract/yarn.js +2 -3
  338. package/dist/modules/manager/npm/extract/yarn.js.map +1 -1
  339. package/dist/modules/manager/npm/extract/yarnrc.js +2 -3
  340. package/dist/modules/manager/npm/extract/yarnrc.js.map +1 -1
  341. package/dist/modules/manager/npm/post-update/index.js +6 -6
  342. package/dist/modules/manager/npm/post-update/index.js.map +1 -1
  343. package/dist/modules/manager/npm/post-update/npm.js +4 -4
  344. package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
  345. package/dist/modules/manager/npm/post-update/pnpm.js +3 -3
  346. package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
  347. package/dist/modules/manager/npm/post-update/rules.js +2 -2
  348. package/dist/modules/manager/npm/post-update/rules.js.map +1 -1
  349. package/dist/modules/manager/npm/post-update/utils.js +2 -2
  350. package/dist/modules/manager/npm/post-update/utils.js.map +1 -1
  351. package/dist/modules/manager/npm/post-update/yarn.js +3 -3
  352. package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
  353. package/dist/modules/manager/npm/update/dependency/index.js +2 -3
  354. package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
  355. package/dist/modules/manager/npm/update/dependency/pnpm.js +2 -3
  356. package/dist/modules/manager/npm/update/dependency/pnpm.js.map +1 -1
  357. package/dist/modules/manager/npm/update/dependency/yarn.js +3 -4
  358. package/dist/modules/manager/npm/update/dependency/yarn.js.map +1 -1
  359. package/dist/modules/manager/nuget/config-formatter.js +2 -2
  360. package/dist/modules/manager/nuget/config-formatter.js.map +1 -1
  361. package/dist/modules/manager/nuget/extract.js +4 -4
  362. package/dist/modules/manager/nuget/extract.js.map +1 -1
  363. package/dist/modules/manager/nuget/package-tree.js +2 -2
  364. package/dist/modules/manager/nuget/package-tree.js.map +1 -1
  365. package/dist/modules/manager/ocb/extract.js +2 -3
  366. package/dist/modules/manager/ocb/extract.js.map +1 -1
  367. package/dist/modules/manager/osgi/extract.js +4 -4
  368. package/dist/modules/manager/osgi/extract.js.map +1 -1
  369. package/dist/modules/manager/pep621/artifacts.js +3 -4
  370. package/dist/modules/manager/pep621/artifacts.js.map +1 -1
  371. package/dist/modules/manager/pep621/processors/uv.js +2 -3
  372. package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
  373. package/dist/modules/manager/pep621/utils.js +8 -10
  374. package/dist/modules/manager/pep621/utils.js.map +1 -1
  375. package/dist/modules/manager/pep723/schema.js +2 -3
  376. package/dist/modules/manager/pep723/schema.js.map +1 -1
  377. package/dist/modules/manager/pip-compile/common.js +3 -3
  378. package/dist/modules/manager/pip-compile/common.js.map +1 -1
  379. package/dist/modules/manager/pip_requirements/artifacts.js +2 -3
  380. package/dist/modules/manager/pip_requirements/artifacts.js.map +1 -1
  381. package/dist/modules/manager/pip_requirements/extract.js +2 -3
  382. package/dist/modules/manager/pip_requirements/extract.js.map +1 -1
  383. package/dist/modules/manager/pipenv/artifacts.js +3 -4
  384. package/dist/modules/manager/pipenv/artifacts.js.map +1 -1
  385. package/dist/modules/manager/pipenv/extract.js +6 -7
  386. package/dist/modules/manager/pipenv/extract.js.map +1 -1
  387. package/dist/modules/manager/pixi/artifacts.js +2 -3
  388. package/dist/modules/manager/pixi/artifacts.js.map +1 -1
  389. package/dist/modules/manager/pixi/extract.js +2 -3
  390. package/dist/modules/manager/pixi/extract.js.map +1 -1
  391. package/dist/modules/manager/poetry/artifacts.js +4 -5
  392. package/dist/modules/manager/poetry/artifacts.js.map +1 -1
  393. package/dist/modules/manager/poetry/extract.js +2 -3
  394. package/dist/modules/manager/poetry/extract.js.map +1 -1
  395. package/dist/modules/manager/pre-commit/extract.js +4 -5
  396. package/dist/modules/manager/pre-commit/extract.js.map +1 -1
  397. package/dist/modules/manager/pub/artifacts.js +3 -4
  398. package/dist/modules/manager/pub/artifacts.js.map +1 -1
  399. package/dist/modules/manager/pub/extract.js +8 -11
  400. package/dist/modules/manager/pub/extract.js.map +1 -1
  401. package/dist/modules/manager/renovate-config-presets/extract.js +4 -5
  402. package/dist/modules/manager/renovate-config-presets/extract.js.map +1 -1
  403. package/dist/modules/manager/tekton/extract.js +9 -10
  404. package/dist/modules/manager/tekton/extract.js.map +1 -1
  405. package/dist/modules/manager/terraform/base.js +2 -3
  406. package/dist/modules/manager/terraform/base.js.map +1 -1
  407. package/dist/modules/manager/terraform/extract.js +2 -2
  408. package/dist/modules/manager/terraform/extract.js.map +1 -1
  409. package/dist/modules/manager/terraform/extractors/others/modules.js +3 -4
  410. package/dist/modules/manager/terraform/extractors/others/modules.js.map +1 -1
  411. package/dist/modules/manager/terraform/extractors/others/providers.js +3 -4
  412. package/dist/modules/manager/terraform/extractors/others/providers.js.map +1 -1
  413. package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js +7 -8
  414. package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js.map +1 -1
  415. package/dist/modules/manager/terraform/extractors/resources/helm-release.js +5 -6
  416. package/dist/modules/manager/terraform/extractors/resources/helm-release.js.map +1 -1
  417. package/dist/modules/manager/terraform/extractors/resources/terraform-workspace.js +3 -4
  418. package/dist/modules/manager/terraform/extractors/resources/terraform-workspace.js.map +1 -1
  419. package/dist/modules/manager/terraform/extractors/terraform-block/required-provider.js +4 -5
  420. package/dist/modules/manager/terraform/extractors/terraform-block/required-provider.js.map +1 -1
  421. package/dist/modules/manager/terraform/extractors/terraform-block/terraform-version.js +3 -3
  422. package/dist/modules/manager/terraform/extractors/terraform-block/terraform-version.js.map +1 -1
  423. package/dist/modules/manager/terraform/lockfile/index.js +2 -2
  424. package/dist/modules/manager/terraform/lockfile/index.js.map +1 -1
  425. package/dist/modules/manager/terraform/lockfile/util.js +2 -3
  426. package/dist/modules/manager/terraform/lockfile/util.js.map +1 -1
  427. package/dist/modules/manager/terraform/util.js +2 -3
  428. package/dist/modules/manager/terraform/util.js.map +1 -1
  429. package/dist/modules/manager/tflint-plugin/plugins.js +2 -3
  430. package/dist/modules/manager/tflint-plugin/plugins.js.map +1 -1
  431. package/dist/modules/manager/travis/extract.js +5 -6
  432. package/dist/modules/manager/travis/extract.js.map +1 -1
  433. package/dist/modules/manager/woodpecker/extract.js +2 -3
  434. package/dist/modules/manager/woodpecker/extract.js.map +1 -1
  435. package/dist/modules/platform/azure/index.js +2 -2
  436. package/dist/modules/platform/azure/index.js.map +1 -1
  437. package/dist/modules/platform/bitbucket/index.js +5 -5
  438. package/dist/modules/platform/bitbucket/index.js.map +1 -1
  439. package/dist/modules/platform/bitbucket-server/pr-cache.js +2 -2
  440. package/dist/modules/platform/bitbucket-server/pr-cache.js.map +1 -1
  441. package/dist/modules/platform/bitbucket-server/utils.js +2 -2
  442. package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
  443. package/dist/modules/platform/codecommit/codecommit-client.js +2 -2
  444. package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
  445. package/dist/modules/platform/forgejo/index.js +5 -5
  446. package/dist/modules/platform/forgejo/index.js.map +1 -1
  447. package/dist/modules/platform/forgejo/utils.js +2 -2
  448. package/dist/modules/platform/forgejo/utils.js.map +1 -1
  449. package/dist/modules/platform/gitea/index.js +5 -5
  450. package/dist/modules/platform/gitea/index.js.map +1 -1
  451. package/dist/modules/platform/gitea/utils.js +2 -2
  452. package/dist/modules/platform/gitea/utils.js.map +1 -1
  453. package/dist/modules/platform/github/common.js +4 -5
  454. package/dist/modules/platform/github/common.js.map +1 -1
  455. package/dist/modules/platform/github/index.js +5 -5
  456. package/dist/modules/platform/github/index.js.map +1 -1
  457. package/dist/modules/platform/github/pr.js +2 -3
  458. package/dist/modules/platform/github/pr.js.map +1 -1
  459. package/dist/modules/platform/gitlab/http.js +2 -3
  460. package/dist/modules/platform/gitlab/http.js.map +1 -1
  461. package/dist/modules/platform/gitlab/index.js +3 -3
  462. package/dist/modules/platform/gitlab/index.js.map +1 -1
  463. package/dist/modules/platform/gitlab/utils.js +3 -3
  464. package/dist/modules/platform/gitlab/utils.js.map +1 -1
  465. package/dist/modules/platform/pr-body.js +2 -3
  466. package/dist/modules/platform/pr-body.js.map +1 -1
  467. package/dist/modules/versioning/composer/index.js +2 -3
  468. package/dist/modules/versioning/composer/index.js.map +1 -1
  469. package/dist/modules/versioning/generic.js +5 -6
  470. package/dist/modules/versioning/generic.js.map +1 -1
  471. package/dist/modules/versioning/gradle/compare.js +3 -4
  472. package/dist/modules/versioning/gradle/compare.js.map +1 -1
  473. package/dist/modules/versioning/nixpkgs/index.js +6 -7
  474. package/dist/modules/versioning/nixpkgs/index.js.map +1 -1
  475. package/dist/modules/versioning/npm/range.js +2 -2
  476. package/dist/modules/versioning/npm/range.js.map +1 -1
  477. package/dist/modules/versioning/rpm/index.js +4 -5
  478. package/dist/modules/versioning/rpm/index.js.map +1 -1
  479. package/dist/modules/versioning/schema.js +2 -2
  480. package/dist/modules/versioning/schema.js.map +1 -1
  481. package/dist/modules/versioning/semver-coerced/index.js +3 -3
  482. package/dist/modules/versioning/semver-coerced/index.js.map +1 -1
  483. package/dist/modules/versioning/semver-partial/index.js +4 -4
  484. package/dist/modules/versioning/semver-partial/index.js.map +1 -1
  485. package/dist/proxy.js +3 -4
  486. package/dist/proxy.js.map +1 -1
  487. package/dist/util/array.js +4 -5
  488. package/dist/util/array.js.map +1 -1
  489. package/dist/util/assign-keys.js +2 -3
  490. package/dist/util/assign-keys.js.map +1 -1
  491. package/dist/util/cache/package/decorator.js +6 -6
  492. package/dist/util/cache/package/decorator.js.map +1 -1
  493. package/dist/util/cache/package/ttl.js +4 -5
  494. package/dist/util/cache/package/ttl.js.map +1 -1
  495. package/dist/util/cache/repository/impl/base.js +3 -4
  496. package/dist/util/cache/repository/impl/base.js.map +1 -1
  497. package/dist/util/cache/repository/impl/s3.js +2 -3
  498. package/dist/util/cache/repository/impl/s3.js.map +1 -1
  499. package/dist/util/exec/common.js +2 -3
  500. package/dist/util/exec/common.js.map +1 -1
  501. package/dist/util/exec/containerbase.js +2 -2
  502. package/dist/util/exec/containerbase.js.map +1 -1
  503. package/dist/util/exec/docker/index.js +5 -5
  504. package/dist/util/exec/docker/index.js.map +1 -1
  505. package/dist/util/exec/index.js +2 -2
  506. package/dist/util/exec/index.js.map +1 -1
  507. package/dist/util/exec/utils.js +3 -4
  508. package/dist/util/exec/utils.js.map +1 -1
  509. package/dist/util/filter-map.js +2 -3
  510. package/dist/util/filter-map.js.map +1 -1
  511. package/dist/util/fs/index.js +3 -3
  512. package/dist/util/fs/index.js.map +1 -1
  513. package/dist/util/git/auth.js +2 -3
  514. package/dist/util/git/auth.js.map +1 -1
  515. package/dist/util/git/config.js +3 -4
  516. package/dist/util/git/config.js.map +1 -1
  517. package/dist/util/git/index.js +4 -4
  518. package/dist/util/git/index.js.map +1 -1
  519. package/dist/util/git/private-key.js +2 -2
  520. package/dist/util/git/private-key.js.map +1 -1
  521. package/dist/util/host-rules.js +6 -6
  522. package/dist/util/host-rules.js.map +1 -1
  523. package/dist/util/http/auth.js +3 -4
  524. package/dist/util/http/auth.js.map +1 -1
  525. package/dist/util/http/bitbucket-server.js +2 -3
  526. package/dist/util/http/bitbucket-server.js.map +1 -1
  527. package/dist/util/http/bitbucket.js +3 -4
  528. package/dist/util/http/bitbucket.js.map +1 -1
  529. package/dist/util/http/cache/package-http-cache-provider.js +2 -2
  530. package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
  531. package/dist/util/http/forgejo.js +3 -4
  532. package/dist/util/http/forgejo.js.map +1 -1
  533. package/dist/util/http/gitea.js +3 -4
  534. package/dist/util/http/gitea.js.map +1 -1
  535. package/dist/util/http/github.js +10 -10
  536. package/dist/util/http/github.js.map +1 -1
  537. package/dist/util/http/gitlab.js +4 -5
  538. package/dist/util/http/gitlab.js.map +1 -1
  539. package/dist/util/http/host-rules.js +10 -10
  540. package/dist/util/http/host-rules.js.map +1 -1
  541. package/dist/util/http/http.js +5 -5
  542. package/dist/util/http/http.js.map +1 -1
  543. package/dist/util/http/rate-limits.js +3 -3
  544. package/dist/util/http/rate-limits.js.map +1 -1
  545. package/dist/util/interpolator.js +8 -9
  546. package/dist/util/interpolator.js.map +1 -1
  547. package/dist/util/merge-confidence/index.js +5 -5
  548. package/dist/util/merge-confidence/index.js.map +1 -1
  549. package/dist/util/number.js +2 -3
  550. package/dist/util/number.js.map +1 -1
  551. package/dist/util/package-rules/base-branches.js +3 -4
  552. package/dist/util/package-rules/base-branches.js.map +1 -1
  553. package/dist/util/package-rules/categories.js +3 -4
  554. package/dist/util/package-rules/categories.js.map +1 -1
  555. package/dist/util/package-rules/current-age.js +3 -4
  556. package/dist/util/package-rules/current-age.js.map +1 -1
  557. package/dist/util/package-rules/current-value.js +2 -3
  558. package/dist/util/package-rules/current-value.js.map +1 -1
  559. package/dist/util/package-rules/current-version.js +5 -5
  560. package/dist/util/package-rules/current-version.js.map +1 -1
  561. package/dist/util/package-rules/datasources.js +3 -4
  562. package/dist/util/package-rules/datasources.js.map +1 -1
  563. package/dist/util/package-rules/dep-names.js +3 -4
  564. package/dist/util/package-rules/dep-names.js.map +1 -1
  565. package/dist/util/package-rules/dep-types.js +2 -3
  566. package/dist/util/package-rules/dep-types.js.map +1 -1
  567. package/dist/util/package-rules/files.js +4 -5
  568. package/dist/util/package-rules/files.js.map +1 -1
  569. package/dist/util/package-rules/index.js +6 -6
  570. package/dist/util/package-rules/index.js.map +1 -1
  571. package/dist/util/package-rules/managers.js +3 -4
  572. package/dist/util/package-rules/managers.js.map +1 -1
  573. package/dist/util/package-rules/merge-confidence.js +5 -6
  574. package/dist/util/package-rules/merge-confidence.js.map +1 -1
  575. package/dist/util/package-rules/new-value.js +2 -3
  576. package/dist/util/package-rules/new-value.js.map +1 -1
  577. package/dist/util/package-rules/package-names.js +2 -3
  578. package/dist/util/package-rules/package-names.js.map +1 -1
  579. package/dist/util/package-rules/repositories.js +3 -4
  580. package/dist/util/package-rules/repositories.js.map +1 -1
  581. package/dist/util/package-rules/sourceurls.js +2 -3
  582. package/dist/util/package-rules/sourceurls.js.map +1 -1
  583. package/dist/util/package-rules/update-types.js +2 -3
  584. package/dist/util/package-rules/update-types.js.map +1 -1
  585. package/dist/util/pretty-time.js +4 -4
  586. package/dist/util/pretty-time.js.map +1 -1
  587. package/dist/util/regex.js +2 -3
  588. package/dist/util/regex.js.map +1 -1
  589. package/dist/util/s3.js +2 -3
  590. package/dist/util/s3.js.map +1 -1
  591. package/dist/util/sanitize.js +2 -3
  592. package/dist/util/sanitize.js.map +1 -1
  593. package/dist/util/string-match.js +2 -3
  594. package/dist/util/string-match.js.map +1 -1
  595. package/dist/util/template/index.js +6 -6
  596. package/dist/util/template/index.js.map +1 -1
  597. package/dist/util/url.js +5 -5
  598. package/dist/util/url.js.map +1 -1
  599. package/dist/workers/global/autodiscover.js +3 -4
  600. package/dist/workers/global/autodiscover.js.map +1 -1
  601. package/dist/workers/global/config/parse/additional-config-file.js +4 -4
  602. package/dist/workers/global/config/parse/additional-config-file.js.map +1 -1
  603. package/dist/workers/global/config/parse/coersions.js +2 -2
  604. package/dist/workers/global/config/parse/coersions.js.map +1 -1
  605. package/dist/workers/global/config/parse/env.js +2 -2
  606. package/dist/workers/global/config/parse/env.js.map +1 -1
  607. package/dist/workers/global/config/parse/file.js +5 -5
  608. package/dist/workers/global/config/parse/file.js.map +1 -1
  609. package/dist/workers/global/config/parse/index.js +6 -7
  610. package/dist/workers/global/config/parse/index.js.map +1 -1
  611. package/dist/workers/global/config/parse/util.js +2 -2
  612. package/dist/workers/global/config/parse/util.js.map +1 -1
  613. package/dist/workers/global/index.js +5 -5
  614. package/dist/workers/global/index.js.map +1 -1
  615. package/dist/workers/global/limits.js +6 -7
  616. package/dist/workers/global/limits.js.map +1 -1
  617. package/dist/workers/repository/config-migration/branch/index.js +2 -3
  618. package/dist/workers/repository/config-migration/branch/index.js.map +1 -1
  619. package/dist/workers/repository/config-migration/branch/migrated-data.js +2 -2
  620. package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
  621. package/dist/workers/repository/config-migration/pr/index.js +3 -3
  622. package/dist/workers/repository/config-migration/pr/index.js.map +1 -1
  623. package/dist/workers/repository/dependency-dashboard.js +10 -10
  624. package/dist/workers/repository/dependency-dashboard.js.map +1 -1
  625. package/dist/workers/repository/error.js +6 -1
  626. package/dist/workers/repository/error.js.map +1 -1
  627. package/dist/workers/repository/extract/index.js +2 -3
  628. package/dist/workers/repository/extract/index.js.map +1 -1
  629. package/dist/workers/repository/extract/manager-files.js +2 -3
  630. package/dist/workers/repository/extract/manager-files.js.map +1 -1
  631. package/dist/workers/repository/extract/supersedes.js +4 -5
  632. package/dist/workers/repository/extract/supersedes.js.map +1 -1
  633. package/dist/workers/repository/finalize/prune.js +2 -3
  634. package/dist/workers/repository/finalize/prune.js.map +1 -1
  635. package/dist/workers/repository/init/inherited.js +5 -5
  636. package/dist/workers/repository/init/inherited.js.map +1 -1
  637. package/dist/workers/repository/init/merge.js +13 -13
  638. package/dist/workers/repository/init/merge.js.map +1 -1
  639. package/dist/workers/repository/model/commit-message.js +2 -3
  640. package/dist/workers/repository/model/commit-message.js.map +1 -1
  641. package/dist/workers/repository/onboarding/branch/index.js +2 -3
  642. package/dist/workers/repository/onboarding/branch/index.js.map +1 -1
  643. package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js +5 -6
  644. package/dist/workers/repository/onboarding/branch/onboarding-branch-cache.js.map +1 -1
  645. package/dist/workers/repository/onboarding/pr/config-description.js +2 -5
  646. package/dist/workers/repository/onboarding/pr/config-description.js.map +1 -1
  647. package/dist/workers/repository/onboarding/pr/index.js +3 -3
  648. package/dist/workers/repository/onboarding/pr/index.js.map +1 -1
  649. package/dist/workers/repository/package-files.js +8 -9
  650. package/dist/workers/repository/package-files.js.map +1 -1
  651. package/dist/workers/repository/process/extract-update.js +2 -2
  652. package/dist/workers/repository/process/extract-update.js.map +1 -1
  653. package/dist/workers/repository/process/fetch.js +3 -3
  654. package/dist/workers/repository/process/fetch.js.map +1 -1
  655. package/dist/workers/repository/process/lookup/current.js +2 -3
  656. package/dist/workers/repository/process/lookup/current.js.map +1 -1
  657. package/dist/workers/repository/process/lookup/filter-checks.js +4 -5
  658. package/dist/workers/repository/process/lookup/filter-checks.js.map +1 -1
  659. package/dist/workers/repository/process/lookup/generate.js +2 -3
  660. package/dist/workers/repository/process/lookup/generate.js.map +1 -1
  661. package/dist/workers/repository/process/lookup/index.js +15 -16
  662. package/dist/workers/repository/process/lookup/index.js.map +1 -1
  663. package/dist/workers/repository/process/lookup/utils.js +7 -7
  664. package/dist/workers/repository/process/lookup/utils.js.map +1 -1
  665. package/dist/workers/repository/process/vulnerabilities.js +11 -11
  666. package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
  667. package/dist/workers/repository/process/write.js +2 -3
  668. package/dist/workers/repository/process/write.js.map +1 -1
  669. package/dist/workers/repository/reconfigure/comment.js +2 -5
  670. package/dist/workers/repository/reconfigure/comment.js.map +1 -1
  671. package/dist/workers/repository/reconfigure/utils.js +2 -3
  672. package/dist/workers/repository/reconfigure/utils.js.map +1 -1
  673. package/dist/workers/repository/reconfigure/validate.js +2 -3
  674. package/dist/workers/repository/reconfigure/validate.js.map +1 -1
  675. package/dist/workers/repository/update/branch/auto-replace.js +4 -5
  676. package/dist/workers/repository/update/branch/auto-replace.js.map +1 -1
  677. package/dist/workers/repository/update/branch/commit.js +3 -4
  678. package/dist/workers/repository/update/branch/commit.js.map +1 -1
  679. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +12 -5
  680. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
  681. package/dist/workers/repository/update/branch/get-updated.js +8 -9
  682. package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
  683. package/dist/workers/repository/update/branch/index.js +3 -3
  684. package/dist/workers/repository/update/branch/index.js.map +1 -1
  685. package/dist/workers/repository/update/branch/schedule.js +2 -2
  686. package/dist/workers/repository/update/branch/schedule.js.map +1 -1
  687. package/dist/workers/repository/update/pr/body/notes.js +2 -2
  688. package/dist/workers/repository/update/pr/body/notes.js.map +1 -1
  689. package/dist/workers/repository/update/pr/changelog/bitbucket/index.js +2 -2
  690. package/dist/workers/repository/update/pr/changelog/bitbucket/index.js.map +1 -1
  691. package/dist/workers/repository/update/pr/changelog/index.js +3 -3
  692. package/dist/workers/repository/update/pr/changelog/index.js.map +1 -1
  693. package/dist/workers/repository/update/pr/changelog/release-notes.js +4 -4
  694. package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
  695. package/dist/workers/repository/update/pr/changelog/source.js +8 -8
  696. package/dist/workers/repository/update/pr/changelog/source.js.map +1 -1
  697. package/dist/workers/repository/update/pr/code-owners.js +2 -2
  698. package/dist/workers/repository/update/pr/code-owners.js.map +1 -1
  699. package/dist/workers/repository/update/pr/index.js +7 -8
  700. package/dist/workers/repository/update/pr/index.js.map +1 -1
  701. package/dist/workers/repository/update/pr/labels.js +4 -4
  702. package/dist/workers/repository/update/pr/labels.js.map +1 -1
  703. package/dist/workers/repository/update/pr/participants.js +4 -5
  704. package/dist/workers/repository/update/pr/participants.js.map +1 -1
  705. package/dist/workers/repository/updates/generate.js +4 -4
  706. package/dist/workers/repository/updates/generate.js.map +1 -1
  707. package/package.json +3 -3
  708. package/renovate-schema.json +7 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/datasource/repology/index.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { HOST_DISABLED } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { ExternalHostError } from '../../../types/errors/external-host-error';\nimport { cache } from '../../../util/cache/package/decorator';\nimport { getQueryString, joinUrlParts } from '../../../util/url';\nimport { Datasource } from '../datasource';\nimport type { GetReleasesConfig, ReleaseResult } from '../types';\nimport type { RepologyPackage, RepologyPackageType } from './types';\n\nconst packageTypes: RepologyPackageType[] = ['binname', 'srcname'];\n\nfunction findPackageInResponse(\n response: RepologyPackage[],\n repoName: string,\n pkgName: string,\n types: RepologyPackageType[],\n): RepologyPackage[] | null {\n const repoPackages = response.filter((pkg) => pkg.repo === repoName);\n\n if (repoPackages.length === 0) {\n // no packages associated with repoName\n return null;\n }\n\n if (repoPackages.length === 1) {\n // repo contains exactly one package, so we can return them safely\n return repoPackages;\n }\n\n // In some cases Repology bundles multiple packages into a single project, which might result in ambiguous results.\n // We need to do additional filtering by matching allowed package types passed as params with package description.\n // Remaining packages are the one we are looking for\n const packagesWithType = repoPackages.filter((pkg) => {\n for (const pkgType of types) {\n if (pkg[pkgType] && pkg[pkgType] === pkgName) {\n return true;\n }\n }\n return false;\n });\n\n return packagesWithType.length > 0 ? packagesWithType : null;\n}\n\nexport class RepologyDatasource extends Datasource {\n static readonly id = 'repology';\n\n override readonly defaultRegistryUrls = ['https://repology.org/'];\n\n override readonly registryStrategy = 'hunt';\n\n constructor() {\n super(RepologyDatasource.id);\n }\n\n private async queryPackages(url: string): Promise<RepologyPackage[]> {\n try {\n const res = await this.http.getJsonUnchecked<RepologyPackage[]>(url);\n return res.body;\n } catch (err) {\n if (err.statusCode === 404) {\n // Return an array here because the api does not return proper http codes\n // and instead of an 404 error an empty array with code 200 is returned\n // When querying the resolver 404 is thrown if package could not be resolved\n // and 403 if the repo is not supported\n // 403 is handled later because in this case we are trying the API\n return [];\n }\n\n throw err;\n }\n }\n\n private async queryPackagesViaResolver(\n registryUrl: string,\n repoName: string,\n packageName: string,\n packageType: RepologyPackageType,\n ): Promise<RepologyPackage[]> {\n const query = getQueryString({\n repo: repoName,\n name_type: packageType,\n target_page: 'api_v1_project',\n noautoresolve: 'on',\n name: packageName,\n });\n\n // Retrieve list of packages by looking up Repology project\n const packages = await this.queryPackages(\n joinUrlParts(registryUrl, `tools/project-by?${query}`),\n );\n\n return packages;\n }\n\n private async queryPackagesViaAPI(\n registryUrl: string,\n packageName: string,\n ): Promise<RepologyPackage[]> {\n // Directly query the package via the API. This will only work if `packageName` has the\n // same name as the repology project\n const packages = await this.queryPackages(\n joinUrlParts(registryUrl, `api/v1/project`, packageName),\n );\n\n return packages;\n }\n\n @cache({\n ttlMinutes: 60,\n namespace: `datasource-${RepologyDatasource.id}`,\n key: (registryUrl: string, repoName: string, pkgName: string) =>\n joinUrlParts(registryUrl, repoName, pkgName),\n })\n async queryPackage(\n registryUrl: string,\n repoName: string,\n pkgName: string,\n ): Promise<RepologyPackage[] | undefined> {\n let response: RepologyPackage[];\n // Try getting the packages from tools/project-by first for type binname and\n // afterwards for srcname. This needs to be done first, because some packages\n // resolve to repology projects which have a different name than the package\n // e.g. `pulseaudio-utils` resolves to project `pulseaudio`, BUT there is also\n // a project called `pulseaudio-utils` but it does not contain the package we\n // are looking for.\n try {\n for (const pkgType of packageTypes) {\n response = await this.queryPackagesViaResolver(\n registryUrl,\n repoName,\n pkgName,\n pkgType,\n );\n\n if (response) {\n const pkg = findPackageInResponse(response, repoName, pkgName, [\n pkgType,\n ]);\n if (is.nonEmptyArray(pkg)) {\n // exit immediately if package found\n return pkg;\n }\n }\n }\n } catch (err) {\n if (err.statusCode === 403) {\n logger.debug(\n { repoName, pkgName },\n 'Repology does not support tools/project-by lookups for repository. Will try direct API access now',\n );\n\n // If the repository is not supported in tools/project-by we try directly accessing the\n // API. This will support all repositories but requires that the project name is equal to the\n // package name. This won't be always the case but for a good portion we might be able to resolve\n // the package this way.\n response = await this.queryPackagesViaAPI(registryUrl, pkgName);\n const pkg = findPackageInResponse(\n response,\n repoName,\n pkgName,\n packageTypes,\n );\n if (is.nonEmptyArray(pkg)) {\n // exit immediately if package found\n return pkg;\n }\n } else if (err.statusCode === 300) {\n logger.warn(\n { repoName, pkgName },\n 'Ambiguous redirection from package name to project name in Repology. Skipping this package',\n );\n return undefined;\n }\n\n throw err;\n }\n\n logger.debug(\n { repoName, pkgName },\n 'Repository or package not found on Repology',\n );\n\n return undefined;\n }\n\n async getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n /* v8 ignore next 3 -- should never happen */\n if (!registryUrl) {\n return null;\n }\n // Ensure lookup name contains both repository and package\n const [repoName, pkgName] = packageName.split('/', 2);\n if (!repoName || !pkgName) {\n throw new ExternalHostError(\n new Error(\n 'Repology lookup name must contain repository and package separated by slash (<repo>/<pkg>)',\n ),\n );\n }\n\n logger.trace(`repology.getReleases(${repoName}, ${pkgName})`);\n try {\n // Try to retrieve (cached) package information from Repology\n const pkg = await this.queryPackage(registryUrl, repoName, pkgName);\n if (!pkg) {\n return null;\n }\n\n // Always prefer origversion if available, otherwise default to version\n // This is required as source packages usually have no origversion\n const releases = pkg.map((item) => ({\n version: item.origversion ?? item.version,\n }));\n return { releases };\n } catch (err) {\n if (err.message === HOST_DISABLED) {\n logger.trace({ packageName, err }, 'Host disabled');\n } else {\n logger.warn(\n { packageName, err },\n 'Repology lookup failed with unexpected error',\n );\n }\n\n throw new ExternalHostError(err);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/datasource/repology/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyArray } from '@sindresorhus/is';\nimport { HOST_DISABLED } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { ExternalHostError } from '../../../types/errors/external-host-error';\nimport { cache } from '../../../util/cache/package/decorator';\nimport { getQueryString, joinUrlParts } from '../../../util/url';\nimport { Datasource } from '../datasource';\nimport type { GetReleasesConfig, ReleaseResult } from '../types';\nimport type { RepologyPackage, RepologyPackageType } from './types';\n\nconst packageTypes: RepologyPackageType[] = ['binname', 'srcname'];\n\nfunction findPackageInResponse(\n response: RepologyPackage[],\n repoName: string,\n pkgName: string,\n types: RepologyPackageType[],\n): RepologyPackage[] | null {\n const repoPackages = response.filter((pkg) => pkg.repo === repoName);\n\n if (repoPackages.length === 0) {\n // no packages associated with repoName\n return null;\n }\n\n if (repoPackages.length === 1) {\n // repo contains exactly one package, so we can return them safely\n return repoPackages;\n }\n\n // In some cases Repology bundles multiple packages into a single project, which might result in ambiguous results.\n // We need to do additional filtering by matching allowed package types passed as params with package description.\n // Remaining packages are the one we are looking for\n const packagesWithType = repoPackages.filter((pkg) => {\n for (const pkgType of types) {\n if (pkg[pkgType] && pkg[pkgType] === pkgName) {\n return true;\n }\n }\n return false;\n });\n\n return packagesWithType.length > 0 ? packagesWithType : null;\n}\n\nexport class RepologyDatasource extends Datasource {\n static readonly id = 'repology';\n\n override readonly defaultRegistryUrls = ['https://repology.org/'];\n\n override readonly registryStrategy = 'hunt';\n\n constructor() {\n super(RepologyDatasource.id);\n }\n\n private async queryPackages(url: string): Promise<RepologyPackage[]> {\n try {\n const res = await this.http.getJsonUnchecked<RepologyPackage[]>(url);\n return res.body;\n } catch (err) {\n if (err.statusCode === 404) {\n // Return an array here because the api does not return proper http codes\n // and instead of an 404 error an empty array with code 200 is returned\n // When querying the resolver 404 is thrown if package could not be resolved\n // and 403 if the repo is not supported\n // 403 is handled later because in this case we are trying the API\n return [];\n }\n\n throw err;\n }\n }\n\n private async queryPackagesViaResolver(\n registryUrl: string,\n repoName: string,\n packageName: string,\n packageType: RepologyPackageType,\n ): Promise<RepologyPackage[]> {\n const query = getQueryString({\n repo: repoName,\n name_type: packageType,\n target_page: 'api_v1_project',\n noautoresolve: 'on',\n name: packageName,\n });\n\n // Retrieve list of packages by looking up Repology project\n const packages = await this.queryPackages(\n joinUrlParts(registryUrl, `tools/project-by?${query}`),\n );\n\n return packages;\n }\n\n private async queryPackagesViaAPI(\n registryUrl: string,\n packageName: string,\n ): Promise<RepologyPackage[]> {\n // Directly query the package via the API. This will only work if `packageName` has the\n // same name as the repology project\n const packages = await this.queryPackages(\n joinUrlParts(registryUrl, `api/v1/project`, packageName),\n );\n\n return packages;\n }\n\n @cache({\n ttlMinutes: 60,\n namespace: `datasource-${RepologyDatasource.id}`,\n key: (registryUrl: string, repoName: string, pkgName: string) =>\n joinUrlParts(registryUrl, repoName, pkgName),\n })\n async queryPackage(\n registryUrl: string,\n repoName: string,\n pkgName: string,\n ): Promise<RepologyPackage[] | undefined> {\n let response: RepologyPackage[];\n // Try getting the packages from tools/project-by first for type binname and\n // afterwards for srcname. This needs to be done first, because some packages\n // resolve to repology projects which have a different name than the package\n // e.g. `pulseaudio-utils` resolves to project `pulseaudio`, BUT there is also\n // a project called `pulseaudio-utils` but it does not contain the package we\n // are looking for.\n try {\n for (const pkgType of packageTypes) {\n response = await this.queryPackagesViaResolver(\n registryUrl,\n repoName,\n pkgName,\n pkgType,\n );\n\n if (response) {\n const pkg = findPackageInResponse(response, repoName, pkgName, [\n pkgType,\n ]);\n if (isNonEmptyArray(pkg)) {\n // exit immediately if package found\n return pkg;\n }\n }\n }\n } catch (err) {\n if (err.statusCode === 403) {\n logger.debug(\n { repoName, pkgName },\n 'Repology does not support tools/project-by lookups for repository. Will try direct API access now',\n );\n\n // If the repository is not supported in tools/project-by we try directly accessing the\n // API. This will support all repositories but requires that the project name is equal to the\n // package name. This won't be always the case but for a good portion we might be able to resolve\n // the package this way.\n response = await this.queryPackagesViaAPI(registryUrl, pkgName);\n const pkg = findPackageInResponse(\n response,\n repoName,\n pkgName,\n packageTypes,\n );\n if (isNonEmptyArray(pkg)) {\n // exit immediately if package found\n return pkg;\n }\n } else if (err.statusCode === 300) {\n logger.warn(\n { repoName, pkgName },\n 'Ambiguous redirection from package name to project name in Repology. Skipping this package',\n );\n return undefined;\n }\n\n throw err;\n }\n\n logger.debug(\n { repoName, pkgName },\n 'Repository or package not found on Repology',\n );\n\n return undefined;\n }\n\n async getReleases({\n packageName,\n registryUrl,\n }: GetReleasesConfig): Promise<ReleaseResult | null> {\n /* v8 ignore next 3 -- should never happen */\n if (!registryUrl) {\n return null;\n }\n // Ensure lookup name contains both repository and package\n const [repoName, pkgName] = packageName.split('/', 2);\n if (!repoName || !pkgName) {\n throw new ExternalHostError(\n new Error(\n 'Repology lookup name must contain repository and package separated by slash (<repo>/<pkg>)',\n ),\n );\n }\n\n logger.trace(`repology.getReleases(${repoName}, ${pkgName})`);\n try {\n // Try to retrieve (cached) package information from Repology\n const pkg = await this.queryPackage(registryUrl, repoName, pkgName);\n if (!pkg) {\n return null;\n }\n\n // Always prefer origversion if available, otherwise default to version\n // This is required as source packages usually have no origversion\n const releases = pkg.map((item) => ({\n version: item.origversion ?? item.version,\n }));\n return { releases };\n } catch (err) {\n if (err.message === HOST_DISABLED) {\n logger.trace({ packageName, err }, 'Host disabled');\n } else {\n logger.warn(\n { packageName, err },\n 'Repology lookup failed with unexpected error',\n );\n }\n\n throw new ExternalHostError(err);\n }\n }\n}\n"]}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GemInfo = exports.GemVersions = exports.GemMetadata = exports.MarshalledVersionInfo = void 0;
4
- const tslib_1 = require("tslib");
5
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
4
+ const is_1 = require("@sindresorhus/is");
6
5
  const zod_1 = require("zod");
7
6
  const filter_map_1 = require("../../../util/filter-map");
8
7
  const regex_1 = require("../../../util/regex");
@@ -11,7 +10,7 @@ const timestamp_1 = require("../../../util/timestamp");
11
10
  exports.MarshalledVersionInfo = (0, schema_utils_1.LooseArray)(zod_1.z
12
11
  .object({ number: zod_1.z.string() })
13
12
  .transform(({ number: version }) => ({ version })))
14
- .refine((value) => !is_1.default.emptyArray(value), 'Empty response from `/v1/dependencies` endpoint')
13
+ .refine((value) => !(0, is_1.isEmptyArray)(value), 'Empty response from `/v1/dependencies` endpoint')
15
14
  .transform((releases) => ({ releases }));
16
15
  exports.GemMetadata = zod_1.z
17
16
  .object({
@@ -46,7 +45,7 @@ exports.GemVersions = (0, schema_utils_1.LooseArray)(zod_1.z
46
45
  if (rubygemsVersion) {
47
46
  constraints.rubygems = [rubygemsVersion];
48
47
  }
49
- if (!is_1.default.emptyObject(constraints)) {
48
+ if (!(0, is_1.isEmptyObject)(constraints)) {
50
49
  result.constraints = constraints;
51
50
  }
52
51
  if (metadata.changelog_uri) {
@@ -57,7 +56,7 @@ exports.GemVersions = (0, schema_utils_1.LooseArray)(zod_1.z
57
56
  }
58
57
  return result;
59
58
  }))
60
- .refine((value) => !is_1.default.emptyArray(value), 'Empty response from `/v1/gems` endpoint')
59
+ .refine((value) => !(0, is_1.isEmptyArray)(value), 'Empty response from `/v1/gems` endpoint')
61
60
  .transform((releases) => ({ releases }));
62
61
  exports.GemInfo = zod_1.z
63
62
  .string()
@@ -65,6 +64,6 @@ exports.GemInfo = zod_1.z
65
64
  const spaceIdx = line.indexOf(' ');
66
65
  return spaceIdx > 0 ? line.slice(0, spaceIdx) : null;
67
66
  }).map((version) => ({ version })))
68
- .refine((value) => !is_1.default.emptyArray(value), 'Empty response from `/info` endpoint')
67
+ .refine((value) => !(0, is_1.isEmptyArray)(value), 'Empty response from `/info` endpoint')
69
68
  .transform((releases) => ({ releases }));
70
69
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/datasource/rubygems/schema.ts"],"names":[],"mappings":";;;;AAAA,kEAAkC;AAClC,6BAAwB;AACxB,yDAAqD;AACrD,+CAAmD;AACnD,6DAAwD;AACxD,uDAAyD;AAG5C,QAAA,qBAAqB,GAAG,IAAA,yBAAU,EAC7C,OAAC;KACE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC;KAC9B,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAW,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAC9D;KACE,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAChC,iDAAiD,CAClD;KACA,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;AAG9B,QAAA,WAAW,GAAG,OAAC;KACzB,MAAM,CAAC;IACN,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACrD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACpD,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;CACxD,CAAC;KACD,SAAS,CACR,CAAC,EACC,aAAa,EAAE,YAAY,EAC3B,YAAY,EAAE,QAAQ,EACtB,eAAe,EAAE,SAAS,GAC3B,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAC9C,CAAC;AAGS,QAAA,WAAW,GAAG,IAAA,yBAAU,EACnC,OAAC;KACE,MAAM,CAAC;IACN,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,UAAU,EAAE,0BAAc;IAC1B,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IAChD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACpD,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACxD,QAAQ,EAAE,OAAC;SACR,MAAM,CAAC;QACN,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;QACrD,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;KACxD,CAAC;SACD,KAAK,CAAC,EAAE,CAAC;CACb,CAAC;KACD,SAAS,CACR,CAAC,EACC,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EACR,YAAY,EAAE,WAAW,EACzB,gBAAgB,EAAE,eAAe,EACjC,QAAQ,GACT,EAAW,EAAE;IACZ,MAAM,MAAM,GAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;IACtD,MAAM,WAAW,GAA6B,EAAE,CAAC;IAEjD,IAAI,QAAQ,EAAE,CAAC;QACb,WAAW,CAAC,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,WAAW,CAAC,QAAQ,GAAG,CAAC,eAAe,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC,YAAE,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC3B,MAAM,CAAC,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC;IAC/C,CAAC;IAED,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,eAAe,CAAC;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CACF,CACJ;KACE,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAChC,yCAAyC,CAC1C;KACA,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;AAG9B,QAAA,OAAO,GAAG,OAAC;KACrB,MAAM,EAAE;KACR,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAClB,IAAA,sBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,oBAAY,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAW,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAC5C;KACA,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAChC,sCAAsC,CACvC;KACA,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { z } from 'zod';\nimport { filterMap } from '../../../util/filter-map';\nimport { newlineRegex } from '../../../util/regex';\nimport { LooseArray } from '../../../util/schema-utils';\nimport { MaybeTimestamp } from '../../../util/timestamp';\nimport type { Release } from '../types';\n\nexport const MarshalledVersionInfo = LooseArray(\n z\n .object({ number: z.string() })\n .transform(({ number: version }): Release => ({ version })),\n)\n .refine(\n (value) => !is.emptyArray(value),\n 'Empty response from `/v1/dependencies` endpoint',\n )\n .transform((releases) => ({ releases }));\ntype MarshalledVersionInfo = z.infer<typeof MarshalledVersionInfo>;\n\nexport const GemMetadata = z\n .object({\n changelog_uri: z.string().optional().catch(undefined),\n homepage_uri: z.string().optional().catch(undefined),\n source_code_uri: z.string().optional().catch(undefined),\n })\n .transform(\n ({\n changelog_uri: changelogUrl,\n homepage_uri: homepage,\n source_code_uri: sourceUrl,\n }) => ({ changelogUrl, homepage, sourceUrl }),\n );\nexport type GemMetadata = z.infer<typeof GemMetadata>;\n\nexport const GemVersions = LooseArray(\n z\n .object({\n number: z.string(),\n created_at: MaybeTimestamp,\n platform: z.string().optional().catch(undefined),\n ruby_version: z.string().optional().catch(undefined),\n rubygems_version: z.string().optional().catch(undefined),\n metadata: z\n .object({\n changelog_uri: z.string().optional().catch(undefined),\n source_code_uri: z.string().optional().catch(undefined),\n })\n .catch({}),\n })\n .transform(\n ({\n number: version,\n created_at: releaseTimestamp,\n platform,\n ruby_version: rubyVersion,\n rubygems_version: rubygemsVersion,\n metadata,\n }): Release => {\n const result: Release = { version, releaseTimestamp };\n const constraints: Record<string, string[]> = {};\n\n if (platform) {\n constraints.platform = [platform];\n }\n\n if (rubyVersion) {\n constraints.ruby = [rubyVersion];\n }\n\n if (rubygemsVersion) {\n constraints.rubygems = [rubygemsVersion];\n }\n\n if (!is.emptyObject(constraints)) {\n result.constraints = constraints;\n }\n\n if (metadata.changelog_uri) {\n result.changelogUrl = metadata.changelog_uri;\n }\n\n if (metadata.source_code_uri) {\n result.sourceUrl = metadata.source_code_uri;\n }\n\n return result;\n },\n ),\n)\n .refine(\n (value) => !is.emptyArray(value),\n 'Empty response from `/v1/gems` endpoint',\n )\n .transform((releases) => ({ releases }));\nexport type GemVersions = z.infer<typeof GemVersions>;\n\nexport const GemInfo = z\n .string()\n .transform((body) =>\n filterMap(body.split(newlineRegex), (line) => {\n const spaceIdx = line.indexOf(' ');\n return spaceIdx > 0 ? line.slice(0, spaceIdx) : null;\n }).map((version): Release => ({ version })),\n )\n .refine(\n (value) => !is.emptyArray(value),\n 'Empty response from `/info` endpoint',\n )\n .transform((releases) => ({ releases }));\nexport type GemInfo = z.infer<typeof GemInfo>;\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/datasource/rubygems/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { isEmptyArray, isEmptyObject } from '@sindresorhus/is';\nimport { z } from 'zod';\nimport { filterMap } from '../../../util/filter-map';\nimport { newlineRegex } from '../../../util/regex';\nimport { LooseArray } from '../../../util/schema-utils';\nimport { MaybeTimestamp } from '../../../util/timestamp';\nimport type { Release } from '../types';\n\nexport const MarshalledVersionInfo = LooseArray(\n z\n .object({ number: z.string() })\n .transform(({ number: version }): Release => ({ version })),\n)\n .refine(\n (value) => !isEmptyArray(value),\n 'Empty response from `/v1/dependencies` endpoint',\n )\n .transform((releases) => ({ releases }));\ntype MarshalledVersionInfo = z.infer<typeof MarshalledVersionInfo>;\n\nexport const GemMetadata = z\n .object({\n changelog_uri: z.string().optional().catch(undefined),\n homepage_uri: z.string().optional().catch(undefined),\n source_code_uri: z.string().optional().catch(undefined),\n })\n .transform(\n ({\n changelog_uri: changelogUrl,\n homepage_uri: homepage,\n source_code_uri: sourceUrl,\n }) => ({ changelogUrl, homepage, sourceUrl }),\n );\nexport type GemMetadata = z.infer<typeof GemMetadata>;\n\nexport const GemVersions = LooseArray(\n z\n .object({\n number: z.string(),\n created_at: MaybeTimestamp,\n platform: z.string().optional().catch(undefined),\n ruby_version: z.string().optional().catch(undefined),\n rubygems_version: z.string().optional().catch(undefined),\n metadata: z\n .object({\n changelog_uri: z.string().optional().catch(undefined),\n source_code_uri: z.string().optional().catch(undefined),\n })\n .catch({}),\n })\n .transform(\n ({\n number: version,\n created_at: releaseTimestamp,\n platform,\n ruby_version: rubyVersion,\n rubygems_version: rubygemsVersion,\n metadata,\n }): Release => {\n const result: Release = { version, releaseTimestamp };\n const constraints: Record<string, string[]> = {};\n\n if (platform) {\n constraints.platform = [platform];\n }\n\n if (rubyVersion) {\n constraints.ruby = [rubyVersion];\n }\n\n if (rubygemsVersion) {\n constraints.rubygems = [rubygemsVersion];\n }\n\n if (!isEmptyObject(constraints)) {\n result.constraints = constraints;\n }\n\n if (metadata.changelog_uri) {\n result.changelogUrl = metadata.changelog_uri;\n }\n\n if (metadata.source_code_uri) {\n result.sourceUrl = metadata.source_code_uri;\n }\n\n return result;\n },\n ),\n)\n .refine(\n (value) => !isEmptyArray(value),\n 'Empty response from `/v1/gems` endpoint',\n )\n .transform((releases) => ({ releases }));\nexport type GemVersions = z.infer<typeof GemVersions>;\n\nexport const GemInfo = z\n .string()\n .transform((body) =>\n filterMap(body.split(newlineRegex), (line) => {\n const spaceIdx = line.indexOf(' ');\n return spaceIdx > 0 ? line.slice(0, spaceIdx) : null;\n }).map((version): Release => ({ version })),\n )\n .refine(\n (value) => !isEmptyArray(value),\n 'Empty response from `/info` endpoint',\n )\n .transform((releases) => ({ releases }));\nexport type GemInfo = z.infer<typeof GemInfo>;\n"]}
@@ -3,14 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isArtifactoryServer = isArtifactoryServer;
4
4
  exports.getGoogleAuthHostRule = getGoogleAuthHostRule;
5
5
  exports.getGoogleAuthToken = getGoogleAuthToken;
6
- const tslib_1 = require("tslib");
7
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
6
+ const is_1 = require("@sindresorhus/is");
8
7
  const google_auth_library_1 = require("google-auth-library");
9
8
  const logger_1 = require("../../logger");
10
9
  const sanitize_1 = require("../../util/sanitize");
11
10
  const JFROG_ARTIFACTORY_RES_HEADER = 'x-jfrog-version';
12
11
  function isArtifactoryServer(res) {
13
- return is_1.default.string(res?.headers[JFROG_ARTIFACTORY_RES_HEADER]);
12
+ return (0, is_1.isString)(res?.headers[JFROG_ARTIFACTORY_RES_HEADER]);
14
13
  }
15
14
  async function getGoogleAuthHostRule() {
16
15
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../lib/modules/datasource/util.ts"],"names":[],"mappings":";;AASA,kDAIC;AAED,sDA0BC;AAED,gDAUC;;AArDD,kEAAkC;AAClC,6DAAiD;AACjD,yCAAsC;AAGtC,kDAA6D;AAE7D,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;AAEvD,SAAgB,mBAAmB,CACjC,GAAgC;IAEhC,OAAO,YAAE,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC;AAC/D,CAAC;AAEM,KAAK,UAAU,qBAAqB;IACzC,IAAI,CAAC;QACH,MAAM,UAAU,GAAe,IAAI,gCAAU,CAAC;YAC5C,MAAM,EAAE,gDAAgD;SACzD,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;QACtD,IAAI,WAAW,EAAE,CAAC;YAChB,iBAAiB;YACjB,IAAA,iCAAsB,EAAC,WAAW,CAAC,CAAC;YACpC,OAAO;gBACL,QAAQ,EAAE,mBAAmB;gBAC7B,QAAQ,EAAE,WAAW;aACtB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,IAAI,CACT,0EAA0E,CAC3E,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,wCAAwC,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,kBAAkB;IACtC,MAAM,IAAI,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAC3C,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CACrE,QAAQ,CACT,CAAC;QACF,IAAA,iCAAsB,EAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { GoogleAuth } from 'google-auth-library';\nimport { logger } from '../../logger';\nimport type { HostRule } from '../../types';\nimport type { HttpResponse } from '../../util/http/types';\nimport { addSecretForSanitizing } from '../../util/sanitize';\n\nconst JFROG_ARTIFACTORY_RES_HEADER = 'x-jfrog-version';\n\nexport function isArtifactoryServer<T = unknown>(\n res: HttpResponse<T> | undefined,\n): boolean {\n return is.string(res?.headers[JFROG_ARTIFACTORY_RES_HEADER]);\n}\n\nexport async function getGoogleAuthHostRule(): Promise<HostRule | null> {\n try {\n const googleAuth: GoogleAuth = new GoogleAuth({\n scopes: 'https://www.googleapis.com/auth/cloud-platform',\n });\n const accessToken = await googleAuth.getAccessToken();\n if (accessToken) {\n // sanitize token\n addSecretForSanitizing(accessToken);\n return {\n username: 'oauth2accesstoken',\n password: accessToken,\n };\n } else {\n logger.warn(\n 'Could not retrieve access token using google-auth-library getAccessToken',\n );\n }\n } catch (err) {\n if (err.message?.includes('Could not load the default credentials')) {\n return null;\n } else {\n throw err;\n }\n }\n return null;\n}\n\nexport async function getGoogleAuthToken(): Promise<string | null> {\n const rule = await getGoogleAuthHostRule();\n if (rule) {\n const token = Buffer.from(`${rule.username}:${rule.password}`).toString(\n 'base64',\n );\n addSecretForSanitizing(token);\n return token;\n }\n return null;\n}\n"]}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../lib/modules/datasource/util.ts"],"names":[],"mappings":";;AASA,kDAIC;AAED,sDA0BC;AAED,gDAUC;AArDD,yCAA4C;AAC5C,6DAAiD;AACjD,yCAAsC;AAGtC,kDAA6D;AAE7D,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;AAEvD,SAAgB,mBAAmB,CACjC,GAAgC;IAEhC,OAAO,IAAA,aAAQ,EAAC,GAAG,EAAE,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC;AAC9D,CAAC;AAEM,KAAK,UAAU,qBAAqB;IACzC,IAAI,CAAC;QACH,MAAM,UAAU,GAAe,IAAI,gCAAU,CAAC;YAC5C,MAAM,EAAE,gDAAgD;SACzD,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;QACtD,IAAI,WAAW,EAAE,CAAC;YAChB,iBAAiB;YACjB,IAAA,iCAAsB,EAAC,WAAW,CAAC,CAAC;YACpC,OAAO;gBACL,QAAQ,EAAE,mBAAmB;gBAC7B,QAAQ,EAAE,WAAW;aACtB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,IAAI,CACT,0EAA0E,CAC3E,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,wCAAwC,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,kBAAkB;IACtC,MAAM,IAAI,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAC3C,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CACrE,QAAQ,CACT,CAAC;QACF,IAAA,iCAAsB,EAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { isString } from '@sindresorhus/is';\nimport { GoogleAuth } from 'google-auth-library';\nimport { logger } from '../../logger';\nimport type { HostRule } from '../../types';\nimport type { HttpResponse } from '../../util/http/types';\nimport { addSecretForSanitizing } from '../../util/sanitize';\n\nconst JFROG_ARTIFACTORY_RES_HEADER = 'x-jfrog-version';\n\nexport function isArtifactoryServer<T = unknown>(\n res: HttpResponse<T> | undefined,\n): boolean {\n return isString(res?.headers[JFROG_ARTIFACTORY_RES_HEADER]);\n}\n\nexport async function getGoogleAuthHostRule(): Promise<HostRule | null> {\n try {\n const googleAuth: GoogleAuth = new GoogleAuth({\n scopes: 'https://www.googleapis.com/auth/cloud-platform',\n });\n const accessToken = await googleAuth.getAccessToken();\n if (accessToken) {\n // sanitize token\n addSecretForSanitizing(accessToken);\n return {\n username: 'oauth2accesstoken',\n password: accessToken,\n };\n } else {\n logger.warn(\n 'Could not retrieve access token using google-auth-library getAccessToken',\n );\n }\n } catch (err) {\n if (err.message?.includes('Could not load the default credentials')) {\n return null;\n } else {\n throw err;\n }\n }\n return null;\n}\n\nexport async function getGoogleAuthToken(): Promise<string | null> {\n const rule = await getGoogleAuthHostRule();\n if (rule) {\n const token = Buffer.from(`${rule.username}:${rule.password}`).toString(\n 'base64',\n );\n addSecretForSanitizing(token);\n return token;\n }\n return null;\n}\n"]}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.extractPackageFile = extractPackageFile;
4
- const tslib_1 = require("tslib");
5
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
4
+ const is_1 = require("@sindresorhus/is");
6
5
  const logger_1 = require("../../../logger");
7
6
  const array_1 = require("../../../util/array");
8
7
  const regex_1 = require("../../../util/regex");
@@ -69,7 +68,7 @@ function processSource(source) {
69
68
  ];
70
69
  // Git repo is pointing to a Kustomize resources
71
70
  if (source.kustomize?.images) {
72
- dependencies.push(...source.kustomize.images.map(processKustomizeImage).filter(is_1.default.truthy));
71
+ dependencies.push(...source.kustomize.images.map(processKustomizeImage).filter(is_1.isTruthy));
73
72
  }
74
73
  return dependencies;
75
74
  }
@@ -78,7 +77,7 @@ function processAppSpec(definition) {
78
77
  ? definition.spec
79
78
  : definition.spec.template.spec;
80
79
  const deps = [];
81
- if (is_1.default.nonEmptyObject(spec.source)) {
80
+ if ((0, is_1.isNonEmptyObject)(spec.source)) {
82
81
  deps.push(...processSource(spec.source));
83
82
  }
84
83
  for (const source of (0, array_1.coerceArray)(spec.sources)) {
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/argocd/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { coerceArray } from '../../../util/array';\nimport { regEx } from '../../../util/regex';\nimport { withDebugMessage } from '../../../util/schema-utils';\nimport { trimTrailingSlash } from '../../../util/url';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { GitTagsDatasource } from '../../datasource/git-tags';\nimport { HelmDatasource } from '../../datasource/helm';\nimport { getDep } from '../dockerfile/extract';\nimport { isOCIRegistry, removeOCIPrefix } from '../helmv3/oci';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport {\n type ApplicationDefinition,\n ApplicationDefinitions,\n type ApplicationSource,\n type ApplicationSpec,\n} from './schema';\nimport { fileTestRegex } from './util';\n\nconst kustomizeImageRe = regEx(/=(?<image>.+)$/);\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n _config?: ExtractConfig,\n): PackageFileContent | null {\n // check for argo reference. API version for the kind attribute is used\n if (fileTestRegex.test(content) === false) {\n logger.debug(\n `Skip file ${packageFile} as no argoproj.io apiVersion could be found in matched file`,\n );\n return null;\n }\n\n const definitions = ApplicationDefinitions.catch(\n withDebugMessage([], `${packageFile} does not match schema`),\n ).parse(content);\n\n const deps = definitions.flatMap(processAppSpec);\n\n return deps.length ? { deps } : null;\n}\n\nfunction processSource(source: ApplicationSource): PackageDependency[] {\n // a chart variable is defined this is helm declaration\n if (source.chart) {\n // assume OCI helm chart if repoURL doesn't contain explicit protocol\n if (isOCIRegistry(source.repoURL) || !source.repoURL.includes('://')) {\n const registryURL = trimTrailingSlash(removeOCIPrefix(source.repoURL));\n\n return [\n {\n depName: `${registryURL}/${source.chart}`,\n currentValue: source.targetRevision,\n datasource: DockerDatasource.id,\n },\n ];\n }\n\n return [\n {\n depName: source.chart,\n registryUrls: [source.repoURL],\n currentValue: source.targetRevision,\n datasource: HelmDatasource.id,\n },\n ];\n }\n\n // Handle OCI Helm chart without explicit chart field\n if (isOCIRegistry(source.repoURL)) {\n const registryURL = trimTrailingSlash(removeOCIPrefix(source.repoURL));\n\n return [\n {\n depName: registryURL,\n currentValue: source.targetRevision,\n datasource: DockerDatasource.id,\n },\n ];\n }\n\n const dependencies: PackageDependency[] = [\n {\n depName: source.repoURL,\n currentValue: source.targetRevision,\n datasource: GitTagsDatasource.id,\n },\n ];\n\n // Git repo is pointing to a Kustomize resources\n if (source.kustomize?.images) {\n dependencies.push(\n ...source.kustomize.images.map(processKustomizeImage).filter(is.truthy),\n );\n }\n\n return dependencies;\n}\n\nfunction processAppSpec(\n definition: ApplicationDefinition,\n): PackageDependency[] {\n const spec: ApplicationSpec =\n definition.kind === 'Application'\n ? definition.spec\n : definition.spec.template.spec;\n\n const deps: PackageDependency[] = [];\n\n if (is.nonEmptyObject(spec.source)) {\n deps.push(...processSource(spec.source));\n }\n\n for (const source of coerceArray(spec.sources)) {\n deps.push(...processSource(source));\n }\n\n return deps;\n}\n\nfunction processKustomizeImage(\n kustomizeImage: string,\n): PackageDependency | null {\n const parts = kustomizeImageRe.exec(kustomizeImage);\n if (!parts?.groups?.image) {\n return null;\n }\n\n return getDep(parts.groups.image);\n}\n"]}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/argocd/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { isNonEmptyObject, isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { coerceArray } from '../../../util/array';\nimport { regEx } from '../../../util/regex';\nimport { withDebugMessage } from '../../../util/schema-utils';\nimport { trimTrailingSlash } from '../../../util/url';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { GitTagsDatasource } from '../../datasource/git-tags';\nimport { HelmDatasource } from '../../datasource/helm';\nimport { getDep } from '../dockerfile/extract';\nimport { isOCIRegistry, removeOCIPrefix } from '../helmv3/oci';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport {\n type ApplicationDefinition,\n ApplicationDefinitions,\n type ApplicationSource,\n type ApplicationSpec,\n} from './schema';\nimport { fileTestRegex } from './util';\n\nconst kustomizeImageRe = regEx(/=(?<image>.+)$/);\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n _config?: ExtractConfig,\n): PackageFileContent | null {\n // check for argo reference. API version for the kind attribute is used\n if (fileTestRegex.test(content) === false) {\n logger.debug(\n `Skip file ${packageFile} as no argoproj.io apiVersion could be found in matched file`,\n );\n return null;\n }\n\n const definitions = ApplicationDefinitions.catch(\n withDebugMessage([], `${packageFile} does not match schema`),\n ).parse(content);\n\n const deps = definitions.flatMap(processAppSpec);\n\n return deps.length ? { deps } : null;\n}\n\nfunction processSource(source: ApplicationSource): PackageDependency[] {\n // a chart variable is defined this is helm declaration\n if (source.chart) {\n // assume OCI helm chart if repoURL doesn't contain explicit protocol\n if (isOCIRegistry(source.repoURL) || !source.repoURL.includes('://')) {\n const registryURL = trimTrailingSlash(removeOCIPrefix(source.repoURL));\n\n return [\n {\n depName: `${registryURL}/${source.chart}`,\n currentValue: source.targetRevision,\n datasource: DockerDatasource.id,\n },\n ];\n }\n\n return [\n {\n depName: source.chart,\n registryUrls: [source.repoURL],\n currentValue: source.targetRevision,\n datasource: HelmDatasource.id,\n },\n ];\n }\n\n // Handle OCI Helm chart without explicit chart field\n if (isOCIRegistry(source.repoURL)) {\n const registryURL = trimTrailingSlash(removeOCIPrefix(source.repoURL));\n\n return [\n {\n depName: registryURL,\n currentValue: source.targetRevision,\n datasource: DockerDatasource.id,\n },\n ];\n }\n\n const dependencies: PackageDependency[] = [\n {\n depName: source.repoURL,\n currentValue: source.targetRevision,\n datasource: GitTagsDatasource.id,\n },\n ];\n\n // Git repo is pointing to a Kustomize resources\n if (source.kustomize?.images) {\n dependencies.push(\n ...source.kustomize.images.map(processKustomizeImage).filter(isTruthy),\n );\n }\n\n return dependencies;\n}\n\nfunction processAppSpec(\n definition: ApplicationDefinition,\n): PackageDependency[] {\n const spec: ApplicationSpec =\n definition.kind === 'Application'\n ? definition.spec\n : definition.spec.template.spec;\n\n const deps: PackageDependency[] = [];\n\n if (isNonEmptyObject(spec.source)) {\n deps.push(...processSource(spec.source));\n }\n\n for (const source of coerceArray(spec.sources)) {\n deps.push(...processSource(source));\n }\n\n return deps;\n}\n\nfunction processKustomizeImage(\n kustomizeImage: string,\n): PackageDependency | null {\n const parts = kustomizeImageRe.exec(kustomizeImage);\n if (!parts?.groups?.image) {\n return null;\n }\n\n return getDep(parts.groups.image);\n}\n"]}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.extractPackageFile = extractPackageFile;
4
- const tslib_1 = require("tslib");
5
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
4
+ const is_1 = require("@sindresorhus/is");
6
5
  const logger_1 = require("../../../logger");
7
6
  const ignore_1 = require("../../../util/ignore");
8
7
  const regex_1 = require("../../../util/regex");
@@ -13,7 +12,7 @@ function extractPackageFile(content) {
13
12
  const deps = [];
14
13
  for (const groups of [...content.matchAll(regex)]
15
14
  .map((m) => m.groups)
16
- .filter(is_1.default.truthy)) {
15
+ .filter(is_1.isTruthy)) {
17
16
  const depName = groups.toolName.trim();
18
17
  const version = groups.version.trim();
19
18
  const toolConfig = upgradeable_tooling_1.upgradeableTooling[depName];
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/asdf/extract.ts"],"names":[],"mappings":";;AAOA,gDA4CC;;AAnDD,kEAAkC;AAClC,4CAAyC;AACzC,iDAAqD;AACrD,+CAA4C;AAE5C,+DAA2D;AAE3D,SAAgB,kBAAkB,CAAC,OAAe;IAChD,eAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAE1C,MAAM,KAAK,GAAG,IAAA,aAAK,EACjB,sFAAsF,CACvF,CAAC;IAEF,MAAM,IAAI,GAAwB,EAAE,CAAC;IAErC,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC9C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;SACpB,MAAM,CAAC,YAAE,CAAC,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,UAAU,GAAG,wCAAkB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,UAAU;YAC/B,CAAC,CAAC,OAAO,UAAU,CAAC,MAAM,KAAK,UAAU;gBACvC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC5B,CAAC,CAAC,UAAU,CAAC,MAAM;YACrB,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,GAAG,GAAsB;gBAC7B,YAAY,EAAE,OAAO;gBACrB,OAAO;gBACP,GAAG,cAAc;aAClB,CAAC;YACF,IAAI,IAAA,sBAAa,EAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;YAC7B,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAsB;gBAC7B,OAAO;gBACP,UAAU,EAAE,wBAAwB;aACrC,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { isSkipComment } from '../../../util/ignore';\nimport { regEx } from '../../../util/regex';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport { upgradeableTooling } from './upgradeable-tooling';\n\nexport function extractPackageFile(content: string): PackageFileContent | null {\n logger.trace(`asdf.extractPackageFile()`);\n\n const regex = regEx(\n /^(?<toolName>([\\w_-]+)) +(?<version>[^\\s#]+)(?: +[^\\s#]+)* *(?: #(?<comment>.*))?$/gm,\n );\n\n const deps: PackageDependency[] = [];\n\n for (const groups of [...content.matchAll(regex)]\n .map((m) => m.groups)\n .filter(is.truthy)) {\n const depName = groups.toolName.trim();\n const version = groups.version.trim();\n\n const toolConfig = upgradeableTooling[depName];\n const toolDefinition = toolConfig\n ? typeof toolConfig.config === 'function'\n ? toolConfig.config(version)\n : toolConfig.config\n : undefined;\n\n if (toolDefinition) {\n const dep: PackageDependency = {\n currentValue: version,\n depName,\n ...toolDefinition,\n };\n if (isSkipComment((groups.comment ?? '').trim())) {\n dep.skipReason = 'ignored';\n }\n\n deps.push(dep);\n } else {\n const dep: PackageDependency = {\n depName,\n skipReason: 'unsupported-datasource',\n };\n\n deps.push(dep);\n }\n }\n\n return deps.length ? { deps } : null;\n}\n"]}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/asdf/extract.ts"],"names":[],"mappings":";;AAOA,gDA4CC;AAnDD,yCAA4C;AAC5C,4CAAyC;AACzC,iDAAqD;AACrD,+CAA4C;AAE5C,+DAA2D;AAE3D,SAAgB,kBAAkB,CAAC,OAAe;IAChD,eAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAE1C,MAAM,KAAK,GAAG,IAAA,aAAK,EACjB,sFAAsF,CACvF,CAAC;IAEF,MAAM,IAAI,GAAwB,EAAE,CAAC;IAErC,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC9C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;SACpB,MAAM,CAAC,aAAQ,CAAC,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,UAAU,GAAG,wCAAkB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,UAAU;YAC/B,CAAC,CAAC,OAAO,UAAU,CAAC,MAAM,KAAK,UAAU;gBACvC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC5B,CAAC,CAAC,UAAU,CAAC,MAAM;YACrB,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,GAAG,GAAsB;gBAC7B,YAAY,EAAE,OAAO;gBACrB,OAAO;gBACP,GAAG,cAAc;aAClB,CAAC;YACF,IAAI,IAAA,sBAAa,EAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;YAC7B,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAsB;gBAC7B,OAAO;gBACP,UAAU,EAAE,wBAAwB;aACrC,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC","sourcesContent":["import { isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { isSkipComment } from '../../../util/ignore';\nimport { regEx } from '../../../util/regex';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport { upgradeableTooling } from './upgradeable-tooling';\n\nexport function extractPackageFile(content: string): PackageFileContent | null {\n logger.trace(`asdf.extractPackageFile()`);\n\n const regex = regEx(\n /^(?<toolName>([\\w_-]+)) +(?<version>[^\\s#]+)(?: +[^\\s#]+)* *(?: #(?<comment>.*))?$/gm,\n );\n\n const deps: PackageDependency[] = [];\n\n for (const groups of [...content.matchAll(regex)]\n .map((m) => m.groups)\n .filter(isTruthy)) {\n const depName = groups.toolName.trim();\n const version = groups.version.trim();\n\n const toolConfig = upgradeableTooling[depName];\n const toolDefinition = toolConfig\n ? typeof toolConfig.config === 'function'\n ? toolConfig.config(version)\n : toolConfig.config\n : undefined;\n\n if (toolDefinition) {\n const dep: PackageDependency = {\n currentValue: version,\n depName,\n ...toolDefinition,\n };\n if (isSkipComment((groups.comment ?? '').trim())) {\n dep.skipReason = 'ignored';\n }\n\n deps.push(dep);\n } else {\n const dep: PackageDependency = {\n depName,\n skipReason: 'unsupported-datasource',\n };\n\n deps.push(dep);\n }\n }\n\n return deps.length ? { deps } : null;\n}\n"]}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateArtifacts = updateArtifacts;
4
4
  const tslib_1 = require("tslib");
5
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
5
+ const is_1 = require("@sindresorhus/is");
6
6
  const logger_1 = require("../../../logger");
7
7
  const packageCache = tslib_1.__importStar(require("../../../util/cache/package"));
8
8
  const hash_1 = require("../../../util/hash");
@@ -81,7 +81,7 @@ async function getHashFromUrl(url) {
81
81
  }
82
82
  }
83
83
  async function getHashFromUrls(urls) {
84
- const hashes = (await (0, promises_1.map)(urls, (url) => getHashFromUrl(massageUrl(url)))).filter(is_1.default.truthy);
84
+ const hashes = (await (0, promises_1.map)(urls, (url) => getHashFromUrl(massageUrl(url)))).filter(is_1.isTruthy);
85
85
  if (!hashes.length) {
86
86
  logger_1.logger.debug({ urls }, 'Could not calculate hash for URLs');
87
87
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/bazel/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport * as packageCache from '../../../util/cache/package';\nimport { hashStream } from '../../../util/hash';\nimport { Http } from '../../../util/http';\nimport { map as pMap } from '../../../util/promises';\nimport { regEx } from '../../../util/regex';\nimport type {\n ArtifactError,\n UpdateArtifact,\n UpdateArtifactsResult,\n Upgrade,\n} from '../types';\nimport { findCodeFragment, patchCodeAtFragments, updateCode } from './common';\nimport type { RecordFragment, StringFragment } from './types';\n\nconst http = new Http('bazel');\n\nfunction getUrlFragments(rule: RecordFragment): StringFragment[] {\n const urls: StringFragment[] = [];\n\n const urlRecord = rule.children.url;\n if (urlRecord?.type === 'string') {\n urls.push(urlRecord);\n }\n\n const urlsRecord = rule.children.urls;\n if (urlsRecord?.type === 'array') {\n for (const urlRecord of urlsRecord.children) {\n if (urlRecord.type === 'string') {\n urls.push(urlRecord);\n }\n }\n }\n\n return urls;\n}\n\nconst urlMassages = {\n 'bazel-skylib.': 'bazel_skylib-',\n '/bazel-gazelle/releases/download/0': '/bazel-gazelle/releases/download/v0',\n '/bazel-gazelle-0': '/bazel-gazelle-v0',\n '/rules_go/releases/download/0': '/rules_go/releases/download/v0',\n '/rules_go-0': '/rules_go-v0',\n};\n\nfunction massageUrl(url: string): string {\n let result = url;\n for (const [from, to] of Object.entries(urlMassages)) {\n result = result.replace(from, to);\n }\n return result;\n}\n\nfunction migrateUrl(url: string, upgrade: Upgrade): string {\n const newValue = upgrade.newValue?.replace(regEx(/^v/), '');\n\n // @see https://github.com/bazelbuild/rules_webtesting/releases/tag/0.3.5\n // @see https://github.com/bazelbuild/rules_webtesting/releases/tag/0.4.0\n if (\n url.endsWith('/rules_webtesting.tar.gz') &&\n !newValue?.match(regEx(/^0\\.[0123]\\./))\n ) {\n return url.replace(regEx(/\\.tar\\.gz$/), `-${newValue}.tar.gz`);\n }\n\n return url;\n}\n\nfunction replaceAll(input: string, from: string, to: string): string {\n return input.split(from).join(to);\n}\n\nfunction replaceValues(\n content: string,\n from: string | null | undefined,\n to: string | null | undefined,\n): string {\n // istanbul ignore if\n if (!from || !to || from === to) {\n return content;\n }\n const massagedFrom = from.replace(regEx(/^v/), '');\n const massagedTo = to.replace(regEx(/^v/), '');\n return replaceAll(content, massagedFrom, massagedTo);\n}\n\nasync function getHashFromUrl(url: string): Promise<string | null> {\n const cacheNamespace = 'url-sha256';\n const cachedResult = await packageCache.get<string | null>(\n cacheNamespace,\n url,\n );\n /* istanbul ignore next line */\n if (cachedResult) {\n return cachedResult;\n }\n try {\n const hash = await hashStream(http.stream(url), 'sha256');\n const cacheMinutes = 3 * 24 * 60; // 3 days\n await packageCache.set(cacheNamespace, url, hash, cacheMinutes);\n return hash;\n } catch /* istanbul ignore next */ {\n return null;\n }\n}\n\nasync function getHashFromUrls(urls: string[]): Promise<string | null> {\n const hashes = (\n await pMap(urls, (url) => getHashFromUrl(massageUrl(url)))\n ).filter(is.truthy);\n if (!hashes.length) {\n logger.debug({ urls }, 'Could not calculate hash for URLs');\n return null;\n }\n\n const distinctHashes = new Set(hashes);\n // istanbul ignore if\n if (distinctHashes.size > 1) {\n logger.warn({ urls }, 'Found multiple hashes for single def');\n }\n\n return hashes[0];\n}\n\nexport async function updateArtifacts(\n updateArtifact: UpdateArtifact,\n): Promise<UpdateArtifactsResult[] | null> {\n const { packageFileName: path, updatedDeps: upgrades } = updateArtifact;\n const oldContents = updateArtifact.newPackageFileContent;\n let newContents = oldContents;\n const artifactErrors: ArtifactError[] = [];\n for (const upgrade of upgrades) {\n const { managerData } = upgrade;\n const idx = managerData?.idx as number;\n\n if (upgrade.depType === 'http_file' || upgrade.depType === 'http_archive') {\n const rule = findCodeFragment(newContents, [idx]);\n /* v8 ignore start -- used only for type narrowing */\n if (rule?.type !== 'record') {\n continue;\n } /* v8 ignore stop */\n\n const urlFragments = getUrlFragments(rule);\n if (!urlFragments?.length) {\n logger.debug(`def: ${rule.value}, urls is empty`);\n continue;\n }\n\n const updateValues = (oldUrl: string): string => {\n let url = oldUrl;\n url = replaceValues(url, upgrade.currentValue, upgrade.newValue);\n url = replaceValues(url, upgrade.currentDigest, upgrade.newDigest);\n url = migrateUrl(url, upgrade);\n return url;\n };\n\n const urls = urlFragments.map(({ value }) => updateValues(value));\n const hash = await getHashFromUrls(urls);\n if (!hash) {\n if (urlFragments.length >= 1) {\n artifactErrors.push({\n fileName: path,\n stderr: `Could not calculate sha256 for ${upgrade.depName} at ${upgrade.newValue}. Checked URLs: ${urls.join(', ')}`,\n });\n }\n continue;\n }\n\n newContents = patchCodeAtFragments(\n newContents,\n urlFragments,\n updateValues,\n );\n newContents = updateCode(\n newContents,\n [idx, 'strip_prefix'],\n updateValues,\n );\n newContents = updateCode(newContents, [idx, 'sha256'], hash);\n }\n }\n\n if (oldContents === newContents) {\n if (artifactErrors.length) {\n // If we have artifact errors, return them even if we have file changes\n return artifactErrors.map((error) => ({\n artifactError: error,\n }));\n }\n return null;\n }\n\n return [\n {\n file: {\n type: 'addition',\n path,\n contents: newContents,\n },\n },\n ];\n}\n"]}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/bazel/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import { isTruthy } from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport * as packageCache from '../../../util/cache/package';\nimport { hashStream } from '../../../util/hash';\nimport { Http } from '../../../util/http';\nimport { map as pMap } from '../../../util/promises';\nimport { regEx } from '../../../util/regex';\nimport type {\n ArtifactError,\n UpdateArtifact,\n UpdateArtifactsResult,\n Upgrade,\n} from '../types';\nimport { findCodeFragment, patchCodeAtFragments, updateCode } from './common';\nimport type { RecordFragment, StringFragment } from './types';\n\nconst http = new Http('bazel');\n\nfunction getUrlFragments(rule: RecordFragment): StringFragment[] {\n const urls: StringFragment[] = [];\n\n const urlRecord = rule.children.url;\n if (urlRecord?.type === 'string') {\n urls.push(urlRecord);\n }\n\n const urlsRecord = rule.children.urls;\n if (urlsRecord?.type === 'array') {\n for (const urlRecord of urlsRecord.children) {\n if (urlRecord.type === 'string') {\n urls.push(urlRecord);\n }\n }\n }\n\n return urls;\n}\n\nconst urlMassages = {\n 'bazel-skylib.': 'bazel_skylib-',\n '/bazel-gazelle/releases/download/0': '/bazel-gazelle/releases/download/v0',\n '/bazel-gazelle-0': '/bazel-gazelle-v0',\n '/rules_go/releases/download/0': '/rules_go/releases/download/v0',\n '/rules_go-0': '/rules_go-v0',\n};\n\nfunction massageUrl(url: string): string {\n let result = url;\n for (const [from, to] of Object.entries(urlMassages)) {\n result = result.replace(from, to);\n }\n return result;\n}\n\nfunction migrateUrl(url: string, upgrade: Upgrade): string {\n const newValue = upgrade.newValue?.replace(regEx(/^v/), '');\n\n // @see https://github.com/bazelbuild/rules_webtesting/releases/tag/0.3.5\n // @see https://github.com/bazelbuild/rules_webtesting/releases/tag/0.4.0\n if (\n url.endsWith('/rules_webtesting.tar.gz') &&\n !newValue?.match(regEx(/^0\\.[0123]\\./))\n ) {\n return url.replace(regEx(/\\.tar\\.gz$/), `-${newValue}.tar.gz`);\n }\n\n return url;\n}\n\nfunction replaceAll(input: string, from: string, to: string): string {\n return input.split(from).join(to);\n}\n\nfunction replaceValues(\n content: string,\n from: string | null | undefined,\n to: string | null | undefined,\n): string {\n // istanbul ignore if\n if (!from || !to || from === to) {\n return content;\n }\n const massagedFrom = from.replace(regEx(/^v/), '');\n const massagedTo = to.replace(regEx(/^v/), '');\n return replaceAll(content, massagedFrom, massagedTo);\n}\n\nasync function getHashFromUrl(url: string): Promise<string | null> {\n const cacheNamespace = 'url-sha256';\n const cachedResult = await packageCache.get<string | null>(\n cacheNamespace,\n url,\n );\n /* istanbul ignore next line */\n if (cachedResult) {\n return cachedResult;\n }\n try {\n const hash = await hashStream(http.stream(url), 'sha256');\n const cacheMinutes = 3 * 24 * 60; // 3 days\n await packageCache.set(cacheNamespace, url, hash, cacheMinutes);\n return hash;\n } catch /* istanbul ignore next */ {\n return null;\n }\n}\n\nasync function getHashFromUrls(urls: string[]): Promise<string | null> {\n const hashes = (\n await pMap(urls, (url) => getHashFromUrl(massageUrl(url)))\n ).filter(isTruthy);\n if (!hashes.length) {\n logger.debug({ urls }, 'Could not calculate hash for URLs');\n return null;\n }\n\n const distinctHashes = new Set(hashes);\n // istanbul ignore if\n if (distinctHashes.size > 1) {\n logger.warn({ urls }, 'Found multiple hashes for single def');\n }\n\n return hashes[0];\n}\n\nexport async function updateArtifacts(\n updateArtifact: UpdateArtifact,\n): Promise<UpdateArtifactsResult[] | null> {\n const { packageFileName: path, updatedDeps: upgrades } = updateArtifact;\n const oldContents = updateArtifact.newPackageFileContent;\n let newContents = oldContents;\n const artifactErrors: ArtifactError[] = [];\n for (const upgrade of upgrades) {\n const { managerData } = upgrade;\n const idx = managerData?.idx as number;\n\n if (upgrade.depType === 'http_file' || upgrade.depType === 'http_archive') {\n const rule = findCodeFragment(newContents, [idx]);\n /* v8 ignore start -- used only for type narrowing */\n if (rule?.type !== 'record') {\n continue;\n } /* v8 ignore stop */\n\n const urlFragments = getUrlFragments(rule);\n if (!urlFragments?.length) {\n logger.debug(`def: ${rule.value}, urls is empty`);\n continue;\n }\n\n const updateValues = (oldUrl: string): string => {\n let url = oldUrl;\n url = replaceValues(url, upgrade.currentValue, upgrade.newValue);\n url = replaceValues(url, upgrade.currentDigest, upgrade.newDigest);\n url = migrateUrl(url, upgrade);\n return url;\n };\n\n const urls = urlFragments.map(({ value }) => updateValues(value));\n const hash = await getHashFromUrls(urls);\n if (!hash) {\n if (urlFragments.length >= 1) {\n artifactErrors.push({\n fileName: path,\n stderr: `Could not calculate sha256 for ${upgrade.depName} at ${upgrade.newValue}. Checked URLs: ${urls.join(', ')}`,\n });\n }\n continue;\n }\n\n newContents = patchCodeAtFragments(\n newContents,\n urlFragments,\n updateValues,\n );\n newContents = updateCode(\n newContents,\n [idx, 'strip_prefix'],\n updateValues,\n );\n newContents = updateCode(newContents, [idx, 'sha256'], hash);\n }\n }\n\n if (oldContents === newContents) {\n if (artifactErrors.length) {\n // If we have artifact errors, return them even if we have file changes\n return artifactErrors.map((error) => ({\n artifactError: error,\n }));\n }\n return null;\n }\n\n return [\n {\n file: {\n type: 'addition',\n path,\n contents: newContents,\n },\n },\n ];\n}\n"]}
@@ -4,8 +4,7 @@ exports.findCodeFragment = findCodeFragment;
4
4
  exports.patchCodeAtFragment = patchCodeAtFragment;
5
5
  exports.patchCodeAtFragments = patchCodeAtFragments;
6
6
  exports.updateCode = updateCode;
7
- const tslib_1 = require("tslib");
8
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
7
+ const is_1 = require("@sindresorhus/is");
9
8
  const parser_1 = require("./parser");
10
9
  function findCodeFragment(input, path) {
11
10
  const parsed = (0, parser_1.parse)(input);
@@ -18,10 +17,10 @@ function findCodeFragment(input, path) {
18
17
  if (!fragment) {
19
18
  break;
20
19
  }
21
- if (fragment.type === 'array' && is_1.default.number(key)) {
20
+ if (fragment.type === 'array' && (0, is_1.isNumber)(key)) {
22
21
  fragment = fragment.children[key];
23
22
  }
24
- if (fragment.type === 'record' && is_1.default.string(key)) {
23
+ if (fragment.type === 'record' && (0, is_1.isString)(key)) {
25
24
  fragment = fragment.children[key];
26
25
  }
27
26
  }
@@ -31,7 +30,7 @@ function patchCodeAtFragment(input, fragment, updater) {
31
30
  const { value, offset } = fragment;
32
31
  const left = input.slice(0, offset);
33
32
  const right = input.slice(offset + value.length);
34
- return is_1.default.string(updater)
33
+ return (0, is_1.isString)(updater)
35
34
  ? `${left}${updater}${right}`
36
35
  : `${left}${updater(value)}${right}`;
37
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../lib/modules/manager/bazel/common.ts"],"names":[],"mappings":";;AAIA,4CA0BC;AAED,kDAWC;AAED,oDAaC;AAED,gCAWC;;AAvED,kEAAkC;AAClC,qCAAiC;AAGjC,SAAgB,gBAAgB,CAC9B,KAAa,EACb,IAAkB;IAElB,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;IACtC,IAAI,QAAQ,GAAyB,MAAM,CAAC,SAAS,CAAC,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM;QACR,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAChD,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACjD,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,IAAI,IAAI,CAAC;AAC1B,CAAC;AAED,SAAgB,mBAAmB,CACjC,KAAa,EACb,QAAkB,EAClB,OAAwB;IAExB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IACnC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,YAAE,CAAC,MAAM,CAAC,OAAO,CAAC;QACvB,CAAC,CAAC,GAAG,IAAI,GAAG,OAAO,GAAG,KAAK,EAAE;QAC7B,CAAC,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC;AACzC,CAAC;AAED,SAAgB,oBAAoB,CAClC,KAAa,EACb,SAAqB,EACrB,OAAwB;IAExB,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CACpC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CACxC,CAAC;IACF,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;QACvC,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,UAAU,CACxB,KAAa,EACb,IAAkB,EAClB,OAAwB;IAExB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { parse } from './parser';\nimport type { Fragment, FragmentPath, FragmentUpdater } from './types';\n\nexport function findCodeFragment(\n input: string,\n path: FragmentPath,\n): Fragment | null {\n const parsed = parse(input);\n if (!parsed) {\n return null;\n }\n\n const [ruleIndex, ...restPath] = path;\n let fragment: Fragment | undefined = parsed[ruleIndex];\n for (const key of restPath) {\n if (!fragment) {\n break;\n }\n\n if (fragment.type === 'array' && is.number(key)) {\n fragment = fragment.children[key];\n }\n\n if (fragment.type === 'record' && is.string(key)) {\n fragment = fragment.children[key];\n }\n }\n\n return fragment ?? null;\n}\n\nexport function patchCodeAtFragment(\n input: string,\n fragment: Fragment,\n updater: FragmentUpdater,\n): string {\n const { value, offset } = fragment;\n const left = input.slice(0, offset);\n const right = input.slice(offset + value.length);\n return is.string(updater)\n ? `${left}${updater}${right}`\n : `${left}${updater(value)}${right}`;\n}\n\nexport function patchCodeAtFragments(\n input: string,\n fragments: Fragment[],\n updater: FragmentUpdater,\n): string {\n const sortedFragments = fragments.sort(\n ({ offset: a }, { offset: b }) => b - a,\n );\n let result = input;\n for (const fragment of sortedFragments) {\n result = patchCodeAtFragment(result, fragment, updater);\n }\n return result;\n}\n\nexport function updateCode(\n input: string,\n path: FragmentPath,\n updater: FragmentUpdater,\n): string {\n const fragment = findCodeFragment(input, path);\n if (!fragment) {\n return input;\n }\n\n return patchCodeAtFragment(input, fragment, updater);\n}\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../lib/modules/manager/bazel/common.ts"],"names":[],"mappings":";;AAIA,4CA0BC;AAED,kDAWC;AAED,oDAaC;AAED,gCAWC;AAvED,yCAAsD;AACtD,qCAAiC;AAGjC,SAAgB,gBAAgB,CAC9B,KAAa,EACb,IAAkB;IAElB,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;IACtC,IAAI,QAAQ,GAAyB,MAAM,CAAC,SAAS,CAAC,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM;QACR,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,IAAA,aAAQ,EAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAA,aAAQ,EAAC,GAAG,CAAC,EAAE,CAAC;YAChD,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,IAAI,IAAI,CAAC;AAC1B,CAAC;AAED,SAAgB,mBAAmB,CACjC,KAAa,EACb,QAAkB,EAClB,OAAwB;IAExB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IACnC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,IAAA,aAAQ,EAAC,OAAO,CAAC;QACtB,CAAC,CAAC,GAAG,IAAI,GAAG,OAAO,GAAG,KAAK,EAAE;QAC7B,CAAC,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC;AACzC,CAAC;AAED,SAAgB,oBAAoB,CAClC,KAAa,EACb,SAAqB,EACrB,OAAwB;IAExB,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CACpC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CACxC,CAAC;IACF,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;QACvC,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,UAAU,CACxB,KAAa,EACb,IAAkB,EAClB,OAAwB;IAExB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC","sourcesContent":["import { isNumber, isString } from '@sindresorhus/is';\nimport { parse } from './parser';\nimport type { Fragment, FragmentPath, FragmentUpdater } from './types';\n\nexport function findCodeFragment(\n input: string,\n path: FragmentPath,\n): Fragment | null {\n const parsed = parse(input);\n if (!parsed) {\n return null;\n }\n\n const [ruleIndex, ...restPath] = path;\n let fragment: Fragment | undefined = parsed[ruleIndex];\n for (const key of restPath) {\n if (!fragment) {\n break;\n }\n\n if (fragment.type === 'array' && isNumber(key)) {\n fragment = fragment.children[key];\n }\n\n if (fragment.type === 'record' && isString(key)) {\n fragment = fragment.children[key];\n }\n }\n\n return fragment ?? null;\n}\n\nexport function patchCodeAtFragment(\n input: string,\n fragment: Fragment,\n updater: FragmentUpdater,\n): string {\n const { value, offset } = fragment;\n const left = input.slice(0, offset);\n const right = input.slice(offset + value.length);\n return isString(updater)\n ? `${left}${updater}${right}`\n : `${left}${updater(value)}${right}`;\n}\n\nexport function patchCodeAtFragments(\n input: string,\n fragments: Fragment[],\n updater: FragmentUpdater,\n): string {\n const sortedFragments = fragments.sort(\n ({ offset: a }, { offset: b }) => b - a,\n );\n let result = input;\n for (const fragment of sortedFragments) {\n result = patchCodeAtFragment(result, fragment, updater);\n }\n return result;\n}\n\nexport function updateCode(\n input: string,\n path: FragmentPath,\n updater: FragmentUpdater,\n): string {\n const fragment = findCodeFragment(input, path);\n if (!fragment) {\n return input;\n }\n\n return patchCodeAtFragment(input, fragment, updater);\n}\n"]}
@@ -3,8 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HttpTarget = exports.httpRules = void 0;
4
4
  exports.parseGithubPath = parseGithubPath;
5
5
  exports.parseArchiveUrl = parseArchiveUrl;
6
- const tslib_1 = require("tslib");
7
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
6
+ const is_1 = require("@sindresorhus/is");
8
7
  const zod_1 = require("zod");
9
8
  const regex_1 = require("../../../../util/regex");
10
9
  const url_1 = require("../../../../util/url");
@@ -39,7 +38,7 @@ function stripArchiveSuffix(value) {
39
38
  return value.replace(archiveSuffixRegex, '');
40
39
  }
41
40
  function isHash(value) {
42
- return is_1.default.string(value) && (0, regex_1.regEx)(/[0-9a-z]{40}/i).test(value);
41
+ return (0, is_1.isString)(value) && (0, regex_1.regEx)(/[0-9a-z]{40}/i).test(value);
43
42
  }
44
43
  function parseGithubPath(pathname) {
45
44
  const [p0, p1, p2, p3, p4, p5] = pathname.split('/').slice(1);
@@ -118,7 +117,7 @@ exports.HttpTarget = zod_1.z
118
117
  })
119
118
  .refine(({ url, urls }) => !!url || !!urls)
120
119
  .transform(({ rule, name, url, urls = [] }) => {
121
- const parsedUrl = [url, ...urls].map(parseArchiveUrl).find(is_1.default.truthy);
120
+ const parsedUrl = [url, ...urls].map(parseArchiveUrl).find(is_1.isTruthy);
122
121
  if (!parsedUrl) {
123
122
  return [];
124
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/bazel/rules/http.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { z } from 'zod';\nimport { escapeRegExp, regEx } from '../../../../util/regex';\nimport { parseUrl } from '../../../../util/url';\nimport { GithubReleasesDatasource } from '../../../datasource/github-releases';\nimport { GithubTagsDatasource } from '../../../datasource/github-tags';\nimport { GitlabReleasesDatasource } from '../../../datasource/gitlab-releases';\nimport { GitlabTagsDatasource } from '../../../datasource/gitlab-tags';\nimport type { PackageDependency } from '../../types';\n\n// Source: https://bazel.build/rules/lib/repo/http\nconst archives = [\n '.zip',\n '.tar',\n '.jar',\n '.war',\n '.aar',\n '.ar',\n '.deb',\n\n '.gz',\n '.tar.gz',\n '.tgz',\n\n '.bz2',\n '.tar.bz2',\n '.tbz2',\n\n '.xz',\n '.tar.xz',\n '.txz',\n\n '.zst',\n '.tar.zst',\n '.tzst',\n];\n\nconst archiveSuffixRegex = regEx(\n `(?:${archives.map(escapeRegExp).join('|')})$`,\n);\n\nfunction stripArchiveSuffix(value: string): string {\n return value.replace(archiveSuffixRegex, '');\n}\n\nfunction isHash(value: unknown): value is string {\n return is.string(value) && regEx(/[0-9a-z]{40}/i).test(value);\n}\n\nexport function parseGithubPath(\n pathname: string,\n): Partial<PackageDependency> | null {\n const [p0, p1, p2, p3, p4, p5] = pathname.split('/').slice(1);\n const packageName = p0 + '/' + p1;\n let datasource = '';\n let value: string | null = null;\n if (p2 === 'releases' && p3 === 'download') {\n // https://github.com/foo/bar/releases/download/1.2.3/bar-1.2.3.tar.gz\n datasource = GithubReleasesDatasource.id;\n value = p4;\n } else if (p2 === 'archive' && p3 === 'refs' && p4 === 'tags') {\n // https://github.com/foo/bar/archive/refs/tags/v1.2.3.tar.gz\n datasource = GithubTagsDatasource.id;\n value = p5;\n } else if (p2 === 'archive') {\n // https://github.com/foo/bar/archive/1.2.3.tar.gz\n datasource = GithubTagsDatasource.id;\n value = p3;\n }\n\n if (!value) {\n return null;\n }\n\n value = stripArchiveSuffix(value);\n return isHash(value)\n ? { datasource, packageName, currentDigest: value }\n : { datasource, packageName, currentValue: value };\n}\n\nfunction parseGitlabPath(pathname: string): Partial<PackageDependency> | null {\n // https://gitlab.com/libeigen/eigen/-/archive/3.3.5/eigen-3.3.5.zip\n // https://gitlab.com/libeigen/eigen/-/archive/90ee821c563fa20db4d64d6991ddca256d5c52f2/eigen-90ee821c563fa20db4d64d6991ddca256d5c52f2.tar.gz\n const [p0, p1, p2, p3, p4] = pathname.split('/').slice(1);\n const packageName = p0 + '/' + p1;\n if (p2 === '-' && p3 === 'archive' && p4) {\n return isHash(p4)\n ? {\n datasource: GitlabTagsDatasource.id,\n packageName,\n currentDigest: p4,\n }\n : {\n datasource: GitlabReleasesDatasource.id,\n packageName,\n currentValue: p4,\n };\n }\n return null;\n}\n\nexport function parseArchiveUrl(\n urlString: string | undefined | null,\n): Partial<PackageDependency> | null {\n if (!urlString) {\n return null;\n }\n\n const url = parseUrl(urlString);\n\n if (url?.host === 'github.com') {\n return parseGithubPath(url.pathname);\n }\n\n if (url?.host === 'gitlab.com') {\n return parseGitlabPath(url.pathname);\n }\n\n return null;\n}\n\nexport const httpRules = [\n 'http_archive',\n '_http_archive',\n 'http_file',\n '_http_file',\n] as const;\n\nexport const HttpTarget = z\n .object({\n rule: z.enum(httpRules),\n name: z.string(),\n url: z.string().optional(),\n urls: z.array(z.string()).optional(),\n sha256: z.string(),\n })\n .refine(({ url, urls }) => !!url || !!urls)\n .transform(({ rule, name, url, urls = [] }): PackageDependency[] => {\n const parsedUrl = [url, ...urls].map(parseArchiveUrl).find(is.truthy);\n if (!parsedUrl) {\n return [];\n }\n\n const dep: PackageDependency = {\n datasource: parsedUrl.datasource,\n depType: rule,\n depName: name,\n packageName: parsedUrl.packageName,\n };\n\n // We don't want to set both `currentValue` and `currentDigest`.\n //\n // What we want is to provide the first occurrence of `currentValue`,\n // or, if it's not available, `currentDigest`.\n //\n // Auto-replace mechanism will replace this first occurrence,\n // and artifact update function will do the rest.\n //\n // Hence, `if-else-if` is being used here.\n if (parsedUrl.currentValue) {\n dep.currentValue = parsedUrl.currentValue;\n } else if (parsedUrl.currentDigest) {\n dep.currentDigest = parsedUrl.currentDigest;\n }\n\n return [dep];\n });\n"]}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/bazel/rules/http.ts"],"names":[],"mappings":"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","sourcesContent":["import { isString, isTruthy } from '@sindresorhus/is';\nimport { z } from 'zod';\nimport { escapeRegExp, regEx } from '../../../../util/regex';\nimport { parseUrl } from '../../../../util/url';\nimport { GithubReleasesDatasource } from '../../../datasource/github-releases';\nimport { GithubTagsDatasource } from '../../../datasource/github-tags';\nimport { GitlabReleasesDatasource } from '../../../datasource/gitlab-releases';\nimport { GitlabTagsDatasource } from '../../../datasource/gitlab-tags';\nimport type { PackageDependency } from '../../types';\n\n// Source: https://bazel.build/rules/lib/repo/http\nconst archives = [\n '.zip',\n '.tar',\n '.jar',\n '.war',\n '.aar',\n '.ar',\n '.deb',\n\n '.gz',\n '.tar.gz',\n '.tgz',\n\n '.bz2',\n '.tar.bz2',\n '.tbz2',\n\n '.xz',\n '.tar.xz',\n '.txz',\n\n '.zst',\n '.tar.zst',\n '.tzst',\n];\n\nconst archiveSuffixRegex = regEx(\n `(?:${archives.map(escapeRegExp).join('|')})$`,\n);\n\nfunction stripArchiveSuffix(value: string): string {\n return value.replace(archiveSuffixRegex, '');\n}\n\nfunction isHash(value: unknown): value is string {\n return isString(value) && regEx(/[0-9a-z]{40}/i).test(value);\n}\n\nexport function parseGithubPath(\n pathname: string,\n): Partial<PackageDependency> | null {\n const [p0, p1, p2, p3, p4, p5] = pathname.split('/').slice(1);\n const packageName = p0 + '/' + p1;\n let datasource = '';\n let value: string | null = null;\n if (p2 === 'releases' && p3 === 'download') {\n // https://github.com/foo/bar/releases/download/1.2.3/bar-1.2.3.tar.gz\n datasource = GithubReleasesDatasource.id;\n value = p4;\n } else if (p2 === 'archive' && p3 === 'refs' && p4 === 'tags') {\n // https://github.com/foo/bar/archive/refs/tags/v1.2.3.tar.gz\n datasource = GithubTagsDatasource.id;\n value = p5;\n } else if (p2 === 'archive') {\n // https://github.com/foo/bar/archive/1.2.3.tar.gz\n datasource = GithubTagsDatasource.id;\n value = p3;\n }\n\n if (!value) {\n return null;\n }\n\n value = stripArchiveSuffix(value);\n return isHash(value)\n ? { datasource, packageName, currentDigest: value }\n : { datasource, packageName, currentValue: value };\n}\n\nfunction parseGitlabPath(pathname: string): Partial<PackageDependency> | null {\n // https://gitlab.com/libeigen/eigen/-/archive/3.3.5/eigen-3.3.5.zip\n // https://gitlab.com/libeigen/eigen/-/archive/90ee821c563fa20db4d64d6991ddca256d5c52f2/eigen-90ee821c563fa20db4d64d6991ddca256d5c52f2.tar.gz\n const [p0, p1, p2, p3, p4] = pathname.split('/').slice(1);\n const packageName = p0 + '/' + p1;\n if (p2 === '-' && p3 === 'archive' && p4) {\n return isHash(p4)\n ? {\n datasource: GitlabTagsDatasource.id,\n packageName,\n currentDigest: p4,\n }\n : {\n datasource: GitlabReleasesDatasource.id,\n packageName,\n currentValue: p4,\n };\n }\n return null;\n}\n\nexport function parseArchiveUrl(\n urlString: string | undefined | null,\n): Partial<PackageDependency> | null {\n if (!urlString) {\n return null;\n }\n\n const url = parseUrl(urlString);\n\n if (url?.host === 'github.com') {\n return parseGithubPath(url.pathname);\n }\n\n if (url?.host === 'gitlab.com') {\n return parseGitlabPath(url.pathname);\n }\n\n return null;\n}\n\nexport const httpRules = [\n 'http_archive',\n '_http_archive',\n 'http_file',\n '_http_file',\n] as const;\n\nexport const HttpTarget = z\n .object({\n rule: z.enum(httpRules),\n name: z.string(),\n url: z.string().optional(),\n urls: z.array(z.string()).optional(),\n sha256: z.string(),\n })\n .refine(({ url, urls }) => !!url || !!urls)\n .transform(({ rule, name, url, urls = [] }): PackageDependency[] => {\n const parsedUrl = [url, ...urls].map(parseArchiveUrl).find(isTruthy);\n if (!parsedUrl) {\n return [];\n }\n\n const dep: PackageDependency = {\n datasource: parsedUrl.datasource,\n depType: rule,\n depName: name,\n packageName: parsedUrl.packageName,\n };\n\n // We don't want to set both `currentValue` and `currentDigest`.\n //\n // What we want is to provide the first occurrence of `currentValue`,\n // or, if it's not available, `currentDigest`.\n //\n // Auto-replace mechanism will replace this first occurrence,\n // and artifact update function will do the rest.\n //\n // Hence, `if-else-if` is being used here.\n if (parsedUrl.currentValue) {\n dep.currentValue = parsedUrl.currentValue;\n } else if (parsedUrl.currentDigest) {\n dep.currentDigest = parsedUrl.currentDigest;\n }\n\n return [dep];\n });\n"]}
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MavenTarget = exports.mavenRules = void 0;
4
- const tslib_1 = require("tslib");
5
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
4
+ const is_1 = require("@sindresorhus/is");
6
5
  const zod_1 = require("zod");
7
6
  const maven_1 = require("../../../datasource/maven");
8
7
  const gradle_1 = require("../../../versioning/gradle");
@@ -30,7 +29,7 @@ exports.MavenTarget = zod_1.z
30
29
  .transform((xs) => {
31
30
  const result = [];
32
31
  for (const x of xs) {
33
- if (is_1.default.string(x)) {
32
+ if ((0, is_1.isString)(x)) {
34
33
  const [group, artifact, version] = x.split(':');
35
34
  if (group && artifact && version) {
36
35
  result.push({ group, artifact, version });
@@ -1 +1 @@
1
- {"version":3,"file":"maven.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/bazel/rules/maven.ts"],"names":[],"mappings":";;;;AAAA,kEAAkC;AAClC,6BAAwB;AACxB,qDAA4D;AAC5D,uDAA8D;AAGjD,QAAA,UAAU,GAAG,CAAC,eAAe,EAAE,gBAAgB,CAAU,CAAC;AAEvE,MAAM,YAAY,GAAG,OAAC,CAAC,KAAK,CAAC;IAC3B,OAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;QACpB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;KACpB,CAAC;IACF,OAAC;SACE,MAAM,CAAC;QACN,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;QACf,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;QACf,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;KAChB,CAAC;SACD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CACtE,CAAC,CAAC;AAGU,QAAA,WAAW,GAAG,OAAC;KACzB,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,kBAAU,CAAC;IACxB,SAAS,EAAE,OAAC;SACT,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;SACjC,KAAK,EAAE;SACP,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE;QAChB,MAAM,MAAM,GAAmB,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,IAAI,YAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChD,IAAI,KAAK,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;oBACjC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACJ,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,SAAS,CACR,CAAC,EACC,IAAI,EAAE,OAAO,EACb,SAAS,EACT,YAAY,EAAE,YAAY,GAC3B,EAAuB,EAAE,CACxB,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;IAC7D,UAAU,EAAE,uBAAe,CAAC,EAAE;IAC9B,UAAU,EAAV,WAAU;IACV,OAAO,EAAE,GAAG,KAAK,IAAI,QAAQ,EAAE;IAC/B,YAAY;IACZ,OAAO;IACP,YAAY;CACb,CAAC,CAAC,CACN,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { z } from 'zod';\nimport { MavenDatasource } from '../../../datasource/maven';\nimport { id as versioning } from '../../../versioning/gradle';\nimport type { PackageDependency } from '../../types';\n\nexport const mavenRules = ['maven_install', '_maven_install'] as const;\n\nconst ArtifactSpec = z.union([\n z.object({\n group: z.string(),\n artifact: z.string(),\n version: z.string(),\n }),\n z\n .object({\n '0': z.string(),\n '1': z.string(),\n '2': z.string(),\n })\n .transform((x) => ({ group: x[0], artifact: x[1], version: x[2] })),\n]);\ntype ArtifactSpec = z.infer<typeof ArtifactSpec>;\n\nexport const MavenTarget = z\n .object({\n rule: z.enum(mavenRules),\n artifacts: z\n .union([z.string(), ArtifactSpec])\n .array()\n .transform((xs) => {\n const result: ArtifactSpec[] = [];\n for (const x of xs) {\n if (is.string(x)) {\n const [group, artifact, version] = x.split(':');\n if (group && artifact && version) {\n result.push({ group, artifact, version });\n }\n } else {\n result.push(x);\n }\n }\n\n return result;\n }),\n repositories: z.array(z.string()).optional(),\n })\n .transform(\n ({\n rule: depType,\n artifacts,\n repositories: registryUrls,\n }): PackageDependency[] =>\n artifacts.map(({ group, artifact, version: currentValue }) => ({\n datasource: MavenDatasource.id,\n versioning,\n depName: `${group}:${artifact}`,\n currentValue,\n depType,\n registryUrls,\n })),\n );\n"]}
1
+ {"version":3,"file":"maven.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/bazel/rules/maven.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,6BAAwB;AACxB,qDAA4D;AAC5D,uDAA8D;AAGjD,QAAA,UAAU,GAAG,CAAC,eAAe,EAAE,gBAAgB,CAAU,CAAC;AAEvE,MAAM,YAAY,GAAG,OAAC,CAAC,KAAK,CAAC;IAC3B,OAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;QACpB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;KACpB,CAAC;IACF,OAAC;SACE,MAAM,CAAC;QACN,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;QACf,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;QACf,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;KAChB,CAAC;SACD,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CACtE,CAAC,CAAC;AAGU,QAAA,WAAW,GAAG,OAAC;KACzB,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,kBAAU,CAAC;IACxB,SAAS,EAAE,OAAC;SACT,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;SACjC,KAAK,EAAE;SACP,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE;QAChB,MAAM,MAAM,GAAmB,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,IAAI,IAAA,aAAQ,EAAC,CAAC,CAAC,EAAE,CAAC;gBAChB,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChD,IAAI,KAAK,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;oBACjC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACJ,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,SAAS,CACR,CAAC,EACC,IAAI,EAAE,OAAO,EACb,SAAS,EACT,YAAY,EAAE,YAAY,GAC3B,EAAuB,EAAE,CACxB,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;IAC7D,UAAU,EAAE,uBAAe,CAAC,EAAE;IAC9B,UAAU,EAAV,WAAU;IACV,OAAO,EAAE,GAAG,KAAK,IAAI,QAAQ,EAAE;IAC/B,YAAY;IACZ,OAAO;IACP,YAAY;CACb,CAAC,CAAC,CACN,CAAC","sourcesContent":["import { isString } from '@sindresorhus/is';\nimport { z } from 'zod';\nimport { MavenDatasource } from '../../../datasource/maven';\nimport { id as versioning } from '../../../versioning/gradle';\nimport type { PackageDependency } from '../../types';\n\nexport const mavenRules = ['maven_install', '_maven_install'] as const;\n\nconst ArtifactSpec = z.union([\n z.object({\n group: z.string(),\n artifact: z.string(),\n version: z.string(),\n }),\n z\n .object({\n '0': z.string(),\n '1': z.string(),\n '2': z.string(),\n })\n .transform((x) => ({ group: x[0], artifact: x[1], version: x[2] })),\n]);\ntype ArtifactSpec = z.infer<typeof ArtifactSpec>;\n\nexport const MavenTarget = z\n .object({\n rule: z.enum(mavenRules),\n artifacts: z\n .union([z.string(), ArtifactSpec])\n .array()\n .transform((xs) => {\n const result: ArtifactSpec[] = [];\n for (const x of xs) {\n if (isString(x)) {\n const [group, artifact, version] = x.split(':');\n if (group && artifact && version) {\n result.push({ group, artifact, version });\n }\n } else {\n result.push(x);\n }\n }\n\n return result;\n }),\n repositories: z.array(z.string()).optional(),\n })\n .transform(\n ({\n rule: depType,\n artifacts,\n repositories: registryUrls,\n }): PackageDependency[] =>\n artifacts.map(({ group, artifact, version: currentValue }) => ({\n datasource: MavenDatasource.id,\n versioning,\n depName: `${group}:${artifact}`,\n currentValue,\n depType,\n registryUrls,\n })),\n );\n"]}
@@ -2,8 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.booleanStringValues = void 0;
4
4
  exports.asBoolean = asBoolean;
5
- const tslib_1 = require("tslib");
6
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
5
+ const is_1 = require("@sindresorhus/is");
7
6
  const stringMapping = new Map([
8
7
  ['True', true],
9
8
  ['False', false],
@@ -11,7 +10,7 @@ const stringMapping = new Map([
11
10
  exports.booleanStringValues = Array.from(stringMapping.keys());
12
11
  function asBoolean(value) {
13
12
  const result = stringMapping.get(value);
14
- if (is_1.default.boolean(result)) {
13
+ if ((0, is_1.isBoolean)(result)) {
15
14
  return result;
16
15
  }
17
16
  throw new Error(`Invalid Starlark boolean string: ${value}`);
@@ -1 +1 @@
1
- {"version":3,"file":"starlark.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/bazel-module/parser/starlark.ts"],"names":[],"mappings":";;;AASA,8BAMC;;AAfD,kEAAkC;AAElC,MAAM,aAAa,GAAiC,IAAI,GAAG,CAAkB;IAC3E,CAAC,MAAM,EAAE,IAAI,CAAC;IACd,CAAC,OAAO,EAAE,KAAK,CAAC;CACjB,CAAC,CAAC;AAEU,QAAA,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;AAEpE,SAAgB,SAAS,CAAC,KAAa;IACrC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,YAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;AAC/D,CAAC","sourcesContent":["import is from '@sindresorhus/is';\n\nconst stringMapping: ReadonlyMap<string, boolean> = new Map<string, boolean>([\n ['True', true],\n ['False', false],\n]);\n\nexport const booleanStringValues = Array.from(stringMapping.keys());\n\nexport function asBoolean(value: string): boolean {\n const result = stringMapping.get(value);\n if (is.boolean(result)) {\n return result;\n }\n throw new Error(`Invalid Starlark boolean string: ${value}`);\n}\n"]}
1
+ {"version":3,"file":"starlark.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/bazel-module/parser/starlark.ts"],"names":[],"mappings":";;;AASA,8BAMC;AAfD,yCAA6C;AAE7C,MAAM,aAAa,GAAiC,IAAI,GAAG,CAAkB;IAC3E,CAAC,MAAM,EAAE,IAAI,CAAC;IACd,CAAC,OAAO,EAAE,KAAK,CAAC;CACjB,CAAC,CAAC;AAEU,QAAA,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;AAEpE,SAAgB,SAAS,CAAC,KAAa;IACrC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,IAAA,cAAS,EAAC,MAAM,CAAC,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;AAC/D,CAAC","sourcesContent":["import { isBoolean } from '@sindresorhus/is';\n\nconst stringMapping: ReadonlyMap<string, boolean> = new Map<string, boolean>([\n ['True', true],\n ['False', false],\n]);\n\nexport const booleanStringValues = Array.from(stringMapping.keys());\n\nexport function asBoolean(value: string): boolean {\n const result = stringMapping.get(value);\n if (isBoolean(result)) {\n return result;\n }\n throw new Error(`Invalid Starlark boolean string: ${value}`);\n}\n"]}
@@ -5,7 +5,7 @@ exports.bazelModulePackageDepToPackageDependency = bazelModulePackageDepToPackag
5
5
  exports.processModulePkgDeps = processModulePkgDeps;
6
6
  exports.toPackageDependencies = toPackageDependencies;
7
7
  const tslib_1 = require("tslib");
8
- const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
8
+ const is_1 = require("@sindresorhus/is");
9
9
  const github_url_from_git_1 = tslib_1.__importDefault(require("github-url-from-git"));
10
10
  const zod_1 = require("zod");
11
11
  const logger_1 = require("../../../logger");
@@ -65,7 +65,7 @@ const GitOverrideToPackageDep = fragments_1.RuleFragment.extend({
65
65
  currentDigest: commit.value,
66
66
  };
67
67
  const ghPackageName = githubPackageName(remote.value);
68
- if (is_1.default.nonEmptyString(ghPackageName)) {
68
+ if ((0, is_1.isNonEmptyString)(ghPackageName)) {
69
69
  override.datasource = github_tags_1.GithubTagsDatasource.id;
70
70
  override.packageName = ghPackageName;
71
71
  }
@@ -199,7 +199,7 @@ exports.GitRepositoryToPackageDep = fragments_1.RuleFragment.extend({
199
199
  gitRepo.currentValue = tag.value;
200
200
  }
201
201
  const ghPackageName = githubPackageName(remote.value);
202
- if (is_1.default.nonEmptyString(ghPackageName)) {
202
+ if ((0, is_1.isNonEmptyString)(ghPackageName)) {
203
203
  gitRepo.datasource = github_tags_1.GithubTagsDatasource.id;
204
204
  gitRepo.packageName = ghPackageName;
205
205
  }