renovate 40.0.0-next.3 → 40.0.0-next.30

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 (683) hide show
  1. package/dist/config/decrypt/legacy.js +0 -1
  2. package/dist/config/decrypt/legacy.js.map +1 -1
  3. package/dist/config/decrypt.d.ts +3 -1
  4. package/dist/config/decrypt.js +56 -13
  5. package/dist/config/decrypt.js.map +1 -1
  6. package/dist/config/migrate-validate.js +3 -2
  7. package/dist/config/migrate-validate.js.map +1 -1
  8. package/dist/config/migration.js +2 -1
  9. package/dist/config/migration.js.map +1 -1
  10. package/dist/config/migrations/custom/rebase-stale-prs-migration.js +1 -1
  11. package/dist/config/migrations/custom/rebase-stale-prs-migration.js.map +1 -1
  12. package/dist/config/options/index.js +4 -3
  13. package/dist/config/options/index.js.map +1 -1
  14. package/dist/config/parse.js +2 -2
  15. package/dist/config/parse.js.map +1 -1
  16. package/dist/config/presets/gitea/index.js +0 -1
  17. package/dist/config/presets/gitea/index.js.map +1 -1
  18. package/dist/config/presets/github/index.js +0 -1
  19. package/dist/config/presets/github/index.js.map +1 -1
  20. package/dist/config/presets/gitlab/index.js +1 -1
  21. package/dist/config/presets/gitlab/index.js.map +1 -1
  22. package/dist/config/presets/http/index.js +1 -2
  23. package/dist/config/presets/http/index.js.map +1 -1
  24. package/dist/config/presets/index.js +0 -7
  25. package/dist/config/presets/index.js.map +1 -1
  26. package/dist/config/presets/internal/custom-managers.js +3 -4
  27. package/dist/config/presets/internal/custom-managers.js.map +1 -1
  28. package/dist/config/presets/internal/group.js +30 -1
  29. package/dist/config/presets/internal/group.js.map +1 -1
  30. package/dist/config/presets/internal/index.js +1 -3
  31. package/dist/config/presets/internal/index.js.map +1 -1
  32. package/dist/config/presets/internal/workarounds.js +1 -0
  33. package/dist/config/presets/internal/workarounds.js.map +1 -1
  34. package/dist/config/presets/parse.js +2 -1
  35. package/dist/config/presets/parse.js.map +1 -1
  36. package/dist/config/schema.d.ts +2 -2
  37. package/dist/config/types.d.ts +4 -1
  38. package/dist/config/types.js.map +1 -1
  39. package/dist/config/validation.js +3 -5
  40. package/dist/config/validation.js.map +1 -1
  41. package/dist/config-validator.js +0 -1
  42. package/dist/config-validator.js.map +1 -1
  43. package/dist/constants/category.js +0 -1
  44. package/dist/constants/category.js.map +1 -1
  45. package/dist/data/monorepo.json +5 -1
  46. package/dist/data/source-urls.json +1 -0
  47. package/dist/instrumentation/index.js +17 -13
  48. package/dist/instrumentation/index.js.map +1 -1
  49. package/dist/instrumentation/utils.js +1 -1
  50. package/dist/instrumentation/utils.js.map +1 -1
  51. package/dist/logger/cmd-serializer.js +0 -1
  52. package/dist/logger/cmd-serializer.js.map +1 -1
  53. package/dist/logger/config-serializer.js +0 -1
  54. package/dist/logger/config-serializer.js.map +1 -1
  55. package/dist/logger/index.js +1 -4
  56. package/dist/logger/index.js.map +1 -1
  57. package/dist/logger/once.js +4 -2
  58. package/dist/logger/once.js.map +1 -1
  59. package/dist/logger/pretty-stdout.js +0 -1
  60. package/dist/logger/pretty-stdout.js.map +1 -1
  61. package/dist/logger/renovate-logger.js +1 -1
  62. package/dist/logger/renovate-logger.js.map +1 -1
  63. package/dist/logger/utils.js +6 -11
  64. package/dist/logger/utils.js.map +1 -1
  65. package/dist/modules/datasource/api.js +2 -0
  66. package/dist/modules/datasource/api.js.map +1 -1
  67. package/dist/modules/datasource/artifactory/index.js +1 -2
  68. package/dist/modules/datasource/artifactory/index.js.map +1 -1
  69. package/dist/modules/datasource/aws-eks-addon/index.d.ts +11 -0
  70. package/dist/modules/datasource/aws-eks-addon/index.js +75 -0
  71. package/dist/modules/datasource/aws-eks-addon/index.js.map +1 -0
  72. package/dist/modules/datasource/aws-eks-addon/schema.d.ts +40 -0
  73. package/dist/modules/datasource/aws-eks-addon/schema.js +31 -0
  74. package/dist/modules/datasource/aws-eks-addon/schema.js.map +1 -0
  75. package/dist/modules/datasource/aws-machine-image/index.js +6 -5
  76. package/dist/modules/datasource/aws-machine-image/index.js.map +1 -1
  77. package/dist/modules/datasource/azure-pipelines-tasks/index.js +11 -1
  78. package/dist/modules/datasource/azure-pipelines-tasks/index.js.map +1 -1
  79. package/dist/modules/datasource/azure-pipelines-tasks/schema.d.ts +16 -0
  80. package/dist/modules/datasource/azure-pipelines-tasks/schema.js +2 -0
  81. package/dist/modules/datasource/azure-pipelines-tasks/schema.js.map +1 -1
  82. package/dist/modules/datasource/bazel/index.js +0 -1
  83. package/dist/modules/datasource/bazel/index.js.map +1 -1
  84. package/dist/modules/datasource/bitrise/index.js +1 -1
  85. package/dist/modules/datasource/bitrise/index.js.map +1 -1
  86. package/dist/modules/datasource/cdnjs/schema.d.ts +2 -2
  87. package/dist/modules/datasource/conda/index.js +18 -1
  88. package/dist/modules/datasource/conda/index.js.map +1 -1
  89. package/dist/modules/datasource/conda/prefix-dev.d.ts +3 -0
  90. package/dist/modules/datasource/conda/prefix-dev.js +83 -0
  91. package/dist/modules/datasource/conda/prefix-dev.js.map +1 -0
  92. package/dist/modules/datasource/conda/schema/prefix-dev.d.ts +189 -0
  93. package/dist/modules/datasource/conda/schema/prefix-dev.js +31 -0
  94. package/dist/modules/datasource/conda/schema/prefix-dev.js.map +1 -0
  95. package/dist/modules/datasource/conda/types.d.ts +1 -20
  96. package/dist/modules/datasource/conda/types.js.map +1 -1
  97. package/dist/modules/datasource/cpan/index.js +1 -1
  98. package/dist/modules/datasource/cpan/index.js.map +1 -1
  99. package/dist/modules/datasource/crate/index.js +3 -3
  100. package/dist/modules/datasource/crate/index.js.map +1 -1
  101. package/dist/modules/datasource/custom/formats/html.js +1 -1
  102. package/dist/modules/datasource/custom/formats/html.js.map +1 -1
  103. package/dist/modules/datasource/custom/formats/yaml.js +1 -1
  104. package/dist/modules/datasource/custom/formats/yaml.js.map +1 -1
  105. package/dist/modules/datasource/custom/index.js +4 -2
  106. package/dist/modules/datasource/custom/index.js.map +1 -1
  107. package/dist/modules/datasource/custom/schema.d.ts +22 -22
  108. package/dist/modules/datasource/custom/utils.js +1 -0
  109. package/dist/modules/datasource/custom/utils.js.map +1 -1
  110. package/dist/modules/datasource/dart/index.js +1 -1
  111. package/dist/modules/datasource/dart/index.js.map +1 -1
  112. package/dist/modules/datasource/dart-version/index.js +1 -1
  113. package/dist/modules/datasource/dart-version/index.js.map +1 -1
  114. package/dist/modules/datasource/datasource.js +0 -1
  115. package/dist/modules/datasource/datasource.js.map +1 -1
  116. package/dist/modules/datasource/deb/index.js +2 -2
  117. package/dist/modules/datasource/deb/index.js.map +1 -1
  118. package/dist/modules/datasource/deno/index.js +1 -1
  119. package/dist/modules/datasource/deno/index.js.map +1 -1
  120. package/dist/modules/datasource/deno/schema.d.ts +1 -1
  121. package/dist/modules/datasource/devbox/index.js +0 -1
  122. package/dist/modules/datasource/devbox/index.js.map +1 -1
  123. package/dist/modules/datasource/docker/common.js +5 -2
  124. package/dist/modules/datasource/docker/common.js.map +1 -1
  125. package/dist/modules/datasource/docker/index.js +10 -8
  126. package/dist/modules/datasource/docker/index.js.map +1 -1
  127. package/dist/modules/datasource/docker/schema.d.ts +5 -5
  128. package/dist/modules/datasource/docker/schema.js +2 -1
  129. package/dist/modules/datasource/docker/schema.js.map +1 -1
  130. package/dist/modules/datasource/flutter-version/index.js +1 -1
  131. package/dist/modules/datasource/flutter-version/index.js.map +1 -1
  132. package/dist/modules/datasource/galaxy/schema.d.ts +1 -1
  133. package/dist/modules/datasource/galaxy-collection/schema.d.ts +8 -8
  134. package/dist/modules/datasource/git-refs/index.js +1 -1
  135. package/dist/modules/datasource/git-refs/index.js.map +1 -1
  136. package/dist/modules/datasource/gitea-releases/schema.d.ts +2 -2
  137. package/dist/modules/datasource/gitea-tags/schema.d.ts +4 -4
  138. package/dist/modules/datasource/github-release-attachments/index.js +2 -2
  139. package/dist/modules/datasource/github-release-attachments/index.js.map +1 -1
  140. package/dist/modules/datasource/gitlab-packages/index.js +1 -1
  141. package/dist/modules/datasource/gitlab-packages/index.js.map +1 -1
  142. package/dist/modules/datasource/gitlab-releases/index.js +1 -3
  143. package/dist/modules/datasource/gitlab-releases/index.js.map +1 -1
  144. package/dist/modules/datasource/go/base.js +1 -1
  145. package/dist/modules/datasource/go/base.js.map +1 -1
  146. package/dist/modules/datasource/go/index.js +1 -1
  147. package/dist/modules/datasource/go/index.js.map +1 -1
  148. package/dist/modules/datasource/go/releases-direct.js +7 -4
  149. package/dist/modules/datasource/go/releases-direct.js.map +1 -1
  150. package/dist/modules/datasource/go/releases-goproxy.js +1 -1
  151. package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
  152. package/dist/modules/datasource/golang-version/index.js +2 -2
  153. package/dist/modules/datasource/golang-version/index.js.map +1 -1
  154. package/dist/modules/datasource/gradle-version/index.js +1 -1
  155. package/dist/modules/datasource/gradle-version/index.js.map +1 -1
  156. package/dist/modules/datasource/helm/index.js +1 -1
  157. package/dist/modules/datasource/helm/index.js.map +1 -1
  158. package/dist/modules/datasource/hex/index.js +1 -1
  159. package/dist/modules/datasource/hex/index.js.map +1 -1
  160. package/dist/modules/datasource/hex/schema.d.ts +11 -11
  161. package/dist/modules/datasource/hexpm-bob/index.js +1 -1
  162. package/dist/modules/datasource/hexpm-bob/index.js.map +1 -1
  163. package/dist/modules/datasource/index.js +4 -4
  164. package/dist/modules/datasource/index.js.map +1 -1
  165. package/dist/modules/datasource/java-version/index.js +0 -1
  166. package/dist/modules/datasource/java-version/index.js.map +1 -1
  167. package/dist/modules/datasource/jenkins-plugins/index.js +1 -1
  168. package/dist/modules/datasource/jenkins-plugins/index.js.map +1 -1
  169. package/dist/modules/datasource/maven/index.js +35 -27
  170. package/dist/modules/datasource/maven/index.js.map +1 -1
  171. package/dist/modules/datasource/maven/types.d.ts +3 -6
  172. package/dist/modules/datasource/maven/types.js.map +1 -1
  173. package/dist/modules/datasource/maven/util.d.ts +4 -5
  174. package/dist/modules/datasource/maven/util.js +94 -157
  175. package/dist/modules/datasource/maven/util.js.map +1 -1
  176. package/dist/modules/datasource/node-version/index.js +1 -1
  177. package/dist/modules/datasource/node-version/index.js.map +1 -1
  178. package/dist/modules/datasource/npm/index.js +1 -1
  179. package/dist/modules/datasource/npm/index.js.map +1 -1
  180. package/dist/modules/datasource/npm/npmrc.js +1 -1
  181. package/dist/modules/datasource/npm/npmrc.js.map +1 -1
  182. package/dist/modules/datasource/nuget/index.js +1 -1
  183. package/dist/modules/datasource/nuget/index.js.map +1 -1
  184. package/dist/modules/datasource/nuget/v2.js +1 -1
  185. package/dist/modules/datasource/nuget/v2.js.map +1 -1
  186. package/dist/modules/datasource/nuget/v3.js +6 -6
  187. package/dist/modules/datasource/nuget/v3.js.map +1 -1
  188. package/dist/modules/datasource/orb/index.js +1 -1
  189. package/dist/modules/datasource/orb/index.js.map +1 -1
  190. package/dist/modules/datasource/packagist/index.js +2 -2
  191. package/dist/modules/datasource/packagist/index.js.map +1 -1
  192. package/dist/modules/datasource/packagist/schema.d.ts +25 -25
  193. package/dist/modules/datasource/pod/index.js +2 -2
  194. package/dist/modules/datasource/pod/index.js.map +1 -1
  195. package/dist/modules/datasource/postprocess-release.js +1 -1
  196. package/dist/modules/datasource/postprocess-release.js.map +1 -1
  197. package/dist/modules/datasource/pypi/index.js +1 -1
  198. package/dist/modules/datasource/pypi/index.js.map +1 -1
  199. package/dist/modules/datasource/python-version/index.js +1 -1
  200. package/dist/modules/datasource/python-version/index.js.map +1 -1
  201. package/dist/modules/datasource/repology/index.js +1 -1
  202. package/dist/modules/datasource/repology/index.js.map +1 -1
  203. package/dist/modules/datasource/ruby-version/index.js +1 -1
  204. package/dist/modules/datasource/ruby-version/index.js.map +1 -1
  205. package/dist/modules/datasource/rubygems/index.js +2 -2
  206. package/dist/modules/datasource/rubygems/index.js.map +1 -1
  207. package/dist/modules/datasource/rubygems/versions-endpoint-cache.js +2 -2
  208. package/dist/modules/datasource/rubygems/versions-endpoint-cache.js.map +1 -1
  209. package/dist/modules/datasource/sbt-package/index.js +1 -1
  210. package/dist/modules/datasource/sbt-package/index.js.map +1 -1
  211. package/dist/modules/datasource/sbt-plugin/index.js +1 -1
  212. package/dist/modules/datasource/sbt-plugin/index.js.map +1 -1
  213. package/dist/modules/datasource/schema.d.ts +4 -4
  214. package/dist/modules/datasource/terraform-module/index.js +1 -1
  215. package/dist/modules/datasource/terraform-module/index.js.map +1 -1
  216. package/dist/modules/datasource/terraform-provider/index.js +2 -3
  217. package/dist/modules/datasource/terraform-provider/index.js.map +1 -1
  218. package/dist/modules/datasource/types.d.ts +1 -0
  219. package/dist/modules/datasource/types.js.map +1 -1
  220. package/dist/modules/datasource/unity3d/index.d.ts +4 -1
  221. package/dist/modules/datasource/unity3d/index.js +36 -42
  222. package/dist/modules/datasource/unity3d/index.js.map +1 -1
  223. package/dist/modules/datasource/unity3d/schema.d.ts +47 -0
  224. package/dist/modules/datasource/unity3d/schema.js +17 -0
  225. package/dist/modules/datasource/unity3d/schema.js.map +1 -0
  226. package/dist/modules/manager/api.js +2 -0
  227. package/dist/modules/manager/api.js.map +1 -1
  228. package/dist/modules/manager/argocd/extract.js +1 -1
  229. package/dist/modules/manager/argocd/extract.js.map +1 -1
  230. package/dist/modules/manager/argocd/schema.d.ts +10 -10
  231. package/dist/modules/manager/asdf/upgradeable-tooling.js +94 -0
  232. package/dist/modules/manager/asdf/upgradeable-tooling.js.map +1 -1
  233. package/dist/modules/manager/azure-pipelines/schema.d.ts +32 -32
  234. package/dist/modules/manager/batect/schema.d.ts +4 -4
  235. package/dist/modules/manager/batect-wrapper/artifacts.js +1 -1
  236. package/dist/modules/manager/batect-wrapper/artifacts.js.map +1 -1
  237. package/dist/modules/manager/bazel/rules/docker.d.ts +6 -6
  238. package/dist/modules/manager/bazel/rules/git.d.ts +10 -10
  239. package/dist/modules/manager/bazel/rules/git.js +9 -2
  240. package/dist/modules/manager/bazel/rules/git.js.map +1 -1
  241. package/dist/modules/manager/bazel/rules/go.d.ts +5 -5
  242. package/dist/modules/manager/bazel/rules/maven.d.ts +7 -7
  243. package/dist/modules/manager/bazel/rules/oci.d.ts +6 -6
  244. package/dist/modules/manager/bazel-module/parser/fragments.d.ts +40 -40
  245. package/dist/modules/manager/bazel-module/parser/maven.d.ts +40 -40
  246. package/dist/modules/manager/bazel-module/parser/oci.d.ts +17 -17
  247. package/dist/modules/manager/bazel-module/rules.d.ts +40 -40
  248. package/dist/modules/manager/bun/artifacts.js +0 -1
  249. package/dist/modules/manager/bun/artifacts.js.map +1 -1
  250. package/dist/modules/manager/bundler/artifacts.js +0 -1
  251. package/dist/modules/manager/bundler/artifacts.js.map +1 -1
  252. package/dist/modules/manager/bundler/extract.js +2 -1
  253. package/dist/modules/manager/bundler/extract.js.map +1 -1
  254. package/dist/modules/manager/cake/index.js +4 -2
  255. package/dist/modules/manager/cake/index.js.map +1 -1
  256. package/dist/modules/manager/cargo/artifacts.js +5 -7
  257. package/dist/modules/manager/cargo/artifacts.js.map +1 -1
  258. package/dist/modules/manager/cargo/schema.d.ts +114 -114
  259. package/dist/modules/manager/cocoapods/artifacts.js +1 -2
  260. package/dist/modules/manager/cocoapods/artifacts.js.map +1 -1
  261. package/dist/modules/manager/composer/artifacts.js +1 -2
  262. package/dist/modules/manager/composer/artifacts.js.map +1 -1
  263. package/dist/modules/manager/composer/schema.d.ts +26 -26
  264. package/dist/modules/manager/composer/schema.js +1 -1
  265. package/dist/modules/manager/composer/schema.js.map +1 -1
  266. package/dist/modules/manager/composer/utils.d.ts +1 -0
  267. package/dist/modules/manager/composer/utils.js +18 -6
  268. package/dist/modules/manager/composer/utils.js.map +1 -1
  269. package/dist/modules/manager/copier/artifacts.js +0 -1
  270. package/dist/modules/manager/copier/artifacts.js.map +1 -1
  271. package/dist/modules/manager/crossplane/schema.d.ts +2 -2
  272. package/dist/modules/manager/custom/jsonata/index.js +4 -0
  273. package/dist/modules/manager/custom/jsonata/index.js.map +1 -1
  274. package/dist/modules/manager/custom/jsonata/schema.d.ts +21 -21
  275. package/dist/modules/manager/custom/regex/index.js +2 -0
  276. package/dist/modules/manager/custom/regex/index.js.map +1 -1
  277. package/dist/modules/manager/deps-edn/extract.js +2 -1
  278. package/dist/modules/manager/deps-edn/extract.js.map +1 -1
  279. package/dist/modules/manager/devbox/artifacts.d.ts +1 -1
  280. package/dist/modules/manager/devbox/artifacts.js +28 -11
  281. package/dist/modules/manager/devbox/artifacts.js.map +1 -1
  282. package/dist/modules/manager/devbox/schema.js +1 -1
  283. package/dist/modules/manager/devbox/schema.js.map +1 -1
  284. package/dist/modules/manager/devcontainer/extract.js +43 -1
  285. package/dist/modules/manager/devcontainer/extract.js.map +1 -1
  286. package/dist/modules/manager/devcontainer/index.js +11 -1
  287. package/dist/modules/manager/devcontainer/index.js.map +1 -1
  288. package/dist/modules/manager/devcontainer/schema.d.ts +7 -3
  289. package/dist/modules/manager/devcontainer/schema.js +3 -1
  290. package/dist/modules/manager/devcontainer/schema.js.map +1 -1
  291. package/dist/modules/manager/docker-compose/schema.d.ts +6 -6
  292. package/dist/modules/manager/fingerprint.generated.js +86 -85
  293. package/dist/modules/manager/fingerprint.generated.js.map +1 -1
  294. package/dist/modules/manager/flux/artifacts.js +0 -1
  295. package/dist/modules/manager/flux/artifacts.js.map +1 -1
  296. package/dist/modules/manager/flux/extract.js +27 -24
  297. package/dist/modules/manager/flux/extract.js.map +1 -1
  298. package/dist/modules/manager/flux/schema.d.ts +94 -94
  299. package/dist/modules/manager/github-actions/extract.js +60 -39
  300. package/dist/modules/manager/github-actions/extract.js.map +1 -1
  301. package/dist/modules/manager/github-actions/schema.d.ts +66 -0
  302. package/dist/modules/manager/github-actions/schema.js +38 -0
  303. package/dist/modules/manager/github-actions/schema.js.map +1 -0
  304. package/dist/modules/manager/gitlabci/extract.d.ts +1 -5
  305. package/dist/modules/manager/gitlabci/extract.js +27 -126
  306. package/dist/modules/manager/gitlabci/extract.js.map +1 -1
  307. package/dist/modules/manager/gitlabci/schema.d.ts +55 -0
  308. package/dist/modules/manager/gitlabci/schema.js +63 -0
  309. package/dist/modules/manager/gitlabci/schema.js.map +1 -0
  310. package/dist/modules/manager/gitlabci-include/extract.js +6 -54
  311. package/dist/modules/manager/gitlabci-include/extract.js.map +1 -1
  312. package/dist/modules/manager/gitlabci-include/schema.d.ts +13 -0
  313. package/dist/modules/manager/gitlabci-include/schema.js +46 -0
  314. package/dist/modules/manager/gitlabci-include/schema.js.map +1 -0
  315. package/dist/modules/manager/glasskube/schema.d.ts +8 -8
  316. package/dist/modules/manager/gomod/artifacts.js +24 -10
  317. package/dist/modules/manager/gomod/artifacts.js.map +1 -1
  318. package/dist/modules/manager/gomod/extract.js +23 -0
  319. package/dist/modules/manager/gomod/extract.js.map +1 -1
  320. package/dist/modules/manager/gomod/line-parser.js +16 -0
  321. package/dist/modules/manager/gomod/line-parser.js.map +1 -1
  322. package/dist/modules/manager/gomod/update.js +2 -2
  323. package/dist/modules/manager/gomod/update.js.map +1 -1
  324. package/dist/modules/manager/gradle/artifacts.js +0 -1
  325. package/dist/modules/manager/gradle/artifacts.js.map +1 -1
  326. package/dist/modules/manager/gradle/extract/catalog.js +1 -1
  327. package/dist/modules/manager/gradle/extract/catalog.js.map +1 -1
  328. package/dist/modules/manager/gradle/parser/assignments.js +2 -2
  329. package/dist/modules/manager/gradle/parser/assignments.js.map +1 -1
  330. package/dist/modules/manager/gradle/parser/handlers.d.ts +1 -2
  331. package/dist/modules/manager/gradle/parser/handlers.js +10 -25
  332. package/dist/modules/manager/gradle/parser/handlers.js.map +1 -1
  333. package/dist/modules/manager/gradle/parser/registry-urls.js +11 -3
  334. package/dist/modules/manager/gradle/parser/registry-urls.js.map +1 -1
  335. package/dist/modules/manager/gradle-wrapper/artifacts.js +1 -2
  336. package/dist/modules/manager/gradle-wrapper/artifacts.js.map +1 -1
  337. package/dist/modules/manager/helmfile/artifacts.js +0 -1
  338. package/dist/modules/manager/helmfile/artifacts.js.map +1 -1
  339. package/dist/modules/manager/helmfile/extract.js +4 -0
  340. package/dist/modules/manager/helmfile/extract.js.map +1 -1
  341. package/dist/modules/manager/helmfile/schema.d.ts +9 -9
  342. package/dist/modules/manager/helmv3/artifacts.js +0 -1
  343. package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
  344. package/dist/modules/manager/helmv3/utils.js +3 -1
  345. package/dist/modules/manager/helmv3/utils.js.map +1 -1
  346. package/dist/modules/manager/hermit/artifacts.js +0 -1
  347. package/dist/modules/manager/hermit/artifacts.js.map +1 -1
  348. package/dist/modules/manager/homebrew/extract.js +0 -1
  349. package/dist/modules/manager/homebrew/extract.js.map +1 -1
  350. package/dist/modules/manager/jsonnet-bundler/artifacts.js +0 -1
  351. package/dist/modules/manager/jsonnet-bundler/artifacts.js.map +1 -1
  352. package/dist/modules/manager/kustomize/artifacts.d.ts +2 -0
  353. package/dist/modules/manager/kustomize/artifacts.js +154 -0
  354. package/dist/modules/manager/kustomize/artifacts.js.map +1 -0
  355. package/dist/modules/manager/kustomize/common.d.ts +3 -0
  356. package/dist/modules/manager/kustomize/common.js +22 -0
  357. package/dist/modules/manager/kustomize/common.js.map +1 -0
  358. package/dist/modules/manager/kustomize/index.d.ts +1 -0
  359. package/dist/modules/manager/kustomize/index.js +3 -1
  360. package/dist/modules/manager/kustomize/index.js.map +1 -1
  361. package/dist/modules/manager/kustomize/types.d.ts +4 -0
  362. package/dist/modules/manager/kustomize/types.js.map +1 -1
  363. package/dist/modules/manager/maven/extract.js +3 -1
  364. package/dist/modules/manager/maven/extract.js.map +1 -1
  365. package/dist/modules/manager/maven-wrapper/artifacts.js +0 -1
  366. package/dist/modules/manager/maven-wrapper/artifacts.js.map +1 -1
  367. package/dist/modules/manager/mise/extract.js +1 -1
  368. package/dist/modules/manager/mise/extract.js.map +1 -1
  369. package/dist/modules/manager/mix/artifacts.js +64 -14
  370. package/dist/modules/manager/mix/artifacts.js.map +1 -1
  371. package/dist/modules/manager/mix/index.d.ts +1 -0
  372. package/dist/modules/manager/mix/index.js +2 -1
  373. package/dist/modules/manager/mix/index.js.map +1 -1
  374. package/dist/modules/manager/nix/artifacts.js +0 -1
  375. package/dist/modules/manager/nix/artifacts.js.map +1 -1
  376. package/dist/modules/manager/nix/extract.js +1 -1
  377. package/dist/modules/manager/nix/extract.js.map +1 -1
  378. package/dist/modules/manager/nix/schema.d.ts +18 -18
  379. package/dist/modules/manager/npm/artifacts.js +0 -1
  380. package/dist/modules/manager/npm/artifacts.js.map +1 -1
  381. package/dist/modules/manager/npm/extract/yarn.js +2 -2
  382. package/dist/modules/manager/npm/extract/yarn.js.map +1 -1
  383. package/dist/modules/manager/npm/post-update/npm.js +0 -1
  384. package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
  385. package/dist/modules/manager/npm/post-update/pnpm.js +13 -2
  386. package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
  387. package/dist/modules/manager/npm/post-update/rules.js +11 -1
  388. package/dist/modules/manager/npm/post-update/rules.js.map +1 -1
  389. package/dist/modules/manager/npm/post-update/yarn.js +0 -1
  390. package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
  391. package/dist/modules/manager/npm/schema.d.ts +13 -13
  392. package/dist/modules/manager/npm/update/dependency/index.js +1 -1
  393. package/dist/modules/manager/npm/update/dependency/index.js.map +1 -1
  394. package/dist/modules/manager/nuget/artifacts.js +1 -2
  395. package/dist/modules/manager/nuget/artifacts.js.map +1 -1
  396. package/dist/modules/manager/nuget/package-tree.js +4 -0
  397. package/dist/modules/manager/nuget/package-tree.js.map +1 -1
  398. package/dist/modules/manager/nuget/schema.d.ts +8 -8
  399. package/dist/modules/manager/nuget/util.js +4 -1
  400. package/dist/modules/manager/nuget/util.js.map +1 -1
  401. package/dist/modules/manager/ocb/schema.d.ts +6 -6
  402. package/dist/modules/manager/pep621/processors/pdm.js +0 -1
  403. package/dist/modules/manager/pep621/processors/pdm.js.map +1 -1
  404. package/dist/modules/manager/pep621/processors/uv.js +0 -1
  405. package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
  406. package/dist/modules/manager/pep621/schema.d.ts +59 -54
  407. package/dist/modules/manager/pep621/schema.js +2 -0
  408. package/dist/modules/manager/pep621/schema.js.map +1 -1
  409. package/dist/modules/manager/pep621/utils.js +1 -1
  410. package/dist/modules/manager/pep621/utils.js.map +1 -1
  411. package/dist/modules/manager/pip-compile/common.js +0 -1
  412. package/dist/modules/manager/pip-compile/common.js.map +1 -1
  413. package/dist/modules/manager/pip_requirements/artifacts.js +0 -1
  414. package/dist/modules/manager/pip_requirements/artifacts.js.map +1 -1
  415. package/dist/modules/manager/pipenv/artifacts.js +0 -1
  416. package/dist/modules/manager/pipenv/artifacts.js.map +1 -1
  417. package/dist/modules/manager/pixi/artifacts.d.ts +3 -0
  418. package/dist/modules/manager/pixi/artifacts.js +84 -0
  419. package/dist/modules/manager/pixi/artifacts.js.map +1 -0
  420. package/dist/modules/manager/pixi/extract.d.ts +2 -0
  421. package/dist/modules/manager/pixi/extract.js +53 -0
  422. package/dist/modules/manager/pixi/extract.js.map +1 -0
  423. package/dist/modules/manager/pixi/index.d.ts +11 -0
  424. package/dist/modules/manager/pixi/index.js +22 -0
  425. package/dist/modules/manager/pixi/index.js.map +1 -0
  426. package/dist/modules/manager/pixi/lockfile.d.ts +6 -0
  427. package/dist/modules/manager/pixi/lockfile.js +25 -0
  428. package/dist/modules/manager/pixi/lockfile.js.map +1 -0
  429. package/dist/modules/manager/pixi/schema.d.ts +14 -0
  430. package/dist/modules/manager/pixi/schema.js +14 -0
  431. package/dist/modules/manager/pixi/schema.js.map +1 -0
  432. package/dist/modules/manager/poetry/artifacts.js +3 -4
  433. package/dist/modules/manager/poetry/artifacts.js.map +1 -1
  434. package/dist/modules/manager/poetry/extract.js +2 -1
  435. package/dist/modules/manager/poetry/extract.js.map +1 -1
  436. package/dist/modules/manager/poetry/schema.d.ts +48 -48
  437. package/dist/modules/manager/pub/artifacts.js +0 -1
  438. package/dist/modules/manager/pub/artifacts.js.map +1 -1
  439. package/dist/modules/manager/pub/schema.d.ts +8 -8
  440. package/dist/modules/manager/scalafmt/extract.js +1 -1
  441. package/dist/modules/manager/scalafmt/extract.js.map +1 -1
  442. package/dist/modules/manager/sveltos/schema.d.ts +12 -12
  443. package/dist/modules/manager/terraform/lockfile/hash.d.ts +1 -1
  444. package/dist/modules/manager/types.d.ts +6 -2
  445. package/dist/modules/manager/types.js.map +1 -1
  446. package/dist/modules/manager/vendir/schema.d.ts +4 -4
  447. package/dist/modules/platform/api.d.ts +1 -1
  448. package/dist/modules/platform/azure/azure-helper.js +2 -2
  449. package/dist/modules/platform/azure/azure-helper.js.map +1 -1
  450. package/dist/modules/platform/azure/index.js +14 -14
  451. package/dist/modules/platform/azure/index.js.map +1 -1
  452. package/dist/modules/platform/bitbucket/comments.js +4 -4
  453. package/dist/modules/platform/bitbucket/comments.js.map +1 -1
  454. package/dist/modules/platform/bitbucket/index.d.ts +1 -0
  455. package/dist/modules/platform/bitbucket/index.js +54 -44
  456. package/dist/modules/platform/bitbucket/index.js.map +1 -1
  457. package/dist/modules/platform/bitbucket/schema.d.ts +11 -11
  458. package/dist/modules/platform/bitbucket/utils.js +3 -3
  459. package/dist/modules/platform/bitbucket/utils.js.map +1 -1
  460. package/dist/modules/platform/bitbucket-server/index.d.ts +3 -3
  461. package/dist/modules/platform/bitbucket-server/index.js +81 -81
  462. package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
  463. package/dist/modules/platform/bitbucket-server/pr-cache.d.ts +23 -0
  464. package/dist/modules/platform/bitbucket-server/pr-cache.js +125 -0
  465. package/dist/modules/platform/bitbucket-server/pr-cache.js.map +1 -0
  466. package/dist/modules/platform/bitbucket-server/schema.d.ts +75 -0
  467. package/dist/modules/platform/bitbucket-server/schema.js +14 -1
  468. package/dist/modules/platform/bitbucket-server/schema.js.map +1 -1
  469. package/dist/modules/platform/bitbucket-server/types.d.ts +8 -2
  470. package/dist/modules/platform/bitbucket-server/types.js.map +1 -1
  471. package/dist/modules/platform/bitbucket-server/utils.d.ts +0 -2
  472. package/dist/modules/platform/bitbucket-server/utils.js +6 -52
  473. package/dist/modules/platform/bitbucket-server/utils.js.map +1 -1
  474. package/dist/modules/platform/codecommit/codecommit-client.js +6 -6
  475. package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
  476. package/dist/modules/platform/codecommit/index.js +24 -24
  477. package/dist/modules/platform/codecommit/index.js.map +1 -1
  478. package/dist/modules/platform/gerrit/client.js +13 -2
  479. package/dist/modules/platform/gerrit/client.js.map +1 -1
  480. package/dist/modules/platform/gerrit/utils.js +1 -1
  481. package/dist/modules/platform/gerrit/utils.js.map +1 -1
  482. package/dist/modules/platform/gitea/gitea-helper.d.ts +1 -0
  483. package/dist/modules/platform/gitea/gitea-helper.js +16 -0
  484. package/dist/modules/platform/gitea/gitea-helper.js.map +1 -1
  485. package/dist/modules/platform/gitea/index.d.ts +1 -0
  486. package/dist/modules/platform/gitea/index.js +26 -7
  487. package/dist/modules/platform/gitea/index.js.map +1 -1
  488. package/dist/modules/platform/gitea/schema.d.ts +8 -8
  489. package/dist/modules/platform/gitea/types.d.ts +1 -1
  490. package/dist/modules/platform/gitea/types.js.map +1 -1
  491. package/dist/modules/platform/github/common.d.ts +2 -0
  492. package/dist/modules/platform/github/common.js +16 -0
  493. package/dist/modules/platform/github/common.js.map +1 -1
  494. package/dist/modules/platform/github/index.d.ts +1 -1
  495. package/dist/modules/platform/github/index.js +87 -82
  496. package/dist/modules/platform/github/index.js.map +1 -1
  497. package/dist/modules/platform/github/issue.d.ts +12 -12
  498. package/dist/modules/platform/github/massage-markdown-links.js +2 -2
  499. package/dist/modules/platform/github/massage-markdown-links.js.map +1 -1
  500. package/dist/modules/platform/github/pr.js +3 -3
  501. package/dist/modules/platform/github/pr.js.map +1 -1
  502. package/dist/modules/platform/github/schema.d.ts +76 -76
  503. package/dist/modules/platform/github/schema.js +3 -1
  504. package/dist/modules/platform/github/schema.js.map +1 -1
  505. package/dist/modules/platform/gitlab/index.d.ts +1 -0
  506. package/dist/modules/platform/gitlab/index.js +70 -43
  507. package/dist/modules/platform/gitlab/index.js.map +1 -1
  508. package/dist/modules/platform/index.js +0 -1
  509. package/dist/modules/platform/index.js.map +1 -1
  510. package/dist/modules/platform/scm.d.ts +1 -1
  511. package/dist/modules/versioning/api.js +2 -0
  512. package/dist/modules/versioning/api.js.map +1 -1
  513. package/dist/modules/versioning/composer/index.js +10 -0
  514. package/dist/modules/versioning/composer/index.js.map +1 -1
  515. package/dist/modules/versioning/conda/index.d.ts +41 -0
  516. package/dist/modules/versioning/conda/index.js +178 -0
  517. package/dist/modules/versioning/conda/index.js.map +1 -0
  518. package/dist/modules/versioning/hashicorp/convertor.d.ts +2 -1
  519. package/dist/modules/versioning/hashicorp/convertor.js +13 -8
  520. package/dist/modules/versioning/hashicorp/convertor.js.map +1 -1
  521. package/dist/modules/versioning/hex/index.js +3 -3
  522. package/dist/modules/versioning/hex/index.js.map +1 -1
  523. package/dist/modules/versioning/npm/index.js +2 -1
  524. package/dist/modules/versioning/npm/index.js.map +1 -1
  525. package/dist/modules/versioning/schema.js +1 -1
  526. package/dist/modules/versioning/schema.js.map +1 -1
  527. package/dist/modules/versioning/types.d.ts +4 -0
  528. package/dist/modules/versioning/types.js.map +1 -1
  529. package/dist/proxy.js +2 -1
  530. package/dist/proxy.js.map +1 -1
  531. package/dist/renovate.js +2 -2
  532. package/dist/renovate.js.map +1 -1
  533. package/dist/util/cache/package/decorator.js +2 -2
  534. package/dist/util/cache/package/decorator.js.map +1 -1
  535. package/dist/util/cache/package/redis.js +0 -1
  536. package/dist/util/cache/package/redis.js.map +1 -1
  537. package/dist/util/cache/package/types.d.ts +1 -1
  538. package/dist/util/cache/package/types.js.map +1 -1
  539. package/dist/util/cache/repository/impl/base.d.ts +1 -1
  540. package/dist/util/cache/repository/schema.d.ts +4 -4
  541. package/dist/util/cache/repository/types.d.ts +3 -0
  542. package/dist/util/cache/repository/types.js.map +1 -1
  543. package/dist/util/env.d.ts +4 -0
  544. package/dist/util/env.js +22 -0
  545. package/dist/util/env.js.map +1 -0
  546. package/dist/util/exec/containerbase.js +18 -12
  547. package/dist/util/exec/containerbase.js.map +1 -1
  548. package/dist/util/exec/index.js +5 -2
  549. package/dist/util/exec/index.js.map +1 -1
  550. package/dist/util/exec/types.d.ts +0 -2
  551. package/dist/util/exec/types.js.map +1 -1
  552. package/dist/util/exec/utils.d.ts +1 -1
  553. package/dist/util/exec/utils.js +6 -5
  554. package/dist/util/exec/utils.js.map +1 -1
  555. package/dist/util/git/author.js +1 -1
  556. package/dist/util/git/author.js.map +1 -1
  557. package/dist/util/git/config.js +0 -1
  558. package/dist/util/git/config.js.map +1 -1
  559. package/dist/util/git/error.js +4 -2
  560. package/dist/util/git/error.js.map +1 -1
  561. package/dist/util/git/index.js +73 -46
  562. package/dist/util/git/index.js.map +1 -1
  563. package/dist/util/git/private-key.js +1 -1
  564. package/dist/util/git/private-key.js.map +1 -1
  565. package/dist/util/github/graphql/query-adapters/releases-query-adapter.d.ts +2 -2
  566. package/dist/util/github/graphql/query-adapters/tags-query-adapter.d.ts +2 -2
  567. package/dist/util/http/auth.js +0 -1
  568. package/dist/util/http/auth.js.map +1 -1
  569. package/dist/util/http/bitbucket-server.d.ts +5 -4
  570. package/dist/util/http/bitbucket-server.js +21 -20
  571. package/dist/util/http/bitbucket-server.js.map +1 -1
  572. package/dist/util/http/bitbucket.d.ts +6 -5
  573. package/dist/util/http/bitbucket.js +34 -31
  574. package/dist/util/http/bitbucket.js.map +1 -1
  575. package/dist/util/http/cache/abstract-http-cache-provider.js +2 -2
  576. package/dist/util/http/cache/abstract-http-cache-provider.js.map +1 -1
  577. package/dist/util/http/cache/memory-http-cache-provider.d.ts +10 -0
  578. package/dist/util/http/cache/memory-http-cache-provider.js +29 -0
  579. package/dist/util/http/cache/memory-http-cache-provider.js.map +1 -0
  580. package/dist/util/http/cache/schema.d.ts +2 -2
  581. package/dist/util/http/errors.d.ts +2 -0
  582. package/dist/util/http/errors.js +8 -0
  583. package/dist/util/http/errors.js.map +1 -0
  584. package/dist/util/http/gerrit.d.ts +6 -4
  585. package/dist/util/http/gerrit.js +11 -12
  586. package/dist/util/http/gerrit.js.map +1 -1
  587. package/dist/util/http/gitea.d.ts +5 -4
  588. package/dist/util/http/gitea.js +14 -13
  589. package/dist/util/http/gitea.js.map +1 -1
  590. package/dist/util/http/github.d.ts +14 -8
  591. package/dist/util/http/github.js +65 -60
  592. package/dist/util/http/github.js.map +1 -1
  593. package/dist/util/http/gitlab.d.ts +7 -5
  594. package/dist/util/http/gitlab.js +58 -46
  595. package/dist/util/http/gitlab.js.map +1 -1
  596. package/dist/util/http/got.d.ts +9 -0
  597. package/dist/util/http/got.js +54 -0
  598. package/dist/util/http/got.js.map +1 -0
  599. package/dist/util/http/host-rules.d.ts +2 -1
  600. package/dist/util/http/host-rules.js +5 -4
  601. package/dist/util/http/host-rules.js.map +1 -1
  602. package/dist/util/http/http.d.ts +93 -0
  603. package/dist/util/http/http.js +346 -0
  604. package/dist/util/http/http.js.map +1 -0
  605. package/dist/util/http/index.d.ts +6 -74
  606. package/dist/util/http/index.js +5 -359
  607. package/dist/util/http/index.js.map +1 -1
  608. package/dist/util/http/legacy.js +4 -1
  609. package/dist/util/http/legacy.js.map +1 -1
  610. package/dist/util/http/types.d.ts +9 -16
  611. package/dist/util/http/types.js.map +1 -1
  612. package/dist/util/stats.d.ts +10 -0
  613. package/dist/util/stats.js +45 -1
  614. package/dist/util/stats.js.map +1 -1
  615. package/dist/util/string.d.ts +15 -0
  616. package/dist/util/string.js +75 -0
  617. package/dist/util/string.js.map +1 -1
  618. package/dist/util/toml.d.ts +1 -0
  619. package/dist/util/toml.js +6 -0
  620. package/dist/util/toml.js.map +1 -1
  621. package/dist/util/url.js +3 -8
  622. package/dist/util/url.js.map +1 -1
  623. package/dist/util/yaml.js +2 -6
  624. package/dist/util/yaml.js.map +1 -1
  625. package/dist/workers/global/config/parse/env.js +3 -2
  626. package/dist/workers/global/config/parse/env.js.map +1 -1
  627. package/dist/workers/global/config/parse/file.js +19 -9
  628. package/dist/workers/global/config/parse/file.js.map +1 -1
  629. package/dist/workers/global/config/parse/host-rules-from-env.js +6 -2
  630. package/dist/workers/global/config/parse/host-rules-from-env.js.map +1 -1
  631. package/dist/workers/global/config/parse/index.js +5 -0
  632. package/dist/workers/global/config/parse/index.js.map +1 -1
  633. package/dist/workers/repository/cache.js +1 -2
  634. package/dist/workers/repository/cache.js.map +1 -1
  635. package/dist/workers/repository/config-migration/branch/migrated-data.js +2 -0
  636. package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
  637. package/dist/workers/repository/index.js +1 -0
  638. package/dist/workers/repository/index.js.map +1 -1
  639. package/dist/workers/repository/init/merge.js +6 -3
  640. package/dist/workers/repository/init/merge.js.map +1 -1
  641. package/dist/workers/repository/onboarding/pr/config-description.js +3 -1
  642. package/dist/workers/repository/onboarding/pr/config-description.js.map +1 -1
  643. package/dist/workers/repository/process/extract-update.js +0 -1
  644. package/dist/workers/repository/process/extract-update.js.map +1 -1
  645. package/dist/workers/repository/process/fingerprint-fields.js +0 -1
  646. package/dist/workers/repository/process/fingerprint-fields.js.map +1 -1
  647. package/dist/workers/repository/process/libyear.js +2 -2
  648. package/dist/workers/repository/process/libyear.js.map +1 -1
  649. package/dist/workers/repository/process/lookup/index.js +13 -4
  650. package/dist/workers/repository/process/lookup/index.js.map +1 -1
  651. package/dist/workers/repository/process/vulnerabilities.js +1 -1
  652. package/dist/workers/repository/process/vulnerabilities.js.map +1 -1
  653. package/dist/workers/repository/process/write.js +1 -8
  654. package/dist/workers/repository/process/write.js.map +1 -1
  655. package/dist/workers/repository/reconfigure/validate.js +1 -0
  656. package/dist/workers/repository/reconfigure/validate.js.map +1 -1
  657. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +10 -1
  658. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
  659. package/dist/workers/repository/update/pr/changelog/bitbucket/index.js +1 -1
  660. package/dist/workers/repository/update/pr/changelog/bitbucket/index.js.map +1 -1
  661. package/dist/workers/repository/update/pr/changelog/github/index.js +6 -3
  662. package/dist/workers/repository/update/pr/changelog/github/index.js.map +1 -1
  663. package/dist/workers/repository/update/pr/changelog/gitlab/index.js +1 -1
  664. package/dist/workers/repository/update/pr/changelog/gitlab/index.js.map +1 -1
  665. package/dist/workers/repository/update/pr/changelog/source.js +1 -0
  666. package/dist/workers/repository/update/pr/changelog/source.js.map +1 -1
  667. package/dist/workers/repository/updates/flatten.js +8 -4
  668. package/dist/workers/repository/updates/flatten.js.map +1 -1
  669. package/dist/workers/repository/updates/generate.js +1 -2
  670. package/dist/workers/repository/updates/generate.js.map +1 -1
  671. package/dist/workers/types.d.ts +1 -4
  672. package/dist/workers/types.js.map +1 -1
  673. package/package.json +69 -72
  674. package/renovate-schema.json +15 -1
  675. package/dist/modules/manager/github-actions/types.d.ts +0 -30
  676. package/dist/modules/manager/github-actions/types.js +0 -3
  677. package/dist/modules/manager/github-actions/types.js.map +0 -1
  678. package/dist/modules/manager/gitlabci/common.d.ts +0 -6
  679. package/dist/modules/manager/gitlabci/common.js +0 -30
  680. package/dist/modules/manager/gitlabci/common.js.map +0 -1
  681. package/dist/modules/manager/gitlabci/types.d.ts +0 -35
  682. package/dist/modules/manager/gitlabci/types.js +0 -3
  683. package/dist/modules/manager/gitlabci/types.js.map +0 -1
