@invarn/cibuild 2.9.5 → 2.9.7

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 (553) hide show
  1. package/dist/chunk-35SI42CD.mjs +1 -0
  2. package/dist/chunk-IC45KVLJ.mjs +1 -0
  3. package/dist/chunk-XDY4V23V.mjs +1 -0
  4. package/dist/cli.cjs +14 -14
  5. package/dist/commands.mjs +1 -0
  6. package/dist/lib.mjs +3934 -0
  7. package/package.json +6 -10
  8. package/dist/src/cli.d.ts +0 -3
  9. package/dist/src/cli.d.ts.map +0 -1
  10. package/dist/src/cli.js +0 -399
  11. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts +0 -38
  12. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts.map +0 -1
  13. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.js +0 -222
  14. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts +0 -41
  15. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts.map +0 -1
  16. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.js +0 -324
  17. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts +0 -2
  18. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts.map +0 -1
  19. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.js +0 -382
  20. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts +0 -29
  21. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts.map +0 -1
  22. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.js +0 -160
  23. package/dist/src/commands/android-gms-guard.test.d.ts +0 -9
  24. package/dist/src/commands/android-gms-guard.test.d.ts.map +0 -1
  25. package/dist/src/commands/android-gms-guard.test.js +0 -78
  26. package/dist/src/commands/android-java-version.test.d.ts +0 -12
  27. package/dist/src/commands/android-java-version.test.d.ts.map +0 -1
  28. package/dist/src/commands/android-java-version.test.js +0 -209
  29. package/dist/src/commands/android-scanner-java.test.d.ts +0 -2
  30. package/dist/src/commands/android-scanner-java.test.d.ts.map +0 -1
  31. package/dist/src/commands/android-scanner-java.test.js +0 -130
  32. package/dist/src/commands/android-scanner.d.ts +0 -250
  33. package/dist/src/commands/android-scanner.d.ts.map +0 -1
  34. package/dist/src/commands/android-scanner.js +0 -1639
  35. package/dist/src/commands/build.d.ts +0 -215
  36. package/dist/src/commands/build.d.ts.map +0 -1
  37. package/dist/src/commands/build.js +0 -1433
  38. package/dist/src/commands/build.test.d.ts +0 -13
  39. package/dist/src/commands/build.test.d.ts.map +0 -1
  40. package/dist/src/commands/build.test.js +0 -121
  41. package/dist/src/commands/detect-platform.d.ts +0 -13
  42. package/dist/src/commands/detect-platform.d.ts.map +0 -1
  43. package/dist/src/commands/detect-platform.js +0 -51
  44. package/dist/src/commands/detect-project.d.ts +0 -7
  45. package/dist/src/commands/detect-project.d.ts.map +0 -1
  46. package/dist/src/commands/detect-project.js +0 -12
  47. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts +0 -26
  48. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts.map +0 -1
  49. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.js +0 -196
  50. package/dist/src/commands/edit.d.ts +0 -12
  51. package/dist/src/commands/edit.d.ts.map +0 -1
  52. package/dist/src/commands/edit.js +0 -652
  53. package/dist/src/commands/edit.test.d.ts +0 -6
  54. package/dist/src/commands/edit.test.d.ts.map +0 -1
  55. package/dist/src/commands/edit.test.js +0 -45
  56. package/dist/src/commands/fidelity-trim.d.ts +0 -13
  57. package/dist/src/commands/fidelity-trim.d.ts.map +0 -1
  58. package/dist/src/commands/fidelity-trim.js +0 -21
  59. package/dist/src/commands/fidelity-trim.test.d.ts +0 -8
  60. package/dist/src/commands/fidelity-trim.test.d.ts.map +0 -1
  61. package/dist/src/commands/fidelity-trim.test.js +0 -79
  62. package/dist/src/commands/file-secret-collector.d.ts +0 -50
  63. package/dist/src/commands/file-secret-collector.d.ts.map +0 -1
  64. package/dist/src/commands/file-secret-collector.js +0 -217
  65. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts +0 -38
  66. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts.map +0 -1
  67. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.js +0 -300
  68. package/dist/src/commands/github-workflow.d.ts +0 -5
  69. package/dist/src/commands/github-workflow.d.ts.map +0 -1
  70. package/dist/src/commands/github-workflow.js +0 -45
  71. package/dist/src/commands/index.d.ts +0 -33
  72. package/dist/src/commands/index.d.ts.map +0 -1
  73. package/dist/src/commands/index.js +0 -33
  74. package/dist/src/commands/init.d.ts +0 -20
  75. package/dist/src/commands/init.d.ts.map +0 -1
  76. package/dist/src/commands/init.js +0 -264
  77. package/dist/src/commands/ios-scanner.d.ts +0 -104
  78. package/dist/src/commands/ios-scanner.d.ts.map +0 -1
  79. package/dist/src/commands/ios-scanner.js +0 -492
  80. package/dist/src/commands/ios-scheme-ranking.test.d.ts +0 -2
  81. package/dist/src/commands/ios-scheme-ranking.test.d.ts.map +0 -1
  82. package/dist/src/commands/ios-scheme-ranking.test.js +0 -264
  83. package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts +0 -30
  84. package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts.map +0 -1
  85. package/dist/src/commands/local-properties-reaches-every-workflow.test.js +0 -146
  86. package/dist/src/commands/reset.d.ts +0 -7
  87. package/dist/src/commands/reset.d.ts.map +0 -1
  88. package/dist/src/commands/reset.js +0 -81
  89. package/dist/src/commands/run.d.ts +0 -22
  90. package/dist/src/commands/run.d.ts.map +0 -1
  91. package/dist/src/commands/run.js +0 -141
  92. package/dist/src/commands/secrets-sync-workflow.d.ts +0 -15
  93. package/dist/src/commands/secrets-sync-workflow.d.ts.map +0 -1
  94. package/dist/src/commands/secrets-sync-workflow.js +0 -255
  95. package/dist/src/commands/secrets-upload.d.ts +0 -21
  96. package/dist/src/commands/secrets-upload.d.ts.map +0 -1
  97. package/dist/src/commands/secrets-upload.js +0 -177
  98. package/dist/src/commands/secrets-upload.test.d.ts +0 -5
  99. package/dist/src/commands/secrets-upload.test.d.ts.map +0 -1
  100. package/dist/src/commands/secrets-upload.test.js +0 -60
  101. package/dist/src/commands/validate.d.ts +0 -10
  102. package/dist/src/commands/validate.d.ts.map +0 -1
  103. package/dist/src/commands/validate.js +0 -46
  104. package/dist/src/config.d.ts +0 -3
  105. package/dist/src/config.d.ts.map +0 -1
  106. package/dist/src/config.js +0 -47
  107. package/dist/src/envman/cli.d.ts +0 -21
  108. package/dist/src/envman/cli.d.ts.map +0 -1
  109. package/dist/src/envman/cli.js +0 -240
  110. package/dist/src/envman/envman.d.ts +0 -83
  111. package/dist/src/envman/envman.d.ts.map +0 -1
  112. package/dist/src/envman/envman.js +0 -361
  113. package/dist/src/envman/envman.test.d.ts +0 -5
  114. package/dist/src/envman/envman.test.d.ts.map +0 -1
  115. package/dist/src/envman/envman.test.js +0 -236
  116. package/dist/src/envman/envstore-round-trip.test.d.ts +0 -27
  117. package/dist/src/envman/envstore-round-trip.test.d.ts.map +0 -1
  118. package/dist/src/envman/envstore-round-trip.test.js +0 -130
  119. package/dist/src/envman/index.d.ts +0 -23
  120. package/dist/src/envman/index.d.ts.map +0 -1
  121. package/dist/src/envman/index.js +0 -23
  122. package/dist/src/envman/shim.d.ts +0 -16
  123. package/dist/src/envman/shim.d.ts.map +0 -1
  124. package/dist/src/envman/shim.js +0 -66
  125. package/dist/src/envman/types.d.ts +0 -55
  126. package/dist/src/envman/types.d.ts.map +0 -1
  127. package/dist/src/envman/types.js +0 -12
  128. package/dist/src/lib.d.ts +0 -33
  129. package/dist/src/lib.d.ts.map +0 -1
  130. package/dist/src/lib.js +0 -37
  131. package/dist/src/pipeline.d.ts +0 -3
  132. package/dist/src/pipeline.d.ts.map +0 -1
  133. package/dist/src/pipeline.js +0 -57
  134. package/dist/src/runner-node-step.test.d.ts +0 -12
  135. package/dist/src/runner-node-step.test.d.ts.map +0 -1
  136. package/dist/src/runner-node-step.test.js +0 -61
  137. package/dist/src/runner.d.ts +0 -31
  138. package/dist/src/runner.d.ts.map +0 -1
  139. package/dist/src/runner.js +0 -240
  140. package/dist/src/shared/detect-project.d.ts +0 -57
  141. package/dist/src/shared/detect-project.d.ts.map +0 -1
  142. package/dist/src/shared/detect-project.js +0 -219
  143. package/dist/src/shared/detect-project.test.d.ts +0 -2
  144. package/dist/src/shared/detect-project.test.d.ts.map +0 -1
  145. package/dist/src/shared/detect-project.test.js +0 -161
  146. package/dist/src/shared/git.d.ts +0 -25
  147. package/dist/src/shared/git.d.ts.map +0 -1
  148. package/dist/src/shared/git.js +0 -53
  149. package/dist/src/shared/git.test.d.ts +0 -9
  150. package/dist/src/shared/git.test.d.ts.map +0 -1
  151. package/dist/src/shared/git.test.js +0 -66
  152. package/dist/src/shared/gitignore.d.ts +0 -6
  153. package/dist/src/shared/gitignore.d.ts.map +0 -1
  154. package/dist/src/shared/gitignore.js +0 -26
  155. package/dist/src/shared/gradle-settings.d.ts +0 -49
  156. package/dist/src/shared/gradle-settings.d.ts.map +0 -1
  157. package/dist/src/shared/gradle-settings.js +0 -138
  158. package/dist/src/shared/gradle-settings.test.d.ts +0 -2
  159. package/dist/src/shared/gradle-settings.test.d.ts.map +0 -1
  160. package/dist/src/shared/gradle-settings.test.js +0 -65
  161. package/dist/src/shared/prompts.d.ts +0 -30
  162. package/dist/src/shared/prompts.d.ts.map +0 -1
  163. package/dist/src/shared/prompts.js +0 -121
  164. package/dist/src/shared/xcode-container.test.d.ts +0 -2
  165. package/dist/src/shared/xcode-container.test.d.ts.map +0 -1
  166. package/dist/src/shared/xcode-container.test.js +0 -123
  167. package/dist/src/step-marker.d.ts +0 -12
  168. package/dist/src/step-marker.d.ts.map +0 -1
  169. package/dist/src/step-marker.js +0 -29
  170. package/dist/src/step-marker.test.d.ts +0 -11
  171. package/dist/src/step-marker.test.d.ts.map +0 -1
  172. package/dist/src/step-marker.test.js +0 -45
  173. package/dist/src/types.d.ts +0 -58
  174. package/dist/src/types.d.ts.map +0 -1
  175. package/dist/src/types.js +0 -2
  176. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts +0 -28
  177. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts.map +0 -1
  178. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.js +0 -223
  179. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts +0 -20
  180. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts.map +0 -1
  181. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.js +0 -201
  182. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts +0 -37
  183. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts.map +0 -1
  184. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.js +0 -255
  185. package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts +0 -32
  186. package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts.map +0 -1
  187. package/dist/src/yaml/a-missing-credential-is-loud.test.js +0 -301
  188. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts +0 -18
  189. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts.map +0 -1
  190. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.js +0 -66
  191. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts +0 -34
  192. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts.map +0 -1
  193. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.js +0 -218
  194. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts +0 -27
  195. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts.map +0 -1
  196. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.js +0 -126
  197. package/dist/src/yaml/bitrise-compat.d.ts +0 -65
  198. package/dist/src/yaml/bitrise-compat.d.ts.map +0 -1
  199. package/dist/src/yaml/bitrise-compat.js +0 -206
  200. package/dist/src/yaml/bitrise-compat.test.d.ts +0 -5
  201. package/dist/src/yaml/bitrise-compat.test.d.ts.map +0 -1
  202. package/dist/src/yaml/bitrise-compat.test.js +0 -347
  203. package/dist/src/yaml/cache-key-missing-file.test.d.ts +0 -12
  204. package/dist/src/yaml/cache-key-missing-file.test.d.ts.map +0 -1
  205. package/dist/src/yaml/cache-key-missing-file.test.js +0 -116
  206. package/dist/src/yaml/converter.d.ts +0 -103
  207. package/dist/src/yaml/converter.d.ts.map +0 -1
  208. package/dist/src/yaml/converter.js +0 -420
  209. package/dist/src/yaml/converter.test.d.ts +0 -5
  210. package/dist/src/yaml/converter.test.d.ts.map +0 -1
  211. package/dist/src/yaml/converter.test.js +0 -548
  212. package/dist/src/yaml/e2e.test.d.ts +0 -6
  213. package/dist/src/yaml/e2e.test.d.ts.map +0 -1
  214. package/dist/src/yaml/e2e.test.js +0 -446
  215. package/dist/src/yaml/env-resolver.d.ts +0 -218
  216. package/dist/src/yaml/env-resolver.d.ts.map +0 -1
  217. package/dist/src/yaml/env-resolver.js +0 -591
  218. package/dist/src/yaml/env-resolver.test.d.ts +0 -5
  219. package/dist/src/yaml/env-resolver.test.d.ts.map +0 -1
  220. package/dist/src/yaml/env-resolver.test.js +0 -502
  221. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts +0 -16
  222. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts.map +0 -1
  223. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.js +0 -126
  224. package/dist/src/yaml/fidelity-input-digest.d.ts +0 -37
  225. package/dist/src/yaml/fidelity-input-digest.d.ts.map +0 -1
  226. package/dist/src/yaml/fidelity-input-digest.js +0 -208
  227. package/dist/src/yaml/fidelity-input-digest.test.d.ts +0 -2
  228. package/dist/src/yaml/fidelity-input-digest.test.d.ts.map +0 -1
  229. package/dist/src/yaml/fidelity-input-digest.test.js +0 -167
  230. package/dist/src/yaml/fidelity-manifest.d.ts +0 -126
  231. package/dist/src/yaml/fidelity-manifest.d.ts.map +0 -1
  232. package/dist/src/yaml/fidelity-manifest.js +0 -134
  233. package/dist/src/yaml/fidelity-manifest.test.d.ts +0 -12
  234. package/dist/src/yaml/fidelity-manifest.test.d.ts.map +0 -1
  235. package/dist/src/yaml/fidelity-manifest.test.js +0 -251
  236. package/dist/src/yaml/interactive-prompts.d.ts +0 -71
  237. package/dist/src/yaml/interactive-prompts.d.ts.map +0 -1
  238. package/dist/src/yaml/interactive-prompts.js +0 -260
  239. package/dist/src/yaml/meta-helpers.d.ts +0 -28
  240. package/dist/src/yaml/meta-helpers.d.ts.map +0 -1
  241. package/dist/src/yaml/meta-helpers.js +0 -46
  242. package/dist/src/yaml/missing-env-handler.d.ts +0 -45
  243. package/dist/src/yaml/missing-env-handler.d.ts.map +0 -1
  244. package/dist/src/yaml/missing-env-handler.js +0 -64
  245. package/dist/src/yaml/parser.d.ts +0 -33
  246. package/dist/src/yaml/parser.d.ts.map +0 -1
  247. package/dist/src/yaml/parser.js +0 -148
  248. package/dist/src/yaml/parser.test.d.ts +0 -5
  249. package/dist/src/yaml/parser.test.d.ts.map +0 -1
  250. package/dist/src/yaml/parser.test.js +0 -83
  251. package/dist/src/yaml/pipeline-with-secrets.d.ts +0 -25
  252. package/dist/src/yaml/pipeline-with-secrets.d.ts.map +0 -1
  253. package/dist/src/yaml/pipeline-with-secrets.js +0 -76
  254. package/dist/src/yaml/platform-detector.d.ts +0 -83
  255. package/dist/src/yaml/platform-detector.d.ts.map +0 -1
  256. package/dist/src/yaml/platform-detector.js +0 -189
  257. package/dist/src/yaml/platform-detector.test.d.ts +0 -5
  258. package/dist/src/yaml/platform-detector.test.d.ts.map +0 -1
  259. package/dist/src/yaml/platform-detector.test.js +0 -525
  260. package/dist/src/yaml/preflight-validation.d.ts +0 -29
  261. package/dist/src/yaml/preflight-validation.d.ts.map +0 -1
  262. package/dist/src/yaml/preflight-validation.js +0 -21
  263. package/dist/src/yaml/secrets-manager.d.ts +0 -87
  264. package/dist/src/yaml/secrets-manager.d.ts.map +0 -1
  265. package/dist/src/yaml/secrets-manager.js +0 -230
  266. package/dist/src/yaml/shell-assignments.d.ts +0 -40
  267. package/dist/src/yaml/shell-assignments.d.ts.map +0 -1
  268. package/dist/src/yaml/shell-assignments.js +0 -77
  269. package/dist/src/yaml/step-validator-check-failure.test.d.ts +0 -24
  270. package/dist/src/yaml/step-validator-check-failure.test.d.ts.map +0 -1
  271. package/dist/src/yaml/step-validator-check-failure.test.js +0 -130
  272. package/dist/src/yaml/step-validator-self-assigned.test.d.ts +0 -23
  273. package/dist/src/yaml/step-validator-self-assigned.test.d.ts.map +0 -1
  274. package/dist/src/yaml/step-validator-self-assigned.test.js +0 -191
  275. package/dist/src/yaml/step-validator.d.ts +0 -67
  276. package/dist/src/yaml/step-validator.d.ts.map +0 -1
  277. package/dist/src/yaml/step-validator.js +0 -466
  278. package/dist/src/yaml/step-validator.test.d.ts +0 -18
  279. package/dist/src/yaml/step-validator.test.d.ts.map +0 -1
  280. package/dist/src/yaml/step-validator.test.js +0 -140
  281. package/dist/src/yaml/steps/android-sign.d.ts +0 -35
  282. package/dist/src/yaml/steps/android-sign.d.ts.map +0 -1
  283. package/dist/src/yaml/steps/android-sign.js +0 -147
  284. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts +0 -2
  285. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts.map +0 -1
  286. package/dist/src/yaml/steps/android-variant-resolution.test.js +0 -260
  287. package/dist/src/yaml/steps/android-version.d.ts +0 -26
  288. package/dist/src/yaml/steps/android-version.d.ts.map +0 -1
  289. package/dist/src/yaml/steps/android-version.js +0 -128
  290. package/dist/src/yaml/steps/android-version.test.d.ts +0 -5
  291. package/dist/src/yaml/steps/android-version.test.d.ts.map +0 -1
  292. package/dist/src/yaml/steps/android-version.test.js +0 -196
  293. package/dist/src/yaml/steps/android.d.ts +0 -156
  294. package/dist/src/yaml/steps/android.d.ts.map +0 -1
  295. package/dist/src/yaml/steps/android.js +0 -1092
  296. package/dist/src/yaml/steps/app-store-deploy.d.ts +0 -48
  297. package/dist/src/yaml/steps/app-store-deploy.d.ts.map +0 -1
  298. package/dist/src/yaml/steps/app-store-deploy.js +0 -167
  299. package/dist/src/yaml/steps/base.d.ts +0 -263
  300. package/dist/src/yaml/steps/base.d.ts.map +0 -1
  301. package/dist/src/yaml/steps/base.js +0 -380
  302. package/dist/src/yaml/steps/bitrise-android-tools.d.ts +0 -26
  303. package/dist/src/yaml/steps/bitrise-android-tools.d.ts.map +0 -1
  304. package/dist/src/yaml/steps/bitrise-android-tools.js +0 -200
  305. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts +0 -5
  306. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts.map +0 -1
  307. package/dist/src/yaml/steps/bitrise-android-tools.test.js +0 -280
  308. package/dist/src/yaml/steps/bitrise-apk-info.d.ts +0 -22
  309. package/dist/src/yaml/steps/bitrise-apk-info.d.ts.map +0 -1
  310. package/dist/src/yaml/steps/bitrise-apk-info.js +0 -144
  311. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts +0 -5
  312. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts.map +0 -1
  313. package/dist/src/yaml/steps/bitrise-apk-info.test.js +0 -331
  314. package/dist/src/yaml/steps/bitrise-slack.d.ts +0 -49
  315. package/dist/src/yaml/steps/bitrise-slack.d.ts.map +0 -1
  316. package/dist/src/yaml/steps/bitrise-slack.js +0 -280
  317. package/dist/src/yaml/steps/bitrise-slack.test.d.ts +0 -5
  318. package/dist/src/yaml/steps/bitrise-slack.test.d.ts.map +0 -1
  319. package/dist/src/yaml/steps/bitrise-slack.test.js +0 -484
  320. package/dist/src/yaml/steps/bitrise-ssh.d.ts +0 -27
  321. package/dist/src/yaml/steps/bitrise-ssh.d.ts.map +0 -1
  322. package/dist/src/yaml/steps/bitrise-ssh.js +0 -134
  323. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts +0 -5
  324. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts.map +0 -1
  325. package/dist/src/yaml/steps/bitrise-ssh.test.js +0 -205
  326. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts +0 -27
  327. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts.map +0 -1
  328. package/dist/src/yaml/steps/cache-pull-daemon.test.js +0 -212
  329. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts +0 -42
  330. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts.map +0 -1
  331. package/dist/src/yaml/steps/cache-pull-restore-roots.test.js +0 -209
  332. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts +0 -27
  333. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts.map +0 -1
  334. package/dist/src/yaml/steps/cache-push-daemon.test.js +0 -171
  335. package/dist/src/yaml/steps/cache.d.ts +0 -59
  336. package/dist/src/yaml/steps/cache.d.ts.map +0 -1
  337. package/dist/src/yaml/steps/cache.js +0 -1027
  338. package/dist/src/yaml/steps/capture-injection.d.ts +0 -30
  339. package/dist/src/yaml/steps/capture-injection.d.ts.map +0 -1
  340. package/dist/src/yaml/steps/capture-injection.js +0 -88
  341. package/dist/src/yaml/steps/capture-injection.test.d.ts +0 -2
  342. package/dist/src/yaml/steps/capture-injection.test.d.ts.map +0 -1
  343. package/dist/src/yaml/steps/capture-injection.test.js +0 -163
  344. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts +0 -42
  345. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts.map +0 -1
  346. package/dist/src/yaml/steps/cocoapods-deployment-floor.js +0 -140
  347. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts +0 -11
  348. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts.map +0 -1
  349. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.js +0 -176
  350. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts +0 -22
  351. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts.map +0 -1
  352. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.js +0 -97
  353. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts +0 -17
  354. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts.map +0 -1
  355. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.js +0 -282
  356. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts +0 -17
  357. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts.map +0 -1
  358. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.js +0 -132
  359. package/dist/src/yaml/steps/envstore-loader.test.d.ts +0 -15
  360. package/dist/src/yaml/steps/envstore-loader.test.d.ts.map +0 -1
  361. package/dist/src/yaml/steps/envstore-loader.test.js +0 -143
  362. package/dist/src/yaml/steps/fastlane.d.ts +0 -27
  363. package/dist/src/yaml/steps/fastlane.d.ts.map +0 -1
  364. package/dist/src/yaml/steps/fastlane.js +0 -79
  365. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts +0 -53
  366. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts.map +0 -1
  367. package/dist/src/yaml/steps/fidelity-aspect-guard.js +0 -72
  368. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts +0 -11
  369. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts.map +0 -1
  370. package/dist/src/yaml/steps/fidelity-aspect-guard.test.js +0 -50
  371. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts +0 -87
  372. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts.map +0 -1
  373. package/dist/src/yaml/steps/fidelity-reference-provenance.js +0 -111
  374. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts +0 -22
  375. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts.map +0 -1
  376. package/dist/src/yaml/steps/fidelity-reference-provenance.test.js +0 -118
  377. package/dist/src/yaml/steps/file.d.ts +0 -52
  378. package/dist/src/yaml/steps/file.d.ts.map +0 -1
  379. package/dist/src/yaml/steps/file.js +0 -108
  380. package/dist/src/yaml/steps/flutter.d.ts +0 -63
  381. package/dist/src/yaml/steps/flutter.d.ts.map +0 -1
  382. package/dist/src/yaml/steps/flutter.js +0 -215
  383. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts +0 -16
  384. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts.map +0 -1
  385. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.js +0 -127
  386. package/dist/src/yaml/steps/git-clone.d.ts +0 -32
  387. package/dist/src/yaml/steps/git-clone.d.ts.map +0 -1
  388. package/dist/src/yaml/steps/git-clone.js +0 -171
  389. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts +0 -10
  390. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts.map +0 -1
  391. package/dist/src/yaml/steps/git-fetch-retry-exec.test.js +0 -162
  392. package/dist/src/yaml/steps/git-fetch-retry.d.ts +0 -62
  393. package/dist/src/yaml/steps/git-fetch-retry.d.ts.map +0 -1
  394. package/dist/src/yaml/steps/git-fetch-retry.js +0 -155
  395. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts +0 -5
  396. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts.map +0 -1
  397. package/dist/src/yaml/steps/git-fetch-retry.test.js +0 -86
  398. package/dist/src/yaml/steps/google-play-deploy.d.ts +0 -37
  399. package/dist/src/yaml/steps/google-play-deploy.d.ts.map +0 -1
  400. package/dist/src/yaml/steps/google-play-deploy.js +0 -193
  401. package/dist/src/yaml/steps/google-play-deploy.test.d.ts +0 -5
  402. package/dist/src/yaml/steps/google-play-deploy.test.d.ts.map +0 -1
  403. package/dist/src/yaml/steps/google-play-deploy.test.js +0 -310
  404. package/dist/src/yaml/steps/gradle-memory.d.ts +0 -61
  405. package/dist/src/yaml/steps/gradle-memory.d.ts.map +0 -1
  406. package/dist/src/yaml/steps/gradle-memory.js +0 -386
  407. package/dist/src/yaml/steps/gradle-memory.test.d.ts +0 -2
  408. package/dist/src/yaml/steps/gradle-memory.test.d.ts.map +0 -1
  409. package/dist/src/yaml/steps/gradle-memory.test.js +0 -344
  410. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts +0 -28
  411. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts.map +0 -1
  412. package/dist/src/yaml/steps/gradle-sdk-cmake.js +0 -107
  413. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts +0 -2
  414. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts.map +0 -1
  415. package/dist/src/yaml/steps/gradle-sdk-cmake.test.js +0 -183
  416. package/dist/src/yaml/steps/index.d.ts +0 -10
  417. package/dist/src/yaml/steps/index.d.ts.map +0 -1
  418. package/dist/src/yaml/steps/index.js +0 -1461
  419. package/dist/src/yaml/steps/ios-deps.d.ts +0 -78
  420. package/dist/src/yaml/steps/ios-deps.d.ts.map +0 -1
  421. package/dist/src/yaml/steps/ios-deps.js +0 -279
  422. package/dist/src/yaml/steps/ios-deps.test.d.ts +0 -5
  423. package/dist/src/yaml/steps/ios-deps.test.d.ts.map +0 -1
  424. package/dist/src/yaml/steps/ios-deps.test.js +0 -90
  425. package/dist/src/yaml/steps/ios-signing.d.ts +0 -31
  426. package/dist/src/yaml/steps/ios-signing.d.ts.map +0 -1
  427. package/dist/src/yaml/steps/ios-signing.js +0 -144
  428. package/dist/src/yaml/steps/ios-version.d.ts +0 -47
  429. package/dist/src/yaml/steps/ios-version.d.ts.map +0 -1
  430. package/dist/src/yaml/steps/ios-version.js +0 -151
  431. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts +0 -10
  432. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts.map +0 -1
  433. package/dist/src/yaml/steps/java-home-version-spec.test.js +0 -58
  434. package/dist/src/yaml/steps/linting.d.ts +0 -47
  435. package/dist/src/yaml/steps/linting.d.ts.map +0 -1
  436. package/dist/src/yaml/steps/linting.js +0 -148
  437. package/dist/src/yaml/steps/phase2.test.d.ts +0 -6
  438. package/dist/src/yaml/steps/phase2.test.d.ts.map +0 -1
  439. package/dist/src/yaml/steps/phase2.test.js +0 -197
  440. package/dist/src/yaml/steps/phase3.test.d.ts +0 -5
  441. package/dist/src/yaml/steps/phase3.test.d.ts.map +0 -1
  442. package/dist/src/yaml/steps/phase3.test.js +0 -144
  443. package/dist/src/yaml/steps/phase4.test.d.ts +0 -5
  444. package/dist/src/yaml/steps/phase4.test.d.ts.map +0 -1
  445. package/dist/src/yaml/steps/phase4.test.js +0 -166
  446. package/dist/src/yaml/steps/phase5.test.d.ts +0 -6
  447. package/dist/src/yaml/steps/phase5.test.d.ts.map +0 -1
  448. package/dist/src/yaml/steps/phase5.test.js +0 -263
  449. package/dist/src/yaml/steps/registry.d.ts +0 -88
  450. package/dist/src/yaml/steps/registry.d.ts.map +0 -1
  451. package/dist/src/yaml/steps/registry.js +0 -125
  452. package/dist/src/yaml/steps/registry.test.d.ts +0 -5
  453. package/dist/src/yaml/steps/registry.test.d.ts.map +0 -1
  454. package/dist/src/yaml/steps/registry.test.js +0 -235
  455. package/dist/src/yaml/steps/release.d.ts +0 -50
  456. package/dist/src/yaml/steps/release.d.ts.map +0 -1
  457. package/dist/src/yaml/steps/release.js +0 -154
  458. package/dist/src/yaml/steps/render-post-processor.d.ts +0 -100
  459. package/dist/src/yaml/steps/render-post-processor.d.ts.map +0 -1
  460. package/dist/src/yaml/steps/render-post-processor.js +0 -270
  461. package/dist/src/yaml/steps/render-post-processor.test.d.ts +0 -13
  462. package/dist/src/yaml/steps/render-post-processor.test.d.ts.map +0 -1
  463. package/dist/src/yaml/steps/render-post-processor.test.js +0 -220
  464. package/dist/src/yaml/steps/script.d.ts +0 -23
  465. package/dist/src/yaml/steps/script.d.ts.map +0 -1
  466. package/dist/src/yaml/steps/script.js +0 -63
  467. package/dist/src/yaml/steps/spec-validation.test.d.ts +0 -6
  468. package/dist/src/yaml/steps/spec-validation.test.d.ts.map +0 -1
  469. package/dist/src/yaml/steps/spec-validation.test.js +0 -130
  470. package/dist/src/yaml/steps/steps.test.d.ts +0 -6
  471. package/dist/src/yaml/steps/steps.test.d.ts.map +0 -1
  472. package/dist/src/yaml/steps/steps.test.js +0 -881
  473. package/dist/src/yaml/steps/structural-facts.d.ts +0 -992
  474. package/dist/src/yaml/steps/structural-facts.d.ts.map +0 -1
  475. package/dist/src/yaml/steps/structural-facts.js +0 -3276
  476. package/dist/src/yaml/steps/structural-facts.test.d.ts +0 -12
  477. package/dist/src/yaml/steps/structural-facts.test.d.ts.map +0 -1
  478. package/dist/src/yaml/steps/structural-facts.test.js +0 -3039
  479. package/dist/src/yaml/steps/test-config.d.ts +0 -5
  480. package/dist/src/yaml/steps/test-config.d.ts.map +0 -1
  481. package/dist/src/yaml/steps/test-config.js +0 -25
  482. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts +0 -28
  483. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts.map +0 -1
  484. package/dist/src/yaml/steps/trim-align-corpus.test.js +0 -383
  485. package/dist/src/yaml/steps/trim-align.d.ts +0 -87
  486. package/dist/src/yaml/steps/trim-align.d.ts.map +0 -1
  487. package/dist/src/yaml/steps/trim-align.js +0 -367
  488. package/dist/src/yaml/steps/trim-align.test.d.ts +0 -11
  489. package/dist/src/yaml/steps/trim-align.test.d.ts.map +0 -1
  490. package/dist/src/yaml/steps/trim-align.test.js +0 -261
  491. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts +0 -66
  492. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts.map +0 -1
  493. package/dist/src/yaml/steps/ui-fidelity-preview-android.js +0 -251
  494. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts +0 -13
  495. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts.map +0 -1
  496. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.js +0 -302
  497. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts +0 -134
  498. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts.map +0 -1
  499. package/dist/src/yaml/steps/ui-fidelity-preview.js +0 -173
  500. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts +0 -11
  501. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts.map +0 -1
  502. package/dist/src/yaml/steps/ui-fidelity-preview.test.js +0 -210
  503. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts +0 -155
  504. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts.map +0 -1
  505. package/dist/src/yaml/steps/ui-fidelity-render-android.js +0 -1389
  506. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts +0 -2
  507. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts.map +0 -1
  508. package/dist/src/yaml/steps/ui-fidelity-render-android.test.js +0 -1106
  509. package/dist/src/yaml/steps/ui-fidelity-render.d.ts +0 -230
  510. package/dist/src/yaml/steps/ui-fidelity-render.d.ts.map +0 -1
  511. package/dist/src/yaml/steps/ui-fidelity-render.js +0 -1597
  512. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts +0 -18
  513. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts.map +0 -1
  514. package/dist/src/yaml/steps/ui-fidelity-render.test.js +0 -1871
  515. package/dist/src/yaml/steps/xcode-app-product.d.ts +0 -90
  516. package/dist/src/yaml/steps/xcode-app-product.d.ts.map +0 -1
  517. package/dist/src/yaml/steps/xcode-app-product.js +0 -247
  518. package/dist/src/yaml/steps/xcode-app-product.test.d.ts +0 -2
  519. package/dist/src/yaml/steps/xcode-app-product.test.d.ts.map +0 -1
  520. package/dist/src/yaml/steps/xcode-app-product.test.js +0 -202
  521. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts +0 -30
  522. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts.map +0 -1
  523. package/dist/src/yaml/steps/xcode-derived-data.test.js +0 -279
  524. package/dist/src/yaml/steps/xcode-destination.d.ts +0 -47
  525. package/dist/src/yaml/steps/xcode-destination.d.ts.map +0 -1
  526. package/dist/src/yaml/steps/xcode-destination.js +0 -202
  527. package/dist/src/yaml/steps/xcode-destination.test.d.ts +0 -9
  528. package/dist/src/yaml/steps/xcode-destination.test.d.ts.map +0 -1
  529. package/dist/src/yaml/steps/xcode-destination.test.js +0 -227
  530. package/dist/src/yaml/steps/xcode-new.test.d.ts +0 -5
  531. package/dist/src/yaml/steps/xcode-new.test.d.ts.map +0 -1
  532. package/dist/src/yaml/steps/xcode-new.test.js +0 -211
  533. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts +0 -9
  534. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts.map +0 -1
  535. package/dist/src/yaml/steps/xcode-resolve-retry.test.js +0 -146
  536. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts +0 -53
  537. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts.map +0 -1
  538. package/dist/src/yaml/steps/xcode-simulator-archs.js +0 -98
  539. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts +0 -21
  540. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts.map +0 -1
  541. package/dist/src/yaml/steps/xcode-simulator-archs.test.js +0 -155
  542. package/dist/src/yaml/steps/xcode.d.ts +0 -230
  543. package/dist/src/yaml/steps/xcode.d.ts.map +0 -1
  544. package/dist/src/yaml/steps/xcode.js +0 -1350
  545. package/dist/src/yaml/types.d.ts +0 -76
  546. package/dist/src/yaml/types.d.ts.map +0 -1
  547. package/dist/src/yaml/types.js +0 -5
  548. package/dist/src/yaml/validation-types.d.ts +0 -102
  549. package/dist/src/yaml/validation-types.d.ts.map +0 -1
  550. package/dist/src/yaml/validation-types.js +0 -8
  551. package/dist/src/yaml/yaml-updater.d.ts +0 -24
  552. package/dist/src/yaml/yaml-updater.d.ts.map +0 -1
  553. package/dist/src/yaml/yaml-updater.js +0 -128
