renovate 41.0.0-next.21 → 41.0.0-next.23

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 (399) hide show
  1. package/dist/config/decrypt.js +5 -3
  2. package/dist/config/decrypt.js.map +1 -1
  3. package/dist/config/options/index.js +45 -3
  4. package/dist/config/options/index.js.map +1 -1
  5. package/dist/config/presets/github/index.js +2 -2
  6. package/dist/config/presets/github/index.js.map +1 -1
  7. package/dist/config/presets/internal/group.js +21 -0
  8. package/dist/config/presets/internal/group.js.map +1 -1
  9. package/dist/config/presets/internal/workarounds.js +11 -0
  10. package/dist/config/presets/internal/workarounds.js.map +1 -1
  11. package/dist/config/secrets.d.ts +2 -0
  12. package/dist/config/secrets.js +10 -77
  13. package/dist/config/secrets.js.map +1 -1
  14. package/dist/config/types.d.ts +9 -1
  15. package/dist/config/types.js.map +1 -1
  16. package/dist/config-validator.js +4 -2
  17. package/dist/config-validator.js.map +1 -1
  18. package/dist/data/monorepo.json +10 -1
  19. package/dist/data-files.generated.d.ts +1 -1
  20. package/dist/data-files.generated.js +2 -1
  21. package/dist/data-files.generated.js.map +1 -1
  22. package/dist/instrumentation/index.js +5 -3
  23. package/dist/instrumentation/index.js.map +1 -1
  24. package/dist/instrumentation/reporting.d.ts +2 -2
  25. package/dist/instrumentation/reporting.js +3 -7
  26. package/dist/instrumentation/reporting.js.map +1 -1
  27. package/dist/instrumentation/types.d.ts +11 -5
  28. package/dist/instrumentation/types.js.map +1 -1
  29. package/dist/instrumentation/utils.js +3 -2
  30. package/dist/instrumentation/utils.js.map +1 -1
  31. package/dist/logger/once.js +2 -0
  32. package/dist/logger/once.js.map +1 -1
  33. package/dist/modules/datasource/aws-eks-addon/schema.d.ts +14 -38
  34. package/dist/modules/datasource/aws-eks-addon/schema.js +11 -22
  35. package/dist/modules/datasource/aws-eks-addon/schema.js.map +1 -1
  36. package/dist/modules/datasource/cdnjs/index.js +2 -1
  37. package/dist/modules/datasource/cdnjs/index.js.map +1 -1
  38. package/dist/modules/datasource/crate/index.js +7 -2
  39. package/dist/modules/datasource/crate/index.js.map +1 -1
  40. package/dist/modules/datasource/docker/ecr.js +2 -2
  41. package/dist/modules/datasource/docker/ecr.js.map +1 -1
  42. package/dist/modules/datasource/docker/index.js +26 -9
  43. package/dist/modules/datasource/docker/index.js.map +1 -1
  44. package/dist/modules/datasource/docker/schema.d.ts +9 -87
  45. package/dist/modules/datasource/docker/schema.js +1 -1
  46. package/dist/modules/datasource/docker/schema.js.map +1 -1
  47. package/dist/modules/datasource/git-refs/base.js +2 -6
  48. package/dist/modules/datasource/git-refs/base.js.map +1 -1
  49. package/dist/modules/datasource/go/goproxy-parser.js +6 -2
  50. package/dist/modules/datasource/go/goproxy-parser.js.map +1 -1
  51. package/dist/modules/datasource/go/index.js +4 -2
  52. package/dist/modules/datasource/go/index.js.map +1 -1
  53. package/dist/modules/datasource/go/releases-goproxy.js +3 -2
  54. package/dist/modules/datasource/go/releases-goproxy.js.map +1 -1
  55. package/dist/modules/datasource/index.js +1 -1
  56. package/dist/modules/datasource/index.js.map +1 -1
  57. package/dist/modules/datasource/maven/index.js +5 -19
  58. package/dist/modules/datasource/maven/index.js.map +1 -1
  59. package/dist/modules/datasource/maven/util.js +8 -1
  60. package/dist/modules/datasource/maven/util.js.map +1 -1
  61. package/dist/modules/datasource/npm/get.js +2 -1
  62. package/dist/modules/datasource/npm/get.js.map +1 -1
  63. package/dist/modules/datasource/npm/npmrc.js +2 -1
  64. package/dist/modules/datasource/npm/npmrc.js.map +1 -1
  65. package/dist/modules/datasource/nuget/v3.js +3 -2
  66. package/dist/modules/datasource/nuget/v3.js.map +1 -1
  67. package/dist/modules/datasource/pod/index.js +3 -1
  68. package/dist/modules/datasource/pod/index.js.map +1 -1
  69. package/dist/modules/datasource/pypi/index.js +2 -1
  70. package/dist/modules/datasource/pypi/index.js.map +1 -1
  71. package/dist/modules/datasource/types.d.ts +2 -1
  72. package/dist/modules/datasource/types.js.map +1 -1
  73. package/dist/modules/manager/asdf/upgradeable-tooling.js +8 -0
  74. package/dist/modules/manager/asdf/upgradeable-tooling.js.map +1 -1
  75. package/dist/modules/manager/bazel/rules/git.d.ts +7 -7
  76. package/dist/modules/manager/bazel/rules/git.js +6 -1
  77. package/dist/modules/manager/bazel/rules/git.js.map +1 -1
  78. package/dist/modules/manager/bazel-module/bazelrc.d.ts +2 -0
  79. package/dist/modules/manager/bazel-module/bazelrc.js +30 -1
  80. package/dist/modules/manager/bazel-module/bazelrc.js.map +1 -1
  81. package/dist/modules/manager/bazel-module/parser/rules.js +1 -0
  82. package/dist/modules/manager/bazel-module/parser/rules.js.map +1 -1
  83. package/dist/modules/manager/bazel-module/rules.d.ts +62 -24
  84. package/dist/modules/manager/bazel-module/rules.js +10 -4
  85. package/dist/modules/manager/bazel-module/rules.js.map +1 -1
  86. package/dist/modules/manager/cargo/extract.js +2 -1
  87. package/dist/modules/manager/cargo/extract.js.map +1 -1
  88. package/dist/modules/manager/composer/schema.js +1 -1
  89. package/dist/modules/manager/composer/schema.js.map +1 -1
  90. package/dist/modules/manager/docker-compose/extract.js +2 -0
  91. package/dist/modules/manager/docker-compose/extract.js.map +1 -1
  92. package/dist/modules/manager/docker-compose/schema.d.ts +120 -9
  93. package/dist/modules/manager/docker-compose/schema.js +35 -4
  94. package/dist/modules/manager/docker-compose/schema.js.map +1 -1
  95. package/dist/modules/manager/fingerprint.generated.js +19 -19
  96. package/dist/modules/manager/fingerprint.generated.js.map +1 -1
  97. package/dist/modules/manager/fleet/extract.js +2 -2
  98. package/dist/modules/manager/fleet/extract.js.map +1 -1
  99. package/dist/modules/manager/fleet/schema.d.ts +5 -5
  100. package/dist/modules/manager/fleet/schema.js +1 -1
  101. package/dist/modules/manager/fleet/schema.js.map +1 -1
  102. package/dist/modules/manager/flux/extract.js +1 -1
  103. package/dist/modules/manager/flux/extract.js.map +1 -1
  104. package/dist/modules/manager/git-submodules/extract.js +2 -6
  105. package/dist/modules/manager/git-submodules/extract.js.map +1 -1
  106. package/dist/modules/manager/git-submodules/update.js +3 -7
  107. package/dist/modules/manager/git-submodules/update.js.map +1 -1
  108. package/dist/modules/manager/github-actions/extract.js +1 -1
  109. package/dist/modules/manager/github-actions/extract.js.map +1 -1
  110. package/dist/modules/manager/gleam/artifacts.js +5 -1
  111. package/dist/modules/manager/gleam/artifacts.js.map +1 -1
  112. package/dist/modules/manager/gomod/artifacts.js +8 -6
  113. package/dist/modules/manager/gomod/artifacts.js.map +1 -1
  114. package/dist/modules/manager/gradle/extract.js +4 -1
  115. package/dist/modules/manager/gradle/extract.js.map +1 -1
  116. package/dist/modules/manager/gradle/utils.js +8 -14
  117. package/dist/modules/manager/gradle/utils.js.map +1 -1
  118. package/dist/modules/manager/helmfile/utils.js +1 -1
  119. package/dist/modules/manager/helmfile/utils.js.map +1 -1
  120. package/dist/modules/manager/helmv3/artifacts.js +8 -2
  121. package/dist/modules/manager/helmv3/artifacts.js.map +1 -1
  122. package/dist/modules/manager/helmv3/common.d.ts +1 -1
  123. package/dist/modules/manager/helmv3/common.js +9 -3
  124. package/dist/modules/manager/helmv3/common.js.map +1 -1
  125. package/dist/modules/manager/hermit/artifacts.js +2 -2
  126. package/dist/modules/manager/hermit/artifacts.js.map +1 -1
  127. package/dist/modules/manager/kubernetes/extract.js +2 -2
  128. package/dist/modules/manager/kubernetes/extract.js.map +1 -1
  129. package/dist/modules/manager/kustomize/artifacts.js +1 -1
  130. package/dist/modules/manager/kustomize/artifacts.js.map +1 -1
  131. package/dist/modules/manager/maven/extract.d.ts +1 -1
  132. package/dist/modules/manager/maven/extract.js +82 -24
  133. package/dist/modules/manager/maven/extract.js.map +1 -1
  134. package/dist/modules/manager/maven/index.d.ts +0 -1
  135. package/dist/modules/manager/maven/index.js +2 -4
  136. package/dist/modules/manager/maven/index.js.map +1 -1
  137. package/dist/modules/manager/maven/update.js +15 -0
  138. package/dist/modules/manager/maven/update.js.map +1 -1
  139. package/dist/modules/manager/mise/backends.d.ts +48 -0
  140. package/dist/modules/manager/mise/backends.js +219 -0
  141. package/dist/modules/manager/mise/backends.js.map +1 -0
  142. package/dist/modules/manager/mise/extract.js +77 -10
  143. package/dist/modules/manager/mise/extract.js.map +1 -1
  144. package/dist/modules/manager/mise/index.js +37 -2
  145. package/dist/modules/manager/mise/index.js.map +1 -1
  146. package/dist/modules/manager/mise/schema.d.ts +24 -0
  147. package/dist/modules/manager/mise/schema.js +7 -1
  148. package/dist/modules/manager/mise/schema.js.map +1 -1
  149. package/dist/modules/manager/mise/upgradeable-tooling.js +210 -1
  150. package/dist/modules/manager/mise/upgradeable-tooling.js.map +1 -1
  151. package/dist/modules/manager/mix/artifacts.js +5 -0
  152. package/dist/modules/manager/mix/artifacts.js.map +1 -1
  153. package/dist/modules/manager/npm/extract/index.js +27 -24
  154. package/dist/modules/manager/npm/extract/index.js.map +1 -1
  155. package/dist/modules/manager/npm/post-update/index.js +9 -3
  156. package/dist/modules/manager/npm/post-update/index.js.map +1 -1
  157. package/dist/modules/manager/npm/post-update/npm.js +8 -5
  158. package/dist/modules/manager/npm/post-update/npm.js.map +1 -1
  159. package/dist/modules/manager/npm/post-update/pnpm.js +4 -0
  160. package/dist/modules/manager/npm/post-update/pnpm.js.map +1 -1
  161. package/dist/modules/manager/npm/post-update/utils.js +17 -0
  162. package/dist/modules/manager/npm/post-update/utils.js.map +1 -1
  163. package/dist/modules/manager/npm/post-update/yarn.js +7 -5
  164. package/dist/modules/manager/npm/post-update/yarn.js.map +1 -1
  165. package/dist/modules/manager/npm/schema.d.ts +116 -0
  166. package/dist/modules/manager/npm/schema.js +9 -0
  167. package/dist/modules/manager/npm/schema.js.map +1 -1
  168. package/dist/modules/manager/npm/utils.js +1 -1
  169. package/dist/modules/manager/npm/utils.js.map +1 -1
  170. package/dist/modules/manager/nuget/util.js +9 -0
  171. package/dist/modules/manager/nuget/util.js.map +1 -1
  172. package/dist/modules/manager/pep621/processors/uv.js +1 -1
  173. package/dist/modules/manager/pep621/processors/uv.js.map +1 -1
  174. package/dist/modules/manager/pip-compile/artifacts.js +6 -4
  175. package/dist/modules/manager/pip-compile/artifacts.js.map +1 -1
  176. package/dist/modules/manager/pip_requirements/common.js +2 -1
  177. package/dist/modules/manager/pip_requirements/common.js.map +1 -1
  178. package/dist/modules/manager/poetry/schema.js +2 -1
  179. package/dist/modules/manager/poetry/schema.js.map +1 -1
  180. package/dist/modules/manager/pre-commit/index.js +2 -1
  181. package/dist/modules/manager/pre-commit/index.js.map +1 -1
  182. package/dist/modules/manager/renovate-config-presets/index.d.ts +1 -1
  183. package/dist/modules/manager/renovate-config-presets/index.js +1 -3
  184. package/dist/modules/manager/renovate-config-presets/index.js.map +1 -1
  185. package/dist/modules/manager/terraform/extractors/others/modules.js +4 -9
  186. package/dist/modules/manager/terraform/extractors/others/modules.js.map +1 -1
  187. package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.d.ts +1 -0
  188. package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js +9 -4
  189. package/dist/modules/manager/terraform/extractors/resources/generic-docker-image-ref.js.map +1 -1
  190. package/dist/modules/manager/terraform/extractors/resources/utils.d.ts +1 -0
  191. package/dist/modules/manager/terraform/extractors/resources/utils.js +4 -1
  192. package/dist/modules/manager/terraform/extractors/resources/utils.js.map +1 -1
  193. package/dist/modules/manager/terraform/hcl/types.d.ts +1 -0
  194. package/dist/modules/manager/terraform/hcl/types.js.map +1 -1
  195. package/dist/modules/manager/types.d.ts +3 -0
  196. package/dist/modules/manager/types.js.map +1 -1
  197. package/dist/modules/platform/bitbucket-server/index.js +4 -2
  198. package/dist/modules/platform/bitbucket-server/index.js.map +1 -1
  199. package/dist/modules/platform/codecommit/codecommit-client.js +7 -5
  200. package/dist/modules/platform/codecommit/codecommit-client.js.map +1 -1
  201. package/dist/modules/platform/codecommit/index.js +7 -5
  202. package/dist/modules/platform/codecommit/index.js.map +1 -1
  203. package/dist/modules/platform/default-scm.d.ts +1 -0
  204. package/dist/modules/platform/default-scm.js +3 -0
  205. package/dist/modules/platform/default-scm.js.map +1 -1
  206. package/dist/modules/platform/gerrit/client.d.ts +6 -7
  207. package/dist/modules/platform/gerrit/client.js +58 -38
  208. package/dist/modules/platform/gerrit/client.js.map +1 -1
  209. package/dist/modules/platform/gerrit/index.d.ts +4 -3
  210. package/dist/modules/platform/gerrit/index.js +103 -42
  211. package/dist/modules/platform/gerrit/index.js.map +1 -1
  212. package/dist/modules/platform/gerrit/scm.d.ts +1 -1
  213. package/dist/modules/platform/gerrit/scm.js +56 -34
  214. package/dist/modules/platform/gerrit/scm.js.map +1 -1
  215. package/dist/modules/platform/gerrit/types.d.ts +23 -12
  216. package/dist/modules/platform/gerrit/types.js.map +1 -1
  217. package/dist/modules/platform/gerrit/utils.d.ts +8 -4
  218. package/dist/modules/platform/gerrit/utils.js +24 -12
  219. package/dist/modules/platform/gerrit/utils.js.map +1 -1
  220. package/dist/modules/platform/gitea/index.js +7 -2
  221. package/dist/modules/platform/gitea/index.js.map +1 -1
  222. package/dist/modules/platform/gitea/types.d.ts +2 -1
  223. package/dist/modules/platform/gitea/types.js.map +1 -1
  224. package/dist/modules/platform/github/index.js +12 -26
  225. package/dist/modules/platform/github/index.js.map +1 -1
  226. package/dist/modules/platform/gitlab/code-owners.d.ts +2 -0
  227. package/dist/modules/platform/gitlab/code-owners.js +38 -0
  228. package/dist/modules/platform/gitlab/code-owners.js.map +1 -0
  229. package/dist/modules/platform/gitlab/index.d.ts +2 -1
  230. package/dist/modules/platform/gitlab/index.js +29 -56
  231. package/dist/modules/platform/gitlab/index.js.map +1 -1
  232. package/dist/modules/platform/gitlab/pr-cache.d.ts +21 -0
  233. package/dist/modules/platform/gitlab/pr-cache.js +124 -0
  234. package/dist/modules/platform/gitlab/pr-cache.js.map +1 -0
  235. package/dist/modules/platform/gitlab/types.d.ts +7 -0
  236. package/dist/modules/platform/gitlab/types.js.map +1 -1
  237. package/dist/modules/platform/gitlab/utils.js +1 -0
  238. package/dist/modules/platform/gitlab/utils.js.map +1 -1
  239. package/dist/modules/platform/types.d.ts +8 -0
  240. package/dist/modules/platform/types.js.map +1 -1
  241. package/dist/modules/versioning/api.js +2 -0
  242. package/dist/modules/versioning/api.js.map +1 -1
  243. package/dist/modules/versioning/cargo/index.js +20 -0
  244. package/dist/modules/versioning/cargo/index.js.map +1 -1
  245. package/dist/modules/versioning/composer/index.js +4 -0
  246. package/dist/modules/versioning/composer/index.js.map +1 -1
  247. package/dist/modules/versioning/lambda-node/index.d.ts +8 -0
  248. package/dist/modules/versioning/lambda-node/index.js +27 -0
  249. package/dist/modules/versioning/lambda-node/index.js.map +1 -0
  250. package/dist/modules/versioning/lambda-node/schedule.d.ts +10 -0
  251. package/dist/modules/versioning/lambda-node/schedule.js +19 -0
  252. package/dist/modules/versioning/lambda-node/schedule.js.map +1 -0
  253. package/dist/modules/versioning/npm/index.js +2 -0
  254. package/dist/modules/versioning/npm/index.js.map +1 -1
  255. package/dist/modules/versioning/npm/range.js +4 -0
  256. package/dist/modules/versioning/npm/range.js.map +1 -1
  257. package/dist/modules/versioning/pep440/index.js +1 -1
  258. package/dist/modules/versioning/pep440/index.js.map +1 -1
  259. package/dist/modules/versioning/python/index.d.ts +1 -0
  260. package/dist/modules/versioning/python/index.js +9 -0
  261. package/dist/modules/versioning/python/index.js.map +1 -1
  262. package/dist/modules/versioning/semver/index.d.ts +1 -0
  263. package/dist/modules/versioning/semver/index.js +15 -0
  264. package/dist/modules/versioning/semver/index.js.map +1 -1
  265. package/dist/modules/versioning/semver-coerced/index.js +9 -0
  266. package/dist/modules/versioning/semver-coerced/index.js.map +1 -1
  267. package/dist/modules/versioning/types.d.ts +1 -0
  268. package/dist/modules/versioning/types.js.map +1 -1
  269. package/dist/util/cache/memory/index.d.ts +1 -0
  270. package/dist/util/cache/memory/index.js +17 -6
  271. package/dist/util/cache/memory/index.js.map +1 -1
  272. package/dist/util/cache/package/index.js +2 -1
  273. package/dist/util/cache/package/index.js.map +1 -1
  274. package/dist/util/cache/package/key.js +1 -1
  275. package/dist/util/cache/package/key.js.map +1 -1
  276. package/dist/util/cache/package/types.d.ts +2 -2
  277. package/dist/util/cache/package/types.js.map +1 -1
  278. package/dist/util/cache/repository/impl/s3.js +2 -1
  279. package/dist/util/cache/repository/impl/s3.js.map +1 -1
  280. package/dist/util/cache/repository/types.d.ts +3 -0
  281. package/dist/util/cache/repository/types.js.map +1 -1
  282. package/dist/util/env.d.ts +6 -0
  283. package/dist/util/env.js +13 -0
  284. package/dist/util/env.js.map +1 -1
  285. package/dist/util/exec/common.js +2 -1
  286. package/dist/util/exec/common.js.map +1 -1
  287. package/dist/util/exec/containerbase.js +2 -1
  288. package/dist/util/exec/containerbase.js.map +1 -1
  289. package/dist/util/exec/env.js +1 -0
  290. package/dist/util/exec/env.js.map +1 -1
  291. package/dist/util/exec/utils.d.ts +1 -1
  292. package/dist/util/exec/utils.js +1 -1
  293. package/dist/util/exec/utils.js.map +1 -1
  294. package/dist/util/fs/index.js +2 -2
  295. package/dist/util/fs/index.js.map +1 -1
  296. package/dist/util/git/auth.js +4 -2
  297. package/dist/util/git/auth.js.map +1 -1
  298. package/dist/util/git/error.js +2 -1
  299. package/dist/util/git/error.js.map +1 -1
  300. package/dist/util/git/index.d.ts +20 -0
  301. package/dist/util/git/index.js +140 -10
  302. package/dist/util/git/index.js.map +1 -1
  303. package/dist/util/git/types.d.ts +1 -0
  304. package/dist/util/git/types.js.map +1 -1
  305. package/dist/util/github/graphql/datasource-fetcher.js +2 -3
  306. package/dist/util/github/graphql/datasource-fetcher.js.map +1 -1
  307. package/dist/util/github/graphql/query-adapters/tags-query-adapter.d.ts +48 -2
  308. package/dist/util/github/graphql/query-adapters/tags-query-adapter.js +27 -7
  309. package/dist/util/github/graphql/query-adapters/tags-query-adapter.js.map +1 -1
  310. package/dist/util/host-rules.js +4 -3
  311. package/dist/util/host-rules.js.map +1 -1
  312. package/dist/util/http/cache/package-http-cache-provider.d.ts +4 -4
  313. package/dist/util/http/cache/package-http-cache-provider.js +4 -4
  314. package/dist/util/http/cache/package-http-cache-provider.js.map +1 -1
  315. package/dist/util/http/github.js +20 -12
  316. package/dist/util/http/github.js.map +1 -1
  317. package/dist/util/http/gitlab.js +2 -1
  318. package/dist/util/http/gitlab.js.map +1 -1
  319. package/dist/util/http/http.js +7 -3
  320. package/dist/util/http/http.js.map +1 -1
  321. package/dist/util/interpolator.d.ts +8 -0
  322. package/dist/util/interpolator.js +85 -0
  323. package/dist/util/interpolator.js.map +1 -0
  324. package/dist/util/merge-confidence/index.js +4 -1
  325. package/dist/util/merge-confidence/index.js.map +1 -1
  326. package/dist/util/promises.d.ts +4 -4
  327. package/dist/util/promises.js +3 -4
  328. package/dist/util/promises.js.map +1 -1
  329. package/dist/util/regex.js +3 -2
  330. package/dist/util/regex.js.map +1 -1
  331. package/dist/util/{schema-utils.d.ts → schema-utils/index.d.ts} +2 -2
  332. package/dist/util/{schema-utils.js → schema-utils/index.js} +5 -5
  333. package/dist/util/schema-utils/index.js.map +1 -0
  334. package/dist/util/schema-utils/v4.d.ts +7 -0
  335. package/dist/util/schema-utils/v4.js +64 -0
  336. package/dist/util/schema-utils/v4.js.map +1 -0
  337. package/dist/util/stats.d.ts +13 -2
  338. package/dist/util/stats.js +38 -27
  339. package/dist/util/stats.js.map +1 -1
  340. package/dist/workers/global/config/parse/codespaces.js +7 -4
  341. package/dist/workers/global/config/parse/codespaces.js.map +1 -1
  342. package/dist/workers/global/index.js +7 -5
  343. package/dist/workers/global/index.js.map +1 -1
  344. package/dist/workers/repository/config-migration/branch/migrated-data.js +1 -1
  345. package/dist/workers/repository/config-migration/branch/migrated-data.js.map +1 -1
  346. package/dist/workers/repository/dependency-dashboard.d.ts +1 -0
  347. package/dist/workers/repository/dependency-dashboard.js +47 -0
  348. package/dist/workers/repository/dependency-dashboard.js.map +1 -1
  349. package/dist/workers/repository/index.js +1 -0
  350. package/dist/workers/repository/index.js.map +1 -1
  351. package/dist/workers/repository/init/inherited.js +10 -6
  352. package/dist/workers/repository/init/inherited.js.map +1 -1
  353. package/dist/workers/repository/init/merge.d.ts +2 -2
  354. package/dist/workers/repository/init/merge.js +12 -5
  355. package/dist/workers/repository/init/merge.js.map +1 -1
  356. package/dist/workers/repository/package-files.js +11 -1
  357. package/dist/workers/repository/package-files.js.map +1 -1
  358. package/dist/workers/repository/process/extract-update.d.ts +1 -1
  359. package/dist/workers/repository/process/extract-update.js +15 -10
  360. package/dist/workers/repository/process/extract-update.js.map +1 -1
  361. package/dist/workers/repository/process/index.d.ts +1 -1
  362. package/dist/workers/repository/process/index.js +6 -3
  363. package/dist/workers/repository/process/index.js.map +1 -1
  364. package/dist/workers/repository/process/libyear.js +15 -7
  365. package/dist/workers/repository/process/libyear.js.map +1 -1
  366. package/dist/workers/repository/process/lookup/abandonment.d.ts +3 -0
  367. package/dist/workers/repository/process/lookup/abandonment.js +50 -0
  368. package/dist/workers/repository/process/lookup/abandonment.js.map +1 -0
  369. package/dist/workers/repository/process/lookup/current.js +0 -5
  370. package/dist/workers/repository/process/lookup/current.js.map +1 -1
  371. package/dist/workers/repository/process/lookup/generate.js +10 -0
  372. package/dist/workers/repository/process/lookup/generate.js.map +1 -1
  373. package/dist/workers/repository/process/lookup/index.js +7 -0
  374. package/dist/workers/repository/process/lookup/index.js.map +1 -1
  375. package/dist/workers/repository/process/lookup/timestamps.d.ts +4 -4
  376. package/dist/workers/repository/process/lookup/timestamps.js +10 -10
  377. package/dist/workers/repository/process/lookup/timestamps.js.map +1 -1
  378. package/dist/workers/repository/process/lookup/types.d.ts +4 -0
  379. package/dist/workers/repository/process/lookup/types.js.map +1 -1
  380. package/dist/workers/repository/update/branch/auto-replace.js +30 -7
  381. package/dist/workers/repository/update/branch/auto-replace.js.map +1 -1
  382. package/dist/workers/repository/update/branch/bump-versions.d.ts +2 -0
  383. package/dist/workers/repository/update/branch/bump-versions.js +192 -0
  384. package/dist/workers/repository/update/branch/bump-versions.js.map +1 -0
  385. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js +14 -8
  386. package/dist/workers/repository/update/branch/execute-post-upgrade-commands.js.map +1 -1
  387. package/dist/workers/repository/update/branch/get-updated.js +3 -4
  388. package/dist/workers/repository/update/branch/get-updated.js.map +1 -1
  389. package/dist/workers/repository/update/branch/index.js +3 -0
  390. package/dist/workers/repository/update/branch/index.js.map +1 -1
  391. package/dist/workers/repository/update/pr/changelog/release-notes.js +23 -19
  392. package/dist/workers/repository/update/pr/changelog/release-notes.js.map +1 -1
  393. package/dist/workers/repository/update/pr/code-owners.js +13 -9
  394. package/dist/workers/repository/update/pr/code-owners.js.map +1 -1
  395. package/dist/workers/repository/updates/generate.js +1 -0
  396. package/dist/workers/repository/updates/generate.js.map +1 -1
  397. package/package.json +75 -80
  398. package/renovate-schema.json +78 -14
  399. package/dist/util/schema-utils.js.map +0 -1
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createAquaToolConfig = createAquaToolConfig;
4
+ exports.createCargoToolConfig = createCargoToolConfig;
5
+ exports.createDotnetToolConfig = createDotnetToolConfig;
6
+ exports.createGemToolConfig = createGemToolConfig;
7
+ exports.createGoToolConfig = createGoToolConfig;
8
+ exports.createNpmToolConfig = createNpmToolConfig;
9
+ exports.createPipxToolConfig = createPipxToolConfig;
10
+ exports.createSpmToolConfig = createSpmToolConfig;
11
+ exports.createUbiToolConfig = createUbiToolConfig;
12
+ const tslib_1 = require("tslib");
13
+ const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
14
+ const regex_1 = require("../../../util/regex");
15
+ const crate_1 = require("../../datasource/crate");
16
+ const git_refs_1 = require("../../datasource/git-refs");
17
+ const git_tags_1 = require("../../datasource/git-tags");
18
+ const github_releases_1 = require("../../datasource/github-releases");
19
+ const github_tags_1 = require("../../datasource/github-tags");
20
+ const go_1 = require("../../datasource/go");
21
+ const npm_1 = require("../../datasource/npm");
22
+ const nuget_1 = require("../../datasource/nuget");
23
+ const pypi_1 = require("../../datasource/pypi");
24
+ const common_1 = require("../../datasource/pypi/common");
25
+ const rubygems_1 = require("../../datasource/rubygems");
26
+ /**
27
+ * Create a tooling config for aqua backend
28
+ * @link https://mise.jdx.dev/dev-tools/backends/aqua.html
29
+ */
30
+ function createAquaToolConfig(name, version) {
31
+ // mise supports http aqua package type but we cannot determine it from the tool name
32
+ // An error will be thrown afterwards if the package type is http
33
+ // ref: https://github.com/jdx/mise/blob/d1b9749d8f3e13ef705c1ea471d96c5935b79136/src/aqua/aqua_registry.rs#L39-L45
34
+ return {
35
+ packageName: name,
36
+ datasource: github_tags_1.GithubTagsDatasource.id,
37
+ // Trim the leading 'v' from both the current and extracted version
38
+ currentValue: version.replace((0, regex_1.regEx)(/^v/), ''),
39
+ extractVersion: '^v?(?<version>.+)',
40
+ };
41
+ }
42
+ const cargoGitVersionRegex = (0, regex_1.regEx)(/^(?<type>tag|branch|rev):(?<version>.+)$/);
43
+ /**
44
+ * Create a tooling config for cargo backend
45
+ * @link https://mise.jdx.dev/dev-tools/backends/cargo.html
46
+ */
47
+ function createCargoToolConfig(name, version) {
48
+ if (!is_1.default.urlString(name)) {
49
+ return {
50
+ packageName: name, // `is.urlString` type issue
51
+ datasource: crate_1.CrateDatasource.id,
52
+ };
53
+ }
54
+ // tag: branch: or rev: is required for git repository url
55
+ // e.g. branch:main, tag:0.1.0, rev:abcdef
56
+ const matchGroups = cargoGitVersionRegex.exec(version)?.groups;
57
+ if (is_1.default.undefined(matchGroups)) {
58
+ return {
59
+ packageName: name,
60
+ skipReason: 'invalid-version',
61
+ };
62
+ }
63
+ const { type, version: gitVersion } = matchGroups;
64
+ switch (type) {
65
+ case 'tag':
66
+ return {
67
+ packageName: name,
68
+ datasource: git_tags_1.GitTagsDatasource.id,
69
+ currentValue: gitVersion,
70
+ };
71
+ case 'branch':
72
+ return {
73
+ packageName: name,
74
+ datasource: git_refs_1.GitRefsDatasource.id,
75
+ currentValue: gitVersion,
76
+ };
77
+ case 'rev':
78
+ return {
79
+ packageName: name,
80
+ datasource: git_refs_1.GitRefsDatasource.id,
81
+ currentValue: gitVersion,
82
+ };
83
+ }
84
+ }
85
+ /**
86
+ * Create a tooling config for dotnet backend
87
+ * @link https://mise.jdx.dev/dev-tools/backends/dotnet.html
88
+ */
89
+ function createDotnetToolConfig(name) {
90
+ return {
91
+ packageName: name,
92
+ datasource: nuget_1.NugetDatasource.id,
93
+ };
94
+ }
95
+ /**
96
+ * Create a tooling config for gem backend
97
+ * @link https://mise.jdx.dev/dev-tools/backends/gem.html
98
+ */
99
+ function createGemToolConfig(name) {
100
+ return {
101
+ packageName: name,
102
+ datasource: rubygems_1.RubygemsDatasource.id,
103
+ };
104
+ }
105
+ /**
106
+ * Create a tooling config for go backend
107
+ * @link https://mise.jdx.dev/dev-tools/backends/go.html
108
+ */
109
+ function createGoToolConfig(name) {
110
+ return {
111
+ packageName: name,
112
+ datasource: go_1.GoDatasource.id,
113
+ };
114
+ }
115
+ /**
116
+ * Create a tooling config for npm backend
117
+ * @link https://mise.jdx.dev/dev-tools/backends/npm.html
118
+ */
119
+ function createNpmToolConfig(name) {
120
+ return {
121
+ packageName: name,
122
+ datasource: npm_1.NpmDatasource.id,
123
+ };
124
+ }
125
+ const pipxGitHubRegex = (0, regex_1.regEx)(/^git\+https:\/\/github\.com\/(?<repo>.+)\.git$/);
126
+ /**
127
+ * Create a tooling config for pipx backend
128
+ * @link https://mise.jdx.dev/dev-tools/backends/pipx.html
129
+ */
130
+ function createPipxToolConfig(name) {
131
+ const isGitSyntax = name.startsWith('git+');
132
+ // Does not support zip file url
133
+ // Avoid type narrowing to prevent type error
134
+ if (!isGitSyntax && is_1.default.urlString(name)) {
135
+ return {
136
+ packageName: name,
137
+ skipReason: 'unsupported-url',
138
+ };
139
+ }
140
+ if (isGitSyntax || name.includes('/')) {
141
+ let repoName;
142
+ if (isGitSyntax) {
143
+ repoName = pipxGitHubRegex.exec(name)?.groups?.repo;
144
+ // If the url is not a github repo, treat the version as a git ref
145
+ if (is_1.default.undefined(repoName)) {
146
+ return {
147
+ packageName: name.replace(/^git\+/g, '').replaceAll(/\.git$/g, ''),
148
+ datasource: git_refs_1.GitRefsDatasource.id,
149
+ };
150
+ }
151
+ }
152
+ else {
153
+ repoName = name;
154
+ }
155
+ return {
156
+ packageName: repoName,
157
+ datasource: github_tags_1.GithubTagsDatasource.id,
158
+ };
159
+ }
160
+ return {
161
+ packageName: (0, common_1.normalizePythonDepName)(name),
162
+ datasource: pypi_1.PypiDatasource.id,
163
+ };
164
+ }
165
+ const spmGitHubRegex = (0, regex_1.regEx)(/^https:\/\/github.com\/(?<repo>.+).git$/);
166
+ /**
167
+ * Create a tooling config for spm backend
168
+ * @link https://mise.jdx.dev/dev-tools/backends/spm.html
169
+ */
170
+ function createSpmToolConfig(name) {
171
+ let repoName;
172
+ // Avoid type narrowing to prevent type error
173
+ if (is_1.default.urlString(name)) {
174
+ repoName = spmGitHubRegex.exec(name)?.groups?.repo;
175
+ // spm backend only supports github repos
176
+ if (!repoName) {
177
+ return {
178
+ packageName: name,
179
+ skipReason: 'unsupported-url',
180
+ };
181
+ }
182
+ }
183
+ return {
184
+ packageName: repoName ?? name,
185
+ datasource: github_releases_1.GithubReleasesDatasource.id,
186
+ };
187
+ }
188
+ /**
189
+ * Create a tooling config for ubi backend
190
+ * @link https://mise.jdx.dev/dev-tools/backends/ubi.html
191
+ */
192
+ function createUbiToolConfig(name, version, toolOptions) {
193
+ let extractVersion = undefined;
194
+ const hasVPrefix = version.startsWith('v');
195
+ const setsTagRegex = !hasVPrefix || is_1.default.string(toolOptions.tag_regex);
196
+ if (setsTagRegex) {
197
+ // By default, use a regex that matches any tag
198
+ let tagRegex = '.+';
199
+ // Filter versions by tag_regex if it is specified
200
+ // ref: https://mise.jdx.dev/dev-tools/backends/ubi.html#ubi-uses-weird-versions
201
+ if (is_1.default.string(toolOptions.tag_regex)) {
202
+ // Remove the leading '^' if it exists to avoid duplication
203
+ tagRegex = toolOptions.tag_regex.replace(/^\^/, '');
204
+ if (!hasVPrefix) {
205
+ // Remove the leading 'v?' if it exists to avoid duplication
206
+ tagRegex = tagRegex.replace(/^v\??/, '');
207
+ }
208
+ }
209
+ // Trim the 'v' prefix if the current version does not have it
210
+ extractVersion = `^${hasVPrefix ? '' : 'v?'}(?<version>${tagRegex})`;
211
+ }
212
+ return {
213
+ packageName: name,
214
+ datasource: github_releases_1.GithubReleasesDatasource.id,
215
+ currentValue: version,
216
+ ...(is_1.default.string(extractVersion) ? { extractVersion } : {}),
217
+ };
218
+ }
219
+ //# sourceMappingURL=backends.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backends.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/backends.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { regEx } from '../../../util/regex';\nimport { CrateDatasource } from '../../datasource/crate';\nimport { GitRefsDatasource } from '../../datasource/git-refs';\nimport { GitTagsDatasource } from '../../datasource/git-tags';\nimport { GithubReleasesDatasource } from '../../datasource/github-releases';\nimport { GithubTagsDatasource } from '../../datasource/github-tags';\nimport { GoDatasource } from '../../datasource/go';\nimport { NpmDatasource } from '../../datasource/npm';\nimport { NugetDatasource } from '../../datasource/nuget';\nimport { PypiDatasource } from '../../datasource/pypi';\nimport { normalizePythonDepName } from '../../datasource/pypi/common';\nimport { RubygemsDatasource } from '../../datasource/rubygems';\nimport type { PackageDependency } from '../types';\nimport type { MiseToolOptionsSchema } from './schema';\n\nexport type BackendToolingConfig = Omit<PackageDependency, 'depName'> &\n Required<\n | Pick<PackageDependency, 'packageName' | 'datasource'>\n | Pick<PackageDependency, 'packageName' | 'skipReason'>\n >;\n\n/**\n * Create a tooling config for aqua backend\n * @link https://mise.jdx.dev/dev-tools/backends/aqua.html\n */\nexport function createAquaToolConfig(\n name: string,\n version: string,\n): BackendToolingConfig {\n // mise supports http aqua package type but we cannot determine it from the tool name\n // An error will be thrown afterwards if the package type is http\n // ref: https://github.com/jdx/mise/blob/d1b9749d8f3e13ef705c1ea471d96c5935b79136/src/aqua/aqua_registry.rs#L39-L45\n return {\n packageName: name,\n datasource: GithubTagsDatasource.id,\n // Trim the leading 'v' from both the current and extracted version\n currentValue: version.replace(regEx(/^v/), ''),\n extractVersion: '^v?(?<version>.+)',\n };\n}\n\nconst cargoGitVersionRegex = regEx(/^(?<type>tag|branch|rev):(?<version>.+)$/);\n\n/**\n * Create a tooling config for cargo backend\n * @link https://mise.jdx.dev/dev-tools/backends/cargo.html\n */\nexport function createCargoToolConfig(\n name: string,\n version: string,\n): BackendToolingConfig {\n if (!is.urlString(name)) {\n return {\n packageName: name as string, // `is.urlString` type issue\n datasource: CrateDatasource.id,\n };\n }\n // tag: branch: or rev: is required for git repository url\n // e.g. branch:main, tag:0.1.0, rev:abcdef\n const matchGroups = cargoGitVersionRegex.exec(version)?.groups;\n if (is.undefined(matchGroups)) {\n return {\n packageName: name,\n skipReason: 'invalid-version',\n };\n }\n const { type, version: gitVersion } = matchGroups;\n switch (type as 'tag' | 'branch' | 'rev') {\n case 'tag':\n return {\n packageName: name,\n datasource: GitTagsDatasource.id,\n currentValue: gitVersion,\n };\n case 'branch':\n return {\n packageName: name,\n datasource: GitRefsDatasource.id,\n currentValue: gitVersion,\n };\n case 'rev':\n return {\n packageName: name,\n datasource: GitRefsDatasource.id,\n currentValue: gitVersion,\n };\n }\n}\n\n/**\n * Create a tooling config for dotnet backend\n * @link https://mise.jdx.dev/dev-tools/backends/dotnet.html\n */\nexport function createDotnetToolConfig(name: string): BackendToolingConfig {\n return {\n packageName: name,\n datasource: NugetDatasource.id,\n };\n}\n\n/**\n * Create a tooling config for gem backend\n * @link https://mise.jdx.dev/dev-tools/backends/gem.html\n */\nexport function createGemToolConfig(name: string): BackendToolingConfig {\n return {\n packageName: name,\n datasource: RubygemsDatasource.id,\n };\n}\n\n/**\n * Create a tooling config for go backend\n * @link https://mise.jdx.dev/dev-tools/backends/go.html\n */\nexport function createGoToolConfig(name: string): BackendToolingConfig {\n return {\n packageName: name,\n datasource: GoDatasource.id,\n };\n}\n\n/**\n * Create a tooling config for npm backend\n * @link https://mise.jdx.dev/dev-tools/backends/npm.html\n */\nexport function createNpmToolConfig(name: string): BackendToolingConfig {\n return {\n packageName: name,\n datasource: NpmDatasource.id,\n };\n}\n\nconst pipxGitHubRegex = regEx(/^git\\+https:\\/\\/github\\.com\\/(?<repo>.+)\\.git$/);\n\n/**\n * Create a tooling config for pipx backend\n * @link https://mise.jdx.dev/dev-tools/backends/pipx.html\n */\nexport function createPipxToolConfig(name: string): BackendToolingConfig {\n const isGitSyntax = name.startsWith('git+');\n // Does not support zip file url\n // Avoid type narrowing to prevent type error\n if (!isGitSyntax && (is.urlString as (value: unknown) => boolean)(name)) {\n return {\n packageName: name,\n skipReason: 'unsupported-url',\n };\n }\n if (isGitSyntax || name.includes('/')) {\n let repoName: string | undefined;\n if (isGitSyntax) {\n repoName = pipxGitHubRegex.exec(name)?.groups?.repo;\n // If the url is not a github repo, treat the version as a git ref\n if (is.undefined(repoName)) {\n return {\n packageName: name.replace(/^git\\+/g, '').replaceAll(/\\.git$/g, ''),\n datasource: GitRefsDatasource.id,\n };\n }\n } else {\n repoName = name;\n }\n return {\n packageName: repoName,\n datasource: GithubTagsDatasource.id,\n };\n }\n return {\n packageName: normalizePythonDepName(name),\n datasource: PypiDatasource.id,\n };\n}\n\nconst spmGitHubRegex = regEx(/^https:\\/\\/github.com\\/(?<repo>.+).git$/);\n\n/**\n * Create a tooling config for spm backend\n * @link https://mise.jdx.dev/dev-tools/backends/spm.html\n */\nexport function createSpmToolConfig(name: string): BackendToolingConfig {\n let repoName: string | undefined;\n // Avoid type narrowing to prevent type error\n if ((is.urlString as (value: unknown) => boolean)(name)) {\n repoName = spmGitHubRegex.exec(name)?.groups?.repo;\n // spm backend only supports github repos\n if (!repoName) {\n return {\n packageName: name,\n skipReason: 'unsupported-url',\n };\n }\n }\n return {\n packageName: repoName ?? name,\n datasource: GithubReleasesDatasource.id,\n };\n}\n\n/**\n * Create a tooling config for ubi backend\n * @link https://mise.jdx.dev/dev-tools/backends/ubi.html\n */\nexport function createUbiToolConfig(\n name: string,\n version: string,\n toolOptions: MiseToolOptionsSchema,\n): BackendToolingConfig {\n let extractVersion: string | undefined = undefined;\n\n const hasVPrefix = version.startsWith('v');\n const setsTagRegex = !hasVPrefix || is.string(toolOptions.tag_regex);\n\n if (setsTagRegex) {\n // By default, use a regex that matches any tag\n let tagRegex = '.+';\n // Filter versions by tag_regex if it is specified\n // ref: https://mise.jdx.dev/dev-tools/backends/ubi.html#ubi-uses-weird-versions\n if (is.string(toolOptions.tag_regex)) {\n // Remove the leading '^' if it exists to avoid duplication\n tagRegex = toolOptions.tag_regex.replace(/^\\^/, '');\n if (!hasVPrefix) {\n // Remove the leading 'v?' if it exists to avoid duplication\n tagRegex = tagRegex.replace(/^v\\??/, '');\n }\n }\n\n // Trim the 'v' prefix if the current version does not have it\n extractVersion = `^${hasVPrefix ? '' : 'v?'}(?<version>${tagRegex})`;\n }\n\n return {\n packageName: name,\n datasource: GithubReleasesDatasource.id,\n currentValue: version,\n ...(is.string(extractVersion) ? { extractVersion } : {}),\n };\n}\n"]}
@@ -4,8 +4,13 @@ exports.extractPackageFile = extractPackageFile;
4
4
  const tslib_1 = require("tslib");
