stim 1.20.2 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/README.md +88 -8
  2. package/dist/acquire-artifact-CD4lbiWE.mjs +153 -0
  3. package/dist/act-DHAw2A2S.mjs +2667 -0
  4. package/dist/activity-BzVfHSrY.mjs +1376 -0
  5. package/dist/{agent-device-usage-output-Dzgv6lgR.mjs → agent-device-usage-output-zh1vhbLp.mjs} +21 -65
  6. package/dist/{android-HqP1_vB_.mjs → android-BEJ8Jpl7.mjs} +2 -2
  7. package/dist/{android-DCKZrNvV.mjs → android-BLgbNqox.mjs} +128 -78
  8. package/dist/{android-Dlzxshgp.mjs → android-CV_GCELZ.mjs} +5 -5
  9. package/dist/{android-Mz_Inn3w.mjs → android-DUYkNF4u.mjs} +184 -102
  10. package/dist/{android-cas-Bl-cLJBk.mjs → android-cas-Ct5b1xCK.mjs} +7 -6
  11. package/dist/android-cas-compiler.mjs +2 -2
  12. package/dist/android-project-BCAAmMwz.mjs +12 -0
  13. package/dist/api.d.mts +740 -8
  14. package/dist/api.mjs +585 -1
  15. package/dist/{artifact-HSwkIWEQ.mjs → artifact-B8T3S5gi.mjs} +223 -201
  16. package/dist/{artifact-D3czlUvT.mjs → artifact-DAuZ-FNU.mjs} +158 -148
  17. package/dist/{browser-web-CA-F1GQo.mjs → browser-web-QQzVjz3O.mjs} +26 -24
  18. package/dist/budget-Bs6SxxzO.mjs +9154 -0
  19. package/dist/{build-DYDbfkk5.mjs → build-CoPzQRNw.mjs} +144 -96
  20. package/dist/build-cache-DmyR9Zzc.mjs +602 -0
  21. package/dist/build-plan-CaFskB7_.mjs +188 -0
  22. package/dist/{cache-manifest-XH-fvDUj.mjs → cache-manifest-DkkqguoK.mjs} +2 -2
  23. package/dist/cache-manifest.mjs +1 -1
  24. package/dist/{ccache-zdKiYQ3E.mjs → ccache-BJRZ9pG3.mjs} +10 -9
  25. package/dist/{cdp-Dq_ypAlJ.mjs → cdp-CWmIUMbw.mjs} +18 -5
  26. package/dist/{chrome-BnzZMqsR.mjs → chrome-B6tfCta1.mjs} +7 -4
  27. package/dist/{cli-CLP3diBm.mjs → cli-0DYf8QhQ.mjs} +20 -20
  28. package/dist/cli.mjs +1 -1
  29. package/dist/client-B7QVOlCr.d.mts +253 -0
  30. package/dist/client-UXD70ZbM.mjs +1406 -0
  31. package/dist/collector-run.d.mts +4 -40
  32. package/dist/collector-run.mjs +9 -8
  33. package/dist/{command-output-BTy8hZ0F.mjs → command-output-B1UrjZHL.mjs} +1 -1
  34. package/dist/config-CYcBF478.mjs +949 -0
  35. package/dist/{created-devices-Dzd5C2LF.mjs → created-devices-CqeBlrEn.mjs} +3 -3
  36. package/dist/{dependency-state-DG0p31-y.mjs → dependency-state-BbKQW83h.mjs} +20 -5
  37. package/dist/{detached-entry-B9C_zeQC.mjs → detached-entry-DFRyG1_o.mjs} +1 -1
  38. package/dist/{dev-client-DAWVIGBu.mjs → dev-client-UOeESKm6.mjs} +2 -2
  39. package/dist/device-DCxH7_By.mjs +1068 -0
  40. package/dist/{device-BECOiufl.mjs → device-ExJq8Ei7.mjs} +35 -35
  41. package/dist/{device-capacity-CBUAcRyQ.mjs → device-capacity-CMlqEcvw.mjs} +43 -13
  42. package/dist/device-host-worker.mjs +65 -61
  43. package/dist/{device-ios-COSi6oS1.mjs → device-ios-DRUeKaFV.mjs} +48 -45
  44. package/dist/{device-lease-run-Cw2M4z51.mjs → device-lease-run-C8raGFoP.mjs} +14 -26
  45. package/dist/{device-pool-Bf-pOhSw.mjs → device-pool-DMRpVX9a.mjs} +5 -5
  46. package/dist/doctor-BLHCYxzi.mjs +2 -0
  47. package/dist/{doctor-kfMBnUw6.mjs → doctor-DTvaDOda.mjs} +281 -317
  48. package/dist/{doctor-CB8oZKCk.mjs → doctor-Dhqebm0q.mjs} +183 -91
  49. package/dist/doctor-fingerprint.mjs +19 -0
  50. package/dist/{doctor-watchman-BRyV2adA.mjs → doctor-watchman-Cv1F10Kj.mjs} +40 -21
  51. package/dist/{eas-build-JyfqyHfC.mjs → eas-build-BomfRnFT.mjs} +53 -20
  52. package/dist/{build-plan-B7SZsc2N.mjs → eas-fallback-DJwZpy0c.mjs} +26 -208
  53. package/dist/{watchman-CPQFZLXY.mjs → eas-session-ledger-op6A54yi.mjs} +229 -11
  54. package/dist/{error-diagnostics-BR677IDM.mjs → error-diagnostics-Bf0rZvG9.mjs} +172 -82
  55. package/dist/exec-H20xSg2T.d.mts +65 -0
  56. package/dist/exec-_UbtCQcG.mjs +750 -0
  57. package/dist/gc-C-WwL0yi.mjs +3 -0
  58. package/dist/{gc-qWOMdnER.mjs → gc-_-dCXdyL.mjs} +584 -796
  59. package/dist/git-C3iTsJaZ.mjs +73 -0
  60. package/dist/{guide-G9cAbVAc.mjs → guide-Yqwt2bd6.mjs} +941 -269
  61. package/dist/{hosted-android-C3MHGld1.mjs → hosted-android-Bw-honsd.mjs} +8 -6
  62. package/dist/{hosted-client-ZEKpS9vw.mjs → hosted-client-DB_gBPfY.mjs} +34 -19
  63. package/dist/{hosted-ios-l-o3iM9J.mjs → hosted-ios-CUvOf4Vr.mjs} +1 -1
  64. package/dist/{hosted-logs-EzQM7-3Z.mjs → hosted-logs-DL_P5AdN.mjs} +77 -43
  65. package/dist/{hosted-macos-BACVAVqE.mjs → hosted-macos-QI141yKk.mjs} +21 -17
  66. package/dist/{hosted-native-A4s1QPXe.mjs → hosted-native-Ksyjgzq-.mjs} +30 -21
  67. package/dist/idle-BVeRGroT.d.mts +24 -0
  68. package/dist/{idle-shutdown-DtxhPTKe.mjs → idle-shutdown-DaKmZi0z.mjs} +11 -10
  69. package/dist/{ios-BwVCF7oA.mjs → ios-CQ68hG9s.mjs} +8 -8
  70. package/dist/{ios-RkW4pnQf.mjs → ios-CpByZy12.mjs} +140 -80
  71. package/dist/{ios-device-B5veSDDQ.mjs → ios-device-CXGP1bsD.mjs} +1 -1
  72. package/dist/{ios-device-D7pi2Sca.mjs → ios-device-CwFMehUS.mjs} +51 -26
  73. package/dist/{ios-project-K9hY_Jab.mjs → ios-project-WuwwBdvW.mjs} +13 -13
  74. package/dist/{ios-nOLJGVdy.mjs → ios-qNJt4dFm.mjs} +1 -1
  75. package/dist/ios-signing-DTTIChGs.mjs +489 -0
  76. package/dist/{ios-state-CBLe1xYw.mjs → ios-state-DvFX-K_l.mjs} +1 -1
  77. package/dist/{ios-Ce7bc7br.mjs → ios-ubFsBzwq.mjs} +129 -86
  78. package/dist/{js-swap-Bb3nsS07.mjs → js-swap-Cc1dttps.mjs} +53 -26
  79. package/dist/{launch-F4sOqAhB.mjs → launch-CD1yVc7U.mjs} +91 -90
  80. package/dist/{launch-C3qJ6Agb.mjs → launch-Zq2mOSDy.mjs} +82 -541
  81. package/dist/logs-BS00Anxf.mjs +352 -0
  82. package/dist/logs-CMm05HxN.mjs +255 -0
  83. package/dist/{macos-D7uDvO-z.mjs → macos-B65--pPd.mjs} +1 -1
  84. package/dist/{macos-Ch5VJmcS.mjs → macos-C-0qJ6zq.mjs} +225 -212
  85. package/dist/macos-run.mjs +1 -1
  86. package/dist/maintenance-run.mjs +122 -247
  87. package/dist/{metro-DnCEjCxs.mjs → metro-DEXpIhHC.mjs} +67 -12
  88. package/dist/{metro-gateway-CX9Xlkq2.mjs → metro-gateway-BMJNlj3E.mjs} +20 -12
  89. package/dist/{named-ports-4WopRPg-.mjs → named-ports-BWTzt6mu.mjs} +8 -63
  90. package/dist/native-android-JACyjTZs.mjs +844 -0
  91. package/dist/{native-gradle-inputs-BsLRrl7u.mjs → native-gradle-inputs-Bep9JcSF.mjs} +128 -140
  92. package/dist/native-inputs-TRTTTRxt.mjs +91 -0
  93. package/dist/native-run-DY_RLx3C.mjs +277 -0
  94. package/dist/{native-runtime-k8dTIrbK.mjs → native-runtime-Dg1Q7tfF.mjs} +9 -8
  95. package/dist/{native-xcode-inputs-CykopJdM.mjs → native-xcode-inputs-CB2iQeWq.mjs} +27 -18
  96. package/dist/{native-xcode-ios-Bbf30Gm0.mjs → native-xcode-ios-CXX39F7o.mjs} +96 -47
  97. package/dist/{ndjson-GOnbyvso.mjs → ndjson-CgE_o3Dl.mjs} +3 -3
  98. package/dist/offload-worker.d.mts +1 -46
  99. package/dist/offload-worker.mjs +197 -66
  100. package/dist/{ownership-DCtw_2IA.mjs → ownership-DEmM5vhh.mjs} +3 -3
  101. package/dist/{page-DRHy329N.mjs → page-CPaHeYqj.mjs} +7 -4
  102. package/dist/paths-BsJMoPP2.mjs +12 -0
  103. package/dist/paths-DQtTgsBf.mjs +42 -0
  104. package/dist/{placement-log-MOfPVgaM.mjs → placement-log-BqGbTa61.mjs} +5 -5
  105. package/dist/{plan-placement-V0TdzYXp.mjs → plan-placement-Bwj-IjY1.mjs} +6 -6
  106. package/dist/{ports-DdSUicVo.mjs → ports-D-MmCTdv.mjs} +3 -3
  107. package/dist/prebuild-uD_ipCxF.mjs +449 -0
  108. package/dist/{project-_phNIJfs.mjs → project-BZNjmW_8.mjs} +65 -37
  109. package/dist/{pull-request-CQ8sPbZa.mjs → pull-request-Lfetn8Kr.mjs} +2 -2
  110. package/dist/pull-request-zjCSAryH.d.mts +120 -0
  111. package/dist/pull-requests.d.mts +1 -119
  112. package/dist/pull-requests.mjs +1 -1
  113. package/dist/{react-native-android-CM1XRDwv.mjs → react-native-android-DuzH0cn3.mjs} +74 -48
  114. package/dist/{gradle-DSrXb6lG.mjs → react-native-build-rhk4smwQ.mjs} +292 -15
  115. package/dist/react-native-doctor-CQpuIMso.mjs +234 -0
  116. package/dist/{react-native-ios-Dhq_eiYQ.mjs → react-native-ios-Bhq1rJeV.mjs} +46 -28
  117. package/dist/{recordings-D0d5aQt0.mjs → recordings-DYteQSu4.mjs} +12 -9
  118. package/dist/{reload-C8JhxjSh.mjs → reload-CmTRFJaX.mjs} +93 -47
  119. package/dist/reload-DzjSl5P_.mjs +2 -0
  120. package/dist/{remote-BiR6aYjy.mjs → remote-ByYkXdGD.mjs} +15 -10
  121. package/dist/result-DNiS-tTP.mjs +434 -0
  122. package/dist/{run-BtPgpKks.mjs → run-D23HmJMs.mjs} +4 -5
  123. package/dist/selection-CSl9i5qU.mjs +619 -0
  124. package/dist/{server-bare-R2m_gsH8.mjs → server-bare-CxTrvDg8.mjs} +3 -4
  125. package/dist/{server-command-CTtCkmcQ.mjs → server-command-CtzloH3v.mjs} +14 -7
  126. package/dist/server-expo-C-90EhcG.mjs +2 -0
  127. package/dist/{server-expo-DsguMGUF.mjs → server-expo-DT_F_uVI.mjs} +50 -9
  128. package/dist/{settings-B717odTD.mjs → settings-CsJDEXgK.mjs} +234 -24
  129. package/dist/{settings-vk3mJGSm.d.mts → settings-DkdmlelE.d.mts} +6 -4
  130. package/dist/settings-T1gtc3bf.mjs +114 -0
  131. package/dist/settings-write-HyVZ8eQ8.mjs +359 -0
  132. package/dist/settings.schema.json +163 -16
  133. package/dist/{simslim-CCr3rE-A.mjs → simslim-Cgk17SXV.mjs} +14 -12
  134. package/dist/{slot-launch-DPt0m9Nd.mjs → slot-launch-DF8VfT64.mjs} +15 -20
  135. package/dist/{spawn-entry-Dcb7sDUz.mjs → spawn-entry-jw19m8Nl.mjs} +0 -1
  136. package/dist/stage-BIS0ydsV.mjs +183 -0
  137. package/dist/{start-BWqzODpb.mjs → start-7lpH7hmN.mjs} +63 -44
  138. package/dist/{start-TXeMmmO2.mjs → start-RChynRDp.mjs} +1 -1
  139. package/dist/{state-D1Icyjlu.mjs → state-C4ZtUisW.mjs} +40 -13
  140. package/dist/{state-CG_OFoaA.mjs → state-XMziexv2.mjs} +3 -2
  141. package/dist/{stats-BoY5sEPU.mjs → stats-53T7OTb9.mjs} +7 -13
  142. package/dist/stats-report-BFfMpWWF.mjs +16 -0
  143. package/dist/{status-WgFbkRzj.mjs → status-BL7jVyAB.mjs} +535 -447
  144. package/dist/status-CSi6tlRq.mjs +2 -0
  145. package/dist/{status-BTA7kKiQ.mjs → status-DqEUSSxs.mjs} +6 -4
  146. package/dist/{status-watch-C23ILtf9.mjs → status-watch-GDCfqpTE.mjs} +187 -22
  147. package/dist/status-worker.d.mts +1 -0
  148. package/dist/status-worker.mjs +19 -0
  149. package/dist/stim-desktop-C12we7lz.mjs +112 -0
  150. package/dist/{stop-DR6VoDIk.mjs → stop-Bk_1qiV6.mjs} +2 -2
  151. package/dist/{stop-BNmBMi1F.mjs → stop-CPzlM1L-.mjs} +138 -98
  152. package/dist/{stop-DPEhunlw.mjs → stop-D7h6jAXQ.mjs} +11 -10
  153. package/dist/supervisor-run.d.mts +8 -17
  154. package/dist/supervisor-run.mjs +63 -27
  155. package/dist/{support-DMTqj3Hm.mjs → support-67vraa1Q.mjs} +18 -11
  156. package/dist/{support-CwjbFs9H.mjs → support-Dlu37g6H.mjs} +12 -12
  157. package/dist/{swiftpm-macos-DRNVJWlb.mjs → swiftpm-macos-p8WZbxKU.mjs} +35 -24
  158. package/dist/toolchain-DhKwp9iI.mjs +2 -0
  159. package/dist/toolchain-Hp9sCpK4.mjs +873 -0
  160. package/dist/{trigger-CigAYjeL.mjs → trigger-BAahxUPq.mjs} +20 -5
  161. package/dist/trigger-Bf3uDcpv.mjs +2 -0
  162. package/dist/{warm-progress-BuY-Fvfn.mjs → warm-progress-BHX5r0Ei.mjs} +250 -156
  163. package/dist/{web-BDBMxDpx.mjs → web-CJmIj6AI.mjs} +18 -13
  164. package/dist/web-DknQETPs.mjs +2 -0
  165. package/dist/web-run.mjs +11 -12
  166. package/dist/windows-report.d.mts +1 -0
  167. package/dist/windows-report.mjs +18 -0
  168. package/dist/windows-report.ps1 +43 -0
  169. package/dist/workspace-process-lock-1_1OoVW5.mjs +57 -0
  170. package/dist/{workspace-state-DJt_MMvf.mjs → workspace-state-Cjuigeeu.mjs} +62 -58
  171. package/dist/{workspaces-C36s2jb9.mjs → workspaces-BccMFmGQ.mjs} +1188 -1079
  172. package/dist/worktree-CK2MpJW5.mjs +2 -0
  173. package/dist/{worktree-CgvJYJ-Q.mjs → worktree-DQ6Zi2Mv.mjs} +304 -53
  174. package/dist/xcode-Zlx3qjEs.mjs +896 -0
  175. package/package.json +7 -5
  176. package/shim/android-optimizations.gradle +7 -5
  177. package/dist/activity-BSV745Kz.mjs +0 -629
  178. package/dist/api-qvOzWyfO.mjs +0 -154
  179. package/dist/api-run.mjs +0 -294
  180. package/dist/app-install-BIKtMfPq.mjs +0 -896
  181. package/dist/artifact-lifecycle-DzPpBYvK.mjs +0 -30
  182. package/dist/budget-f7516Zk0.mjs +0 -4106
  183. package/dist/build-facts-DcLv2HSd.d.mts +0 -111
  184. package/dist/cancellation-C_22VQTH.mjs +0 -24
  185. package/dist/client-qQAaXSUs.mjs +0 -1771
  186. package/dist/config-BYDxlMY3.mjs +0 -562
  187. package/dist/device-DuiPJQSn.mjs +0 -290
  188. package/dist/device-lease-BX1sJQ2E.mjs +0 -1224
  189. package/dist/device-remote-xRT0Vmo9.mjs +0 -1272
  190. package/dist/eas-session-ledger-Cm0Gwq2F.mjs +0 -207
  191. package/dist/exec-DqKo9GKJ.mjs +0 -268
  192. package/dist/git-DDfFzkMm.mjs +0 -45
  193. package/dist/launch-verify-B6Q8hZP-.mjs +0 -428
  194. package/dist/logs-BGrEUaEs.mjs +0 -383
  195. package/dist/miss-reason-mKzZ4VvN.mjs +0 -238
  196. package/dist/native-android-D5qc3-_v.mjs +0 -226
  197. package/dist/ndjson-Du3j0AQ9.d.mts +0 -17
  198. package/dist/plan-C4TjdPsR.mjs +0 -260
  199. package/dist/prebuild-DYbucPXy.mjs +0 -212
  200. package/dist/preview-78a9kR_-.mjs +0 -1011
  201. package/dist/react-native-build-CtCccJtb.mjs +0 -239
  202. package/dist/react-native-doctor-CfRnFfjs.mjs +0 -78
  203. package/dist/remote-cache-OyOyVIS3.mjs +0 -526
  204. package/dist/result-CaJg5Iat.mjs +0 -186
  205. package/dist/server-expo-Bigriskl.mjs +0 -2
  206. package/dist/settings-BORNaaCO.mjs +0 -402
  207. package/dist/spawn-claims-DVS5RkMS.mjs +0 -72
  208. package/dist/stage-KNTQopqv.mjs +0 -157
  209. package/dist/stim-desktop-BzBN2Em2.mjs +0 -63
  210. package/dist/tailnet-Dh-qiYzG.mjs +0 -265
  211. package/dist/toolchain-BFkAcstd.mjs +0 -2
  212. package/dist/toolchain-DxSsNssu.mjs +0 -1657
  213. package/dist/trigger-9_USgmxz.mjs +0 -2
  214. package/dist/web-Dq-i3wzJ.mjs +0 -2
  215. package/dist/worktree-DpLdCHga.mjs +0 -2
  216. package/dist/{api-run.d.mts → doctor-fingerprint.d.mts} +0 -0
  217. package/dist/{errors-DzkMYh8Q.mjs → errors-ccaPc4ox.mjs} +2 -2