@@ -1,78 +0,0 @@
1
- /**
2
- * A plugin applied inside `if (file("…").exists()) { … }` is conditional on a
3
- * file the build may not have. Counting it as a hard credential requirement
4
- * sends the user looking for a file the build never asks for — and, when the
5
- * same rule is used to predict outcomes, reports projects as blocked that
6
- * build green with no credential at all.
7
- */
8
- import { describe, test, expect } from '@jest/globals';
9
- import { stripExistenceGuardedBlocks } from './android-scanner.js';
10
- describe('stripExistenceGuardedBlocks', () => {
11
- test('removes a Kotlin DSL existence guard and its body', () => {
12
- const content = `
13
- plugins {
14
- id("com.android.application")
15
- }
16
-
17
- if (file("google-services.json").exists()) {
18
- apply(plugin = libs.plugins.gms.googleServices.get().pluginId)
19
- }
20
- `;
21
- const stripped = stripExistenceGuardedBlocks(content);
22
- expect(stripped).toContain('com.android.application');
23
- expect(stripped).not.toContain('googleServices');
24
- });
25
- test('removes a Groovy existence guard', () => {
26
- const content = `
27
- if (file('google-services.json').exists()) {
28
- apply plugin: 'com.google.gms.google-services'
29
- }
30
- `;
31
- expect(stripExistenceGuardedBlocks(content)).not.toContain('google-services');
32
- });
33
- test('removes a guard qualified by a project receiver', () => {
34
- const content = `
35
- if (rootProject.file("app/google-services.json").exists()) {
36
- apply(plugin = "com.google.gms.google-services")
37
- }
38
- `;
39
- expect(stripExistenceGuardedBlocks(content)).not.toContain('google-services');
40
- });
41
- test('keeps nested braces inside the guard body together', () => {
42
- const content = `
43
- if (file("google-services.json").exists()) {
44
- android { buildTypes { release { } } }
45
- apply(plugin = "com.google.gms.google-services")
46
- }
47
- val keep = "after"
48
- `;
49
- const stripped = stripExistenceGuardedBlocks(content);
50
- expect(stripped).not.toContain('google-services');
51
- expect(stripped).toContain('val keep = "after"');
52
- });
53
- test('is not fooled by a brace inside a string literal', () => {
54
- const content = `
55
- if (file("google-services.json").exists()) {
56
- val template = "\${'{'}not a block"
57
- apply(plugin = "com.google.gms.google-services")
58
- }
59
- val keep = "after"
60
- `;
61
- const stripped = stripExistenceGuardedBlocks(content);
62
- expect(stripped).not.toContain('google-services');
63
- expect(stripped).toContain('val keep = "after"');
64
- });
65
- test('leaves an unguarded declaration exactly where it was', () => {
66
- const content = `
67
- plugins {
68
- id("com.google.gms.google-services")
69
- }
70
- `;
71
- expect(stripExistenceGuardedBlocks(content)).toBe(content);
72
- });
73
- test('leaves content alone when the guard never closes', () => {
74
- const content = 'if (file("google-services.json").exists()) {\n apply(plugin = "x")\n';
75
- expect(stripExistenceGuardedBlocks(content)).toBe(content);
76
- });
77
- });
78
- //# sourceMappingURL=android-gms-guard.test.js.map
@@ -1,12 +0,0 @@
1
- /**
2
- * Which JDK a generated Android pipeline asks for.
3
- *
4
- * Two constraints decide it and the old `Math.max(detected ?? 17, 17)` knew
5
- * neither: build machines install a fixed set of JDKs, and Gradle refuses to
6
- * start on a JDK newer than it knows about. Naming a JDK that is not
7
- * installed fails at "Set the Java version", before a line compiles; raising
8
- * a project onto a JDK its Gradle cannot run makes an old wrapper
9
- * unbuildable by construction.
10
- */
11
- export {};
12
- //# sourceMappingURL=android-java-version.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"android-java-version.test.d.ts","sourceRoot":"","sources":["../../../src/commands/android-java-version.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
@@ -1,209 +0,0 @@
1
- /**
2
- * Which JDK a generated Android pipeline asks for.
3
- *
4
- * Two constraints decide it and the old `Math.max(detected ?? 17, 17)` knew
5
- * neither: build machines install a fixed set of JDKs, and Gradle refuses to
6
- * start on a JDK newer than it knows about. Naming a JDK that is not
7
- * installed fails at "Set the Java version", before a line compiles; raising
8
- * a project onto a JDK its Gradle cannot run makes an old wrapper
9
- * unbuildable by construction.
10
- */
11
- import { describe, test, expect } from '@jest/globals';
12
- import { AVAILABLE_JAVA_VERSIONS, gradleJavaCeiling, gradleJavaFloor, javaVersionProblem, parseGradleWrapperVersion, runnableJavaVersion, } from './android-scanner.js';
13
- describe('parseGradleWrapperVersion', () => {
14
- test('reads the version out of a distributionUrl', () => {
15
- expect(parseGradleWrapperVersion('distributionUrl=https\\://services.gradle.org/distributions/gradle-8.9-bin.zip')).toBe('8.9');
16
- });
17
- test('reads an -all distribution and a three-part version', () => {
18
- expect(parseGradleWrapperVersion('distributionUrl=https\\://services.gradle.org/distributions/gradle-5.2.1-all.zip')).toBe('5.2.1');
19
- });
20
- test('reads a release-candidate version', () => {
21
- expect(parseGradleWrapperVersion('distributionUrl=https\\://services.gradle.org/distributions/gradle-9.0-rc-1-bin.zip')).toBe('9.0-rc-1');
22
- });
23
- test('returns undefined for a properties file that pins nothing', () => {
24
- expect(parseGradleWrapperVersion('distributionBase=GRADLE_USER_HOME')).toBeUndefined();
25
- expect(parseGradleWrapperVersion('')).toBeUndefined();
26
- });
27
- });
28
- describe('gradleJavaCeiling / gradleJavaFloor', () => {
29
- test('tracks what each Gradle line can run on', () => {
30
- expect(gradleJavaCeiling('4.10.2')).toBe(8);
31
- expect(gradleJavaCeiling('5.2.1')).toBe(11);
32
- expect(gradleJavaCeiling('6.9')).toBe(11);
33
- expect(gradleJavaCeiling('7.6.1')).toBe(17);
34
- expect(gradleJavaCeiling('8.9')).toBe(21);
35
- expect(gradleJavaCeiling('9.4.0')).toBe(25);
36
- });
37
- // The boundaries are minor releases, and preferring the newest JDK makes
38
- // them load-bearing: JDK 21 arrived in Gradle 8.5, JDK 17 in 7.3, JDK 11 in
39
- // 5.0.
40
- test('knows the minor release each JDK arrived in', () => {
41
- expect(gradleJavaCeiling('8.4')).toBe(17);
42
- expect(gradleJavaCeiling('8.5')).toBe(21);
43
- expect(gradleJavaCeiling('7.2')).toBe(11);
44
- expect(gradleJavaCeiling('7.3')).toBe(17);
45
- });
46
- test('knows Gradle 9 dropped everything below 17', () => {
47
- expect(gradleJavaFloor('8.9')).toBe(8);
48
- expect(gradleJavaFloor('9.0')).toBe(17);
49
- });
50
- test('says nothing about a version it cannot read', () => {
51
- expect(gradleJavaCeiling(undefined)).toBeUndefined();
52
- expect(gradleJavaCeiling('nightly')).toBeUndefined();
53
- expect(gradleJavaFloor(undefined)).toBeUndefined();
54
- });
55
- });
56
- describe('runnableJavaVersion', () => {
57
- // DECIDED 2026-09-06 (Alex): the newest JDK the wrapper allows, reversing
58
- // PRD decision #15. A declaration is a floor — 11 is installed, and a
59
- // project declaring sourceCompatibility 11 gets 21, which it compiles
60
- // perfectly well on and which AGP 8.x needs anyway.
61
- test('takes the newest available JDK that covers the declaration', () => {
62
- expect(runnableJavaVersion(11)).toBe(25);
63
- expect(runnableJavaVersion(17)).toBe(25);
64
- expect(runnableJavaVersion(25)).toBe(25);
65
- });
66
- // Nothing declared and no wrapper to read is nothing to go on. It used to
67
- // answer 25 anyway, which is a guess wearing a number; the generator's own
68
- // default stands instead, and that is not news worth a warning.
69
- test('abstains when there is nothing to go on', () => {
70
- expect(runnableJavaVersion(undefined)).toBeUndefined();
71
- });
72
- test('still answers from the wrapper alone, with nothing declared', () => {
73
- expect(runnableJavaVersion(undefined, '8.9')).toBe(21);
74
- });
75
- // 8 joined the images on 2026-09-07 and must stay unreachable except where
76
- // a wrapper ceiling forces it: a project declaring `sourceCompatibility 1.8`
77
- // is declaring a floor, and AGP will not run on 8 at all.
78
- test('never picks 8 for a project that merely declares it', () => {
79
- // 8.13's own ceiling is 21 — JDK 25 needs Gradle 9.1.
80
- expect(runnableJavaVersion(8, '8.13')).toBe(21);
81
- expect(runnableJavaVersion(8)).toBe(25);
82
- });
83
- // AutoJs6: Gradle 4.10.2 tops out at Java 8, and now there is a Java 8.
84
- test('picks 8 when the wrapper leaves nothing else', () => {
85
- expect(runnableJavaVersion(undefined, '4.10.2')).toBe(8);
86
- expect(runnableJavaVersion(8, '4.10.2')).toBe(8);
87
- });
88
- test('steps down to 11 only when the wrapper rules everything else out', () => {
89
- expect(runnableJavaVersion(undefined, '5.2.1')).toBe(11);
90
- expect(runnableJavaVersion(11, '5.2.1')).toBe(11);
91
- expect(runnableJavaVersion(undefined, '6.9')).toBe(11);
92
- });
93
- // No answer is ever a JDK the build machines lack.
94
- test('never names a JDK no build machine has', () => {
95
- for (const answer of [runnableJavaVersion(23), runnableJavaVersion(25, '8.9')]) {
96
- if (answer !== undefined)
97
- expect(AVAILABLE_JAVA_VERSIONS).toContain(answer);
98
- }
99
- });
100
- /**
101
- * And no answer is ever above the wrapper's own ceiling.
102
- *
103
- * This is the defect. Nothing satisfied both the declaration and the
104
- * ceiling, so the chooser fell back to the newest installed JDK — which is
105
- * *above* the ceiling by construction, because the ceiling is why nothing
106
- * fitted. The build then died selecting the JDK, exactly as a too-new JDK
107
- * always does, and `javaVersionProblem` had no branch for the shape so
108
- * nothing anywhere said a choice had been made.
109
- *
110
- * The ceiling is hard: Gradle starts before it reads a single
111
- * `sourceCompatibility`. The declaration is a floor. So where they conflict
112
- * the ceiling wins, and the caller says so.
113
- */
114
- test('never answers above the wrapper ceiling', () => {
115
- // Gradle 7.x tops out at 17. Declaring 21 cannot raise that.
116
- expect(runnableJavaVersion(21, '7.6.1')).toBe(17);
117
- expect(runnableJavaVersion(17, '7.6.1')).toBe(17);
118
- });
119
- // Gradle 6.5 runs on Java 11 at most, and a workflow pins java-version 12.
120
- // The old chooser answered 25 and said nothing.
121
- test('caps a modern declaration under an old wrapper', () => {
122
- expect(runnableJavaVersion(12, '6.5')).toBe(11);
123
- });
124
- // Every shape the corpus has, held to both properties at once: the answer
125
- // is installed, and it is not above the ceiling.
126
- test.each([
127
- [8, '4.10.2'],
128
- [11, '5.2.1'],
129
- [12, '6.5'],
130
- [17, '7.6.1'],
131
- [21, '7.6.1'],
132
- [8, '9.0'],
133
- [30, '8.9'],
134
- [25, '9.1'],
135
- [undefined, '6.9'],
136
- ])('declared %s on Gradle %s answers within both bounds', (declared, gradle) => {
137
- const answer = runnableJavaVersion(declared, gradle);
138
- if (answer === undefined)
139
- return; // abstention is always allowed
140
- expect(AVAILABLE_JAVA_VERSIONS).toContain(answer);
141
- const ceiling = gradleJavaCeiling(gradle);
142
- if (ceiling !== undefined)
143
- expect(answer).toBeLessThanOrEqual(ceiling);
144
- });
145
- test('honours the Gradle 9 floor of 17', () => {
146
- // The floor rules 11 out; the newest above it is what gets written.
147
- expect(runnableJavaVersion(8, '9.0')).toBe(21);
148
- });
149
- });
150
- describe('javaVersionProblem', () => {
151
- // There is no longer a Gradle version no installed JDK can run: the ceiling
152
- // bottoms out at Java 8 and since 2026-09-07 the images carry one. The
153
- // branch that says so is kept for an installed set that drops 8 again.
154
- test('no longer calls an old wrapper a problem', () => {
155
- expect(javaVersionProblem(undefined, '4.10.2')).toBeUndefined();
156
- expect(javaVersionProblem(undefined, '3.5')).toBeUndefined();
157
- });
158
- test('names a declaration above every installed JDK', () => {
159
- const problem = javaVersionProblem(30, '8.9');
160
- expect(problem).toContain('Java 30');
161
- expect(problem).toContain('8, 11, 17, 21 and 25');
162
- });
163
- test('is silent when every constraint was honoured', () => {
164
- expect(javaVersionProblem(17, '8.9')).toBeUndefined();
165
- expect(javaVersionProblem(undefined, '8.9')).toBeUndefined();
166
- expect(javaVersionProblem(undefined, undefined)).toBeUndefined();
167
- // 5.2.1 used to be a problem. The images carry 11 now, so it is not.
168
- expect(javaVersionProblem(undefined, '5.2.1')).toBeUndefined();
169
- // Nor is 4.10.2, since the images carry 8.
170
- expect(javaVersionProblem(undefined, '4.10.2')).toBeUndefined();
171
- });
172
- /**
173
- * The shape that used to fall through every branch, and the reason this
174
- * function is resolved from the same place as the answer.
175
- *
176
- * A wrapper on Gradle 6.5 under a workflow pinning java-version 12: the
177
- * ceiling is not below every installed JDK and the declaration is not above
178
- * every installed JDK, so neither old branch fired. The chooser answered 25
179
- * — above the ceiling — and nothing said the project had asked for something
180
- * else and been overruled.
181
- */
182
- test('speaks when an old wrapper overrules a newer declaration', () => {
183
- const problem = javaVersionProblem(12, '6.5');
184
- expect(problem).toContain('Java 12');
185
- expect(problem).toContain('Gradle 6.5');
186
- expect(problem).toContain('Java 11 at most');
187
- expect(problem).toContain('Building on 11');
188
- });
189
- // An answer that is not what was asked for always speaks, whichever
190
- // constraint did the overruling.
191
- test.each([
192
- [12, '6.5'],
193
- [21, '7.6.1'],
194
- [30, '8.9'],
195
- ])('declared %s on Gradle %s never passes silently', (declared, gradle) => {
196
- expect(javaVersionProblem(declared, gradle)).toBeDefined();
197
- });
198
- // Naming a version with no provenance sends a reader through every Gradle
199
- // file looking for a number that is in none of them. The scan knows which
200
- // file asked, so the sentence can say.
201
- test('names the file that asked, when it is known', () => {
202
- const problem = javaVersionProblem(12, '6.5', '.github/workflows/Build.yml');
203
- expect(problem).toContain('Java 12 (.github/workflows/Build.yml)');
204
- });
205
- test('reads correctly without a source', () => {
206
- expect(javaVersionProblem(12, '6.5')).not.toContain('(');
207
- });
208
- });
209
- //# sourceMappingURL=android-java-version.test.js.map
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=android-scanner-java.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"android-scanner-java.test.d.ts","sourceRoot":"","sources":["../../../src/commands/android-scanner-java.test.ts"],"names":[],"mappings":""}
@@ -1,130 +0,0 @@
1
- /**
2
- * Which JDK a project needs, from every place it says so.
3
- *
4
- * Two rows of the thirty-app study died at root-project configuration on a
5
- * JDK the images already carry, and neither was a repository problem:
6
- *
7
- * - `SimonSchubert/LinuxCommandLibrary` declares eight modules in a single
8
- * `include(...)` call. The scanner's own include regex captured only the
9
- * first argument, so seven modules were never opened — including the one
10
- * with `jvmToolchain(21)` in it. It answered 17, and a Gradle plugin
11
- * requiring a 21 runtime failed the build.
12
- * - `mihonapp/mihon` declares no Java level in any Gradle file. It pins 21
13
- * in `.github/.java-version`, which its own workflows consume through
14
- * `setup-java`'s `java-version-file:`. Nothing of ours read either.
15
- */
16
- import { mkdtempSync, rmSync, mkdirSync, writeFileSync } from "node:fs";
17
- import { join } from "node:path";
18
- import { tmpdir } from "node:os";
19
- import { scanAndroidProject } from "./android-scanner.js";
20
- let root;
21
- beforeEach(() => {
22
- root = mkdtempSync(join(tmpdir(), "cibuild-java-"));
23
- });
24
- afterEach(() => {
25
- rmSync(root, { recursive: true, force: true });
26
- });
27
- function write(relative, content) {
28
- const path = join(root, relative);
29
- mkdirSync(join(path, ".."), { recursive: true });
30
- writeFileSync(path, content);
31
- }
32
- async function detectedJava() {
33
- const result = await scanAndroidProject(root);
34
- return result.detectedJavaVersion;
35
- }
36
- describe("the Java version a project asks for", () => {
37
- describe("every module the build includes", () => {
38
- // The exact settings line from LinuxCommandLibrary, and the two build
39
- // files that decide the answer: 17 in the first module, 21 in the last.
40
- test("reads all eight modules of one include call", async () => {
41
- write("settings.gradle.kts", 'include(":android", ":common", ":websiteBuilder", ":cli", ":composeApp", ":desktopApp", ":viewmodels", ":screenshotTests")\n');
42
- write("build.gradle.kts", "// root\n");
43
- write("android/build.gradle.kts", "kotlin {\n compilerOptions {\n jvmTarget.set(JvmTarget.JVM_17)\n }\n}\n");
44
- write("screenshotTests/build.gradle.kts", "kotlin {\n jvmToolchain(21)\n}\n");
45
- expect(await detectedJava()).toBe(21);
46
- });
47
- test("reads the Groovy multi-argument form too", async () => {
48
- write("settings.gradle", "include ':app', ':feature:home'\n");
49
- write("app/build.gradle", "android { compileOptions { sourceCompatibility JavaVersion.VERSION_17 } }\n");
50
- write("feature/home/build.gradle", "kotlin { jvmToolchain(21) }\n");
51
- expect(await detectedJava()).toBe(21);
52
- });
53
- // A7 lite: a convention plugin's own build file is where a monorepo's
54
- // Java level often lives, and `includeBuild` is how it gets there.
55
- test("follows includeBuild into a build-logic root", async () => {
56
- write("settings.gradle.kts", 'includeBuild("build-logic")\ninclude(":app")\n');
57
- write("app/build.gradle.kts", "// nothing\n");
58
- write("build-logic/build.gradle.kts", "kotlin { jvmToolchain(21) }\n");
59
- expect(await detectedJava()).toBe(21);
60
- });
61
- });
62
- describe("the forms a Kotlin build writes jvmTarget in", () => {
63
- test.each([
64
- ["jvmTarget.set(JvmTarget.JVM_17)", 17],
65
- ["jvmTarget = JvmTarget.JVM_21", 21],
66
- ['jvmTarget.set(JvmTarget.fromTarget("17"))', 17],
67
- ['jvmTarget = "21"', 21],
68
- ["jvmTarget.set(JvmTarget.JVM_1_8)", 8],
69
- ])("reads %s", async (form, expected) => {
70
- write("settings.gradle.kts", 'include(":app")\n');
71
- write("app/build.gradle.kts", `kotlin { compilerOptions { ${form} } }\n`);
72
- expect(await detectedJava()).toBe(expected);
73
- });
74
- });
75
- describe("the files that pin a JDK outside Gradle", () => {
76
- // mihon. The floor is 21 and no Gradle file says anything at all.
77
- test("reads .github/.java-version", async () => {
78
- write("settings.gradle.kts", 'include(":app")\n');
79
- write("app/build.gradle.kts", "// nothing\n");
80
- write(".github/.java-version", "21\n");
81
- expect(await detectedJava()).toBe(21);
82
- });
83
- // thunderbird pins at the root.
84
- test("reads a root .java-version", async () => {
85
- write("settings.gradle.kts", 'include(":app")\n');
86
- write(".java-version", "21\n");
87
- expect(await detectedJava()).toBe(21);
88
- });
89
- test("reads a java entry in .tool-versions", async () => {
90
- write("settings.gradle.kts", 'include(":app")\n');
91
- write(".tool-versions", "nodejs 20.11.0\njava temurin-21.0.3+9\n");
92
- expect(await detectedJava()).toBe(21);
93
- });
94
- test("reads .sdkmanrc", async () => {
95
- write("settings.gradle.kts", 'include(":app")\n');
96
- write(".sdkmanrc", "# comment\njava=17.0.9-tem\ngradle=8.13\n");
97
- expect(await detectedJava()).toBe(17);
98
- });
99
- test("reads java-version from a workflow", async () => {
100
- write("settings.gradle.kts", 'include(":app")\n');
101
- write(".github/workflows/build.yml", "jobs:\n build:\n steps:\n - uses: actions/setup-java@v4\n with:\n java-version: 21\n");
102
- expect(await detectedJava()).toBe(21);
103
- });
104
- // A matrix declares several; the highest is the one that has to work.
105
- test("takes the highest of a workflow matrix", async () => {
106
- write("settings.gradle.kts", 'include(":app")\n');
107
- write(".github/workflows/ci.yml", "strategy:\n matrix:\n java-version: [17, 21]\n");
108
- expect(await detectedJava()).toBe(21);
109
- });
110
- // A pin is a floor, not a ceiling, and a Gradle declaration above it wins.
111
- test("is a floor, not an override", async () => {
112
- write("settings.gradle.kts", 'include(":app")\n');
113
- write("app/build.gradle.kts", "kotlin { jvmToolchain(21) }\n");
114
- write(".java-version", "17\n");
115
- expect(await detectedJava()).toBe(21);
116
- });
117
- test("says nothing when nothing pins anything", async () => {
118
- write("settings.gradle.kts", 'include(":app")\n');
119
- write("app/build.gradle.kts", "// nothing\n");
120
- expect(await detectedJava()).toBeUndefined();
121
- });
122
- // A version this scanner cannot make sense of must not become a number.
123
- test("ignores an unreadable pin", async () => {
124
- write("settings.gradle.kts", 'include(":app")\n');
125
- write(".java-version", "graalvm-community\n");
126
- expect(await detectedJava()).toBeUndefined();
127
- });
128
- });
129
- });
130
- //# sourceMappingURL=android-scanner-java.test.js.map