renovate 40.0.0-next.3 → 40.0.0-next.31

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
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../lib/modules/platform/gerrit/client.ts"],"names":[],"mappings":"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","sourcesContent":["import { REPOSITORY_ARCHIVED } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { GerritHttp } from '../../../util/http/gerrit';\nimport { regEx } from '../../../util/regex';\nimport type {\n GerritAccountInfo,\n GerritBranchInfo,\n GerritChange,\n GerritChangeMessageInfo,\n GerritFindPRConfig,\n GerritMergeableInfo,\n GerritProjectInfo,\n} from './types';\nimport { mapPrStateToGerritFilter } from './utils';\n\nconst QUOTES_REGEX = regEx('\"', 'g');\n\nclass GerritClient {\n private requestDetails = [\n 'SUBMITTABLE', //include the submittable field in ChangeInfo, which can be used to tell if the change is reviewed and ready for submit.\n 'CHECK', // include potential consistency problems with the change (not related to labels)\n 'MESSAGES',\n 'DETAILED_ACCOUNTS',\n 'LABELS',\n 'CURRENT_ACTIONS', //to check if current_revision can be \"rebased\"\n 'CURRENT_REVISION', //get RevisionInfo::ref to fetch\n 'CURRENT_COMMIT', // to get the commit message\n ] as const;\n\n private gerritHttp = new GerritHttp();\n\n async getRepos(): Promise<string[]> {\n const res = await this.gerritHttp.getJsonUnchecked<string[]>(\n 'a/projects/?type=CODE&state=ACTIVE',\n {},\n );\n return Object.keys(res.body);\n }\n\n async getProjectInfo(repository: string): Promise<GerritProjectInfo> {\n const projectInfo =\n await this.gerritHttp.getJsonUnchecked<GerritProjectInfo>(\n `a/projects/${encodeURIComponent(repository)}`,\n );\n if (projectInfo.body.state !== 'ACTIVE') {\n throw new Error(REPOSITORY_ARCHIVED);\n }\n return projectInfo.body;\n }\n\n async getBranchInfo(repository: string): Promise<GerritBranchInfo> {\n const branchInfo = await this.gerritHttp.getJsonUnchecked<GerritBranchInfo>(\n `a/projects/${encodeURIComponent(repository)}/branches/HEAD`,\n );\n return branchInfo.body;\n }\n\n async findChanges(\n repository: string,\n findPRConfig: GerritFindPRConfig,\n refreshCache?: boolean,\n ): Promise<GerritChange[]> {\n const filters = GerritClient.buildSearchFilters(repository, findPRConfig);\n const changes = await this.gerritHttp.getJsonUnchecked<GerritChange[]>(\n `a/changes/?q=` +\n filters.join('+') +\n this.requestDetails.map((det) => `&o=${det}`).join(''),\n { memCache: !refreshCache },\n );\n logger.trace(\n `findChanges(${filters.join(', ')}) => ${changes.body.length}`,\n );\n return changes.body;\n }\n\n async getChange(changeNumber: number): Promise<GerritChange> {\n const changes = await this.gerritHttp.getJsonUnchecked<GerritChange>(\n `a/changes/${changeNumber}?` +\n this.requestDetails.map((det) => `o=${det}`).join('&'),\n );\n return changes.body;\n }\n\n async getMergeableInfo(change: GerritChange): Promise<GerritMergeableInfo> {\n const mergeable =\n await this.gerritHttp.getJsonUnchecked<GerritMergeableInfo>(\n `a/changes/${change._number}/revisions/current/mergeable`,\n );\n return mergeable.body;\n }\n\n async abandonChange(changeNumber: number): Promise<void> {\n await this.gerritHttp.postJson(`a/changes/${changeNumber}/abandon`);\n }\n\n async submitChange(changeNumber: number): Promise<GerritChange> {\n const change = await this.gerritHttp.postJson<GerritChange>(\n `a/changes/${changeNumber}/submit`,\n );\n return change.body;\n }\n\n async getMessages(changeNumber: number): Promise<GerritChangeMessageInfo[]> {\n const messages = await this.gerritHttp.getJsonUnchecked<\n GerritChangeMessageInfo[]\n >(`a/changes/${changeNumber}/messages`, { memCache: false });\n return messages.body;\n }\n\n async addMessage(\n changeNumber: number,\n fullMessage: string,\n tag?: string,\n ): Promise<void> {\n const message = this.normalizeMessage(fullMessage);\n await this.gerritHttp.postJson(\n `a/changes/${changeNumber}/revisions/current/review`,\n { body: { message, tag, notify: 'NONE' } },\n );\n }\n\n async checkForExistingMessage(\n changeNumber: number,\n newMessage: string,\n msgType?: string,\n ): Promise<boolean> {\n const messages = await this.getMessages(changeNumber);\n return messages.some(\n (existingMsg) =>\n (msgType === undefined || msgType === existingMsg.tag) &&\n existingMsg.message.includes(newMessage),\n );\n }\n\n async addMessageIfNotAlreadyExists(\n changeNumber: number,\n message: string,\n tag?: string,\n ): Promise<void> {\n const newMsg = this.normalizeMessage(message);\n if (!(await this.checkForExistingMessage(changeNumber, newMsg, tag))) {\n await this.addMessage(changeNumber, newMsg, tag);\n }\n }\n\n async setLabel(\n changeNumber: number,\n label: string,\n value: number,\n ): Promise<void> {\n await this.gerritHttp.postJson(\n `a/changes/${changeNumber}/revisions/current/review`,\n { body: { labels: { [label]: value }, notify: 'NONE' } },\n );\n }\n\n async addReviewers(changeNumber: number, reviewers: string[]): Promise<void> {\n await this.gerritHttp.postJson(\n `a/changes/${changeNumber}/revisions/current/review`,\n {\n body: {\n reviewers: reviewers.map((r) => ({ reviewer: r })),\n notify: 'OWNER_REVIEWERS', // Avoids notifying cc's\n },\n },\n );\n }\n\n async addAssignee(changeNumber: number, assignee: string): Promise<void> {\n await this.gerritHttp.putJson<GerritAccountInfo>(\n // TODO: refactor this as this API removed in Gerrit 3.8\n `a/changes/${changeNumber}/assignee`,\n {\n body: { assignee },\n },\n );\n }\n\n async getFile(\n repo: string,\n branch: string,\n fileName: string,\n ): Promise<string> {\n const base64Content = await this.gerritHttp.get(\n `a/projects/${encodeURIComponent(\n repo,\n )}/branches/${encodeURIComponent(branch)}/files/${encodeURIComponent(fileName)}/content`,\n );\n return Buffer.from(base64Content.body, 'base64').toString();\n }\n\n async approveChange(changeId: number): Promise<void> {\n const isApproved = await this.checkIfApproved(changeId);\n if (!isApproved) {\n await this.setLabel(changeId, 'Code-Review', +2);\n }\n }\n\n async checkIfApproved(changeId: number): Promise<boolean> {\n const change = await client.getChange(changeId);\n const reviewLabels = change?.labels?.['Code-Review'];\n return reviewLabels === undefined || reviewLabels.approved !== undefined;\n }\n\n wasApprovedBy(change: GerritChange, username: string): boolean | undefined {\n return (\n change.labels?.['Code-Review'].approved &&\n change.labels['Code-Review'].approved.username === username\n );\n }\n\n normalizeMessage(message: string): string {\n //the last \\n was removed from gerrit after the comment was added...\n return message.substring(0, 0x4000).trim();\n }\n\n private static buildSearchFilters(\n repository: string,\n searchConfig: GerritFindPRConfig,\n ): string[] {\n const filterState = mapPrStateToGerritFilter(searchConfig.state);\n const filters = ['owner:self', 'project:' + repository, filterState];\n if (searchConfig.branchName) {\n filters.push(\n ...[\n '(',\n `footer:Renovate-Branch=${searchConfig.branchName}`,\n // for backwards compatibility\n 'OR',\n `hashtag:sourceBranch-${searchConfig.branchName}`,\n ')',\n ],\n );\n }\n if (searchConfig.targetBranch) {\n filters.push(`branch:${searchConfig.targetBranch}`);\n }\n if (searchConfig.label) {\n filters.push(`label:Code-Review=${searchConfig.label}`);\n }\n if (searchConfig.prTitle) {\n // escaping support in Gerrit is not great, so we need to remove quotes\n // special characters are ignored anyway in the search so it does not create any issues\n filters.push(\n `message:${encodeURIComponent('\"' + searchConfig.prTitle.replace(QUOTES_REGEX, '') + '\"')}`,\n );\n }\n return filters;\n }\n}\n\nexport const client = new GerritClient();\n"]}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../lib/modules/platform/gerrit/client.ts"],"names":[],"mappings":"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","sourcesContent":["import { REPOSITORY_ARCHIVED } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport { memCacheProvider } from '../../../util/http/cache/memory-http-cache-provider';\nimport { GerritHttp } from '../../../util/http/gerrit';\nimport type { HttpOptions } from '../../../util/http/types';\nimport { regEx } from '../../../util/regex';\nimport type {\n GerritAccountInfo,\n GerritBranchInfo,\n GerritChange,\n GerritChangeMessageInfo,\n GerritFindPRConfig,\n GerritMergeableInfo,\n GerritProjectInfo,\n} from './types';\nimport { mapPrStateToGerritFilter } from './utils';\n\nconst QUOTES_REGEX = regEx('\"', 'g');\n\nclass GerritClient {\n private requestDetails = [\n 'SUBMITTABLE', //include the submittable field in ChangeInfo, which can be used to tell if the change is reviewed and ready for submit.\n 'CHECK', // include potential consistency problems with the change (not related to labels)\n 'MESSAGES',\n 'DETAILED_ACCOUNTS',\n 'LABELS',\n 'CURRENT_ACTIONS', //to check if current_revision can be \"rebased\"\n 'CURRENT_REVISION', //get RevisionInfo::ref to fetch\n 'CURRENT_COMMIT', // to get the commit message\n ] as const;\n\n private gerritHttp = new GerritHttp();\n\n async getRepos(): Promise<string[]> {\n const res = await this.gerritHttp.getJsonUnchecked<string[]>(\n 'a/projects/?type=CODE&state=ACTIVE',\n {},\n );\n return Object.keys(res.body);\n }\n\n async getProjectInfo(repository: string): Promise<GerritProjectInfo> {\n const projectInfo =\n await this.gerritHttp.getJsonUnchecked<GerritProjectInfo>(\n `a/projects/${encodeURIComponent(repository)}`,\n );\n if (projectInfo.body.state !== 'ACTIVE') {\n throw new Error(REPOSITORY_ARCHIVED);\n }\n return projectInfo.body;\n }\n\n async getBranchInfo(repository: string): Promise<GerritBranchInfo> {\n const branchInfo = await this.gerritHttp.getJsonUnchecked<GerritBranchInfo>(\n `a/projects/${encodeURIComponent(repository)}/branches/HEAD`,\n );\n return branchInfo.body;\n }\n\n async findChanges(\n repository: string,\n findPRConfig: GerritFindPRConfig,\n refreshCache?: boolean,\n ): Promise<GerritChange[]> {\n const opts: HttpOptions = {};\n /* v8 ignore start: temporary code */\n // TODO: should refresh the cache rather than just ignore it\n if (refreshCache) {\n opts.memCache = false;\n } else {\n opts.cacheProvider = memCacheProvider;\n }\n /* v8 ignore stop */\n\n const filters = GerritClient.buildSearchFilters(repository, findPRConfig);\n const changes = await this.gerritHttp.getJsonUnchecked<GerritChange[]>(\n `a/changes/?q=` +\n filters.join('+') +\n this.requestDetails.map((det) => `&o=${det}`).join(''),\n opts,\n );\n logger.trace(\n `findChanges(${filters.join(', ')}) => ${changes.body.length}`,\n );\n return changes.body;\n }\n\n async getChange(changeNumber: number): Promise<GerritChange> {\n const changes = await this.gerritHttp.getJsonUnchecked<GerritChange>(\n `a/changes/${changeNumber}?` +\n this.requestDetails.map((det) => `o=${det}`).join('&'),\n );\n return changes.body;\n }\n\n async getMergeableInfo(change: GerritChange): Promise<GerritMergeableInfo> {\n const mergeable =\n await this.gerritHttp.getJsonUnchecked<GerritMergeableInfo>(\n `a/changes/${change._number}/revisions/current/mergeable`,\n );\n return mergeable.body;\n }\n\n async abandonChange(changeNumber: number): Promise<void> {\n await this.gerritHttp.postJson(`a/changes/${changeNumber}/abandon`);\n }\n\n async submitChange(changeNumber: number): Promise<GerritChange> {\n const change = await this.gerritHttp.postJson<GerritChange>(\n `a/changes/${changeNumber}/submit`,\n );\n return change.body;\n }\n\n async getMessages(changeNumber: number): Promise<GerritChangeMessageInfo[]> {\n const messages = await this.gerritHttp.getJsonUnchecked<\n GerritChangeMessageInfo[]\n >(`a/changes/${changeNumber}/messages`, { memCache: false });\n return messages.body;\n }\n\n async addMessage(\n changeNumber: number,\n fullMessage: string,\n tag?: string,\n ): Promise<void> {\n const message = this.normalizeMessage(fullMessage);\n await this.gerritHttp.postJson(\n `a/changes/${changeNumber}/revisions/current/review`,\n { body: { message, tag, notify: 'NONE' } },\n );\n }\n\n async checkForExistingMessage(\n changeNumber: number,\n newMessage: string,\n msgType?: string,\n ): Promise<boolean> {\n const messages = await this.getMessages(changeNumber);\n return messages.some(\n (existingMsg) =>\n (msgType === undefined || msgType === existingMsg.tag) &&\n existingMsg.message.includes(newMessage),\n );\n }\n\n async addMessageIfNotAlreadyExists(\n changeNumber: number,\n message: string,\n tag?: string,\n ): Promise<void> {\n const newMsg = this.normalizeMessage(message);\n if (!(await this.checkForExistingMessage(changeNumber, newMsg, tag))) {\n await this.addMessage(changeNumber, newMsg, tag);\n }\n }\n\n async setLabel(\n changeNumber: number,\n label: string,\n value: number,\n ): Promise<void> {\n await this.gerritHttp.postJson(\n `a/changes/${changeNumber}/revisions/current/review`,\n { body: { labels: { [label]: value }, notify: 'NONE' } },\n );\n }\n\n async addReviewers(changeNumber: number, reviewers: string[]): Promise<void> {\n await this.gerritHttp.postJson(\n `a/changes/${changeNumber}/revisions/current/review`,\n {\n body: {\n reviewers: reviewers.map((r) => ({ reviewer: r })),\n notify: 'OWNER_REVIEWERS', // Avoids notifying cc's\n },\n },\n );\n }\n\n async addAssignee(changeNumber: number, assignee: string): Promise<void> {\n await this.gerritHttp.putJson<GerritAccountInfo>(\n // TODO: refactor this as this API removed in Gerrit 3.8\n `a/changes/${changeNumber}/assignee`,\n {\n body: { assignee },\n },\n );\n }\n\n async getFile(\n repo: string,\n branch: string,\n fileName: string,\n ): Promise<string> {\n const base64Content = await this.gerritHttp.getText(\n `a/projects/${encodeURIComponent(\n repo,\n )}/branches/${encodeURIComponent(branch)}/files/${encodeURIComponent(fileName)}/content`,\n );\n return Buffer.from(base64Content.body, 'base64').toString();\n }\n\n async approveChange(changeId: number): Promise<void> {\n const isApproved = await this.checkIfApproved(changeId);\n if (!isApproved) {\n await this.setLabel(changeId, 'Code-Review', +2);\n }\n }\n\n async checkIfApproved(changeId: number): Promise<boolean> {\n const change = await client.getChange(changeId);\n const reviewLabels = change?.labels?.['Code-Review'];\n return reviewLabels === undefined || reviewLabels.approved !== undefined;\n }\n\n wasApprovedBy(change: GerritChange, username: string): boolean | undefined {\n return (\n change.labels?.['Code-Review'].approved &&\n change.labels['Code-Review'].approved.username === username\n );\n }\n\n normalizeMessage(message: string): string {\n //the last \\n was removed from gerrit after the comment was added...\n return message.substring(0, 0x4000).trim();\n }\n\n private static buildSearchFilters(\n repository: string,\n searchConfig: GerritFindPRConfig,\n ): string[] {\n const filterState = mapPrStateToGerritFilter(searchConfig.state);\n const filters = ['owner:self', 'project:' + repository, filterState];\n if (searchConfig.branchName) {\n filters.push(\n ...[\n '(',\n `footer:Renovate-Branch=${searchConfig.branchName}`,\n // for backwards compatibility\n 'OR',\n `hashtag:sourceBranch-${searchConfig.branchName}`,\n ')',\n ],\n );\n }\n if (searchConfig.targetBranch) {\n filters.push(`branch:${searchConfig.targetBranch}`);\n }\n if (searchConfig.label) {\n filters.push(`label:Code-Review=${searchConfig.label}`);\n }\n if (searchConfig.prTitle) {\n // escaping support in Gerrit is not great, so we need to remove quotes\n // special characters are ignored anyway in the search so it does not create any issues\n filters.push(\n `message:${encodeURIComponent('\"' + searchConfig.prTitle.replace(QUOTES_REGEX, '') + '\"')}`,\n );\n }\n return filters;\n }\n}\n\nexport const client = new GerritClient();\n"]}
@@ -109,7 +109,7 @@ function mapBranchStatusToLabel(state, label) {
109
109
  case 'red':
110
110
  return Math.min(...numbers);
111
111
  }
112
- // istanbul ignore next
112
+ /* v8 ignore next */
113
113
  return label.default_value;
114
114
  }
115
115
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/modules/platform/gerrit/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { CONFIG_GIT_URL_UNAVAILABLE } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport type { BranchStatus, PrState } from '../../../types';\nimport * as hostRules from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\nimport { joinUrlParts, parseUrl } from '../../../util/url';\nimport { hashBody } from '../pr-body';\nimport type { Pr } from '../types';\nimport type {\n GerritChange,\n GerritChangeStatus,\n GerritLabelTypeInfo,\n} from './types';\n\nexport const TAG_PULL_REQUEST_BODY = 'pull-request';\n\nexport function getGerritRepoUrl(repository: string, endpoint: string): string {\n // Find options for current host and determine Git endpoint\n const opts = hostRules.find({\n hostType: 'gerrit',\n url: endpoint,\n });\n\n const url = parseUrl(endpoint);\n if (!url) {\n throw new Error(CONFIG_GIT_URL_UNAVAILABLE);\n }\n if (!(opts.username && opts.password)) {\n throw new Error(\n 'Init: You must configure a Gerrit Server username/password',\n );\n }\n url.username = opts.username;\n url.password = opts.password;\n url.pathname = joinUrlParts(\n url.pathname,\n 'a',\n encodeURIComponent(repository),\n );\n logger.trace(\n { url: url.toString() },\n 'using URL based on configured endpoint',\n );\n return url.toString();\n}\n\nexport function mapPrStateToGerritFilter(state?: PrState): string {\n switch (state) {\n case 'closed':\n return 'status:closed';\n case 'merged':\n return 'status:merged';\n case '!open':\n return '-status:open';\n case 'open':\n return 'status:open';\n case 'all':\n default:\n return '-is:wip';\n }\n}\n\nexport function mapGerritChangeToPr(change: GerritChange): Pr {\n return {\n number: change._number,\n state: mapGerritChangeStateToPrState(change.status),\n sourceBranch: extractSourceBranch(change) ?? change.branch,\n targetBranch: change.branch,\n title: change.subject,\n reviewers:\n change.reviewers?.REVIEWER?.filter(\n (reviewer) => typeof reviewer.username === 'string',\n ).map((reviewer) => reviewer.username!) ?? [],\n bodyStruct: {\n hash: hashBody(findPullRequestBody(change)),\n },\n };\n}\n\nexport function mapGerritChangeStateToPrState(\n state: GerritChangeStatus,\n): PrState {\n switch (state) {\n case 'NEW':\n return 'open';\n case 'MERGED':\n return 'merged';\n case 'ABANDONED':\n return 'closed';\n }\n return 'all';\n}\nexport function extractSourceBranch(change: GerritChange): string | undefined {\n let sourceBranch: string | undefined = undefined;\n\n if (change.current_revision) {\n const re = regEx(/^Renovate-Branch: (.+)$/m);\n const message = change.revisions[change.current_revision]?.commit?.message;\n if (message) {\n sourceBranch = re.exec(message)?.[1];\n }\n }\n\n // for backwards compatibility\n if (!sourceBranch) {\n sourceBranch = change.hashtags\n ?.find((tag) => tag.startsWith('sourceBranch-'))\n ?.replace('sourceBranch-', '');\n }\n\n return sourceBranch ?? undefined;\n}\n\nexport function findPullRequestBody(change: GerritChange): string | undefined {\n const msg = Array.from(change.messages ?? [])\n .reverse()\n .find((msg) => msg.tag === TAG_PULL_REQUEST_BODY);\n if (msg) {\n return msg.message.replace(/^Patch Set \\d+:\\n\\n/, ''); //TODO: check how to get rid of the auto-added prefix?\n }\n return undefined;\n}\n\nexport function mapBranchStatusToLabel(\n state: BranchStatus,\n label: GerritLabelTypeInfo,\n): number {\n const numbers = Object.keys(label.values).map((x) => parseInt(x, 10));\n switch (state) {\n case 'green':\n return Math.max(...numbers);\n case 'yellow':\n case 'red':\n return Math.min(...numbers);\n }\n // istanbul ignore next\n return label.default_value;\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../lib/modules/platform/gerrit/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { CONFIG_GIT_URL_UNAVAILABLE } from '../../../constants/error-messages';\nimport { logger } from '../../../logger';\nimport type { BranchStatus, PrState } from '../../../types';\nimport * as hostRules from '../../../util/host-rules';\nimport { regEx } from '../../../util/regex';\nimport { joinUrlParts, parseUrl } from '../../../util/url';\nimport { hashBody } from '../pr-body';\nimport type { Pr } from '../types';\nimport type {\n GerritChange,\n GerritChangeStatus,\n GerritLabelTypeInfo,\n} from './types';\n\nexport const TAG_PULL_REQUEST_BODY = 'pull-request';\n\nexport function getGerritRepoUrl(repository: string, endpoint: string): string {\n // Find options for current host and determine Git endpoint\n const opts = hostRules.find({\n hostType: 'gerrit',\n url: endpoint,\n });\n\n const url = parseUrl(endpoint);\n if (!url) {\n throw new Error(CONFIG_GIT_URL_UNAVAILABLE);\n }\n if (!(opts.username && opts.password)) {\n throw new Error(\n 'Init: You must configure a Gerrit Server username/password',\n );\n }\n url.username = opts.username;\n url.password = opts.password;\n url.pathname = joinUrlParts(\n url.pathname,\n 'a',\n encodeURIComponent(repository),\n );\n logger.trace(\n { url: url.toString() },\n 'using URL based on configured endpoint',\n );\n return url.toString();\n}\n\nexport function mapPrStateToGerritFilter(state?: PrState): string {\n switch (state) {\n case 'closed':\n return 'status:closed';\n case 'merged':\n return 'status:merged';\n case '!open':\n return '-status:open';\n case 'open':\n return 'status:open';\n case 'all':\n default:\n return '-is:wip';\n }\n}\n\nexport function mapGerritChangeToPr(change: GerritChange): Pr {\n return {\n number: change._number,\n state: mapGerritChangeStateToPrState(change.status),\n sourceBranch: extractSourceBranch(change) ?? change.branch,\n targetBranch: change.branch,\n title: change.subject,\n reviewers:\n change.reviewers?.REVIEWER?.filter(\n (reviewer) => typeof reviewer.username === 'string',\n ).map((reviewer) => reviewer.username!) ?? [],\n bodyStruct: {\n hash: hashBody(findPullRequestBody(change)),\n },\n };\n}\n\nexport function mapGerritChangeStateToPrState(\n state: GerritChangeStatus,\n): PrState {\n switch (state) {\n case 'NEW':\n return 'open';\n case 'MERGED':\n return 'merged';\n case 'ABANDONED':\n return 'closed';\n }\n return 'all';\n}\nexport function extractSourceBranch(change: GerritChange): string | undefined {\n let sourceBranch: string | undefined = undefined;\n\n if (change.current_revision) {\n const re = regEx(/^Renovate-Branch: (.+)$/m);\n const message = change.revisions[change.current_revision]?.commit?.message;\n if (message) {\n sourceBranch = re.exec(message)?.[1];\n }\n }\n\n // for backwards compatibility\n if (!sourceBranch) {\n sourceBranch = change.hashtags\n ?.find((tag) => tag.startsWith('sourceBranch-'))\n ?.replace('sourceBranch-', '');\n }\n\n return sourceBranch ?? undefined;\n}\n\nexport function findPullRequestBody(change: GerritChange): string | undefined {\n const msg = Array.from(change.messages ?? [])\n .reverse()\n .find((msg) => msg.tag === TAG_PULL_REQUEST_BODY);\n if (msg) {\n return msg.message.replace(/^Patch Set \\d+:\\n\\n/, ''); //TODO: check how to get rid of the auto-added prefix?\n }\n return undefined;\n}\n\nexport function mapBranchStatusToLabel(\n state: BranchStatus,\n label: GerritLabelTypeInfo,\n): number {\n const numbers = Object.keys(label.values).map((x) => parseInt(x, 10));\n switch (state) {\n case 'green':\n return Math.max(...numbers);\n case 'yellow':\n case 'red':\n return Math.min(...numbers);\n }\n /* v8 ignore next */\n return label.default_value;\n}\n"]}
@@ -14,6 +14,7 @@ export declare function updatePR(repoPath: string, idx: number, params: PRUpdate
14
14
  export declare function closePR(repoPath: string, idx: number, options?: GiteaHttpOptions): Promise<void>;
15
15
  export declare function mergePR(repoPath: string, idx: number, params: PRMergeParams, options?: GiteaHttpOptions): Promise<void>;
16
16
  export declare function getPR(repoPath: string, idx: number, options?: GiteaHttpOptions): Promise<PR>;
17
+ export declare function getPRByBranch(repoPath: string, base: string, head: string, options?: GiteaHttpOptions): Promise<PR | null>;
17
18
  export declare function requestPrReviewers(repoPath: string, idx: number, params: PrReviewersParams, options?: GiteaHttpOptions): Promise<void>;
18
19
  export declare function createIssue(repoPath: string, params: IssueCreateParams, options?: GiteaHttpOptions): Promise<Issue>;
19
20
  export declare function updateIssue(repoPath: string, idx: number, params: IssueUpdateParams, options?: GiteaHttpOptions): Promise<Issue>;
@@ -12,6 +12,7 @@ exports.updatePR = updatePR;
12
12
  exports.closePR = closePR;
13
13
  exports.mergePR = mergePR;
14
14
  exports.getPR = getPR;
15
+ exports.getPRByBranch = getPRByBranch;
15
16
  exports.requestPrReviewers = requestPrReviewers;
16
17
  exports.createIssue = createIssue;
17
18
  exports.updateIssue = updateIssue;
@@ -29,6 +30,7 @@ exports.getComments = getComments;
29
30
  exports.createCommitStatus = createCommitStatus;
30
31
  exports.getCombinedCommitStatus = getCombinedCommitStatus;
31
32
  exports.getBranch = getBranch;
33
+ const logger_1 = require("../../../logger");
32
34
  const gitea_1 = require("../../../util/http/gitea");
33
35
  const url_1 = require("../../../util/url");
34
36
  const utils_1 = require("./utils");
@@ -120,6 +122,20 @@ async function getPR(repoPath, idx, options) {
120
122
  const res = await exports.giteaHttp.getJsonUnchecked(url, options);
121
123
  return res.body;
122
124
  }
125
+ async function getPRByBranch(repoPath, base, head, options) {
126
+ const url = `${utils_1.API_PATH}/repos/${repoPath}/pulls/${base}/${head}`;
127
+ try {
128
+ const res = await exports.giteaHttp.getJsonUnchecked(url, options);
129
+ return res.body;
130
+ }
131
+ catch (err) {
132
+ logger_1.logger.trace({ err }, 'Error while fetching PR');
133
+ if (err.statusCode !== 404) {
134
+ logger_1.logger.debug({ err }, 'Error while fetching PR');
135
+ }
136
+ return null;
137
+ }
138
+ }
123
139
  async function requestPrReviewers(repoPath, idx, params, options) {
124
140
  const url = `${utils_1.API_PATH}/repos/${repoPath}/pulls/${idx}/requested_reviewers`;
125
141
  await exports.giteaHttp.postJson(url, {
@@ -1 +1 @@
1
- {"version":3,"file":"gitea-helper.js","sourceRoot":"","sources":["../../../../lib/modules/platform/gitea/gitea-helper.ts"],"names":[],"mappings":";;;AA4CA,wCAMC;AAED,gCAOC;AAED,kCAkBC;AAED,oCAWC;AAED,0BAOC;AAED,0CAiBC;AAED,4BAYC;AAED,4BAaC;AAED,0BASC;AAED,0BAWC;AAED,sBAQC;AAED,gDAWC;AAED,kCAYC;AAED,kCAaC;AAED,8CAaC;AAED,gCASC;AAED,oCAaC;AAED,4BAQC;AAED,sCAQC;AAED,oCAQC;AAED,sCAQC;AAED,sCAcC;AAED,sCAcC;AAED,sCAOC;AAED,kCASC;AAED,gDAaC;AAiCD,0DAuBC;AAED,8BASC;AAtbD,oDAAqD;AACrD,2CAAmD;AA2BnD,mCAAmC;AAEtB,QAAA,SAAS,GAAG,IAAI,iBAAS,EAAE,CAAC;AAEzC,MAAM,SAAS,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;AACnE,MAAM,kBAAkB,GAAuB;IAC7C,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,OAAO;CACR,CAAC;AAEK,KAAK,UAAU,cAAc,CAClC,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,OAAO,CAAC;IAC/B,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAO,GAAG,EAAE,OAAO,CAAC,CAAC;IACjE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,OAA0B;IACzD,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,CAAC;IAClC,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAC1C,GAAG,EACH,OAAO,CACR,CAAC;IACF,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;AAC1B,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,MAAwB,EACxB,OAA0B;IAE1B,MAAM,KAAK,GAAG,IAAA,oBAAc,EAAC,MAAM,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,GAAG,gBAAQ,iBAAiB,KAAK,EAAE,CAAC;IAChD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAoB,GAAG,EAAE;QACnE,GAAG,OAAO;QACV,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;AACvB,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,YAAoB,EACpB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,SAAS,YAAY,QAAQ,CAAC;IACrD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAS,GAAG,EAAE;QACxD,GAAG,OAAO;QACV,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAgB,EAChB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAO,GAAG,EAAE,OAAO,CAAC,CAAC;IACjE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,QAAgB,EAChB,GAAmB,EACnB,OAA0B;IAE1B,MAAM,KAAK,GAAG,IAAA,oBAAc,EAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,aAAa,SAAS,CAC7D,QAAQ,CACT,IAAI,KAAK,EAAE,CAAC;IACb,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAe,GAAG,EAAE,OAAO,CAAC,CAAC;IAEzE,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9E,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,MAAsB,EACtB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,QAAQ,CAAC;IAClD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,QAAQ,CAAK,GAAG,EAAE;QAC5C,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,GAAW,EACX,MAAsB,EACtB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,UAAU,GAAG,EAAE,CAAC;IACzD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,SAAS,CAAK,GAAG,EAAE;QAC7C,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAgB,EAChB,GAAW,EACX,OAA0B;IAE1B,MAAM,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC5B,GAAG,OAAO;QACV,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAgB,EAChB,GAAW,EACX,MAAqB,EACrB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,UAAU,GAAG,QAAQ,CAAC;IAC/D,MAAM,iBAAS,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC5B,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,KAAK,CACzB,QAAgB,EAChB,GAAW,EACX,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,UAAU,GAAG,EAAE,CAAC;IACzD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAK,GAAG,EAAE,OAAO,CAAC,CAAC;IAC/D,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,QAAgB,EAChB,GAAW,EACX,MAAyB,EACzB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,UAAU,GAAG,sBAAsB,CAAC;IAC7E,MAAM,iBAAS,CAAC,QAAQ,CAAC,GAAG,EAAE;QAC5B,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,MAAyB,EACzB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,SAAS,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,QAAQ,CAAQ,GAAG,EAAE;QAC/C,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,GAAW,EACX,MAAyB,EACzB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,GAAG,EAAE,CAAC;IAC1D,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,SAAS,CAAQ,GAAG,EAAE;QAChD,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,GAAW,EACX,MAA+B,EAC/B,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,GAAG,SAAS,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,OAAO,CAAU,GAAG,EAAE;QAChD,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,UAAU,CAC9B,QAAgB,EAChB,GAAW,EACX,OAA0B;IAE1B,MAAM,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE;QAC/B,GAAG,OAAO;QACV,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,QAAgB,EAChB,MAAyB,EACzB,OAA0B;IAE1B,MAAM,KAAK,GAAG,IAAA,oBAAc,EAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,KAAK,EAAE,CAAC;IAC5D,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAU,GAAG,EAAE;QACzD,GAAG,OAAO;QACV,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,GAAW,EACX,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,GAAG,EAAE,CAAC;IAC1D,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAQ,GAAG,EAAE,OAAO,CAAC,CAAC;IAClE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,SAAS,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAU,GAAG,EAAE,OAAO,CAAC,CAAC;IAEpE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,YAAY,CAChC,OAAe,EACf,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,SAAS,OAAO,SAAS,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAU,GAAG,EAAE,OAAO,CAAC,CAAC;IAEpE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,KAAa,EACb,KAAa,EACb,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,KAAK,WAAW,KAAK,EAAE,CAAC;IAC5E,MAAM,iBAAS,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,KAAa,EACb,IAAY,EACZ,OAA0B;IAE1B,MAAM,MAAM,GAAwB,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,KAAK,WAAW,CAAC;IACrE,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,QAAQ,CAAU,GAAG,EAAE;QACjD,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,GAAW,EACX,IAAY,EACZ,OAA0B;IAE1B,MAAM,MAAM,GAAwB,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,oBAAoB,GAAG,EAAE,CAAC;IACnE,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,SAAS,CAAU,GAAG,EAAE;QAClD,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,GAAW,EACX,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,oBAAoB,GAAG,EAAE,CAAC;IACnE,MAAM,iBAAS,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,KAAa,EACb,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,WAAW,KAAK,WAAW,CAAC;IACrE,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAY,GAAG,EAAE,OAAO,CAAC,CAAC;IAEtE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,QAAgB,EAChB,YAAoB,EACpB,MAAgC,EAChC,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,aAAa,YAAY,EAAE,CAAC;IACrE,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,QAAQ,CAAe,GAAG,EAAE;QACtD,GAAG,OAAO;QACV,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAEY,QAAA,4BAA4B,GAGrC;IACF,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,KAAK;CACb,CAAC;AAEW,QAAA,4BAA4B,GAGrC;IACF,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,SAAS;IACjB,GAAG,EAAE,SAAS;CACf,CAAC;AAEF,SAAS,YAAY,CAAC,IAAoB;IACxC,MAAM,GAAG,GAAiC,EAAE,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;YAChD,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAEM,KAAK,UAAU,uBAAuB,CAC3C,QAAgB,EAChB,UAAkB,EAClB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,YAAY,SAAS,CAC5D,UAAU,CACX,WAAW,CAAC;IACb,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAiB,GAAG,EAAE;QAChE,GAAG,OAAO;QACV,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO;QACL,WAAW,EAAE,kBAAkB,CAAC,UAAU,CAAC;QAC3C,QAAQ;KACT,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,SAAS,CAC7B,QAAgB,EAChB,UAAkB,EAClB,OAA0B;IAE1B,MAAM,GAAG,GAAG,GAAG,gBAAQ,UAAU,QAAQ,aAAa,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;IAC9E,MAAM,GAAG,GAAG,MAAM,iBAAS,CAAC,gBAAgB,CAAS,GAAG,EAAE,OAAO,CAAC,CAAC;IAEnE,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC","sourcesContent":["import type { BranchStatus } from '../../../types';\nimport type { GiteaHttpOptions } from '../../../util/http/gitea';\nimport { GiteaHttp } from '../../../util/http/gitea';\nimport { getQueryString } from '../../../util/url';\nimport type {\n Branch,\n CombinedCommitStatus,\n Comment,\n CommentCreateParams,\n CommentUpdateParams,\n CommitStatus,\n CommitStatusCreateParams,\n CommitStatusType,\n Issue,\n IssueCreateParams,\n IssueSearchParams,\n IssueUpdateLabelsParams,\n IssueUpdateParams,\n Label,\n PR,\n PRCreateParams,\n PRMergeParams,\n PRUpdateParams,\n PrReviewersParams,\n Repo,\n RepoContents,\n RepoSearchParams,\n RepoSearchResults,\n User,\n} from './types';\nimport { API_PATH } from './utils';\n\nexport const giteaHttp = new GiteaHttp();\n\nconst urlEscape = (raw: string): string => encodeURIComponent(raw);\nconst commitStatusStates: CommitStatusType[] = [\n 'unknown',\n 'success',\n 'pending',\n 'warning',\n 'failure',\n 'error',\n];\n\nexport async function getCurrentUser(\n options?: GiteaHttpOptions,\n): Promise<User> {\n const url = `${API_PATH}/user`;\n const res = await giteaHttp.getJsonUnchecked<User>(url, options);\n return res.body;\n}\n\nexport async function getVersion(options?: GiteaHttpOptions): Promise<string> {\n const url = `${API_PATH}/version`;\n const res = await giteaHttp.getJsonUnchecked<{ version: string }>(\n url,\n options,\n );\n return res.body.version;\n}\n\nexport async function searchRepos(\n params: RepoSearchParams,\n options?: GiteaHttpOptions,\n): Promise<Repo[]> {\n const query = getQueryString(params);\n const url = `${API_PATH}/repos/search?${query}`;\n const res = await giteaHttp.getJsonUnchecked<RepoSearchResults>(url, {\n ...options,\n paginate: true,\n });\n\n if (!res.body.ok) {\n throw new Error(\n 'Unable to search for repositories, ok flag has not been set',\n );\n }\n\n return res.body.data;\n}\n\nexport async function orgListRepos(\n organization: string,\n options?: GiteaHttpOptions,\n): Promise<Repo[]> {\n const url = `${API_PATH}/orgs/${organization}/repos`;\n const res = await giteaHttp.getJsonUnchecked<Repo[]>(url, {\n ...options,\n paginate: true,\n });\n\n return res.body;\n}\n\nexport async function getRepo(\n repoPath: string,\n options?: GiteaHttpOptions,\n): Promise<Repo> {\n const url = `${API_PATH}/repos/${repoPath}`;\n const res = await giteaHttp.getJsonUnchecked<Repo>(url, options);\n return res.body;\n}\n\nexport async function getRepoContents(\n repoPath: string,\n filePath: string,\n ref?: string | null,\n options?: GiteaHttpOptions,\n): Promise<RepoContents> {\n const query = getQueryString(ref ? { ref } : {});\n const url = `${API_PATH}/repos/${repoPath}/contents/${urlEscape(\n filePath,\n )}?${query}`;\n const res = await giteaHttp.getJsonUnchecked<RepoContents>(url, options);\n\n if (res.body.content) {\n res.body.contentString = Buffer.from(res.body.content, 'base64').toString();\n }\n\n return res.body;\n}\n\nexport async function createPR(\n repoPath: string,\n params: PRCreateParams,\n options?: GiteaHttpOptions,\n): Promise<PR> {\n const url = `${API_PATH}/repos/${repoPath}/pulls`;\n const res = await giteaHttp.postJson<PR>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updatePR(\n repoPath: string,\n idx: number,\n params: PRUpdateParams,\n options?: GiteaHttpOptions,\n): Promise<PR> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}`;\n const res = await giteaHttp.patchJson<PR>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function closePR(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n await updatePR(repoPath, idx, {\n ...options,\n state: 'closed',\n });\n}\n\nexport async function mergePR(\n repoPath: string,\n idx: number,\n params: PRMergeParams,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}/merge`;\n await giteaHttp.postJson(url, {\n ...options,\n body: params,\n });\n}\n\nexport async function getPR(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<PR> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}`;\n const res = await giteaHttp.getJsonUnchecked<PR>(url, options);\n return res.body;\n}\n\nexport async function requestPrReviewers(\n repoPath: string,\n idx: number,\n params: PrReviewersParams,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}/requested_reviewers`;\n await giteaHttp.postJson(url, {\n ...options,\n body: params,\n });\n}\n\nexport async function createIssue(\n repoPath: string,\n params: IssueCreateParams,\n options?: GiteaHttpOptions,\n): Promise<Issue> {\n const url = `${API_PATH}/repos/${repoPath}/issues`;\n const res = await giteaHttp.postJson<Issue>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updateIssue(\n repoPath: string,\n idx: number,\n params: IssueUpdateParams,\n options?: GiteaHttpOptions,\n): Promise<Issue> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${idx}`;\n const res = await giteaHttp.patchJson<Issue>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updateIssueLabels(\n repoPath: string,\n idx: number,\n params: IssueUpdateLabelsParams,\n options?: GiteaHttpOptions,\n): Promise<Label[]> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${idx}/labels`;\n const res = await giteaHttp.putJson<Label[]>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function closeIssue(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n await updateIssue(repoPath, idx, {\n ...options,\n state: 'closed',\n });\n}\n\nexport async function searchIssues(\n repoPath: string,\n params: IssueSearchParams,\n options?: GiteaHttpOptions,\n): Promise<Issue[]> {\n const query = getQueryString({ ...params, type: 'issues' });\n const url = `${API_PATH}/repos/${repoPath}/issues?${query}`;\n const res = await giteaHttp.getJsonUnchecked<Issue[]>(url, {\n ...options,\n paginate: true,\n });\n\n return res.body;\n}\n\nexport async function getIssue(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<Issue> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${idx}`;\n const res = await giteaHttp.getJsonUnchecked<Issue>(url, options);\n return res.body;\n}\n\nexport async function getRepoLabels(\n repoPath: string,\n options?: GiteaHttpOptions,\n): Promise<Label[]> {\n const url = `${API_PATH}/repos/${repoPath}/labels`;\n const res = await giteaHttp.getJsonUnchecked<Label[]>(url, options);\n\n return res.body;\n}\n\nexport async function getOrgLabels(\n orgName: string,\n options?: GiteaHttpOptions,\n): Promise<Label[]> {\n const url = `${API_PATH}/orgs/${orgName}/labels`;\n const res = await giteaHttp.getJsonUnchecked<Label[]>(url, options);\n\n return res.body;\n}\n\nexport async function unassignLabel(\n repoPath: string,\n issue: number,\n label: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${issue}/labels/${label}`;\n await giteaHttp.deleteJson(url, options);\n}\n\nexport async function createComment(\n repoPath: string,\n issue: number,\n body: string,\n options?: GiteaHttpOptions,\n): Promise<Comment> {\n const params: CommentCreateParams = { body };\n const url = `${API_PATH}/repos/${repoPath}/issues/${issue}/comments`;\n const res = await giteaHttp.postJson<Comment>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updateComment(\n repoPath: string,\n idx: number,\n body: string,\n options?: GiteaHttpOptions,\n): Promise<Comment> {\n const params: CommentUpdateParams = { body };\n const url = `${API_PATH}/repos/${repoPath}/issues/comments/${idx}`;\n const res = await giteaHttp.patchJson<Comment>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function deleteComment(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/issues/comments/${idx}`;\n await giteaHttp.deleteJson(url, options);\n}\n\nexport async function getComments(\n repoPath: string,\n issue: number,\n options?: GiteaHttpOptions,\n): Promise<Comment[]> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${issue}/comments`;\n const res = await giteaHttp.getJsonUnchecked<Comment[]>(url, options);\n\n return res.body;\n}\n\nexport async function createCommitStatus(\n repoPath: string,\n branchCommit: string,\n params: CommitStatusCreateParams,\n options?: GiteaHttpOptions,\n): Promise<CommitStatus> {\n const url = `${API_PATH}/repos/${repoPath}/statuses/${branchCommit}`;\n const res = await giteaHttp.postJson<CommitStatus>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport const giteaToRenovateStatusMapping: Record<\n CommitStatusType,\n BranchStatus | null\n> = {\n unknown: 'yellow',\n success: 'green',\n pending: 'yellow',\n warning: 'red',\n failure: 'red',\n error: 'red',\n};\n\nexport const renovateToGiteaStatusMapping: Record<\n BranchStatus,\n CommitStatusType\n> = {\n green: 'success',\n yellow: 'pending',\n red: 'failure',\n};\n\nfunction filterStatus(data: CommitStatus[]): CommitStatus[] {\n const ret: Record<string, CommitStatus> = {};\n for (const i of data) {\n if (!ret[i.context] || ret[i.context].id < i.id) {\n ret[i.context] = i;\n }\n }\n return Object.values(ret);\n}\n\nexport async function getCombinedCommitStatus(\n repoPath: string,\n branchName: string,\n options?: GiteaHttpOptions,\n): Promise<CombinedCommitStatus> {\n const url = `${API_PATH}/repos/${repoPath}/commits/${urlEscape(\n branchName,\n )}/statuses`;\n const res = await giteaHttp.getJsonUnchecked<CommitStatus[]>(url, {\n ...options,\n paginate: true,\n });\n\n let worstState = 0;\n const statuses = filterStatus(res.body);\n for (const cs of statuses) {\n worstState = Math.max(worstState, commitStatusStates.indexOf(cs.status));\n }\n\n return {\n worstStatus: commitStatusStates[worstState],\n statuses,\n };\n}\n\nexport async function getBranch(\n repoPath: string,\n branchName: string,\n options?: GiteaHttpOptions,\n): Promise<Branch> {\n const url = `${API_PATH}/repos/${repoPath}/branches/${urlEscape(branchName)}`;\n const res = await giteaHttp.getJsonUnchecked<Branch>(url, options);\n\n return res.body;\n}\n"]}
1
+ {"version":3,"file":"gitea-helper.js","sourceRoot":"","sources":["../../../../lib/modules/platform/gitea/gitea-helper.ts"],"names":[],"mappings":"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","sourcesContent":["import { logger } from '../../../logger';\nimport type { BranchStatus } from '../../../types';\nimport type { GiteaHttpOptions } from '../../../util/http/gitea';\nimport { GiteaHttp } from '../../../util/http/gitea';\nimport { getQueryString } from '../../../util/url';\nimport type {\n Branch,\n CombinedCommitStatus,\n Comment,\n CommentCreateParams,\n CommentUpdateParams,\n CommitStatus,\n CommitStatusCreateParams,\n CommitStatusType,\n Issue,\n IssueCreateParams,\n IssueSearchParams,\n IssueUpdateLabelsParams,\n IssueUpdateParams,\n Label,\n PR,\n PRCreateParams,\n PRMergeParams,\n PRUpdateParams,\n PrReviewersParams,\n Repo,\n RepoContents,\n RepoSearchParams,\n RepoSearchResults,\n User,\n} from './types';\nimport { API_PATH } from './utils';\n\nexport const giteaHttp = new GiteaHttp();\n\nconst urlEscape = (raw: string): string => encodeURIComponent(raw);\nconst commitStatusStates: CommitStatusType[] = [\n 'unknown',\n 'success',\n 'pending',\n 'warning',\n 'failure',\n 'error',\n];\n\nexport async function getCurrentUser(\n options?: GiteaHttpOptions,\n): Promise<User> {\n const url = `${API_PATH}/user`;\n const res = await giteaHttp.getJsonUnchecked<User>(url, options);\n return res.body;\n}\n\nexport async function getVersion(options?: GiteaHttpOptions): Promise<string> {\n const url = `${API_PATH}/version`;\n const res = await giteaHttp.getJsonUnchecked<{ version: string }>(\n url,\n options,\n );\n return res.body.version;\n}\n\nexport async function searchRepos(\n params: RepoSearchParams,\n options?: GiteaHttpOptions,\n): Promise<Repo[]> {\n const query = getQueryString(params);\n const url = `${API_PATH}/repos/search?${query}`;\n const res = await giteaHttp.getJsonUnchecked<RepoSearchResults>(url, {\n ...options,\n paginate: true,\n });\n\n if (!res.body.ok) {\n throw new Error(\n 'Unable to search for repositories, ok flag has not been set',\n );\n }\n\n return res.body.data;\n}\n\nexport async function orgListRepos(\n organization: string,\n options?: GiteaHttpOptions,\n): Promise<Repo[]> {\n const url = `${API_PATH}/orgs/${organization}/repos`;\n const res = await giteaHttp.getJsonUnchecked<Repo[]>(url, {\n ...options,\n paginate: true,\n });\n\n return res.body;\n}\n\nexport async function getRepo(\n repoPath: string,\n options?: GiteaHttpOptions,\n): Promise<Repo> {\n const url = `${API_PATH}/repos/${repoPath}`;\n const res = await giteaHttp.getJsonUnchecked<Repo>(url, options);\n return res.body;\n}\n\nexport async function getRepoContents(\n repoPath: string,\n filePath: string,\n ref?: string | null,\n options?: GiteaHttpOptions,\n): Promise<RepoContents> {\n const query = getQueryString(ref ? { ref } : {});\n const url = `${API_PATH}/repos/${repoPath}/contents/${urlEscape(\n filePath,\n )}?${query}`;\n const res = await giteaHttp.getJsonUnchecked<RepoContents>(url, options);\n\n if (res.body.content) {\n res.body.contentString = Buffer.from(res.body.content, 'base64').toString();\n }\n\n return res.body;\n}\n\nexport async function createPR(\n repoPath: string,\n params: PRCreateParams,\n options?: GiteaHttpOptions,\n): Promise<PR> {\n const url = `${API_PATH}/repos/${repoPath}/pulls`;\n const res = await giteaHttp.postJson<PR>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updatePR(\n repoPath: string,\n idx: number,\n params: PRUpdateParams,\n options?: GiteaHttpOptions,\n): Promise<PR> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}`;\n const res = await giteaHttp.patchJson<PR>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function closePR(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n await updatePR(repoPath, idx, {\n ...options,\n state: 'closed',\n });\n}\n\nexport async function mergePR(\n repoPath: string,\n idx: number,\n params: PRMergeParams,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}/merge`;\n await giteaHttp.postJson(url, {\n ...options,\n body: params,\n });\n}\n\nexport async function getPR(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<PR> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}`;\n const res = await giteaHttp.getJsonUnchecked<PR>(url, options);\n return res.body;\n}\n\nexport async function getPRByBranch(\n repoPath: string,\n base: string,\n head: string,\n options?: GiteaHttpOptions,\n): Promise<PR | null> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${base}/${head}`;\n try {\n const res = await giteaHttp.getJsonUnchecked<PR>(url, options);\n return res.body;\n } catch (err) {\n logger.trace({ err }, 'Error while fetching PR');\n if (err.statusCode !== 404) {\n logger.debug({ err }, 'Error while fetching PR');\n }\n return null;\n }\n}\n\nexport async function requestPrReviewers(\n repoPath: string,\n idx: number,\n params: PrReviewersParams,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/pulls/${idx}/requested_reviewers`;\n await giteaHttp.postJson(url, {\n ...options,\n body: params,\n });\n}\n\nexport async function createIssue(\n repoPath: string,\n params: IssueCreateParams,\n options?: GiteaHttpOptions,\n): Promise<Issue> {\n const url = `${API_PATH}/repos/${repoPath}/issues`;\n const res = await giteaHttp.postJson<Issue>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updateIssue(\n repoPath: string,\n idx: number,\n params: IssueUpdateParams,\n options?: GiteaHttpOptions,\n): Promise<Issue> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${idx}`;\n const res = await giteaHttp.patchJson<Issue>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updateIssueLabels(\n repoPath: string,\n idx: number,\n params: IssueUpdateLabelsParams,\n options?: GiteaHttpOptions,\n): Promise<Label[]> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${idx}/labels`;\n const res = await giteaHttp.putJson<Label[]>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function closeIssue(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n await updateIssue(repoPath, idx, {\n ...options,\n state: 'closed',\n });\n}\n\nexport async function searchIssues(\n repoPath: string,\n params: IssueSearchParams,\n options?: GiteaHttpOptions,\n): Promise<Issue[]> {\n const query = getQueryString({ ...params, type: 'issues' });\n const url = `${API_PATH}/repos/${repoPath}/issues?${query}`;\n const res = await giteaHttp.getJsonUnchecked<Issue[]>(url, {\n ...options,\n paginate: true,\n });\n\n return res.body;\n}\n\nexport async function getIssue(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<Issue> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${idx}`;\n const res = await giteaHttp.getJsonUnchecked<Issue>(url, options);\n return res.body;\n}\n\nexport async function getRepoLabels(\n repoPath: string,\n options?: GiteaHttpOptions,\n): Promise<Label[]> {\n const url = `${API_PATH}/repos/${repoPath}/labels`;\n const res = await giteaHttp.getJsonUnchecked<Label[]>(url, options);\n\n return res.body;\n}\n\nexport async function getOrgLabels(\n orgName: string,\n options?: GiteaHttpOptions,\n): Promise<Label[]> {\n const url = `${API_PATH}/orgs/${orgName}/labels`;\n const res = await giteaHttp.getJsonUnchecked<Label[]>(url, options);\n\n return res.body;\n}\n\nexport async function unassignLabel(\n repoPath: string,\n issue: number,\n label: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${issue}/labels/${label}`;\n await giteaHttp.deleteJson(url, options);\n}\n\nexport async function createComment(\n repoPath: string,\n issue: number,\n body: string,\n options?: GiteaHttpOptions,\n): Promise<Comment> {\n const params: CommentCreateParams = { body };\n const url = `${API_PATH}/repos/${repoPath}/issues/${issue}/comments`;\n const res = await giteaHttp.postJson<Comment>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function updateComment(\n repoPath: string,\n idx: number,\n body: string,\n options?: GiteaHttpOptions,\n): Promise<Comment> {\n const params: CommentUpdateParams = { body };\n const url = `${API_PATH}/repos/${repoPath}/issues/comments/${idx}`;\n const res = await giteaHttp.patchJson<Comment>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport async function deleteComment(\n repoPath: string,\n idx: number,\n options?: GiteaHttpOptions,\n): Promise<void> {\n const url = `${API_PATH}/repos/${repoPath}/issues/comments/${idx}`;\n await giteaHttp.deleteJson(url, options);\n}\n\nexport async function getComments(\n repoPath: string,\n issue: number,\n options?: GiteaHttpOptions,\n): Promise<Comment[]> {\n const url = `${API_PATH}/repos/${repoPath}/issues/${issue}/comments`;\n const res = await giteaHttp.getJsonUnchecked<Comment[]>(url, options);\n\n return res.body;\n}\n\nexport async function createCommitStatus(\n repoPath: string,\n branchCommit: string,\n params: CommitStatusCreateParams,\n options?: GiteaHttpOptions,\n): Promise<CommitStatus> {\n const url = `${API_PATH}/repos/${repoPath}/statuses/${branchCommit}`;\n const res = await giteaHttp.postJson<CommitStatus>(url, {\n ...options,\n body: params,\n });\n\n return res.body;\n}\n\nexport const giteaToRenovateStatusMapping: Record<\n CommitStatusType,\n BranchStatus | null\n> = {\n unknown: 'yellow',\n success: 'green',\n pending: 'yellow',\n warning: 'red',\n failure: 'red',\n error: 'red',\n};\n\nexport const renovateToGiteaStatusMapping: Record<\n BranchStatus,\n CommitStatusType\n> = {\n green: 'success',\n yellow: 'pending',\n red: 'failure',\n};\n\nfunction filterStatus(data: CommitStatus[]): CommitStatus[] {\n const ret: Record<string, CommitStatus> = {};\n for (const i of data) {\n if (!ret[i.context] || ret[i.context].id < i.id) {\n ret[i.context] = i;\n }\n }\n return Object.values(ret);\n}\n\nexport async function getCombinedCommitStatus(\n repoPath: string,\n branchName: string,\n options?: GiteaHttpOptions,\n): Promise<CombinedCommitStatus> {\n const url = `${API_PATH}/repos/${repoPath}/commits/${urlEscape(\n branchName,\n )}/statuses`;\n const res = await giteaHttp.getJsonUnchecked<CommitStatus[]>(url, {\n ...options,\n paginate: true,\n });\n\n let worstState = 0;\n const statuses = filterStatus(res.body);\n for (const cs of statuses) {\n worstState = Math.max(worstState, commitStatusStates.indexOf(cs.status));\n }\n\n return {\n worstStatus: commitStatusStates[worstState],\n statuses,\n };\n}\n\nexport async function getBranch(\n repoPath: string,\n branchName: string,\n options?: GiteaHttpOptions,\n): Promise<Branch> {\n const url = `${API_PATH}/repos/${repoPath}/branches/${urlEscape(branchName)}`;\n const res = await giteaHttp.getJsonUnchecked<Branch>(url, options);\n\n return res.body;\n}\n"]}
@@ -1,5 +1,6 @@
1
1
  import type { BranchStatus } from '../../../types';
2
2
  import type { AutodiscoverConfig, BranchStatusConfig, CreatePRConfig, EnsureCommentConfig, EnsureIssueConfig, FindPRConfig, Issue, MergePRConfig, PlatformParams, PlatformResult, Pr, RepoParams, RepoResult, UpdatePrConfig } from '../types';
3
3
  export declare const id = "gitea";
4
+ export declare function resetPlatform(): void;
4
5
  export declare function maxBodyLength(): number;
5
6
  export declare const addAssignees: (number: number, assignees: string[]) => Promise<void>, addReviewers: (number: number, reviewers: string[]) => Promise<void>, createPr: (prConfig: CreatePRConfig) => Promise<Pr | null>, deleteLabel: (number: number, label: string) => Promise<void>, ensureComment: (ensureComment: EnsureCommentConfig) => Promise<boolean>, ensureCommentRemoval: (ensureCommentRemoval: import("../types").EnsureCommentRemovalConfigByTopic | import("../types").EnsureCommentRemovalConfigByContent) => Promise<void>, ensureIssue: (issueConfig: EnsureIssueConfig) => Promise<import("../types").EnsureIssueResult | null>, ensureIssueClosing: (title: string) => Promise<void>, findIssue: (title: string) => Promise<Issue | null>, findPr: (findPRConfig: FindPRConfig) => Promise<Pr | null>, getBranchPr: (branchName: string, targetBranch?: string) => Promise<Pr | null>, getBranchStatus: (branchName: string, internalChecksAsSuccess: boolean) => Promise<BranchStatus>, getBranchStatusCheck: (branchName: string, context: string | null | undefined) => Promise<BranchStatus | null>, getIssue: ((number: number, memCache?: boolean) => Promise<Issue | null>) | undefined, getRawFile: (fileName: string, repoName?: string, branchOrTag?: string) => Promise<string | null>, getJsonFile: (fileName: string, repoName?: string, branchOrTag?: string) => Promise<any>, getIssueList: () => Promise<Issue[]>, getPr: (number: number) => Promise<Pr | null>, massageMarkdown: (prBody: string) => string, getPrList: () => Promise<Pr[]>, getRepos: (config?: AutodiscoverConfig) => Promise<string[]>, initPlatform: (config: PlatformParams) => Promise<PlatformResult>, initRepo: (config: RepoParams) => Promise<RepoResult>, mergePr: (config: MergePRConfig) => Promise<boolean>, setBranchStatus: (branchStatusConfig: BranchStatusConfig) => Promise<void>, updatePr: (prConfig: UpdatePrConfig) => Promise<void>;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updatePr = exports.setBranchStatus = exports.mergePr = exports.initRepo = exports.initPlatform = exports.getRepos = exports.getPrList = exports.massageMarkdown = exports.getPr = exports.getIssueList = exports.getJsonFile = exports.getRawFile = exports.getIssue = exports.getBranchStatusCheck = exports.getBranchStatus = exports.getBranchPr = exports.findPr = exports.findIssue = exports.ensureIssueClosing = exports.ensureIssue = exports.ensureCommentRemoval = exports.ensureComment = exports.deleteLabel = exports.createPr = exports.addReviewers = exports.addAssignees = exports.id = void 0;
4
+ exports.resetPlatform = resetPlatform;
4
5
  exports.maxBodyLength = maxBodyLength;
5
6
  const tslib_1 = require("tslib");
6
7
  const is_1 = tslib_1.__importDefault(require("@sindresorhus/is"));
@@ -31,6 +32,16 @@ const defaults = {
31
32
  let config = {};
32
33
  let botUserID;
33
34
  let botUserName;
35
+ function resetPlatform() {
36
+ config = {};
37
+ botUserID = undefined;
38
+ botUserName = undefined;
39
+ defaults.hostType = 'gitea';
40
+ defaults.endpoint = 'https://gitea.com/';
41
+ defaults.version = '0.0.0';
42
+ defaults.isForgejo = false;
43
+ (0, gitea_1.setBaseUrl)(defaults.endpoint);
44
+ }
34
45
  function toRenovateIssue(data) {
35
46
  return {
36
47
  number: data.number,
@@ -123,10 +134,10 @@ const platform = {
123
134
  gitAuthor = `${user.full_name ?? user.username} <${user.email}>`;
124
135
  botUserID = user.id;
125
136
  botUserName = user.username;
126
- // istanbul ignore if: experimental feature
137
+ /* v8 ignore start: experimental feature */
127
138
  if (semver_1.default.valid(process.env.RENOVATE_X_PLATFORM_VERSION)) {
128
139
  defaults.version = process.env.RENOVATE_X_PLATFORM_VERSION;
129
- }
140
+ } /* v8 ignore stop */
130
141
  else {
131
142
  defaults.version = await helper.getVersion({ token });
132
143
  }
@@ -302,8 +313,8 @@ const platform = {
302
313
  logger_1.logger.debug('Successful checks are all internal renovate/ checks, so returning "pending" branch status');
303
314
  return 'yellow';
304
315
  }
305
- return (helper.giteaToRenovateStatusMapping[ccs.worstStatus] ??
306
- /* istanbul ignore next */ 'yellow');
316
+ /* v8 ignore next */
317
+ return helper.giteaToRenovateStatusMapping[ccs.worstStatus] ?? 'yellow';
307
318
  },
308
319
  async getBranchStatusCheck(branchName, context) {
309
320
  const ccs = await helper.getCombinedCommitStatus(config.repository, branchName);
@@ -343,8 +354,16 @@ const platform = {
343
354
  }
344
355
  return pr;
345
356
  },
346
- async findPr({ branchName, prTitle: title, state = 'all', includeOtherAuthors, }) {
357
+ async findPr({ branchName, prTitle: title, state = 'all', includeOtherAuthors, targetBranch, }) {
347
358
  logger_1.logger.debug(`findPr(${branchName}, ${title}, ${state})`);
359
+ if (includeOtherAuthors && is_1.default.string(targetBranch)) {
360
+ // do not use pr cache as it only fetches prs created by the bot account
361
+ const pr = await helper.getPRByBranch(config.repository, targetBranch, branchName);
362
+ if (!pr) {
363
+ return null;
364
+ }
365
+ return (0, utils_1.toRenovatePR)(pr, null);
366
+ }
348
367
  const prList = await platform.getPrList();
349
368
  const pr = prList.find((p) => p.sourceRepo === config.repository &&
350
369
  p.sourceBranch === branchName &&
@@ -507,10 +526,10 @@ const platform = {
507
526
  body,
508
527
  };
509
528
  }
510
- catch (err) /* istanbul ignore next */ {
529
+ catch (err) /* v8 ignore start */ {
511
530
  logger_1.logger.debug({ err, number }, 'Error getting issue');
512
531
  return null;
513
- }
532
+ } /* v8 ignore stop */
514
533
  },
515
534
  async findIssue(title) {
516
535
  const issueList = await platform.getIssueList();