@@ -12,26 +12,26 @@ export declare const QueryResultZodSchema: z.ZodEffects<z.ZodUnion<[z.ZodArray<z
12
12
  indentation: z.ZodOptional<z.ZodString>;
13
13
  }, "strip", z.ZodTypeAny, {
14
14
  datasource?: string | undefined;
15
+ registryUrl?: string | undefined;
16
+ packageName?: string | undefined;
15
17
  currentValue?: string | undefined;
16
18
  depName?: string | undefined;
17
- depType?: string | undefined;
18
19
  currentDigest?: string | undefined;
19
- packageName?: string | undefined;
20
+ depType?: string | undefined;
20
21
  versioning?: string | undefined;
21
22
  extractVersion?: string | undefined;
22
23
  indentation?: string | undefined;
23
- registryUrl?: string | undefined;
24
24
  }, {
25
25
  datasource?: string | undefined;
26
+ registryUrl?: string | undefined;
27
+ packageName?: string | undefined;
26
28
  currentValue?: string | undefined;
27
29
  depName?: string | undefined;
28
- depType?: string | undefined;
29
30
  currentDigest?: string | undefined;
30
- packageName?: string | undefined;
31
+ depType?: string | undefined;
31
32
  versioning?: string | undefined;
32
33
  extractVersion?: string | undefined;
33
34
  indentation?: string | undefined;
34
- registryUrl?: string | undefined;
35
35
  }>, "many">, z.ZodObject<{
36
36
  currentValue: z.ZodOptional<z.ZodString>;
37
37
  datasource: z.ZodOptional<z.ZodString>;
@@ -45,57 +45,57 @@ export declare const QueryResultZodSchema: z.ZodEffects<z.ZodUnion<[z.ZodArray<z
45
45
  indentation: z.ZodOptional<z.ZodString>;
46
46
  }, "strip", z.ZodTypeAny, {
47
47
  datasource?: string | undefined;
48
+ registryUrl?: string | undefined;
49
+ packageName?: string | undefined;
48
50
  currentValue?: string | undefined;
49
51
  depName?: string | undefined;
50
- depType?: string | undefined;
51
52
  currentDigest?: string | undefined;
52
- packageName?: string | undefined;
53
+ depType?: string | undefined;
53
54
  versioning?: string | undefined;
54
55
  extractVersion?: string | undefined;
55
56
  indentation?: string | undefined;
56
- registryUrl?: string | undefined;
57
57
  }, {
58
58
  datasource?: string | undefined;
59
+ registryUrl?: string | undefined;
60
+ packageName?: string | undefined;
59
61
  currentValue?: string | undefined;
60
62
  depName?: string | undefined;
61
- depType?: string | undefined;
62
63
  currentDigest?: string | undefined;
63
- packageName?: string | undefined;
64
+ depType?: string | undefined;
64
65
  versioning?: string | undefined;
65
66
  extractVersion?: string | undefined;
66
67
  indentation?: string | undefined;
67
- registryUrl?: string | undefined;
68
68
  }>]>, {
69
69
  datasource?: string | undefined;
70
+ registryUrl?: string | undefined;
71
+ packageName?: string | undefined;
70
72
  currentValue?: string | undefined;
71
73
  depName?: string | undefined;
72
- depType?: string | undefined;
73
74
  currentDigest?: string | undefined;
74
- packageName?: string | undefined;
75
+ depType?: string | undefined;
75
76
  versioning?: string | undefined;
76
77
  extractVersion?: string | undefined;
77
78
  indentation?: string | undefined;
78
- registryUrl?: string | undefined;
79
79
  }[], {
80
80
  datasource?: string | undefined;
81
+ registryUrl?: string | undefined;
82
+ packageName?: string | undefined;
81
83
  currentValue?: string | undefined;
82
84
  depName?: string | undefined;
83
- depType?: string | undefined;
84
85
  currentDigest?: string | undefined;
85
- packageName?: string | undefined;
86
+ depType?: string | undefined;
86
87
  versioning?: string | undefined;
87
88
  extractVersion?: string | undefined;
88
89
  indentation?: string | undefined;
89
- registryUrl?: string | undefined;
90
90
  } | {
91
91
  datasource?: string | undefined;
92
+ registryUrl?: string | undefined;
93
+ packageName?: string | undefined;
92
94
  currentValue?: string | undefined;
93
95
  depName?: string | undefined;
94
- depType?: string | undefined;
95
96
  currentDigest?: string | undefined;
96
- packageName?: string | undefined;
97
+ depType?: string | undefined;
97
98
  versioning?: string | undefined;
98
99
  extractVersion?: string | undefined;
99
100
  indentation?: string | undefined;
100
- registryUrl?: string | undefined;
101
101
  }[]>;