5
5
  const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
6
6
  const logger_1 = require("../../../logger");
7
+ const regex_1 = require("../../../util/regex");
8
+ const backends_1 = require("./backends");
7
9
  const upgradeable_tooling_1 = require("./upgradeable-tooling");
8
10
  const utils_1 = require("./utils");
11
+ // Tool names can have options in the tool name
12
+ // e.g. ubi:tamasfe/taplo[matching=full,exe=taplo]
13
+ const optionInToolNameRegex = (0, regex_1.regEx)(/^(?<name>.+?)(?:\[(?<options>.+)\])?$/);
9
14
  function extractPackageFile(content, packageFile) {
10
15
  logger_1.logger.trace(`mise.extractPackageFile(${packageFile})`);
11
16
  const misefile = (0, utils_1.parseTomlFile)(content, packageFile);
@@ -17,8 +22,15 @@ function extractPackageFile(content, packageFile) {
17
22
  if (tools) {
18
23
  for (const [name, toolData] of Object.entries(tools)) {
19
24
  const version = parseVersion(toolData);
20
- const depName = name.trim();
21
- const toolConfig = getToolConfig(depName, version);
25
+ // Parse the tool options in the tool name
26
+ const { name: depName, options: optionsInName } = optionInToolNameRegex.exec(name.trim()).groups;
27
+ const delimiterIndex = name.indexOf(':');
28
+ const backend = depName.substring(0, delimiterIndex);
29
+ const toolName = depName.substring(delimiterIndex + 1);
30
+ const options = parseOptions(optionsInName, is_1.default.nonEmptyObject(toolData) ? toolData : {});
31
+ const toolConfig = version === null
32
+ ? null
33
+ : getToolConfig(backend, toolName, version, options);
22
34
  const dep = createDependency(depName, version, toolConfig);
23
35
  deps.push(dep);
24
36
  }
@@ -43,33 +55,88 @@ function parseVersion(toolData) {
43
55
  }
44
56
  return null; // Return null if no version is found
45
57
  }
46
- function getToolConfig(name, version) {
47
- if (version === null) {
48
- return null; // Early return if version is null
58
+ function parseOptions(optionsInName, toolOptions) {
59
+ const options = is_1.default.nonEmptyString(optionsInName)
60
+ ? Object.fromEntries(optionsInName.split(',').map((option) => option.split('=', 2)))
61
+ : {};
62
+ // Options in toolOptions will override options in the tool name
63
+ return {
64
+ ...options,
65
+ ...toolOptions,
66
+ };
67
+ }
68
+ function getToolConfig(backend, toolName, version, toolOptions) {
69
+ switch (backend) {
70
+ case '':
71
+ // If the tool name does not specify a backend, it should be a short name or an alias defined by users
72
+ return getRegistryToolConfig(toolName, version);
73
+ // We can specify core, asdf, vfox, aqua backends for tools in the default registry
74
+ // e.g. 'core:rust', 'asdf:rust', 'vfox:clang', 'aqua:act'
75
+ case 'core':
76
+ return getConfigFromTooling(upgradeable_tooling_1.miseTooling, toolName, version);
77
+ case 'asdf':
78
+ return getConfigFromTooling(upgradeable_tooling_1.asdfTooling, toolName, version);
79
+ case 'vfox':
80
+ return getRegistryToolConfig(toolName, version);
81
+ case 'aqua':
82
+ return (getRegistryToolConfig(toolName, version) ??
83
+ (0, backends_1.createAquaToolConfig)(toolName, version));
84
+ case 'cargo':
85
+ return (0, backends_1.createCargoToolConfig)(toolName, version);
86
+ case 'dotnet':
87
+ return (0, backends_1.createDotnetToolConfig)(toolName);
88
+ case 'gem':
89
+ return (0, backends_1.createGemToolConfig)(toolName);
90
+ case 'go':
91
+ return (0, backends_1.createGoToolConfig)(toolName);
92
+ case 'npm':
93
+ return (0, backends_1.createNpmToolConfig)(toolName);
94
+ case 'pipx':
95
+ return (0, backends_1.createPipxToolConfig)(toolName);
96
+ case 'spm':
97
+ return (0, backends_1.createSpmToolConfig)(toolName);
98
+ case 'ubi':
99
+ return (0, backends_1.createUbiToolConfig)(toolName, version, toolOptions);
100
+ default:
101
+ // Unsupported backend
102
+ return null;
49
103
  }
104
+ }
105
+ /**
106
+ * Get the tooling config for a short name defined in the default registry
107
+ * @link https://mise.jdx.dev/registry.html
108
+ */
109
+ function getRegistryToolConfig(short, version) {
50
110
  // Try to get the config from miseTooling first, then asdfTooling
51
- return (getConfigFromTooling(upgradeable_tooling_1.miseTooling, name, version) ??
52
- getConfigFromTooling(upgradeable_tooling_1.asdfTooling, name, version));
111
+ return (getConfigFromTooling(upgradeable_tooling_1.miseTooling, short, version) ??
112
+ getConfigFromTooling(upgradeable_tooling_1.asdfTooling, short, version));
53
113
  }
54
114
  function getConfigFromTooling(toolingSource, name, version) {
55
115
  const toolDefinition = toolingSource[name];
56
116
  if (!toolDefinition) {
57
117
  return null;
58
118
  } // Return null if no toolDefinition is found
59
- return ((typeof toolDefinition.config === 'function'
119
+ return ((is_1.default.function(toolDefinition.config)
60
120
  ? toolDefinition.config(version)
61
121
  : toolDefinition.config) ?? null); // Ensure null is returned instead of undefined
62
122
  }
63
123
  function createDependency(name, version, config) {
64
124
  if (version === null) {
65
- return { depName: name, skipReason: 'unspecified-version' };
125
+ return {
126
+ depName: name,
127
+ skipReason: 'unspecified-version',
128
+ };
66
129
  }
67
130
  if (config === null) {
68
- return { depName: name, skipReason: 'unsupported-datasource' };
131
+ return {
132
+ depName: name,
133
+ skipReason: 'unsupported-datasource',
134
+ };
69
135
  }
70
136
  return {
71
137
  depName: name,
72
138
  currentValue: version,
139
+ // Spread the config last to override other properties
73
140
  ...config,
74
141
  };
75
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/extract.ts"],"names":[],"mappings":";;AASA,gDAyBC;;AAlCD,kEAAkC;AAClC,4CAAyC;AAKzC,+DAAiE;AACjE,mCAAwC;AAExC,SAAgB,kBAAkB,CAChC,OAAe,EACf,WAAmB;IAEnB,eAAM,CAAC,KAAK,CAAC,2BAA2B,WAAW,GAAG,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAE7B,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AAED,SAAS,YAAY,CAAC,QAAwB;IAC5C,IAAI,YAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,yBAAyB;QACzB,yBAAyB;QACzB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,YAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,YAAE,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,wBAAwB;QACxB,mCAAmC;QACnC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,qCAAqC;IACpF,CAAC;IACD,IAAI,YAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,YAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,+CAA+C;QAC/C,yCAAyC;QACzC,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,qCAAqC;AACpD,CAAC;AAED,SAAS,aAAa,CACpB,IAAY,EACZ,OAAsB;IAEtB,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,CAAC,kCAAkC;IACjD,CAAC;IAED,iEAAiE;IACjE,OAAO,CACL,oBAAoB,CAAC,iCAAW,EAAE,IAAI,EAAE,OAAO,CAAC;QAChD,oBAAoB,CAAC,iCAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CACjD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,aAAgD,EAChD,IAAY,EACZ,OAAe;IAEf,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,4CAA4C;IAE9C,OAAO,CACL,CAAC,OAAO,cAAc,CAAC,MAAM,KAAK,UAAU;QAC1C,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;QAChC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,IAAI,CACnC,CAAC,CAAC,+CAA+C;AACpD,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAY,EACZ,OAAsB,EACtB,MAA4B;IAE5B,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,qBAAqB,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,wBAAwB,EAAE,CAAC;IACjE,CAAC;IACD,OAAO;QACL,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,OAAO;QACrB,GAAG,MAAM;KACV,CAAC;AACJ,CAAC","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport type { ToolingConfig } from '../asdf/upgradeable-tooling';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport type { MiseToolSchema } from './schema';\nimport type { ToolingDefinition } from './upgradeable-tooling';\nimport { asdfTooling, miseTooling } from './upgradeable-tooling';\nimport { parseTomlFile } from './utils';\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n): PackageFileContent | null {\n logger.trace(`mise.extractPackageFile(${packageFile})`);\n\n const misefile = parseTomlFile(content, packageFile);\n if (!misefile) {\n return null;\n }\n\n const deps: PackageDependency[] = [];\n const tools = misefile.tools;\n\n if (tools) {\n for (const [name, toolData] of Object.entries(tools)) {\n const version = parseVersion(toolData);\n const depName = name.trim();\n const toolConfig = getToolConfig(depName, version);\n const dep = createDependency(depName, version, toolConfig);\n deps.push(dep);\n }\n }\n\n return deps.length ? { deps } : null;\n}\n\nfunction parseVersion(toolData: MiseToolSchema): string | null {\n if (is.nonEmptyString(toolData)) {\n // Handle the string case\n // e.g. 'erlang = \"23.3\"'\n return toolData;\n }\n if (is.array(toolData, is.string)) {\n // Handle the array case\n // e.g. 'erlang = [\"23.3\", \"24.0\"]'\n return toolData.length ? toolData[0] : null; // Get the first version in the array\n }\n if (is.object(toolData) && is.nonEmptyString(toolData.version)) {\n // Handle the object case with a string version\n // e.g. 'python = { version = \"3.11.2\" }'\n return toolData.version;\n }\n return null; // Return null if no version is found\n}\n\nfunction getToolConfig(\n name: string,\n version: string | null,\n): ToolingConfig | null {\n if (version === null) {\n return null; // Early return if version is null\n }\n\n // Try to get the config from miseTooling first, then asdfTooling\n return (\n getConfigFromTooling(miseTooling, name, version) ??\n getConfigFromTooling(asdfTooling, name, version)\n );\n}\n\nfunction getConfigFromTooling(\n toolingSource: Record<string, ToolingDefinition>,\n name: string,\n version: string,\n): ToolingConfig | null {\n const toolDefinition = toolingSource[name];\n if (!toolDefinition) {\n return null;\n } // Return null if no toolDefinition is found\n\n return (\n (typeof toolDefinition.config === 'function'\n ? toolDefinition.config(version)\n : toolDefinition.config) ?? null\n ); // Ensure null is returned instead of undefined\n}\n\nfunction createDependency(\n name: string,\n version: string | null,\n config: ToolingConfig | null,\n): PackageDependency {\n if (version === null) {\n return { depName: name, skipReason: 'unspecified-version' };\n }\n if (config === null) {\n return { depName: name, skipReason: 'unsupported-datasource' };\n }\n return {\n depName: name,\n currentValue: version,\n ...config,\n };\n}\n"]}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/extract.ts"],"names":[],"mappings":"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","sourcesContent":["import is from '@sindresorhus/is';\nimport { logger } from '../../../logger';\nimport { regEx } from '../../../util/regex';\nimport type { ToolingConfig } from '../asdf/upgradeable-tooling';\nimport type { PackageDependency, PackageFileContent } from '../types';\nimport type { BackendToolingConfig } from './backends';\nimport {\n createAquaToolConfig,\n createCargoToolConfig,\n createDotnetToolConfig,\n createGemToolConfig,\n createGoToolConfig,\n createNpmToolConfig,\n createPipxToolConfig,\n createSpmToolConfig,\n createUbiToolConfig,\n} from './backends';\nimport type { MiseToolOptionsSchema, MiseToolSchema } from './schema';\nimport type { ToolingDefinition } from './upgradeable-tooling';\nimport { asdfTooling, miseTooling } from './upgradeable-tooling';\nimport { parseTomlFile } from './utils';\n\n// Tool names can have options in the tool name\n// e.g. ubi:tamasfe/taplo[matching=full,exe=taplo]\nconst optionInToolNameRegex = regEx(/^(?<name>.+?)(?:\\[(?<options>.+)\\])?$/);\n\nexport function extractPackageFile(\n content: string,\n packageFile: string,\n): PackageFileContent | null {\n logger.trace(`mise.extractPackageFile(${packageFile})`);\n\n const misefile = parseTomlFile(content, packageFile);\n if (!misefile) {\n return null;\n }\n\n const deps: PackageDependency[] = [];\n const tools = misefile.tools;\n\n if (tools) {\n for (const [name, toolData] of Object.entries(tools)) {\n const version = parseVersion(toolData);\n // Parse the tool options in the tool name\n const { name: depName, options: optionsInName } =\n optionInToolNameRegex.exec(name.trim())!.groups!;\n const delimiterIndex = name.indexOf(':');\n const backend = depName.substring(0, delimiterIndex);\n const toolName = depName.substring(delimiterIndex + 1);\n const options = parseOptions(\n optionsInName,\n is.nonEmptyObject(toolData) ? toolData : {},\n );\n const toolConfig =\n version === null\n ? null\n : getToolConfig(backend, toolName, version, options);\n const dep = createDependency(depName, version, toolConfig);\n deps.push(dep);\n }\n }\n\n return deps.length ? { deps } : null;\n}\n\nfunction parseVersion(toolData: MiseToolSchema): string | null {\n if (is.nonEmptyString(toolData)) {\n // Handle the string case\n // e.g. 'erlang = \"23.3\"'\n return toolData;\n }\n if (is.array(toolData, is.string)) {\n // Handle the array case\n // e.g. 'erlang = [\"23.3\", \"24.0\"]'\n return toolData.length ? toolData[0] : null; // Get the first version in the array\n }\n if (is.object(toolData) && is.nonEmptyString(toolData.version)) {\n // Handle the object case with a string version\n // e.g. 'python = { version = \"3.11.2\" }'\n return toolData.version;\n }\n return null; // Return null if no version is found\n}\n\nfunction parseOptions(\n optionsInName: string,\n toolOptions: MiseToolOptionsSchema,\n): MiseToolOptionsSchema {\n const options = is.nonEmptyString(optionsInName)\n ? Object.fromEntries(\n optionsInName.split(',').map((option) => option.split('=', 2)),\n )\n : {};\n // Options in toolOptions will override options in the tool name\n return {\n ...options,\n ...toolOptions,\n };\n}\n\nfunction getToolConfig(\n backend: string,\n toolName: string,\n version: string,\n toolOptions: MiseToolOptionsSchema,\n): ToolingConfig | BackendToolingConfig | null {\n switch (backend) {\n case '':\n // If the tool name does not specify a backend, it should be a short name or an alias defined by users\n return getRegistryToolConfig(toolName, version);\n // We can specify core, asdf, vfox, aqua backends for tools in the default registry\n // e.g. 'core:rust', 'asdf:rust', 'vfox:clang', 'aqua:act'\n case 'core':\n return getConfigFromTooling(miseTooling, toolName, version);\n case 'asdf':\n return getConfigFromTooling(asdfTooling, toolName, version);\n case 'vfox':\n return getRegistryToolConfig(toolName, version);\n case 'aqua':\n return (\n getRegistryToolConfig(toolName, version) ??\n createAquaToolConfig(toolName, version)\n );\n case 'cargo':\n return createCargoToolConfig(toolName, version);\n case 'dotnet':\n return createDotnetToolConfig(toolName);\n case 'gem':\n return createGemToolConfig(toolName);\n case 'go':\n return createGoToolConfig(toolName);\n case 'npm':\n return createNpmToolConfig(toolName);\n case 'pipx':\n return createPipxToolConfig(toolName);\n case 'spm':\n return createSpmToolConfig(toolName);\n case 'ubi':\n return createUbiToolConfig(toolName, version, toolOptions);\n default:\n // Unsupported backend\n return null;\n }\n}\n\n/**\n * Get the tooling config for a short name defined in the default registry\n * @link https://mise.jdx.dev/registry.html\n */\nfunction getRegistryToolConfig(\n short: string,\n version: string,\n): ToolingConfig | null {\n // Try to get the config from miseTooling first, then asdfTooling\n return (\n getConfigFromTooling(miseTooling, short, version) ??\n getConfigFromTooling(asdfTooling, short, version)\n );\n}\n\nfunction getConfigFromTooling(\n toolingSource: Record<string, ToolingDefinition>,\n name: string,\n version: string,\n): ToolingConfig | null {\n const toolDefinition = toolingSource[name];\n if (!toolDefinition) {\n return null;\n } // Return null if no toolDefinition is found\n\n return (\n (is.function(toolDefinition.config)\n ? toolDefinition.config(version)\n : toolDefinition.config) ?? null\n ); // Ensure null is returned instead of undefined\n}\n\nfunction createDependency(\n name: string,\n version: string | null,\n config: ToolingConfig | BackendToolingConfig | null,\n): PackageDependency {\n if (version === null) {\n return {\n depName: name,\n skipReason: 'unspecified-version',\n };\n }\n if (config === null) {\n return {\n depName: name,\n skipReason: 'unsupported-datasource',\n };\n }\n\n return {\n depName: name,\n currentValue: version,\n // Spread the config last to override other properties\n ...config,\n };\n}\n"]}
@@ -1,6 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.supportedDatasources = exports.defaultConfig = exports.url = exports.displayName = exports.extractPackageFile = void 0;
4
+ const array_1 = require("../../../util/array");
5
+ const crate_1 = require("../../datasource/crate");
6
+ const git_refs_1 = require("../../datasource/git-refs");
7
+ const git_tags_1 = require("../../datasource/git-tags");
8
+ const github_releases_1 = require("../../datasource/github-releases");
9
+ const github_tags_1 = require("../../datasource/github-tags");
10
+ const go_1 = require("../../datasource/go");
11
+ const java_version_1 = require("../../datasource/java-version");
12
+ const node_version_1 = require("../../datasource/node-version");
13
+ const npm_1 = require("../../datasource/npm");
14
+ const nuget_1 = require("../../datasource/nuget");
15
+ const pypi_1 = require("../../datasource/pypi");
16
+ const ruby_version_1 = require("../../datasource/ruby-version");
17
+ const rubygems_1 = require("../../datasource/rubygems");
4
18
  const asdf_1 = require("../asdf");
5
19
  var extract_1 = require("./extract");
6
20
  Object.defineProperty(exports, "extractPackageFile", { enumerable: true, get: function () { return extract_1.extractPackageFile; } });
@@ -12,6 +26,27 @@ exports.defaultConfig = {
12
26
  '/(^|/)\\.?mise/config\\.toml$/',
13
27
  ],
14
28
  };
15
- // Re-use the asdf datasources, as mise and asdf support the same plugins.
16
- exports.supportedDatasources = asdf_1.supportedDatasources;
29
+ const backendDatasources = {
30
+ core: [
31
+ github_releases_1.GithubReleasesDatasource.id,
32
+ github_tags_1.GithubTagsDatasource.id,
33
+ java_version_1.JavaVersionDatasource.id,
34
+ node_version_1.NodeVersionDatasource.id,
35
+ ruby_version_1.RubyVersionDatasource.id,
36
+ ],
37
+ // Re-use the asdf datasources, as mise and asdf support the same plugins.
38
+ asdf: asdf_1.supportedDatasources,
39
+ aqua: [github_tags_1.GithubTagsDatasource.id],
40
+ cargo: [crate_1.CrateDatasource.id, git_tags_1.GitTagsDatasource.id, git_refs_1.GitRefsDatasource.id],
41
+ dotnet: [nuget_1.NugetDatasource.id],
42
+ gem: [rubygems_1.RubygemsDatasource.id],
43
+ go: [go_1.GoDatasource.id],
44
+ npm: [npm_1.NpmDatasource.id],
45
+ pipx: [pypi_1.PypiDatasource.id, github_tags_1.GithubTagsDatasource.id, git_refs_1.GitRefsDatasource.id],
46
+ spm: [github_releases_1.GithubReleasesDatasource.id],
47
+ ubi: [github_releases_1.GithubReleasesDatasource.id],
48
+ // not supported
49
+ vfox: [],
50
+ };
51
+ exports.supportedDatasources = (0, array_1.deduplicateArray)(Object.values(backendDatasources).flat()).sort();
17
52
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/index.ts"],"names":[],"mappings":";;;AAAA,kCAA2E;AAE3E,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAEd,QAAA,WAAW,GAAG,eAAe,CAAC;AAC9B,QAAA,GAAG,GAAG,sBAAsB,CAAC;AAE7B,QAAA,aAAa,GAAG;IAC3B,mBAAmB,EAAE;QACnB,yBAAyB;QACzB,gCAAgC;KACjC;CACF,CAAC;AAEF,0EAA0E;AAC7D,QAAA,oBAAoB,GAAG,2BAAwB,CAAC","sourcesContent":["import { supportedDatasources as asdfSupportedDatasources } from '../asdf';\n\nexport { extractPackageFile } from './extract';\n\nexport const displayName = 'mise-en-place';\nexport const url = 'https://mise.jdx.dev';\n\nexport const defaultConfig = {\n managerFilePatterns: [\n '/(^|/)\\\\.?mise\\\\.toml$/',\n '/(^|/)\\\\.?mise/config\\\\.toml$/',\n ],\n};\n\n// Re-use the asdf datasources, as mise and asdf support the same plugins.\nexport const supportedDatasources = asdfSupportedDatasources;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/index.ts"],"names":[],"mappings":";;;AAAA,+CAAuD;AACvD,kDAAyD;AACzD,wDAA8D;AAC9D,wDAA8D;AAC9D,sEAA4E;AAC5E,8DAAoE;AACpE,4CAAmD;AACnD,gEAAsE;AACtE,gEAAsE;AACtE,8CAAqD;AACrD,kDAAyD;AACzD,gDAAuD;AACvD,gEAAsE;AACtE,wDAA+D;AAC/D,kCAA2E;AAE3E,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAEd,QAAA,WAAW,GAAG,eAAe,CAAC;AAC9B,QAAA,GAAG,GAAG,sBAAsB,CAAC;AAE7B,QAAA,aAAa,GAAG;IAC3B,mBAAmB,EAAE;QACnB,yBAAyB;QACzB,gCAAgC;KACjC;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,IAAI,EAAE;QACJ,0CAAwB,CAAC,EAAE;QAC3B,kCAAoB,CAAC,EAAE;QACvB,oCAAqB,CAAC,EAAE;QACxB,oCAAqB,CAAC,EAAE;QACxB,oCAAqB,CAAC,EAAE;KACzB;IACD,0EAA0E;IAC1E,IAAI,EAAE,2BAAwB;IAC9B,IAAI,EAAE,CAAC,kCAAoB,CAAC,EAAE,CAAC;IAC/B,KAAK,EAAE,CAAC,uBAAe,CAAC,EAAE,EAAE,4BAAiB,CAAC,EAAE,EAAE,4BAAiB,CAAC,EAAE,CAAC;IACvE,MAAM,EAAE,CAAC,uBAAe,CAAC,EAAE,CAAC;IAC5B,GAAG,EAAE,CAAC,6BAAkB,CAAC,EAAE,CAAC;IAC5B,EAAE,EAAE,CAAC,iBAAY,CAAC,EAAE,CAAC;IACrB,GAAG,EAAE,CAAC,mBAAa,CAAC,EAAE,CAAC;IACvB,IAAI,EAAE,CAAC,qBAAc,CAAC,EAAE,EAAE,kCAAoB,CAAC,EAAE,EAAE,4BAAiB,CAAC,EAAE,CAAC;IACxE,GAAG,EAAE,CAAC,0CAAwB,CAAC,EAAE,CAAC;IAClC,GAAG,EAAE,CAAC,0CAAwB,CAAC,EAAE,CAAC;IAClC,gBAAgB;IAChB,IAAI,EAAE,EAAE;CACT,CAAC;AAEW,QAAA,oBAAoB,GAAG,IAAA,wBAAgB,EAClD,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,CACzC,CAAC,IAAI,EAAE,CAAC","sourcesContent":["import { deduplicateArray } from '../../../util/array';\nimport { CrateDatasource } from '../../datasource/crate';\nimport { GitRefsDatasource } from '../../datasource/git-refs';\nimport { GitTagsDatasource } from '../../datasource/git-tags';\nimport { GithubReleasesDatasource } from '../../datasource/github-releases';\nimport { GithubTagsDatasource } from '../../datasource/github-tags';\nimport { GoDatasource } from '../../datasource/go';\nimport { JavaVersionDatasource } from '../../datasource/java-version';\nimport { NodeVersionDatasource } from '../../datasource/node-version';\nimport { NpmDatasource } from '../../datasource/npm';\nimport { NugetDatasource } from '../../datasource/nuget';\nimport { PypiDatasource } from '../../datasource/pypi';\nimport { RubyVersionDatasource } from '../../datasource/ruby-version';\nimport { RubygemsDatasource } from '../../datasource/rubygems';\nimport { supportedDatasources as asdfSupportedDatasources } from '../asdf';\n\nexport { extractPackageFile } from './extract';\n\nexport const displayName = 'mise-en-place';\nexport const url = 'https://mise.jdx.dev';\n\nexport const defaultConfig = {\n managerFilePatterns: [\n '/(^|/)\\\\.?mise\\\\.toml$/',\n '/(^|/)\\\\.?mise/config\\\\.toml$/',\n ],\n};\n\nconst backendDatasources = {\n core: [\n GithubReleasesDatasource.id,\n GithubTagsDatasource.id,\n JavaVersionDatasource.id,\n NodeVersionDatasource.id,\n RubyVersionDatasource.id,\n ],\n // Re-use the asdf datasources, as mise and asdf support the same plugins.\n asdf: asdfSupportedDatasources,\n aqua: [GithubTagsDatasource.id],\n cargo: [CrateDatasource.id, GitTagsDatasource.id, GitRefsDatasource.id],\n dotnet: [NugetDatasource.id],\n gem: [RubygemsDatasource.id],\n go: [GoDatasource.id],\n npm: [NpmDatasource.id],\n pipx: [PypiDatasource.id, GithubTagsDatasource.id, GitRefsDatasource.id],\n spm: [GithubReleasesDatasource.id],\n ubi: [GithubReleasesDatasource.id],\n // not supported\n vfox: [],\n};\n\nexport const supportedDatasources = deduplicateArray(\n Object.values(backendDatasources).flat(),\n).sort();\n"]}
@@ -1,45 +1,69 @@
1
1
  import { z } from 'zod';
2
+ declare const MiseToolOptionsSchema: z.ZodObject<{
3
+ tag_regex: z.ZodOptional<z.ZodString>;
4
+ }, "strip", z.ZodTypeAny, {
5
+ tag_regex?: string | undefined;
6
+ }, {
7
+ tag_regex?: string | undefined;
8
+ }>;
9
+ export type MiseToolOptionsSchema = z.infer<typeof MiseToolOptionsSchema>;
2
10
  declare const MiseToolSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
11
+ tag_regex: z.ZodOptional<z.ZodString>;
12
+ } & {
3
13
  version: z.ZodOptional<z.ZodString>;
4
14
  }, "strip", z.ZodTypeAny, {
5
15
  version?: string | undefined;
16
+ tag_regex?: string | undefined;
6
17
  }, {
7
18
  version?: string | undefined;
19
+ tag_regex?: string | undefined;
8
20
  }>, z.ZodArray<z.ZodString, "many">]>;
9
21
  export type MiseToolSchema = z.infer<typeof MiseToolSchema>;
10
22
  export declare const MiseFileSchema: z.ZodObject<{
11
23
  tools: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodObject<{
24
+ tag_regex: z.ZodOptional<z.ZodString>;
25
+ } & {
12
26
  version: z.ZodOptional<z.ZodString>;
13
27
  }, "strip", z.ZodTypeAny, {
14
28
  version?: string | undefined;
29
+ tag_regex?: string | undefined;
15
30
  }, {
16
31
  version?: string | undefined;
32
+ tag_regex?: string | undefined;
17
33
  }>, z.ZodArray<z.ZodString, "many">]>>;
18
34
  }, "strip", z.ZodTypeAny, {
19
35
  tools: Record<string, string | string[] | {
20
36
  version?: string | undefined;
37
+ tag_regex?: string | undefined;
21
38
  }>;
22
39
  }, {
23
40
  tools: Record<string, string | string[] | {
24
41
  version?: string | undefined;
42
+ tag_regex?: string | undefined;
25
43
  }>;
26
44
  }>;
27
45
  export type MiseFileSchema = z.infer<typeof MiseFileSchema>;
28
46
  export declare const MiseFileSchemaToml: z.ZodPipeline<z.ZodEffects<z.ZodString, unknown, string>, z.ZodObject<{
29
47
  tools: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodObject<{
48
+ tag_regex: z.ZodOptional<z.ZodString>;
49
+ } & {
30
50
  version: z.ZodOptional<z.ZodString>;
31
51
  }, "strip", z.ZodTypeAny, {
32
52
  version?: string | undefined;
53
+ tag_regex?: string | undefined;
33
54
  }, {
34
55
  version?: string | undefined;
56
+ tag_regex?: string | undefined;
35
57
  }>, z.ZodArray<z.ZodString, "many">]>>;
36
58
  }, "strip", z.ZodTypeAny, {
37
59
  tools: Record<string, string | string[] | {
38
60
  version?: string | undefined;
61
+ tag_regex?: string | undefined;
39
62
  }>;
40
63
  }, {
41
64
  tools: Record<string, string | string[] | {
42
65
  version?: string | undefined;
66
+ tag_regex?: string | undefined;
43
67
  }>;
44
68
  }>>;
45
69
  export {};
@@ -3,9 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MiseFileSchemaToml = exports.MiseFileSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const schema_utils_1 = require("../../../util/schema-utils");
6
+ const MiseToolOptionsSchema = zod_1.z.object({
7
+ // ubi backend only
8
+ tag_regex: zod_1.z.string().optional(),
9
+ });
6
10
  const MiseToolSchema = zod_1.z.union([
7
11
  zod_1.z.string(),
8
- zod_1.z.object({ version: zod_1.z.string().optional() }),
12
+ MiseToolOptionsSchema.extend({
13
+ version: zod_1.z.string().optional(),
14
+ }),
9
15
  zod_1.z.array(zod_1.z.string()),
10
16
  ]);
11
17
  exports.MiseFileSchema = zod_1.z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,6DAAkD;AAElD,MAAM,cAAc,GAAG,OAAC,CAAC,KAAK,CAAC;IAC7B,OAAC,CAAC,MAAM,EAAE;IACV,OAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC5C,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;CACpB,CAAC,CAAC;AAGU,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,OAAC,CAAC,MAAM,CAAC,cAAc,CAAC;CAChC,CAAC,CAAC;AAGU,QAAA,kBAAkB,GAAG,mBAAI,CAAC,IAAI,CAAC,sBAAc,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { Toml } from '../../../util/schema-utils';\n\nconst MiseToolSchema = z.union([\n z.string(),\n z.object({ version: z.string().optional() }),\n z.array(z.string()),\n]);\nexport type MiseToolSchema = z.infer<typeof MiseToolSchema>;\n\nexport const MiseFileSchema = z.object({\n tools: z.record(MiseToolSchema),\n});\nexport type MiseFileSchema = z.infer<typeof MiseFileSchema>;\n\nexport const MiseFileSchemaToml = Toml.pipe(MiseFileSchema);\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../lib/modules/manager/mise/schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,6DAAkD;AAElD,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,mBAAmB;IACnB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAGH,MAAM,cAAc,GAAG,OAAC,CAAC,KAAK,CAAC;IAC7B,OAAC,CAAC,MAAM,EAAE;IACV,qBAAqB,CAAC,MAAM,CAAC;QAC3B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC/B,CAAC;IACF,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;CACpB,CAAC,CAAC;AAGU,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,OAAC,CAAC,MAAM,CAAC,cAAc,CAAC;CAChC,CAAC,CAAC;AAGU,QAAA,kBAAkB,GAAG,mBAAI,CAAC,IAAI,CAAC,sBAAc,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { Toml } from '../../../util/schema-utils';\n\nconst MiseToolOptionsSchema = z.object({\n // ubi backend only\n tag_regex: z.string().optional(),\n});\nexport type MiseToolOptionsSchema = z.infer<typeof MiseToolOptionsSchema>;\n\nconst MiseToolSchema = z.union([\n z.string(),\n MiseToolOptionsSchema.extend({\n version: z.string().optional(),\n }),\n z.array(z.string()),\n]);\nexport type MiseToolSchema = z.infer<typeof MiseToolSchema>;\n\nexport const MiseFileSchema = z.object({\n tools: z.record(MiseToolSchema),\n});\nexport type MiseFileSchema = z.infer<typeof MiseFileSchema>;\n\nexport const MiseFileSchemaToml = Toml.pipe(MiseFileSchema);\n"]}