@@ -1,36 +1,66 @@
1
- import { t as getExecutor } from "./exec-DqKo9GKJ.mjs";
2
- import { r as register } from "./cache-manifest-XH-fvDUj.mjs";
3
- import { Dt as repoRoot, H as remoteIosSetting, Q as settingShapeErrors, W as resolveCacheProviderConfig, ht as gitCommonDir, q as resolveSettings } from "./settings-B717odTD.mjs";
4
- import { T as filesystemBuildCapability, b as buildCacheKey } from "./device-lease-BX1sJQ2E.mjs";
5
- import { g as sharedCompilationCache } from "./workspace-state-DJt_MMvf.mjs";
6
- import { f as NativeXcodeError, h as selectNativeXcodeProject, m as pbxString } from "./project-_phNIJfs.mjs";
7
- import { It as statsProjectKey } from "./budget-f7516Zk0.mjs";
8
- import { l as artifactCachePolicy, p as resolveOptimizations } from "./errors-DzkMYh8Q.mjs";
9
- import { a as nativeTransferRefusal } from "./client-qQAaXSUs.mjs";
10
- import { i as skippedMissReason, t as explainBuildMiss } from "./miss-reason-mKzZ4VvN.mjs";
11
- import { C as compilationCacheSettings, D as parseXcodeMajor, E as parseSwiftVersion, f as podsAreStale, g as runPodInstall, h as runCaptured, p as readPodState, r as iosToolchain, x as buildXcode, y as HEARTBEAT_INTERVAL_MS } from "./toolchain-DxSsNssu.mjs";
12
- import { n as planFlagRefusal, t as planCachedBuild } from "./build-plan-B7SZsc2N.mjs";
13
- import { a as deviceModelRefusal, h as resolveDeviceType, m as resolveConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-CwjbFs9H.mjs";
14
- import { t as IosRecipeRefusal } from "./ios-project-K9hY_Jab.mjs";
15
- import { d as gateProfileForDevice, i as DEFAULT_DEPS, r as iosProcessRuntime } from "./launch-C3qJ6Agb.mjs";
16
- import { a as nativeXcodeSources, i as nativeXcodePackages, n as nativeXcodeInputSnapshot, t as nativeXcodeHasPackages } from "./native-xcode-inputs-CykopJdM.mjs";
1
+ import { t as getExecutor } from "./exec-_UbtCQcG.mjs";
2
+ import { o as sharedCompilationCache } from "./paths-DQtTgsBf.mjs";
3
+ import { Ft as repoRoot, G as resolveCacheProviderConfig, It as repoRootAsync, U as remoteIosSetting, Y as resolveSettings, et as settingShapeErrors, vt as gitCommonDir } from "./settings-CsJDEXgK.mjs";
4
+ import { g as selectNativeXcodeProject, h as pbxString, p as NativeXcodeError } from "./project-BZNjmW_8.mjs";
5
+ import { r as register } from "./cache-manifest-DkkqguoK.mjs";
6
+ import { Y as statsProjectKey } from "./budget-Bs6SxxzO.mjs";
7
+ import { d as runCancellationSignal } from "./native-run-DY_RLx3C.mjs";
8
+ import { n as buildCacheKey, s as filesystemBuildCapability } from "./build-cache-DmyR9Zzc.mjs";
9
+ import { l as artifactCachePolicy, p as resolveOptimizations } from "./errors-ccaPc4ox.mjs";
10
+ import { a as buildXcode, l as parseSwiftVersion, r as HEARTBEAT_INTERVAL_MS, s as compilationCacheSettings, u as parseXcodeMajor } from "./xcode-Zlx3qjEs.mjs";
11
+ import { a as nativeTransferRefusal } from "./client-UXD70ZbM.mjs";
12
+ import { _ as runPodInstall, g as runCaptured, i as iosToolchainAsync, m as readPodState, p as podsAreStale } from "./toolchain-Hp9sCpK4.mjs";
13
+ import { a as deviceModelRefusal, h as resolveDeviceType, m as resolveConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-Dlu37g6H.mjs";
14
+ import { r as gateProfileForDevice } from "./ios-signing-DTTIChGs.mjs";
15
+ import { a as explainBuildMiss, c as skippedMissReason } from "./prebuild-uD_ipCxF.mjs";
16
+ import { n as planFlagRefusal, t as planCachedBuild } from "./build-plan-CaFskB7_.mjs";
17
+ import { t as IosRecipeRefusal } from "./ios-project-WuwwBdvW.mjs";
18
+ import { i as DEFAULT_DEPS, r as iosProcessRuntime } from "./launch-Zq2mOSDy.mjs";
19
+ import { a as nativeXcodeSources, i as nativeXcodePackages, n as nativeXcodeInputSnapshot, t as nativeXcodeHasPackages } from "./native-xcode-inputs-CB2iQeWq.mjs";
17
20
  import { existsSync } from "node:fs";
18
21
  import { join } from "node:path";
19
22
  //#region src/integrations/native-xcode-ios.ts
20
- function toolchain(sdk) {
23
+ async function toolchain(sdk, context) {
21
24
  const executor = getExecutor();
25
+ const env = context?.env ?? process.env;
26
+ const signal = context?.signal;
27
+ const childEnv = Object.fromEntries(Object.entries(env).filter((entry) => entry[1] !== void 0));
28
+ const omitEnv = Object.keys(process.env).filter((name) => env[name] === void 0);
29
+ const probe = async (file, args) => {
30
+ signal?.throwIfAborted();
31
+ let cancel;
32
+ try {
33
+ return await executor.runFileAsync(file, args, {
34
+ timeoutMs: 1e4,
35
+ env: childEnv,
36
+ omitEnv,
37
+ cwd: context?.cwd,
38
+ onSpawn(child) {
39
+ if (!signal) return;
40
+ cancel = () => {
41
+ child.kill("SIGKILL");
42
+ };
43
+ signal.addEventListener("abort", cancel, { once: true });
44
+ if (signal.aborted) cancel();
45
+ }
46
+ });
47
+ } finally {
48
+ if (cancel) signal?.removeEventListener("abort", cancel);
49
+ signal?.throwIfAborted();
50
+ }
51
+ };
22
52
  const identity = {
23
- xcode: executor.runFile("xcodebuild", ["-version"], { timeoutMs: 1e4 }),
24
- sdk: executor.runFile("xcodebuild", [
53
+ xcode: await probe("xcodebuild", ["-version"]),
54
+ sdk: await probe("xcodebuild", [
25
55
  "-version",
26
56
  "-sdk",
27
57
  sdk
28
- ], { timeoutMs: 1e4 }),
29
- swift: executor.runFile("xcrun", ["swift", "--version"], { timeoutMs: 1e4 }),
30
- clang: executor.runFile("xcrun", ["clang", "--version"], { timeoutMs: 1e4 }),
31
- developer: executor.runFile("xcode-select", ["-p"], { timeoutMs: 1e4 }),
32
- developerOverride: process.env.DEVELOPER_DIR ?? "",
33
- toolchains: process.env.TOOLCHAINS ?? ""
58
+ ]),
59
+ swift: await probe("xcrun", ["swift", "--version"]),
60
+ clang: await probe("xcrun", ["clang", "--version"]),
61
+ developer: await probe("xcode-select", ["-p"]),
62
+ developerOverride: env.DEVELOPER_DIR ?? "",
63
+ toolchains: env.TOOLCHAINS ?? ""
34
64
  };
35
65
  if (!identity.xcode.trim() || !identity.sdk.trim() || !identity.swift.trim() || !identity.clang.trim() || !identity.developer.trim()) throw new Error("An Xcode toolchain probe returned no identity.");
36
66
  return identity;
@@ -54,6 +84,7 @@ function settingsContext(root) {
54
84
  };
55
85
  }
56
86
  function nativeRecipe(root, context) {
87
+ const env = context.operation?.env ?? process.env;
57
88
  const configuration = context.configuration ?? "Debug";
58
89
  let selected = selectNativeXcodeProject(root, context.buildScheme, configuration);
59
90
  let tools = null;
@@ -76,7 +107,7 @@ function nativeRecipe(root, context) {
76
107
  throw new IosRecipeRefusal(refusal(error));
77
108
  }
78
109
  };
79
- const read = () => {
110
+ const read = async () => {
80
111
  if (!tools) return { cacheIneligible: ineligible ?? "Xcode toolchain identity is unavailable" };
81
112
  reselect();
82
113
  return nativeXcodeInputSnapshot(root, selected, {
@@ -84,17 +115,21 @@ function nativeRecipe(root, context) {
84
115
  architecture: context.target.keyArch,
85
116
  toolchain: tools,
86
117
  optimizations: context.optimizations
87
- }, repoRoot(root) ?? root);
118
+ }, env, await repoRootAsync(root, {
119
+ env,
120
+ signal: context.operation?.signal
121
+ }) ?? root, context.operation?.signal);
88
122
  };
89
123
  return {
90
124
  async identity() {
91
125
  try {
92
- tools = toolchain(context.target.sdk);
126
+ tools = await toolchain(context.target.sdk, context.operation);
93
127
  } catch (error) {
128
+ context.operation?.signal.throwIfAborted();
94
129
  ineligible = `Xcode toolchain identity is unavailable: ${error.message}`;
95
130
  return { cacheIneligible: ineligible };
96
131
  }
97
- const value = read();
132
+ const value = await read();
98
133
  if ("cacheIneligible" in value) {
99
134
  ineligible = value.cacheIneligible;
100
135
  return value;
@@ -102,7 +137,10 @@ function nativeRecipe(root, context) {
102
137
  snapshot = value;
103
138
  return identity(value);
104
139
  },
105
- cache: () => filesystemBuildCapability({ sources: snapshot ? nativeXcodeSources(snapshot) : null }),
140
+ cache: () => filesystemBuildCapability({
141
+ context: context.operation,
142
+ sources: snapshot ? nativeXcodeSources(snapshot) : null
143
+ }),
106
144
  async prepare(beforePrepare) {
107
145
  const pods = readPodState(root, root);
108
146
  const state = podsAreStale(pods.lockText, pods.manifestText);
@@ -110,6 +148,7 @@ function nativeRecipe(root, context) {
110
148
  beforePrepare();
111
149
  context.step("pods");
112
150
  const result = await runPodInstall(root, context.logWriter(), {
151
+ onHeartbeat: context.note,
113
152
  directory: root,
114
153
  estimateMs: context.estimates().podsMs
115
154
  });
@@ -139,7 +178,7 @@ function nativeRecipe(root, context) {
139
178
  ],
140
179
  cwd: root,
141
180
  env: {
142
- ...process.env,
181
+ ...env,
143
182
  NSUnbufferedIO: "YES",
144
183
  FORCE_COLOR: "0"
145
184
  },
@@ -161,7 +200,7 @@ function nativeRecipe(root, context) {
161
200
  }
162
201
  },
163
202
  async reconcile() {
164
- const current = snapshot && !mutations.length ? snapshot : read();
203
+ const current = snapshot && !mutations.length ? snapshot : await read();
165
204
  if ("cacheIneligible" in current) {
166
205
  ineligible = current.cacheIneligible;
167
206
  snapshot = null;
@@ -175,10 +214,11 @@ function nativeRecipe(root, context) {
175
214
  async validate() {
176
215
  if (!snapshot) return null;
177
216
  try {
178
- tools = toolchain(context.target.sdk);
179
- const after = read();
217
+ tools = await toolchain(context.target.sdk, context.operation);
218
+ const after = await read();
180
219
  return !("cacheIneligible" in after) && after.hash === snapshot.hash ? identity(snapshot) : null;
181
220
  } catch {
221
+ context.operation?.signal.throwIfAborted();
182
222
  return null;
183
223
  }
184
224
  },
@@ -191,10 +231,12 @@ function nativeRecipe(root, context) {
191
231
  },
192
232
  async materialize(path) {
193
233
  if (context.device) {
194
- const gate = gateProfileForDevice({
234
+ const gate = await gateProfileForDevice({
195
235
  appPath: path,
196
236
  udid: context.device.udid,
197
- configuration
237
+ configuration,
238
+ env: context.operation?.env,
239
+ signal: runCancellationSignal(context.operation) ?? context.operation?.signal
198
240
  });
199
241
  if (!gate.ok) throw new IosRecipeRefusal({
200
242
  code: gate.code,
@@ -205,6 +247,7 @@ function nativeRecipe(root, context) {
205
247
  return path;
206
248
  },
207
249
  compile: () => buildXcode({
250
+ context: context.operation,
208
251
  root,
209
252
  project: selected.container,
210
253
  scheme: selected.scheme,
@@ -219,6 +262,7 @@ function nativeRecipe(root, context) {
219
262
  arch: context.target.arch,
220
263
  logWriter: context.logWriter(),
221
264
  estimateMs: context.estimates().coldBuildMs,
265
+ onHeartbeat: context.note,
222
266
  extraArgs: nativeXcodeHasPackages(selected) ? [
223
267
  "-clonedSourcePackagesDirPath",
224
268
  nativeXcodePackages(root),
@@ -232,7 +276,7 @@ function nativeRecipe(root, context) {
232
276
  casPath,
233
277
  xcodeMajor: parseXcodeMajor(tools?.xcode),
234
278
  swiftVersion: parseSwiftVersion(tools?.swift),
235
- swiftCacheCompatible: (!process.env.SWIFT_ENABLE_EXPLICIT_MODULES || process.env.SWIFT_ENABLE_EXPLICIT_MODULES === "YES") && !selected.projects.some((project) => [...project.objects.values()].some((entry) => {
279
+ swiftCacheCompatible: (!env.SWIFT_ENABLE_EXPLICIT_MODULES || env.SWIFT_ENABLE_EXPLICIT_MODULES === "YES") && !selected.projects.some((project) => [...project.objects.values()].some((entry) => {
236
280
  if (entry.isa !== "XCBuildConfiguration" || pbxString(entry.name) !== configuration) return false;
237
281
  const targetSettings = entry.buildSettings;
238
282
  const explicitModules = pbxString(targetSettings?.SWIFT_ENABLE_EXPLICIT_MODULES);
@@ -242,6 +286,7 @@ function nativeRecipe(root, context) {
242
286
  });
243
287
  if (settings.length && context.optimizations.compilationCache) register({
244
288
  dir: casPath,
289
+ registeredBy: context.operation?.cwd ?? root,
245
290
  name: "Xcode compilation cache",
246
291
  prune: "atomic",
247
292
  note: "shared Xcode compilation cache"
@@ -270,18 +315,21 @@ function nativeRecipe(root, context) {
270
315
  untrackedLine: () => null,
271
316
  legacyCache: null,
272
317
  offload: {
273
- context: () => {
318
+ context: async () => {
274
319
  const runtime = context.target.sdk === "iphonesimulator" ? context.target.offloadRuntime() : null;
275
320
  return {
276
321
  runtime,
277
- unsupported: context.target.offloadRefusal ?? (context.device ? "Physical native Xcode builds build here" : !context.cache.write ? "the build cache is off" : !runtime ? "no simulator runtime is available for worker selection" : !snapshot ? "the native inputs have no verified identity" : nativeTransferRefusal(repoRoot(root) ?? root, snapshot))
322
+ unsupported: context.target.offloadRefusal ?? (context.device ? "Physical native Xcode builds build here" : !context.cache.write ? "the build cache is off" : !runtime ? "no simulator runtime is available for worker selection" : !snapshot ? "the native inputs have no verified identity" : await nativeTransferRefusal(await repoRootAsync(root, {
323
+ env,
324
+ signal: context.operation?.signal
325
+ }) ?? root, snapshot, runCancellationSignal(context.operation) ?? context.operation?.signal))
278
326
  };
279
327
  },
280
- target: (runtime) => ({
328
+ target: async (runtime) => ({
281
329
  platform: "ios",
282
330
  native: "xcode",
283
331
  local: {
284
- ...iosToolchain(root, "xcode"),
332
+ ...await iosToolchainAsync(root, "xcode"),
285
333
  ...context.target.hostedArchitecture ? { arch: context.target.hostedArchitecture === "x86_64" ? "x64" : "arm64" } : {}
286
334
  },
287
335
  runtime,
@@ -305,13 +353,13 @@ function nativeRecipe(root, context) {
305
353
  };
306
354
  },
307
355
  unchanged: async () => {
308
- const current = read();
356
+ const current = await read();
309
357
  return snapshot !== null && !("cacheIneligible" in current) && current.hash === snapshot.hash;
310
358
  }
311
359
  }
312
360
  };
313
361
  }
314
- async function planNativeXcode(root, options) {
362
+ async function planNativeXcode(root, options, operation) {
315
363
  if (options.easProfile !== void 0) return { refusal: planFlagRefusal("--eas-profile") };
316
364
  try {
317
365
  const context = settingsContext(root);
@@ -342,12 +390,12 @@ async function planNativeXcode(root, options) {
342
390
  hostArch: process.arch === "arm64" ? "arm64" : "x86_64",
343
391
  configuration
344
392
  });
345
- const snapshot = nativeXcodeInputSnapshot(root, selection, {
393
+ const snapshot = await nativeXcodeInputSnapshot(root, selection, {
346
394
  sdk: "iphonesimulator",
347
395
  architecture,
348
- toolchain: toolchain("iphonesimulator"),
396
+ toolchain: await toolchain("iphonesimulator", operation),
349
397
  optimizations: optimizations.ios
350
- }, context.repoRoot ?? root);
398
+ }, operation?.env ?? process.env, context.repoRoot ?? root, operation?.signal);
351
399
  if ("cacheIneligible" in snapshot) throw new NativeXcodeError(`No reusable native artifact can be predicted: ${snapshot.cacheIneligible}.`, "Run stim ios without --plan; it can prepare dependencies and build locally without artifact caching.");
352
400
  const key = buildCacheKey("ios", snapshot.hash, {
353
401
  configuration,
@@ -377,6 +425,7 @@ async function planNativeXcode(root, options) {
377
425
  note: (line) => console.error(line)
378
426
  });
379
427
  } catch (error) {
428
+ operation?.signal.throwIfAborted();
380
429
  return { refusal: refusal(error) };
381
430
  }
382
431
  }
@@ -390,7 +439,7 @@ function nativeXcodeIosProject(root) {
390
439
  ],
391
440
  eas: false,
392
441
  runtimeKind: () => "process",
393
- plan: (options) => planNativeXcode(root, options),
442
+ plan: (options, _resolved, operation) => planNativeXcode(root, options, operation),
394
443
  bundleId: () => null,
395
444
  schemeProblem(scheme, configuration) {
396
445
  try {
@@ -1,7 +1,7 @@
1
+ import { ensurePrivateDir, rotateLog } from "@stim-cli/core";
2
+ import { LEVELS as LEVELS$1, SOURCES as SOURCES$1, levelRank, parseNdjsonLine, parseNdjsonText, readNdjsonGenerations as readNdjsonGenerations$1, runId } from "@stim-cli/core/state";
1
3
  import { dirname } from "path";
2
- import { LEVELS, SOURCES, levelRank, parseNdjsonLine, parseNdjsonText, readNdjsonGenerations as readNdjsonGenerations$1, runId } from "@stim-cli/core/state";
3
4
  import { closeSync, openSync, writeSync } from "fs";
4
- import { ensurePrivateDir, rotateLog } from "@stim-cli/core";
5
5
  //#region src/ndjson.ts
6
6
  const ROTATE_CHECK_MS = 1e3;
7
7
  function formatNdjsonLine(record) {
@@ -115,4 +115,4 @@ function stamp(record) {
115
115
  };
116
116
  }
117
117
  //#endregion
118
- export { parseNdjsonLine as a, levelRank as i, SOURCES as n, parseNdjsonText as o, createNdjsonWriter as r, readNdjsonGenerations$1 as s, LEVELS as t };
118
+ export { parseNdjsonLine as a, levelRank as i, SOURCES$1 as n, parseNdjsonText as o, createNdjsonWriter as r, readNdjsonGenerations$1 as s, LEVELS$1 as t };
@@ -1,50 +1,5 @@
1
- import { n as CcacheActivity, r as CompilationCacheActivity } from "./build-facts-DcLv2HSd.mjs";
2
- import "./settings-vk3mJGSm.mjs";
3
- import "./ndjson-Du3j0AQ9.mjs";
4
- import "@stim-cli/core/state";
5
- import { readFileSync } from "fs";
6
- import "@expo/fingerprint";
1
+ import { l as CcacheActivity, s as Optimizations, t as AndroidBuildOptions, u as CompilationCacheActivity } from "./client-B7QVOlCr.mjs";
7
2
  import { BuildStartParams } from "@stim-cli/core/protocol";
8
- //#region src/optimizations.d.ts
9
- interface Optimizations {
10
- buildCache: boolean;
11
- remoteBuildCache: boolean;
12
- releaseBundleSwap: boolean;
13
- metroSharedCache: boolean;
14
- metroWarmup: boolean;
15
- ios: {
16
- compilationCache: boolean;
17
- swiftCompilationCache: boolean | null;
18
- prefixMapping: boolean;
19
- };
20
- android: {
21
- compilerCache: "ccache" | "cas" | "none";
22
- casToolchain: string | null;
23
- compilerCacheFallback: CompilerCacheFallback | null;
24
- pch: "auto" | "on" | "off";
25
- gradleBuildCache: boolean;
26
- targetAbiOnly: boolean;
27
- };
28
- }
29
- interface CompilerCacheFallback {
30
- key: string;
31
- reason: string;
32
- fromEnvironment: boolean;
33
- manifest: string | null;
34
- }
35
- //#endregion
36
- //#region src/offload/client.d.ts
37
- /** The Gradle choices that shape the APK, so the machine builds what this Mac's cache key describes. */
38
- interface AndroidBuildOptions {
39
- variant: string | null;
40
- abi: string | null;
41
- gradleBuildCache: boolean;
42
- pch: "auto" | "on" | "off";
43
- compilerCache: "ccache" | "none";
44
- gradleRoot?: string | null;
45
- module?: string | null;
46
- }
47
- //#endregion
48
3
  //#region src/offload/worker.d.ts
49
4
  /** One entry of the source transfer: a visible file of the checkout, or a native build's file or directory input. */
50
5
  interface ManifestEntry {