@@ -4,6 +4,7 @@ exports.displayName = exports.supportedDatasources = exports.defaultConfig = exp
4
4
  exports.extractPackageFile = extractPackageFile;
5
5
  const tslib_1 = require("tslib");
6
6
  const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
7
+ const logger_1 = require("../../../../logger");
7
8
  const utils_1 = require("../utils");
8
9
  const strategies_1 = require("./strategies");
9
10
  exports.categories = ['custom'];
@@ -47,6 +48,7 @@ function extractPackageFile(content, packageFile, config) {
47
48
  }
48
49
  return res;
49
50
  }
51
+ logger_1.logger.debug({ packageFile }, 'No dependencies found in file for custom regex manager');
50
52
  return null;
51
53
  }
52
54
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/custom/regex/index.ts"],"names":[],"mappings":";;;AAoBA,gDAoDC;;AAxED,kEAAkC;AAQlC,oCAA4C;AAC5C,6CAA6E;AAGhE,QAAA,UAAU,GAAe,CAAC,QAAQ,CAAC,CAAC;AAEpC,QAAA,aAAa,GAAG;IAC3B,UAAU,EAAE,KAAK;CAClB,CAAC;AACW,QAAA,oBAAoB,GAAG,CAAC,GAAG,CAAC,CAAC;AAC7B,QAAA,WAAW,GAAG,OAAO,CAAC;AAEnC,SAAgB,kBAAkB,CAChC,OAAe,EACf,WAAmB,EACnB,MAAqB;IAErB,IAAI,IAAyB,CAAC;IAC9B,QAAQ,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACpC,QAAQ;QACR,KAAK,KAAK;YACR,IAAI,GAAG,IAAA,sBAAS,EAAC,OAAO,EAAE,WAAW,EAAE,MAA4B,CAAC,CAAC;YACrE,MAAM;QACR,KAAK,aAAa;YAChB,IAAI,GAAG,IAAA,8BAAiB,EACtB,OAAO,EACP,WAAW,EACX,MAA4B,CAC7B,CAAC;YACF,MAAM;QACR,KAAK,WAAW;YACd,IAAI,GAAG,IAAA,4BAAe,EACpB,OAAO,EACP,WAAW,EACX,MAA4B,CAC7B,CAAC;YACF,MAAM;IACV,CAAC;IAED,yBAAyB;IACzB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,GAAG,GAA+C;YACtD,IAAI;YACJ,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC;QACF,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;YAChC,GAAG,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;QACzD,CAAC;QACD,sCAAsC;QACtC,KAAK,MAAM,KAAK,IAAI,wBAAgB,CAAC,GAAG,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,UAAyC,CACrD,EAAE,CAAC;YACF,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClB,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;YACrC,GAAG,CAAC,yBAAyB,GAAG,MAAM,CAAC,yBAAyB,CAAC;QACnE,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport type { Category } from '../../../../constants';\nimport type {\n ExtractConfig,\n MaybePromise,\n PackageDependency,\n PackageFileContent,\n} from '../../types';\nimport { validMatchFields } from '../utils';\nimport { handleAny, handleCombination, handleRecursive } from './strategies';\nimport type { RegexManagerConfig, RegexManagerTemplates } from './types';\n\nexport const categories: Category[] = ['custom'];\n\nexport const defaultConfig = {\n pinDigests: false,\n};\nexport const supportedDatasources = ['*'];\nexport const displayName = 'Regex';\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): MaybePromise<PackageFileContent | null> {\n let deps: PackageDependency[];\n switch (config.matchStringsStrategy) {\n default:\n case 'any':\n deps = handleAny(content, packageFile, config as RegexManagerConfig);\n break;\n case 'combination':\n deps = handleCombination(\n content,\n packageFile,\n config as RegexManagerConfig,\n );\n break;\n case 'recursive':\n deps = handleRecursive(\n content,\n packageFile,\n config as RegexManagerConfig,\n );\n break;\n }\n\n // filter all null values\n deps = deps.filter(is.truthy);\n if (deps.length) {\n const res: PackageFileContent & RegexManagerTemplates = {\n deps,\n matchStrings: config.matchStrings,\n };\n if (config.matchStringsStrategy) {\n res.matchStringsStrategy = config.matchStringsStrategy;\n }\n // copy over templates for autoreplace\n for (const field of validMatchFields.map(\n (f) => `${f}Template` as keyof RegexManagerTemplates,\n )) {\n if (config[field]) {\n res[field] = config[field];\n }\n }\n if (config.autoReplaceStringTemplate) {\n res.autoReplaceStringTemplate = config.autoReplaceStringTemplate;\n }\n return res;\n }\n\n return null;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../lib/modules/manager/custom/regex/index.ts"],"names":[],"mappings":";;;AAqBA,gDAwDC;;AA7ED,kEAAkC;AAElC,+CAA4C;AAO5C,oCAA4C;AAC5C,6CAA6E;AAGhE,QAAA,UAAU,GAAe,CAAC,QAAQ,CAAC,CAAC;AAEpC,QAAA,aAAa,GAAG;IAC3B,UAAU,EAAE,KAAK;CAClB,CAAC;AACW,QAAA,oBAAoB,GAAG,CAAC,GAAG,CAAC,CAAC;AAC7B,QAAA,WAAW,GAAG,OAAO,CAAC;AAEnC,SAAgB,kBAAkB,CAChC,OAAe,EACf,WAAmB,EACnB,MAAqB;IAErB,IAAI,IAAyB,CAAC;IAC9B,QAAQ,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACpC,QAAQ;QACR,KAAK,KAAK;YACR,IAAI,GAAG,IAAA,sBAAS,EAAC,OAAO,EAAE,WAAW,EAAE,MAA4B,CAAC,CAAC;YACrE,MAAM;QACR,KAAK,aAAa;YAChB,IAAI,GAAG,IAAA,8BAAiB,EACtB,OAAO,EACP,WAAW,EACX,MAA4B,CAC7B,CAAC;YACF,MAAM;QACR,KAAK,WAAW;YACd,IAAI,GAAG,IAAA,4BAAe,EACpB,OAAO,EACP,WAAW,EACX,MAA4B,CAC7B,CAAC;YACF,MAAM;IACV,CAAC;IAED,yBAAyB;IACzB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,YAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,GAAG,GAA+C;YACtD,IAAI;YACJ,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC;QACF,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;YAChC,GAAG,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;QACzD,CAAC;QACD,sCAAsC;QACtC,KAAK,MAAM,KAAK,IAAI,wBAAgB,CAAC,GAAG,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,UAAyC,CACrD,EAAE,CAAC;YACF,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClB,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;YACrC,GAAG,CAAC,yBAAyB,GAAG,MAAM,CAAC,yBAAyB,CAAC;QACnE,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,eAAM,CAAC,KAAK,CACV,EAAE,WAAW,EAAE,EACf,wDAAwD,CACzD,CAAC;IAEF,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport type { Category } from '../../../../constants';\nimport { logger } from '../../../../logger';\nimport type {\n ExtractConfig,\n MaybePromise,\n PackageDependency,\n PackageFileContent,\n} from '../../types';\nimport { validMatchFields } from '../utils';\nimport { handleAny, handleCombination, handleRecursive } from './strategies';\nimport type { RegexManagerConfig, RegexManagerTemplates } from './types';\n\nexport const categories: Category[] = ['custom'];\n\nexport const defaultConfig = {\n pinDigests: false,\n};\nexport const supportedDatasources = ['*'];\nexport const displayName = 'Regex';\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n config: ExtractConfig,\n): MaybePromise<PackageFileContent | null> {\n let deps: PackageDependency[];\n switch (config.matchStringsStrategy) {\n default:\n case 'any':\n deps = handleAny(content, packageFile, config as RegexManagerConfig);\n break;\n case 'combination':\n deps = handleCombination(\n content,\n packageFile,\n config as RegexManagerConfig,\n );\n break;\n case 'recursive':\n deps = handleRecursive(\n content,\n packageFile,\n config as RegexManagerConfig,\n );\n break;\n }\n\n // filter all null values\n deps = deps.filter(is.truthy);\n if (deps.length) {\n const res: PackageFileContent & RegexManagerTemplates = {\n deps,\n matchStrings: config.matchStrings,\n };\n if (config.matchStringsStrategy) {\n res.matchStringsStrategy = config.matchStringsStrategy;\n }\n // copy over templates for autoreplace\n for (const field of validMatchFields.map(\n (f) => `${f}Template` as keyof RegexManagerTemplates,\n )) {\n if (config[field]) {\n res[field] = config[field];\n }\n }\n if (config.autoReplaceStringTemplate) {\n res.autoReplaceStringTemplate = config.autoReplaceStringTemplate;\n }\n return res;\n }\n logger.debug(\n { packageFile },\n 'No dependencies found in file for custom regex manager',\n );\n\n return null;\n}\n"]}
@@ -4,6 +4,7 @@ exports.extractPackageFile = extractPackageFile;
4
4
  const tslib_1 = require("tslib");
5
5
  const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
6
6
  const regex_1 = require("../../../util/regex");
7
+ const url_1 = require("../../../util/url");
7
8
  const bitbucket_tags_1 = require("../../datasource/bitbucket-tags");
8
9
  const clojure_1 = require("../../datasource/clojure");
9
10
  const common_1 = require("../../datasource/clojure/common");
@@ -81,7 +82,7 @@ function resolveGitPackageFromEdnVal(dep, val) {
81
82
  }
82
83
  dep.datasource = git_refs_1.GitRefsDatasource.id;
83
84
  dep.packageName = gitUrl;
84
- if (gitUrl.startsWith('https://')) {
85
+ if ((0, url_1.isHttpUrl)(gitUrl)) {
85
86
  dep.sourceUrl = gitUrl.replace(/\.git$/, '');
86
87
  }
87
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/deps-edn/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { regEx } from '../../../util/regex';\nimport { BitbucketTagsDatasource } from '../../datasource/bitbucket-tags';\nimport { ClojureDatasource } from '../../datasource/clojure';\nimport { CLOJARS_REPO } from '../../datasource/clojure/common';\nimport { GitRefsDatasource } from '../../datasource/git-refs';\nimport { GithubTagsDatasource } from '../../datasource/github-tags';\nimport { GitlabTagsDatasource } from '../../datasource/gitlab-tags';\nimport { MAVEN_REPO } from '../../datasource/maven/common';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport { parseDepsEdnFile } from './parser';\nimport type {\n ParsedEdnData,\n ParsedEdnMetadata,\n ParsedEdnRecord,\n} from './types';\n\nconst dependencyRegex = regEx(\n /^(?<groupId>[a-zA-Z][-_a-zA-Z0-9]*(?:\\.[a-zA-Z0-9][-_a-zA-Z0-9]*)*)(?:\\/(?<artifactId>[a-zA-Z][-_a-zA-Z0-9]*(?:\\.[a-zA-Z0-9][-_a-zA-Z0-9]*)*))?$/,\n);\n\nfunction getPackageName(depName: string): string | null {\n const matchGroups = dependencyRegex.exec(depName)?.groups;\n if (matchGroups) {\n const groupId = matchGroups.groupId;\n const artifactId = matchGroups.artifactId\n ? matchGroups.artifactId\n : groupId;\n return `${groupId}:${artifactId}`;\n }\n\n return null;\n}\n\nconst githubDependencyRegex = regEx(\n /^(?:com|io)\\.github\\.(?<packageName>[^/]+\\/[^/]+)$/,\n);\nconst gitlabDependencyRegex = regEx(\n /^(?:com|io)\\.gitlab\\.(?<packageName>[^/]+\\/[^/]+)$/,\n);\nconst bitbucketDependencyRegex = regEx(\n /^(?:org|io)\\.bitbucket\\.(?<packageName>[^/]+\\/[^/]+)$/,\n);\n\nfunction resolveGitPackageFromEdnKey(\n dep: PackageDependency,\n key: string,\n): void {\n if (dep.datasource) {\n return;\n }\n\n const githubDependencyGroups = githubDependencyRegex.exec(key)?.groups;\n if (githubDependencyGroups?.packageName) {\n dep.datasource = GithubTagsDatasource.id;\n dep.packageName = githubDependencyGroups.packageName;\n return;\n }\n\n const gitlabDependencyGroups = gitlabDependencyRegex.exec(key)?.groups;\n if (gitlabDependencyGroups?.packageName) {\n dep.datasource = GitlabTagsDatasource.id;\n dep.packageName = gitlabDependencyGroups.packageName;\n return;\n }\n\n const bitbucketDependencyGroups = bitbucketDependencyRegex.exec(key)?.groups;\n if (bitbucketDependencyGroups?.packageName) {\n dep.datasource = BitbucketTagsDatasource.id;\n dep.packageName = bitbucketDependencyGroups.packageName;\n return;\n }\n}\n\nconst githubUrlRegex = regEx(\n /^(?:https:\\/\\/|git@)github\\.com[/:](?<packageName>[^/]+\\/[^/]+?)(?:\\.git)?$/,\n);\nconst gitlabUrlRegex = regEx(\n /^(?:https:\\/\\/|git@)gitlab\\.com[/:](?<packageName>[^/]+\\/[^/]+?)(?:\\.git)?$/,\n);\nconst bitbucketUrlRegex = regEx(\n /^(?:https:\\/\\/|git@)bitbucket\\.org[/:](?<packageName>[^/]+\\/[^/]+?)(?:\\.git)?$/,\n);\n\nfunction resolveGitPackageFromEdnVal(\n dep: PackageDependency,\n val: ParsedEdnRecord,\n): void {\n const gitUrl = val['git/url'];\n if (!is.string(gitUrl)) {\n return;\n }\n\n const githubMatchGroups = githubUrlRegex.exec(gitUrl)?.groups;\n if (githubMatchGroups) {\n dep.datasource = GithubTagsDatasource.id;\n dep.packageName = githubMatchGroups.packageName;\n dep.sourceUrl = `https://github.com/${dep.packageName}`;\n return;\n }\n\n const gitlabMatchGroups = gitlabUrlRegex.exec(gitUrl)?.groups;\n const bitbucketMatchGroups = bitbucketUrlRegex.exec(gitUrl)?.groups;\n\n if (gitlabMatchGroups) {\n dep.datasource = GitlabTagsDatasource.id;\n dep.packageName = gitlabMatchGroups.packageName;\n dep.sourceUrl = `https://gitlab.com/${dep.packageName}`;\n return;\n }\n\n if (bitbucketMatchGroups) {\n dep.datasource = GitlabTagsDatasource.id;\n dep.packageName = bitbucketMatchGroups.packageName;\n dep.sourceUrl = `https://bitbucket.org/${dep.packageName}`;\n return;\n }\n\n dep.datasource = GitRefsDatasource.id;\n dep.packageName = gitUrl;\n if (gitUrl.startsWith('https://')) {\n dep.sourceUrl = gitUrl.replace(/\\.git$/, '');\n }\n}\n\nfunction extractDependency(\n key: string,\n val: ParsedEdnData,\n metadata: ParsedEdnMetadata,\n mavenRegistries: string[],\n depType?: string,\n): PackageDependency | null {\n if (!is.plainObject(val)) {\n return null;\n }\n\n const packageName = getPackageName(key);\n if (!packageName) {\n return null;\n }\n const depName = key;\n\n const dep: PackageDependency = {\n depName,\n packageName,\n currentValue: null,\n ...metadata.get(val),\n };\n\n if (depType) {\n dep.depType = depType;\n }\n\n const mvnVersion = val['mvn/version'];\n if (is.string(mvnVersion)) {\n dep.datasource = ClojureDatasource.id;\n dep.currentValue = mvnVersion;\n dep.packageName = packageName.replace('/', ':');\n dep.registryUrls = [...mavenRegistries];\n return dep;\n }\n\n resolveGitPackageFromEdnVal(dep, val);\n resolveGitPackageFromEdnKey(dep, key);\n\n if (dep.datasource) {\n const gitTag = val['git/tag'];\n if (is.string(gitTag)) {\n dep.currentValue = gitTag;\n }\n\n const gitSha = val['git/sha'] ?? val.sha;\n if (is.string(gitSha)) {\n dep.currentDigest = gitSha;\n dep.currentDigestShort = gitSha.slice(0, 7);\n }\n\n return dep;\n }\n\n return null;\n}\n\nfunction extractSection(\n section: ParsedEdnData,\n metadata: ParsedEdnMetadata,\n mavenRegistries: string[],\n depType?: string,\n): PackageDependency[] {\n const deps: PackageDependency[] = [];\n if (is.plainObject(section)) {\n for (const [key, val] of Object.entries(section)) {\n const dep = extractDependency(\n key,\n val,\n metadata,\n mavenRegistries,\n depType,\n );\n if (dep) {\n deps.push(dep);\n }\n }\n }\n return deps;\n}\n\nexport function extractPackageFile(content: string): PackageFileContent | null {\n const parsed = parseDepsEdnFile(content);\n if (!parsed) {\n return null;\n }\n const { data, metadata } = parsed;\n\n const deps: PackageDependency[] = [];\n\n // See: https://clojure.org/reference/deps_and_cli#_modifying_the_default_repositories\n const registryMap: Record<string, string> = {\n clojars: CLOJARS_REPO,\n central: MAVEN_REPO,\n };\n const mavenRepos = data['mvn/repos'];\n if (is.plainObject(mavenRepos)) {\n for (const [repoName, repoSpec] of Object.entries(mavenRepos)) {\n if (is.string(repoName)) {\n if (is.plainObject(repoSpec) && is.string(repoSpec.url)) {\n registryMap[repoName] = repoSpec.url;\n } else if (is.string(repoSpec) && repoSpec === 'nil') {\n delete registryMap[repoName];\n }\n }\n }\n }\n const mavenRegistries: string[] = [...Object.values(registryMap)];\n\n deps.push(...extractSection(data.deps, metadata, mavenRegistries));\n\n const aliases = data.aliases;\n if (is.plainObject(aliases)) {\n for (const [depType, aliasSection] of Object.entries(aliases)) {\n if (is.plainObject(aliasSection)) {\n deps.push(\n ...extractSection(\n aliasSection['extra-deps'],\n metadata,\n mavenRegistries,\n depType,\n ),\n );\n deps.push(\n ...extractSection(\n aliasSection['override-deps'],\n metadata,\n mavenRegistries,\n depType,\n ),\n );\n }\n }\n }\n\n return { deps };\n}\n"]}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/deps-edn/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { regEx } from '../../../util/regex';\nimport { isHttpUrl } from '../../../util/url';\nimport { BitbucketTagsDatasource } from '../../datasource/bitbucket-tags';\nimport { ClojureDatasource } from '../../datasource/clojure';\nimport { CLOJARS_REPO } from '../../datasource/clojure/common';\nimport { GitRefsDatasource } from '../../datasource/git-refs';\nimport { GithubTagsDatasource } from '../../datasource/github-tags';\nimport { GitlabTagsDatasource } from '../../datasource/gitlab-tags';\nimport { MAVEN_REPO } from '../../datasource/maven/common';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport { parseDepsEdnFile } from './parser';\nimport type {\n ParsedEdnData,\n ParsedEdnMetadata,\n ParsedEdnRecord,\n} from './types';\n\nconst dependencyRegex = regEx(\n /^(?<groupId>[a-zA-Z][-_a-zA-Z0-9]*(?:\\.[a-zA-Z0-9][-_a-zA-Z0-9]*)*)(?:\\/(?<artifactId>[a-zA-Z][-_a-zA-Z0-9]*(?:\\.[a-zA-Z0-9][-_a-zA-Z0-9]*)*))?$/,\n);\n\nfunction getPackageName(depName: string): string | null {\n const matchGroups = dependencyRegex.exec(depName)?.groups;\n if (matchGroups) {\n const groupId = matchGroups.groupId;\n const artifactId = matchGroups.artifactId\n ? matchGroups.artifactId\n : groupId;\n return `${groupId}:${artifactId}`;\n }\n\n return null;\n}\n\nconst githubDependencyRegex = regEx(\n /^(?:com|io)\\.github\\.(?<packageName>[^/]+\\/[^/]+)$/,\n);\nconst gitlabDependencyRegex = regEx(\n /^(?:com|io)\\.gitlab\\.(?<packageName>[^/]+\\/[^/]+)$/,\n);\nconst bitbucketDependencyRegex = regEx(\n /^(?:org|io)\\.bitbucket\\.(?<packageName>[^/]+\\/[^/]+)$/,\n);\n\nfunction resolveGitPackageFromEdnKey(\n dep: PackageDependency,\n key: string,\n): void {\n if (dep.datasource) {\n return;\n }\n\n const githubDependencyGroups = githubDependencyRegex.exec(key)?.groups;\n if (githubDependencyGroups?.packageName) {\n dep.datasource = GithubTagsDatasource.id;\n dep.packageName = githubDependencyGroups.packageName;\n return;\n }\n\n const gitlabDependencyGroups = gitlabDependencyRegex.exec(key)?.groups;\n if (gitlabDependencyGroups?.packageName) {\n dep.datasource = GitlabTagsDatasource.id;\n dep.packageName = gitlabDependencyGroups.packageName;\n return;\n }\n\n const bitbucketDependencyGroups = bitbucketDependencyRegex.exec(key)?.groups;\n if (bitbucketDependencyGroups?.packageName) {\n dep.datasource = BitbucketTagsDatasource.id;\n dep.packageName = bitbucketDependencyGroups.packageName;\n return;\n }\n}\n\nconst githubUrlRegex = regEx(\n /^(?:https:\\/\\/|git@)github\\.com[/:](?<packageName>[^/]+\\/[^/]+?)(?:\\.git)?$/,\n);\nconst gitlabUrlRegex = regEx(\n /^(?:https:\\/\\/|git@)gitlab\\.com[/:](?<packageName>[^/]+\\/[^/]+?)(?:\\.git)?$/,\n);\nconst bitbucketUrlRegex = regEx(\n /^(?:https:\\/\\/|git@)bitbucket\\.org[/:](?<packageName>[^/]+\\/[^/]+?)(?:\\.git)?$/,\n);\n\nfunction resolveGitPackageFromEdnVal(\n dep: PackageDependency,\n val: ParsedEdnRecord,\n): void {\n const gitUrl = val['git/url'];\n if (!is.string(gitUrl)) {\n return;\n }\n\n const githubMatchGroups = githubUrlRegex.exec(gitUrl)?.groups;\n if (githubMatchGroups) {\n dep.datasource = GithubTagsDatasource.id;\n dep.packageName = githubMatchGroups.packageName;\n dep.sourceUrl = `https://github.com/${dep.packageName}`;\n return;\n }\n\n const gitlabMatchGroups = gitlabUrlRegex.exec(gitUrl)?.groups;\n const bitbucketMatchGroups = bitbucketUrlRegex.exec(gitUrl)?.groups;\n\n if (gitlabMatchGroups) {\n dep.datasource = GitlabTagsDatasource.id;\n dep.packageName = gitlabMatchGroups.packageName;\n dep.sourceUrl = `https://gitlab.com/${dep.packageName}`;\n return;\n }\n\n if (bitbucketMatchGroups) {\n dep.datasource = GitlabTagsDatasource.id;\n dep.packageName = bitbucketMatchGroups.packageName;\n dep.sourceUrl = `https://bitbucket.org/${dep.packageName}`;\n return;\n }\n\n dep.datasource = GitRefsDatasource.id;\n dep.packageName = gitUrl;\n if (isHttpUrl(gitUrl)) {\n dep.sourceUrl = gitUrl.replace(/\\.git$/, '');\n }\n}\n\nfunction extractDependency(\n key: string,\n val: ParsedEdnData,\n metadata: ParsedEdnMetadata,\n mavenRegistries: string[],\n depType?: string,\n): PackageDependency | null {\n if (!is.plainObject(val)) {\n return null;\n }\n\n const packageName = getPackageName(key);\n if (!packageName) {\n return null;\n }\n const depName = key;\n\n const dep: PackageDependency = {\n depName,\n packageName,\n currentValue: null,\n ...metadata.get(val),\n };\n\n if (depType) {\n dep.depType = depType;\n }\n\n const mvnVersion = val['mvn/version'];\n if (is.string(mvnVersion)) {\n dep.datasource = ClojureDatasource.id;\n dep.currentValue = mvnVersion;\n dep.packageName = packageName.replace('/', ':');\n dep.registryUrls = [...mavenRegistries];\n return dep;\n }\n\n resolveGitPackageFromEdnVal(dep, val);\n resolveGitPackageFromEdnKey(dep, key);\n\n if (dep.datasource) {\n const gitTag = val['git/tag'];\n if (is.string(gitTag)) {\n dep.currentValue = gitTag;\n }\n\n const gitSha = val['git/sha'] ?? val.sha;\n if (is.string(gitSha)) {\n dep.currentDigest = gitSha;\n dep.currentDigestShort = gitSha.slice(0, 7);\n }\n\n return dep;\n }\n\n return null;\n}\n\nfunction extractSection(\n section: ParsedEdnData,\n metadata: ParsedEdnMetadata,\n mavenRegistries: string[],\n depType?: string,\n): PackageDependency[] {\n const deps: PackageDependency[] = [];\n if (is.plainObject(section)) {\n for (const [key, val] of Object.entries(section)) {\n const dep = extractDependency(\n key,\n val,\n metadata,\n mavenRegistries,\n depType,\n );\n if (dep) {\n deps.push(dep);\n }\n }\n }\n return deps;\n}\n\nexport function extractPackageFile(content: string): PackageFileContent | null {\n const parsed = parseDepsEdnFile(content);\n if (!parsed) {\n return null;\n }\n const { data, metadata } = parsed;\n\n const deps: PackageDependency[] = [];\n\n // See: https://clojure.org/reference/deps_and_cli#_modifying_the_default_repositories\n const registryMap: Record<string, string> = {\n clojars: CLOJARS_REPO,\n central: MAVEN_REPO,\n };\n const mavenRepos = data['mvn/repos'];\n if (is.plainObject(mavenRepos)) {\n for (const [repoName, repoSpec] of Object.entries(mavenRepos)) {\n if (is.string(repoName)) {\n if (is.plainObject(repoSpec) && is.string(repoSpec.url)) {\n registryMap[repoName] = repoSpec.url;\n } else if (is.string(repoSpec) && repoSpec === 'nil') {\n delete registryMap[repoName];\n }\n }\n }\n }\n const mavenRegistries: string[] = [...Object.values(registryMap)];\n\n deps.push(...extractSection(data.deps, metadata, mavenRegistries));\n\n const aliases = data.aliases;\n if (is.plainObject(aliases)) {\n for (const [depType, aliasSection] of Object.entries(aliases)) {\n if (is.plainObject(aliasSection)) {\n deps.push(\n ...extractSection(\n aliasSection['extra-deps'],\n metadata,\n mavenRegistries,\n depType,\n ),\n );\n deps.push(\n ...extractSection(\n aliasSection['override-deps'],\n metadata,\n mavenRegistries,\n depType,\n ),\n );\n }\n }\n }\n\n return { deps };\n}\n"]}
@@ -1,2 +1,2 @@
1
1
  import type { UpdateArtifact, UpdateArtifactsResult } from '../types';
2
- export declare function updateArtifacts(updateConfig: UpdateArtifact): Promise<UpdateArtifactsResult[] | null>;
2
+ export declare function updateArtifacts({ config: { constraints, isLockFileMaintenance, updateType }, packageFileName, updatedDeps, }: UpdateArtifact): Promise<UpdateArtifactsResult[] | null>;
@@ -3,34 +3,51 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateArtifacts = updateArtifacts;
4
4
  const tslib_1 = require("tslib");
5
5
  const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
6
+ const semver_1 = tslib_1.__importDefault(require("semver"));
7
+ const shlex_1 = require("shlex");
6
8
  const logger_1 = require("../../../logger");
7
9
  const exec_1 = require("../../../util/exec");
8
10
  const fs_1 = require("../../../util/fs");
9
- async function updateArtifacts(updateConfig) {
10
- const lockFileName = (0, fs_1.getSiblingFileName)(updateConfig.packageFileName, 'devbox.lock');
11
+ async function updateArtifacts({ config: { constraints, isLockFileMaintenance, updateType }, packageFileName, updatedDeps, }) {
12
+ const lockFileName = (0, fs_1.getSiblingFileName)(packageFileName, 'devbox.lock');
11
13
  const existingLockFileContent = await (0, fs_1.readLocalFile)(lockFileName, 'utf8');
12
14
  if (!existingLockFileContent) {
13
15
  logger_1.logger.debug('No devbox.lock found');
14
16
  return null;
15
17
  }
18
+ const supportsNoInstall = constraints?.devbox
19
+ ? semver_1.default.intersects(constraints.devbox, '>=0.14.0')
20
+ : true;
16
21
  const execOptions = {
17
- cwdFile: updateConfig.packageFileName,
22
+ cwdFile: packageFileName,
18
23
  toolConstraints: [
19
24
  {
20
25
  toolName: 'devbox',
21
- constraint: updateConfig.config.constraints?.devbox,
26
+ constraint: constraints?.devbox,
22
27
  },
23
28
  ],
24
29
  docker: {},
25
- userConfiguredEnv: updateConfig.config.env,
26
30
  };
27
- let cmd = '';
28
- if (updateConfig.config.isLockFileMaintenance ||
29
- updateConfig.config.updateType === 'lockFileMaintenance') {
30
- cmd += 'devbox update';
31
+ const cmd = [];
32
+ if (isLockFileMaintenance) {
33
+ cmd.push(supportsNoInstall ? 'devbox update --no-install' : 'devbox update');
31
34
  }
32
- else if (is_1.default.nonEmptyArray(updateConfig.updatedDeps)) {
33
- cmd += 'devbox install';
35
+ else if (is_1.default.nonEmptyArray(updatedDeps)) {
36
+ if (supportsNoInstall) {
37
+ const updateCommands = updatedDeps
38
+ .map((dep) => dep.depName && `devbox update ${(0, shlex_1.quote)(dep.depName)} --no-install`)
39
+ .filter((dep) => Boolean(dep));
40
+ if (updateCommands.length) {
41
+ cmd.push(...updateCommands);
42
+ }
43
+ else {
44
+ logger_1.logger.trace('No updated devbox packages - returning null');
45
+ return null;
46
+ }
47
+ }
48
+ else {
49
+ cmd.push('devbox install');
50
+ }
34
51
  }
35
52
  else {
36
53
  logger_1.logger.trace('No updated devbox packages - returning null');
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devbox/artifacts.ts"],"names":[],"mappings":";;AAOA,0CA0EC;;AAjFD,kEAAkC;AAClC,4CAAyC;AACzC,6CAA0C;AAE1C,yCAAqE;AAG9D,KAAK,UAAU,eAAe,CACnC,YAA4B;IAE5B,MAAM,YAAY,GAAG,IAAA,uBAAkB,EACrC,YAAY,CAAC,eAAe,EAC5B,aAAa,CACd,CAAC;IACF,MAAM,uBAAuB,GAAG,MAAM,IAAA,kBAAa,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC1E,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,eAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,WAAW,GAAgB;QAC/B,OAAO,EAAE,YAAY,CAAC,eAAe;QACrC,eAAe,EAAE;YACf;gBACE,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM;aACpD;SACF;QACD,MAAM,EAAE,EAAE;QACV,iBAAiB,EAAE,YAAY,CAAC,MAAM,CAAC,GAAG;KAC3C,CAAC;IAEF,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IACE,YAAY,CAAC,MAAM,CAAC,qBAAqB;QACzC,YAAY,CAAC,MAAM,CAAC,UAAU,KAAK,qBAAqB,EACxD,CAAC;QACD,GAAG,IAAI,eAAe,CAAC;IACzB,CAAC;SAAM,IAAI,YAAE,CAAC,aAAa,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;QACtD,GAAG,IAAI,gBAAgB,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,eAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,kBAAkB,GAAG,MAAM,IAAA,kBAAa,EAAC,YAAY,CAAC,CAAC;IAC7D,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,eAAM,CAAC,KAAK,CAAC,MAAM,YAAY,QAAQ,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAA,WAAI,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC7B,MAAM,kBAAkB,GAAG,MAAM,IAAA,kBAAa,EAAC,YAAY,CAAC,CAAC;QAE7D,IACE,CAAC,kBAAkB;YACnB,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAC5D,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC9C,OAAO;YACL;gBACE,IAAI,EAAE;oBACJ,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,YAAY;oBAClB,QAAQ,EAAE,kBAAkB;iBAC7B;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,eAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,4BAA4B,CAAC,CAAC;QACnD,OAAO;YACL;gBACE,aAAa,EAAE;oBACb,QAAQ,EAAE,YAAY;oBACtB,MAAM,EAAE,GAAG,CAAC,OAAO;iBACpB;aACF;SACF,CAAC;IACJ,CAAC;AACH,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions } from '../../../util/exec/types';\nimport { getSiblingFileName, readLocalFile } from '../../../util/fs';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\n\nexport async function updateArtifacts(\n updateConfig: UpdateArtifact,\n): Promise<UpdateArtifactsResult[] | null> {\n const lockFileName = getSiblingFileName(\n updateConfig.packageFileName,\n 'devbox.lock',\n );\n const existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n logger.debug('No devbox.lock found');\n return null;\n }\n const execOptions: ExecOptions = {\n cwdFile: updateConfig.packageFileName,\n toolConstraints: [\n {\n toolName: 'devbox',\n constraint: updateConfig.config.constraints?.devbox,\n },\n ],\n docker: {},\n userConfiguredEnv: updateConfig.config.env,\n };\n\n let cmd = '';\n if (\n updateConfig.config.isLockFileMaintenance ||\n updateConfig.config.updateType === 'lockFileMaintenance'\n ) {\n cmd += 'devbox update';\n } else if (is.nonEmptyArray(updateConfig.updatedDeps)) {\n cmd += 'devbox install';\n } else {\n logger.trace('No updated devbox packages - returning null');\n return null;\n }\n\n const oldLockFileContent = await readLocalFile(lockFileName);\n if (!oldLockFileContent) {\n logger.trace(`No ${lockFileName} found`);\n return null;\n }\n\n try {\n await exec(cmd, execOptions);\n const newLockFileContent = await readLocalFile(lockFileName);\n\n if (\n !newLockFileContent ||\n Buffer.compare(oldLockFileContent, newLockFileContent) === 0\n ) {\n return null;\n }\n logger.trace('Returning updated devbox.lock');\n return [\n {\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newLockFileContent,\n },\n },\n ];\n } catch (err) {\n logger.warn({ err }, 'Error updating devbox.lock');\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n}\n"]}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devbox/artifacts.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport semver from 'semver';\nimport { quote } from 'shlex';\nimport { logger } from '../../../logger';\nimport { exec } from '../../../util/exec';\nimport type { ExecOptions } from '../../../util/exec/types';\nimport { getSiblingFileName, readLocalFile } from '../../../util/fs';\nimport type { UpdateArtifact, UpdateArtifactsResult } from '../types';\n\nexport async function updateArtifacts({\n config: { constraints, isLockFileMaintenance, updateType },\n packageFileName,\n updatedDeps,\n}: UpdateArtifact): Promise<UpdateArtifactsResult[] | null> {\n const lockFileName = getSiblingFileName(packageFileName, 'devbox.lock');\n const existingLockFileContent = await readLocalFile(lockFileName, 'utf8');\n if (!existingLockFileContent) {\n logger.debug('No devbox.lock found');\n return null;\n }\n\n const supportsNoInstall = constraints?.devbox\n ? semver.intersects(constraints.devbox, '>=0.14.0')\n : true;\n\n const execOptions: ExecOptions = {\n cwdFile: packageFileName,\n toolConstraints: [\n {\n toolName: 'devbox',\n constraint: constraints?.devbox,\n },\n ],\n docker: {},\n };\n\n const cmd = [];\n if (isLockFileMaintenance) {\n cmd.push(\n supportsNoInstall ? 'devbox update --no-install' : 'devbox update',\n );\n } else if (is.nonEmptyArray(updatedDeps)) {\n if (supportsNoInstall) {\n const updateCommands: string[] = updatedDeps\n .map(\n (dep) =>\n dep.depName && `devbox update ${quote(dep.depName)} --no-install`,\n )\n .filter((dep): dep is string => Boolean(dep));\n if (updateCommands.length) {\n cmd.push(...updateCommands);\n } else {\n logger.trace('No updated devbox packages - returning null');\n return null;\n }\n } else {\n cmd.push('devbox install');\n }\n } else {\n logger.trace('No updated devbox packages - returning null');\n return null;\n }\n\n const oldLockFileContent = await readLocalFile(lockFileName);\n if (!oldLockFileContent) {\n logger.trace(`No ${lockFileName} found`);\n return null;\n }\n\n try {\n await exec(cmd, execOptions);\n const newLockFileContent = await readLocalFile(lockFileName);\n\n if (\n !newLockFileContent ||\n Buffer.compare(oldLockFileContent, newLockFileContent) === 0\n ) {\n return null;\n }\n logger.trace('Returning updated devbox.lock');\n return [\n {\n file: {\n type: 'addition',\n path: lockFileName,\n contents: newLockFileContent,\n },\n },\n ];\n } catch (err) {\n logger.warn({ err }, 'Error updating devbox.lock');\n return [\n {\n artifactError: {\n lockFile: lockFileName,\n stderr: err.message,\n },\n },\n ];\n }\n}\n"]}
@@ -41,5 +41,5 @@ exports.DevboxSchema = schema_utils_1.Jsonc.pipe(zod_1.z.object({
41
41
  .pipe((0, schema_utils_1.LooseArray)(DevboxEntry)),
42
42
  }))
43
43
  .transform(({ packages }) => packages)
44
- .catch((0, schema_utils_1.withDebugMessage)([], 'Devbox: error parsing file'));
44
+ .catch((0, schema_utils_1.withDebugMessage)([], 'Devbox: does not match schema'));
45
45
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devbox/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,4CAAyC;AACzC,6DAKoC;AACpC,oDAA2D;AAC3D,oDAAkE;AAGlE,MAAM,WAAW,GAAG,OAAC;KAClB,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;KACjB,GAAG,CAAC,CAAC,CAAC;KACN,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE;IACrC,MAAM,GAAG,GAAsB;QAC7B,UAAU,EAAE,yBAAgB,CAAC,EAAE;QAC/B,OAAO;KACR,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,EACX,iEAAiE,CAClE,CAAC;QACF,GAAG,CAAC,UAAU,GAAG,eAAe,CAAC;QACjC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC;IAEhC,IAAI,CAAC,YAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5C,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,EACX,iEAAiE,CAClE,CAAC;QACF,GAAG,CAAC,UAAU,GAAG,iBAAiB,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC,CAAC;AAEQ,QAAA,YAAY,GAAG,oBAAK,CAAC,IAAI,CACpC,OAAC,CAAC,MAAM,CAAC;IACP,QAAQ,EAAE,OAAC;SACR,KAAK,CAAC;QACL,IAAA,yBAAU,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACzD,IAAA,0BAAW,EACT,OAAC,CAAC,KAAK,CAAC;YACN,OAAC,CAAC,MAAM,EAAE;YACV,OAAC;iBACE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC;iBAC/B,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC;SACvC,CAAC,CACH,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KAC1C,CAAC;SACD,IAAI,CAAC,IAAA,yBAAU,EAAC,WAAW,CAAC,CAAC;CACjC,CAAC,CACH;KACE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC;KACrC,KAAK,CAAC,IAAA,+BAAgB,EAAC,EAAE,EAAE,4BAA4B,CAAC,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { logger } from '../../../logger';\nimport {\n Jsonc,\n LooseArray,\n LooseRecord,\n withDebugMessage,\n} from '../../../util/schema-utils';\nimport { DevboxDatasource } from '../../datasource/devbox';\nimport { api as devboxVersioning } from '../../versioning/devbox';\nimport type { PackageDependency } from '../types';\n\nconst DevboxEntry = z\n .array(z.string())\n .min(1)\n .transform(([depName, currentValue]) => {\n const dep: PackageDependency = {\n datasource: DevboxDatasource.id,\n depName,\n };\n\n if (!currentValue) {\n logger.trace(\n { depName },\n 'Devbox: skipping invalid devbox dependency in devbox JSON file.',\n );\n dep.skipReason = 'not-a-version';\n return dep;\n }\n\n dep.currentValue = currentValue;\n\n if (!devboxVersioning.isValid(currentValue)) {\n logger.debug(\n { depName },\n 'Devbox: skipping invalid devbox dependency in devbox JSON file.',\n );\n dep.skipReason = 'invalid-version';\n return dep;\n }\n\n return dep;\n });\n\nexport const DevboxSchema = Jsonc.pipe(\n z.object({\n packages: z\n .union([\n LooseArray(z.string().transform((pkg) => pkg.split('@'))),\n LooseRecord(\n z.union([\n z.string(),\n z\n .object({ version: z.string() })\n .transform(({ version }) => version),\n ]),\n ).transform((obj) => Object.entries(obj)),\n ])\n .pipe(LooseArray(DevboxEntry)),\n }),\n)\n .transform(({ packages }) => packages)\n .catch(withDebugMessage([], 'Devbox: error parsing file'));\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devbox/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,4CAAyC;AACzC,6DAKoC;AACpC,oDAA2D;AAC3D,oDAAkE;AAGlE,MAAM,WAAW,GAAG,OAAC;KAClB,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;KACjB,GAAG,CAAC,CAAC,CAAC;KACN,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE;IACrC,MAAM,GAAG,GAAsB;QAC7B,UAAU,EAAE,yBAAgB,CAAC,EAAE;QAC/B,OAAO;KACR,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,EACX,iEAAiE,CAClE,CAAC;QACF,GAAG,CAAC,UAAU,GAAG,eAAe,CAAC;QACjC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC;IAEhC,IAAI,CAAC,YAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5C,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,EACX,iEAAiE,CAClE,CAAC;QACF,GAAG,CAAC,UAAU,GAAG,iBAAiB,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC,CAAC;AAEQ,QAAA,YAAY,GAAG,oBAAK,CAAC,IAAI,CACpC,OAAC,CAAC,MAAM,CAAC;IACP,QAAQ,EAAE,OAAC;SACR,KAAK,CAAC;QACL,IAAA,yBAAU,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACzD,IAAA,0BAAW,EACT,OAAC,CAAC,KAAK,CAAC;YACN,OAAC,CAAC,MAAM,EAAE;YACV,OAAC;iBACE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC;iBAC/B,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC;SACvC,CAAC,CACH,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KAC1C,CAAC;SACD,IAAI,CAAC,IAAA,yBAAU,EAAC,WAAW,CAAC,CAAC;CACjC,CAAC,CACH;KACE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC;KACrC,KAAK,CAAC,IAAA,+BAAgB,EAAC,EAAE,EAAE,+BAA+B,CAAC,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { logger } from '../../../logger';\nimport {\n Jsonc,\n LooseArray,\n LooseRecord,\n withDebugMessage,\n} from '../../../util/schema-utils';\nimport { DevboxDatasource } from '../../datasource/devbox';\nimport { api as devboxVersioning } from '../../versioning/devbox';\nimport type { PackageDependency } from '../types';\n\nconst DevboxEntry = z\n .array(z.string())\n .min(1)\n .transform(([depName, currentValue]) => {\n const dep: PackageDependency = {\n datasource: DevboxDatasource.id,\n depName,\n };\n\n if (!currentValue) {\n logger.trace(\n { depName },\n 'Devbox: skipping invalid devbox dependency in devbox JSON file.',\n );\n dep.skipReason = 'not-a-version';\n return dep;\n }\n\n dep.currentValue = currentValue;\n\n if (!devboxVersioning.isValid(currentValue)) {\n logger.debug(\n { depName },\n 'Devbox: skipping invalid devbox dependency in devbox JSON file.',\n );\n dep.skipReason = 'invalid-version';\n return dep;\n }\n\n return dep;\n });\n\nexport const DevboxSchema = Jsonc.pipe(\n z.object({\n packages: z\n .union([\n LooseArray(z.string().transform((pkg) => pkg.split('@'))),\n LooseRecord(\n z.union([\n z.string(),\n z\n .object({ version: z.string() })\n .transform(({ version }) => version),\n ]),\n ).transform((obj) => Object.entries(obj)),\n ])\n .pipe(LooseArray(DevboxEntry)),\n }),\n)\n .transform(({ packages }) => packages)\n .catch(withDebugMessage([], 'Devbox: does not match schema'));\n"]}
@@ -2,6 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.extractPackageFile = extractPackageFile;
4
4
  const logger_1 = require("../../../logger");
5
+ const golang_version_1 = require("../../datasource/golang-version");
6
+ const node_version_1 = require("../../datasource/node-version");
7
+ const python_version_1 = require("../../datasource/python-version");
8
+ const ruby_version_1 = require("../../datasource/ruby-version");
5
9
  const utils_1 = require("../custom/utils");
6
10
  const extract_1 = require("../dockerfile/extract");
7
11
  const schema_1 = require("./schema");
@@ -20,12 +24,50 @@ function extractPackageFile(content, packageFile, extractConfig) {
20
24
  }
21
25
  const features = file.features;
22
26
  if (features) {
23
- for (const feature of Object.keys(features)) {
27
+ for (const [feature, value] of Object.entries(features)) {
24
28
  const featureDep = getDep(feature, packageFile, extractConfig.registryAliases);
25
29
  if (featureDep) {
26
30
  featureDep.depType = 'feature';
27
31
  featureDep.pinDigests = false;
28
32
  deps.push(featureDep);
33
+ let dep;
34
+ switch (featureDep.depName) {
35
+ case 'ghcr.io/devcontainers/features/node':
36
+ dep = {
37
+ depName: 'node',
38
+ datasource: node_version_1.NodeVersionDatasource.id,
39
+ currentValue: value.version,
40
+ };
41
+ break;
42
+ case 'ghcr.io/devcontainers/features/go':
43
+ dep = {
44
+ depName: 'go',
45
+ datasource: golang_version_1.GolangVersionDatasource.id,
46
+ currentValue: value.version,
47
+ };
48
+ break;
49
+ case 'ghcr.io/devcontainers/features/python':
50
+ dep = {
51
+ depName: 'python',
52
+ datasource: python_version_1.PythonVersionDatasource.id,
53
+ currentValue: value.version,
54
+ };
55
+ break;
56
+ case 'ghcr.io/devcontainers/features/ruby':
57
+ dep = {
58
+ depName: 'ruby',
59
+ datasource: ruby_version_1.RubyVersionDatasource.id,
60
+ currentValue: value.version,
61
+ };
62
+ break;
63
+ default:
64
+ // skip additional checks if not a known feature
65
+ continue;
66
+ }
67
+ if (!value.version) {
68
+ dep.skipReason = 'unspecified-version';
69
+ }
70
+ deps.push(dep);
29
71
  continue;
30
72
  }
31
73
  logger_1.logger.trace({ feature, packageFile }, 'Skipping invalid dependency in dev container JSON file.');
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devcontainer/extract.ts"],"names":[],"mappings":";;AAUA,gDA4DC;AAtED,4CAAyC;AACzC,2CAAoD;AACpD,mDAA+D;AAM/D,qCAA4C;AAE5C,SAAgB,kBAAkB,CAChC,OAAe,EACf,WAAmB,EACnB,aAA4B;IAE5B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,yBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAwB,EAAE,CAAC;QAErC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QAE3E,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,KAAK,CACV,EAAE,WAAW,EAAE,EACf,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE/B,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5C,MAAM,UAAU,GAAG,MAAM,CACvB,OAAO,EACP,WAAW,EACX,aAAa,CAAC,eAAe,CAC9B,CAAC;gBACF,IAAI,UAAU,EAAE,CAAC;oBACf,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC;oBAC/B,UAAU,CAAC,UAAU,GAAG,KAAK,CAAC;oBAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACtB,SAAS;gBACX,CAAC;gBACD,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,EACxB,yDAAyD,CAC1D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,eAAM,CAAC,KAAK,CACV,EAAE,WAAW,EAAE,EACf,yDAAyD,CAC1D,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,eAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,WAAW,EAAE,EACpB,2CAA2C,CAC5C,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CACb,OAAsB,EACtB,WAAmB,EACnB,eAAwC;IAExC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,IAAA,gBAAY,EAAC,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;IACzD,IAAI,CAAC,IAAA,yBAAiB,EAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,eAAM,CAAC,KAAK,CACV,EAAE,OAAO,EAAE,WAAW,EAAE,EACxB,gEAAgE,CACjE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import { logger } from '../../../logger';\nimport { isValidDependency } from '../custom/utils';\nimport { getDep as getDockerDep } from '../dockerfile/extract';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport { DevContainerFile } from './schema';\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n extractConfig: ExtractConfig,\n): PackageFileContent | null {\n try {\n const file = DevContainerFile.parse(content);\n const deps: PackageDependency[] = [];\n\n const image = file?.image ?? null;\n const imageDep = getDep(image, packageFile, extractConfig.registryAliases);\n\n if (imageDep) {\n imageDep.depType = 'image';\n deps.push(imageDep);\n } else {\n logger.trace(\n { packageFile },\n 'No image defined in dev container JSON file.',\n );\n }\n\n const features = file.features;\n\n if (features) {\n for (const feature of Object.keys(features)) {\n const featureDep = getDep(\n feature,\n packageFile,\n extractConfig.registryAliases,\n );\n if (featureDep) {\n featureDep.depType = 'feature';\n featureDep.pinDigests = false;\n deps.push(featureDep);\n continue;\n }\n logger.trace(\n { feature, packageFile },\n 'Skipping invalid dependency in dev container JSON file.',\n );\n }\n }\n\n if (deps.length < 1) {\n logger.trace(\n { packageFile },\n 'No dependencies to process for dev container JSON file.',\n );\n return null;\n }\n\n return { deps };\n } catch (err) {\n logger.debug(\n { err, packageFile },\n 'Error extracting dev container JSON file.',\n );\n return null;\n }\n}\n\nfunction getDep(\n subject: string | null,\n packageFile: string,\n registryAliases?: Record<string, string>,\n): PackageDependency | null {\n if (!subject) {\n return null;\n }\n const dep = getDockerDep(subject, true, registryAliases);\n if (!isValidDependency(dep)) {\n logger.trace(\n { subject, packageFile },\n 'Skipping invalid docker dependency in dev container JSON file.',\n );\n return null;\n }\n return dep;\n}\n"]}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devcontainer/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import { logger } from '../../../logger';\nimport { GolangVersionDatasource } from '../../datasource/golang-version';\nimport { NodeVersionDatasource } from '../../datasource/node-version';\nimport { PythonVersionDatasource } from '../../datasource/python-version';\nimport { RubyVersionDatasource } from '../../datasource/ruby-version';\nimport { isValidDependency } from '../custom/utils';\nimport { getDep as getDockerDep } from '../dockerfile/extract';\nimport type {\n ExtractConfig,\n PackageDependency,\n PackageFileContent,\n} from '../types';\nimport { DevContainerFile } from './schema';\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n extractConfig: ExtractConfig,\n): PackageFileContent | null {\n try {\n const file = DevContainerFile.parse(content);\n const deps: PackageDependency[] = [];\n\n const image = file?.image ?? null;\n const imageDep = getDep(image, packageFile, extractConfig.registryAliases);\n\n if (imageDep) {\n imageDep.depType = 'image';\n deps.push(imageDep);\n } else {\n logger.trace(\n { packageFile },\n 'No image defined in dev container JSON file.',\n );\n }\n\n const features = file.features;\n\n if (features) {\n for (const [feature, value] of Object.entries(features)) {\n const featureDep = getDep(\n feature,\n packageFile,\n extractConfig.registryAliases,\n );\n if (featureDep) {\n featureDep.depType = 'feature';\n featureDep.pinDigests = false;\n deps.push(featureDep);\n\n let dep: PackageDependency;\n switch (featureDep.depName) {\n case 'ghcr.io/devcontainers/features/node':\n dep = {\n depName: 'node',\n datasource: NodeVersionDatasource.id,\n currentValue: value.version,\n };\n break;\n case 'ghcr.io/devcontainers/features/go':\n dep = {\n depName: 'go',\n datasource: GolangVersionDatasource.id,\n currentValue: value.version,\n };\n break;\n case 'ghcr.io/devcontainers/features/python':\n dep = {\n depName: 'python',\n datasource: PythonVersionDatasource.id,\n currentValue: value.version,\n };\n break;\n case 'ghcr.io/devcontainers/features/ruby':\n dep = {\n depName: 'ruby',\n datasource: RubyVersionDatasource.id,\n currentValue: value.version,\n };\n break;\n default:\n // skip additional checks if not a known feature\n continue;\n }\n if (!value.version) {\n dep.skipReason = 'unspecified-version';\n }\n deps.push(dep);\n continue;\n }\n logger.trace(\n { feature, packageFile },\n 'Skipping invalid dependency in dev container JSON file.',\n );\n }\n }\n\n if (deps.length < 1) {\n logger.trace(\n { packageFile },\n 'No dependencies to process for dev container JSON file.',\n );\n return null;\n }\n\n return { deps };\n } catch (err) {\n logger.debug(\n { err, packageFile },\n 'Error extracting dev container JSON file.',\n );\n return null;\n }\n}\n\nfunction getDep(\n subject: string | null,\n packageFile: string,\n registryAliases?: Record<string, string>,\n): PackageDependency | null {\n if (!subject) {\n return null;\n }\n const dep = getDockerDep(subject, true, registryAliases);\n if (!isValidDependency(dep)) {\n logger.trace(\n { subject, packageFile },\n 'Skipping invalid docker dependency in dev container JSON file.',\n );\n return null;\n }\n return dep;\n}\n"]}
@@ -2,6 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.supportedDatasources = exports.defaultConfig = exports.categories = exports.url = exports.name = exports.extractPackageFile = void 0;
4
4
  const docker_1 = require("../../datasource/docker");
5
+ const golang_version_1 = require("../../datasource/golang-version");
6
+ const node_version_1 = require("../../datasource/node-version");
7
+ const python_version_1 = require("../../datasource/python-version");
8
+ const ruby_version_1 = require("../../datasource/ruby-version");
5
9
  var extract_1 = require("./extract");
6
10
  Object.defineProperty(exports, "extractPackageFile", { enumerable: true, get: function () { return extract_1.extractPackageFile; } });
7
11
  exports.name = 'Dev Container';
@@ -10,5 +14,11 @@ exports.categories = ['docker'];
10
14
  exports.defaultConfig = {
11
15
  fileMatch: ['^.devcontainer/devcontainer.json$', '^.devcontainer.json$'],
12
16
  };
13
- exports.supportedDatasources = [docker_1.DockerDatasource.id];
17
+ exports.supportedDatasources = [
18
+ docker_1.DockerDatasource.id,
19
+ golang_version_1.GolangVersionDatasource.id,
20
+ node_version_1.NodeVersionDatasource.id,
21
+ python_version_1.PythonVersionDatasource.id,
22
+ ruby_version_1.RubyVersionDatasource.id,
23
+ ];
14
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devcontainer/index.ts"],"names":[],"mappings":";;;AACA,oDAA2D;AAC3D,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAEd,QAAA,IAAI,GAAG,eAAe,CAAC;AACvB,QAAA,GAAG,GACd,6DAA6D,CAAC;AACnD,QAAA,UAAU,GAAe,CAAC,QAAQ,CAAC,CAAC;AAEpC,QAAA,aAAa,GAAG;IAC3B,SAAS,EAAE,CAAC,mCAAmC,EAAE,sBAAsB,CAAC;CACzE,CAAC;AAEW,QAAA,oBAAoB,GAAG,CAAC,yBAAgB,CAAC,EAAE,CAAC,CAAC","sourcesContent":["import type { Category } from '../../../constants';\nimport { DockerDatasource } from '../../datasource/docker';\nexport { extractPackageFile } from './extract';\n\nexport const name = 'Dev Container';\nexport const url =\n 'https://code.visualstudio.com/docs/devcontainers/containers';\nexport const categories: Category[] = ['docker'];\n\nexport const defaultConfig = {\n fileMatch: ['^.devcontainer/devcontainer.json$', '^.devcontainer.json$'],\n};\n\nexport const supportedDatasources = [DockerDatasource.id];\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devcontainer/index.ts"],"names":[],"mappings":";;;AACA,oDAA2D;AAC3D,oEAA0E;AAC1E,gEAAsE;AACtE,oEAA0E;AAC1E,gEAAsE;AACtE,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAEd,QAAA,IAAI,GAAG,eAAe,CAAC;AACvB,QAAA,GAAG,GACd,6DAA6D,CAAC;AACnD,QAAA,UAAU,GAAe,CAAC,QAAQ,CAAC,CAAC;AAEpC,QAAA,aAAa,GAAG;IAC3B,SAAS,EAAE,CAAC,mCAAmC,EAAE,sBAAsB,CAAC;CACzE,CAAC;AAEW,QAAA,oBAAoB,GAAG;IAClC,yBAAgB,CAAC,EAAE;IACnB,wCAAuB,CAAC,EAAE;IAC1B,oCAAqB,CAAC,EAAE;IACxB,wCAAuB,CAAC,EAAE;IAC1B,oCAAqB,CAAC,EAAE;CACzB,CAAC","sourcesContent":["import type { Category } from '../../../constants';\nimport { DockerDatasource } from '../../datasource/docker';\nimport { GolangVersionDatasource } from '../../datasource/golang-version';\nimport { NodeVersionDatasource } from '../../datasource/node-version';\nimport { PythonVersionDatasource } from '../../datasource/python-version';\nimport { RubyVersionDatasource } from '../../datasource/ruby-version';\nexport { extractPackageFile } from './extract';\n\nexport const name = 'Dev Container';\nexport const url =\n 'https://code.visualstudio.com/docs/devcontainers/containers';\nexport const categories: Category[] = ['docker'];\n\nexport const defaultConfig = {\n fileMatch: ['^.devcontainer/devcontainer.json$', '^.devcontainer.json$'],\n};\n\nexport const supportedDatasources = [\n DockerDatasource.id,\n GolangVersionDatasource.id,\n NodeVersionDatasource.id,\n PythonVersionDatasource.id,\n RubyVersionDatasource.id,\n];\n"]}
@@ -1,12 +1,16 @@
1
1
  import { z } from 'zod';
2
2
  export declare const DevContainerFile: z.ZodPipeline<z.ZodEffects<z.ZodString, string | number | boolean | import("type-fest").JsonObject | import("type-fest").JsonValue[] | readonly import("type-fest").JsonValue[] | null, string>, z.ZodObject<{
3
3
  image: z.ZodOptional<z.ZodString>;
4
- features: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4
+ features: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodAny>, Record<string, {
5
+ version?: string | undefined;
6
+ }>, Record<string, any>>>;
5
7
  }, "strip", z.ZodTypeAny, {
6
8
  image?: string | undefined;
7
- features?: Record<string, unknown> | undefined;
9
+ features?: Record<string, {
10
+ version?: string | undefined;
11
+ }> | undefined;
8
12
  }, {
9
13
  image?: string | undefined;
10
- features?: Record<string, unknown> | undefined;
14
+ features?: Record<string, any> | undefined;
11
15
  }>>;
12
16
  export type DevContainerFile = z.infer<typeof DevContainerFile>;
@@ -5,6 +5,8 @@ const zod_1 = require("zod");
5
5
  const schema_utils_1 = require("../../../util/schema-utils");
6
6
  exports.DevContainerFile = schema_utils_1.Jsonc.pipe(zod_1.z.object({
7
7
  image: zod_1.z.string().optional(),
8
- features: zod_1.z.record(zod_1.z.unknown()).optional(),
8
+ features: (0, schema_utils_1.LooseRecord)(zod_1.z.object({
9
+ version: zod_1.z.string().optional(),
10
+ })).optional(),
9
11
  }));
10
12
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devcontainer/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,6DAAmD;AAEtC,QAAA,gBAAgB,GAAG,oBAAK,CAAC,IAAI,CACxC,OAAC,CAAC,MAAM,CAAC;IACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,QAAQ,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CACH,CAAC","sourcesContent":["import { z } from 'zod';\nimport { Jsonc } from '../../../util/schema-utils';\n\nexport const DevContainerFile = Jsonc.pipe(\n z.object({\n image: z.string().optional(),\n features: z.record(z.unknown()).optional(),\n }),\n);\n\nexport type DevContainerFile = z.infer<typeof DevContainerFile>;\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/manager/devcontainer/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,6DAAgE;AAEnD,QAAA,gBAAgB,GAAG,oBAAK,CAAC,IAAI,CACxC,OAAC,CAAC,MAAM,CAAC;IACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,QAAQ,EAAE,IAAA,0BAAW,EACnB,OAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC/B,CAAC,CACH,CAAC,QAAQ,EAAE;CACb,CAAC,CACH,CAAC","sourcesContent":["import { z } from 'zod';\nimport { Jsonc, LooseRecord } from '../../../util/schema-utils';\n\nexport const DevContainerFile = Jsonc.pipe(\n z.object({\n image: z.string().optional(),\n features: LooseRecord(\n z.object({\n version: z.string().optional(),\n }),\n ).optional(),\n }),\n);\n\nexport type DevContainerFile = z.infer<typeof DevContainerFile>;\n"]}
@@ -14,34 +14,34 @@ export declare const DockerComposeFile: z.ZodUnion<[z.ZodObject<{
14
14
  dockerfile?: string | undefined;
15
15
  }>]>>;
16
16
  }, "strip", z.ZodTypeAny, {
17
- image?: string | undefined;
18
17
  build?: string | {
19
18
  context?: string | undefined;
20
19
  dockerfile?: string | undefined;
21
20
  } | undefined;
22
- }, {
23
21
  image?: string | undefined;
22
+ }, {
24
23
  build?: string | {
25
24
  context?: string | undefined;
26
25
  dockerfile?: string | undefined;
27
26
  } | undefined;
27
+ image?: string | undefined;
28
28
  }>>;
29
29
  }, "strip", z.ZodTypeAny, {
30
30
  services: Record<string, {
31
- image?: string | undefined;
32
31
  build?: string | {
33
32
  context?: string | undefined;
34
33
  dockerfile?: string | undefined;
35
34
  } | undefined;
35
+ image?: string | undefined;
36
36
  }>;
37
37
  version?: string | undefined;
38
38
  }, {
39
39
  services: Record<string, {
40
- image?: string | undefined;
41
40
  build?: string | {
42
41
  context?: string | undefined;
43
42
  dockerfile?: string | undefined;
44
43
  } | undefined;
44
+ image?: string | undefined;
45
45
  }>;
46
46
  version?: string | undefined;
47
47
  }>, z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -57,16 +57,16 @@ export declare const DockerComposeFile: z.ZodUnion<[z.ZodObject<{
57
57
  dockerfile?: string | undefined;
58
58
  }>]>>;
59
59
  }, "strip", z.ZodTypeAny, {
60
- image?: string | undefined;
61
60
  build?: string | {
62
61
  context?: string | undefined;
63
62
  dockerfile?: string | undefined;
64
63
  } | undefined;
65
- }, {
66
64
  image?: string | undefined;
65
+ }, {
67
66
  build?: string | {
68
67
  context?: string | undefined;
69
68
  dockerfile?: string | undefined;
70
69
  } | undefined;
70
+ image?: string | undefined;
71
71
  }>>]>;
72
72
  export type DockerComposeFile = z.infer<typeof DockerComposeFile>;