stim 1.20.2 → 1.22.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.
- package/README.md +141 -8
- package/dist/acquire-artifact-Co2k4f7O.mjs +171 -0
- package/dist/act-DsuqEkiM.mjs +2801 -0
- package/dist/activity-CMLmzp7o.mjs +1397 -0
- package/dist/{agent-device-usage-output-Dzgv6lgR.mjs → agent-device-usage-output-DUFaTMdd.mjs} +23 -67
- package/dist/{android-DCKZrNvV.mjs → android-ByRMUoiJ.mjs} +157 -93
- package/dist/{android-Mz_Inn3w.mjs → android-C7sVmyI9.mjs} +299 -116
- package/dist/{android-Dlzxshgp.mjs → android-DGkNqa_c.mjs} +5 -5
- package/dist/{android-HqP1_vB_.mjs → android-DR5lZ2Az.mjs} +2 -2
- package/dist/android-cas-compiler.mjs +2 -2
- package/dist/{android-cas-Bl-cLJBk.mjs → android-cas-ngferVq2.mjs} +7 -6
- package/dist/android-project-BCAAmMwz.mjs +12 -0
- package/dist/android-project-DVWyCbWU.d.mts +391 -0
- package/dist/api.d.mts +810 -64
- package/dist/api.mjs +782 -1
- package/dist/{artifact-HSwkIWEQ.mjs → artifact-8EY8SAPw.mjs} +240 -213
- package/dist/{artifact-D3czlUvT.mjs → artifact-DJPy518Y.mjs} +203 -164
- package/dist/artifact-platform-CXcmX_j3.mjs +27 -0
- package/dist/{browser-web-CA-F1GQo.mjs → browser-web-Bcv99PBM.mjs} +194 -64
- package/dist/budget-Cvwn54qV.mjs +9285 -0
- package/dist/{build-DYDbfkk5.mjs → build-CabC3G23.mjs} +153 -98
- package/dist/build-cache-Dv7RN200.mjs +602 -0
- package/dist/build-plan-DUC8Ka9y.mjs +248 -0
- package/dist/{cache-manifest-XH-fvDUj.mjs → cache-manifest-DSeQjt-Q.mjs} +2 -2
- package/dist/cache-manifest.mjs +1 -1
- package/dist/{ccache-zdKiYQ3E.mjs → ccache-Btwc36-I.mjs} +10 -9
- package/dist/{cdp-Dq_ypAlJ.mjs → cdp-3fwICjzi.mjs} +18 -5
- package/dist/{chrome-BnzZMqsR.mjs → chrome-Bbw689-6.mjs} +7 -4
- package/dist/{cli-CLP3diBm.mjs → cli-CHZa9Lvk.mjs} +20 -20
- package/dist/cli.mjs +1 -1
- package/dist/client-OyRoEuSr.mjs +1577 -0
- package/dist/collector-run.d.mts +4 -40
- package/dist/collector-run.mjs +9 -8
- package/dist/{command-output-BTy8hZ0F.mjs → command-output-gwpm28fu.mjs} +1 -1
- package/dist/config-DlrsduwG.mjs +955 -0
- package/dist/{created-devices-Dzd5C2LF.mjs → created-devices-x9rN6bhs.mjs} +14 -4
- package/dist/{dependency-state-DG0p31-y.mjs → dependency-state-1I9KZT1Y.mjs} +20 -5
- package/dist/{detached-entry-B9C_zeQC.mjs → detached-entry-BwNEtIrP.mjs} +1 -1
- package/dist/{dev-client-DAWVIGBu.mjs → dev-client-BSDR5h3F.mjs} +2 -2
- package/dist/{device-BECOiufl.mjs → device-B-L3Fbxy.mjs} +91 -34
- package/dist/device-DklWZLqb.mjs +1068 -0
- package/dist/{device-capacity-CBUAcRyQ.mjs → device-capacity-DK5_EwRS.mjs} +42 -13
- package/dist/device-host-worker.mjs +76 -79
- package/dist/{device-ios-COSi6oS1.mjs → device-ios-DoB6KFCO.mjs} +77 -51
- package/dist/{device-lease-run-Cw2M4z51.mjs → device-lease-run-xJPQ_QQG.mjs} +14 -26
- package/dist/{device-pool-Bf-pOhSw.mjs → device-pool-BMkdsefq.mjs} +5 -5
- package/dist/{doctor-kfMBnUw6.mjs → doctor-Bo7BXLux.mjs} +271 -320
- package/dist/{doctor-CB8oZKCk.mjs → doctor-D5_EzwfA.mjs} +186 -91
- package/dist/doctor-fingerprint-DZLoYFVb.mjs +16 -0
- package/dist/doctor-fingerprint.mjs +19 -0
- package/dist/doctor-thjWAV0z.mjs +2 -0
- package/dist/{doctor-watchman-BRyV2adA.mjs → doctor-watchman-N2wDotwQ.mjs} +40 -21
- package/dist/{eas-build-JyfqyHfC.mjs → eas-build-CwknaQYj.mjs} +53 -20
- package/dist/{build-plan-B7SZsc2N.mjs → eas-fallback-CSgAulr5.mjs} +41 -214
- package/dist/{watchman-CPQFZLXY.mjs → eas-session-ledger-DlY_serQ.mjs} +230 -11
- package/dist/{error-diagnostics-BR677IDM.mjs → error-diagnostics-DBWO2rxE.mjs} +172 -82
- package/dist/exec-DEoAhcze.mjs +858 -0
- package/dist/exec-DnYc4HGH.d.mts +78 -0
- package/dist/{gc-qWOMdnER.mjs → gc-CXxN-4SE.mjs} +1091 -1029
- package/dist/gc-DnNDQyaP.mjs +3 -0
- package/dist/{guide-G9cAbVAc.mjs → guide-Br0LEfKy.mjs} +1165 -297
- package/dist/{hosted-android-C3MHGld1.mjs → hosted-android-B-9f-jkd.mjs} +10 -8
- package/dist/{hosted-client-ZEKpS9vw.mjs → hosted-client-DZAPrcro.mjs} +34 -19
- package/dist/{hosted-ios-l-o3iM9J.mjs → hosted-ios-CsCS21hn.mjs} +1 -1
- package/dist/{hosted-logs-EzQM7-3Z.mjs → hosted-logs-FIRx9X2f.mjs} +77 -43
- package/dist/{hosted-macos-BACVAVqE.mjs → hosted-macos-_awYSpfv.mjs} +35 -22
- package/dist/{hosted-native-A4s1QPXe.mjs → hosted-native-BdzE668-.mjs} +49 -27
- package/dist/idle-C4cZ757K.d.mts +24 -0
- package/dist/{idle-shutdown-DtxhPTKe.mjs → idle-shutdown-DDg3SdvY.mjs} +11 -10
- package/dist/ios-CDvlmUs7.d.mts +24 -0
- package/dist/{ios-BwVCF7oA.mjs → ios-Ds1clbIt.mjs} +8 -8
- package/dist/{ios-device-D7pi2Sca.mjs → ios-device--h_-8ENa.mjs} +51 -26
- package/dist/{ios-device-B5veSDDQ.mjs → ios-device-BXZ0c7Kb.mjs} +1 -1
- package/dist/{ios-RkW4pnQf.mjs → ios-hcBpnEGk.mjs} +200 -93
- package/dist/{ios-Ce7bc7br.mjs → ios-pm4nL6By.mjs} +160 -108
- package/dist/{ios-project-K9hY_Jab.mjs → ios-project-CZhKODF3.mjs} +13 -13
- package/dist/ios-signing-BtAffm0A.mjs +489 -0
- package/dist/{ios-state-CBLe1xYw.mjs → ios-state-Dtw5K2aI.mjs} +1 -1
- package/dist/{ios-nOLJGVdy.mjs → ios-xtlRHaeB.mjs} +1 -1
- package/dist/{js-swap-Bb3nsS07.mjs → js-swap-Bwhh4S7V.mjs} +30 -25
- package/dist/{launch-C3qJ6Agb.mjs → launch-BjxemNpK.mjs} +85 -543
- package/dist/{launch-F4sOqAhB.mjs → launch-CCzXlc8r.mjs} +91 -90
- package/dist/logs-BfwwadsZ.mjs +479 -0
- package/dist/logs-jTS_lHSo.mjs +248 -0
- package/dist/{macos-D7uDvO-z.mjs → macos-DVlSSyUg.mjs} +1 -1
- package/dist/macos-NfV2D7dO.mjs +694 -0
- package/dist/macos-run.mjs +1 -1
- package/dist/maintenance-run.mjs +123 -248
- package/dist/{metro-DnCEjCxs.mjs → metro-DiXtA3Ty.mjs} +107 -30
- package/dist/metro-gateway-CKZqKqx7.mjs +209 -0
- package/dist/{named-ports-4WopRPg-.mjs → named-ports-DkEzOfzO.mjs} +42 -90
- package/dist/native-android-CqgnOgsT.mjs +645 -0
- package/dist/native-gradle-artifact-inputs-DHFnmrVf.mjs +270 -0
- package/dist/native-gradle-inputs-Dnh84Zbd.mjs +211 -0
- package/dist/native-inputs-TRTTTRxt.mjs +91 -0
- package/dist/native-run-NwUuxbkg.mjs +276 -0
- package/dist/{native-runtime-k8dTIrbK.mjs → native-runtime-B7KIafpM.mjs} +11 -9
- package/dist/native-source-Y0yLhFyQ.mjs +133 -0
- package/dist/{native-xcode-inputs-CykopJdM.mjs → native-xcode-inputs-D_VOfFL7.mjs} +26 -18
- package/dist/{native-xcode-ios-Bbf30Gm0.mjs → native-xcode-ios-BYDOHWLN.mjs} +104 -60
- package/dist/{ndjson-GOnbyvso.mjs → ndjson-CgE_o3Dl.mjs} +3 -3
- package/dist/offload-worker.d.mts +59 -41
- package/dist/offload-worker.mjs +478 -115
- package/dist/operation-exec-BW0em61G.mjs +171 -0
- package/dist/{ownership-DCtw_2IA.mjs → ownership-C5fo5Edb.mjs} +3 -3
- package/dist/{page-DRHy329N.mjs → page-DBL2PiUU.mjs} +12 -5
- package/dist/paths-BsJMoPP2.mjs +12 -0
- package/dist/paths-DQtTgsBf.mjs +42 -0
- package/dist/{placement-log-MOfPVgaM.mjs → placement-log-BnGgJRRZ.mjs} +5 -5
- package/dist/{plan-placement-V0TdzYXp.mjs → plan-placement-DIsMtN-d.mjs} +15 -11
- package/dist/{ports-DdSUicVo.mjs → ports-Cy1RkmuQ.mjs} +3 -3
- package/dist/prebuild-D4JoEAEs.mjs +484 -0
- package/dist/{project-_phNIJfs.mjs → project-wM_XFTvE.mjs} +65 -37
- package/dist/{pull-request-CQ8sPbZa.mjs → pull-request-W1IuLXDt.mjs} +102 -20
- package/dist/pull-request-eODyIqZF.d.mts +124 -0
- package/dist/pull-requests.d.mts +2 -120
- package/dist/pull-requests.mjs +2 -2
- package/dist/{react-native-android-CM1XRDwv.mjs → react-native-android-6OZ7MSM7.mjs} +121 -72
- package/dist/{gradle-DSrXb6lG.mjs → react-native-build-Dvd8hC21.mjs} +292 -15
- package/dist/react-native-doctor-DsoSF1Y9.mjs +234 -0
- package/dist/{react-native-ios-Dhq_eiYQ.mjs → react-native-ios-4u1Rn-GR.mjs} +71 -39
- package/dist/{recordings-D0d5aQt0.mjs → recordings-CQmfzAh7.mjs} +12 -9
- package/dist/registration-BcRgF6Ox.mjs +51 -0
- package/dist/{reload-C8JhxjSh.mjs → reload-BzkYabB-.mjs} +94 -47
- package/dist/reload-D7AVlb8N.mjs +2 -0
- package/dist/{remote-BiR6aYjy.mjs → remote-DjGDmlTZ.mjs} +26 -18
- package/dist/result-D2Ykz_iD.mjs +435 -0
- package/dist/{run-BtPgpKks.mjs → run-DidHghD1.mjs} +5 -5
- package/dist/selection-DSMbWEX2.mjs +620 -0
- package/dist/{server-bare-R2m_gsH8.mjs → server-bare-CafzuyFB.mjs} +3 -4
- package/dist/{server-command-CTtCkmcQ.mjs → server-command-C6QjeupS.mjs} +14 -7
- package/dist/{server-expo-DsguMGUF.mjs → server-expo-CrjB29pq.mjs} +54 -11
- package/dist/server-expo-D58c9L0M.mjs +2 -0
- package/dist/{settings-B717odTD.mjs → settings-C7O8A6ZI.mjs} +309 -119
- package/dist/settings-DpR-1Wnn.mjs +114 -0
- package/dist/settings-write-CzD60rOD.mjs +360 -0
- package/dist/settings.schema.json +176 -16
- package/dist/{simslim-CCr3rE-A.mjs → simslim-BNckWpXi.mjs} +14 -12
- package/dist/{slot-launch-DPt0m9Nd.mjs → slot-launch-CbfmNgM6.mjs} +15 -20
- package/dist/{spawn-entry-Dcb7sDUz.mjs → spawn-entry-jw19m8Nl.mjs} +0 -1
- package/dist/stage-Bps5oius.mjs +200 -0
- package/dist/{start-TXeMmmO2.mjs → start-Br-oxqMD.mjs} +1 -1
- package/dist/start-EojN4WFz.mjs +1364 -0
- package/dist/{state-D1Icyjlu.mjs → state--smjFSTL.mjs} +55 -13
- package/dist/{state-CG_OFoaA.mjs → state-08I3hw3_.mjs} +3 -2
- package/dist/{stats-BoY5sEPU.mjs → stats-D3GerlFW.mjs} +7 -13
- package/dist/stats-report-BzaPrRm6.mjs +16 -0
- package/dist/{status-BTA7kKiQ.mjs → status-BRROykC8.mjs} +7 -5
- package/dist/status-EvrK72L2.mjs +2 -0
- package/dist/{status-WgFbkRzj.mjs → status-WBDajew2.mjs} +554 -452
- package/dist/{status-watch-C23ILtf9.mjs → status-watch-Bg_u-pwR.mjs} +222 -25
- package/dist/status-worker.d.mts +1 -0
- package/dist/status-worker.mjs +19 -0
- package/dist/stim-desktop-D5OGpYZM.mjs +112 -0
- package/dist/{stop-DR6VoDIk.mjs → stop-DTZ9uTw3.mjs} +2 -2
- package/dist/{stop-DPEhunlw.mjs → stop-Dky10AEJ.mjs} +33 -23
- package/dist/{stop-BNmBMi1F.mjs → stop-Mv6W9FAk.mjs} +137 -98
- package/dist/supervisor-run.d.mts +8 -17
- package/dist/supervisor-run.mjs +56 -28
- package/dist/{support-CwjbFs9H.mjs → support-CNioewsd.mjs} +14 -14
- package/dist/{support-DMTqj3Hm.mjs → support-yUiOjnVY.mjs} +20 -13
- package/dist/swiftpm-artifact-inputs-DFcGsXDP.mjs +153 -0
- package/dist/swiftpm-macos-BIak-Rxv.mjs +532 -0
- package/dist/toolchain-BY8X8HXx.mjs +2 -0
- package/dist/toolchain-DpJMHq0n.mjs +876 -0
- package/dist/{trigger-CigAYjeL.mjs → trigger-Cbyc41d_.mjs} +21 -6
- package/dist/trigger-yb_nFzPF.mjs +2 -0
- package/dist/{warm-progress-BuY-Fvfn.mjs → warm-progress-CA3TgT3-.mjs} +263 -156
- package/dist/web-CZ07gd77.mjs +2 -0
- package/dist/{web-BDBMxDpx.mjs → web-DKx6yoFA.mjs} +20 -14
- package/dist/web-run.mjs +13 -12
- package/dist/windows-report.d.mts +1 -0
- package/dist/windows-report.mjs +18 -0
- package/dist/windows-report.ps1 +43 -0
- package/dist/{workspace-state-DJt_MMvf.mjs → workspace-state-U08dEzhG.mjs} +62 -58
- package/dist/{workspaces-C36s2jb9.mjs → workspaces-CpANmBlq.mjs} +1723 -1286
- package/dist/{worktree-CgvJYJ-Q.mjs → worktree-CHecZ4Oq.mjs} +1097 -547
- package/dist/worktree-ZqZVjD9K.mjs +2 -0
- package/dist/xcode-BXn9-xYx.mjs +896 -0
- package/package.json +7 -5
- package/shim/android-audio/Main.java +24 -0
- package/shim/android-audio/README.md +17 -0
- package/shim/android-audio.jar +0 -0
- package/shim/android-optimizations.gradle +7 -5
- package/dist/activity-BSV745Kz.mjs +0 -629
- package/dist/api-qvOzWyfO.mjs +0 -154
- package/dist/api-run.mjs +0 -294
- package/dist/app-install-BIKtMfPq.mjs +0 -896
- package/dist/artifact-lifecycle-DzPpBYvK.mjs +0 -30
- package/dist/budget-f7516Zk0.mjs +0 -4106
- package/dist/build-facts-DcLv2HSd.d.mts +0 -111
- package/dist/cancellation-C_22VQTH.mjs +0 -24
- package/dist/client-qQAaXSUs.mjs +0 -1771
- package/dist/config-BYDxlMY3.mjs +0 -562
- package/dist/device-DuiPJQSn.mjs +0 -290
- package/dist/device-lease-BX1sJQ2E.mjs +0 -1224
- package/dist/device-remote-xRT0Vmo9.mjs +0 -1272
- package/dist/eas-session-ledger-Cm0Gwq2F.mjs +0 -207
- package/dist/exec-DqKo9GKJ.mjs +0 -268
- package/dist/git-DDfFzkMm.mjs +0 -45
- package/dist/launch-verify-B6Q8hZP-.mjs +0 -428
- package/dist/logs-BGrEUaEs.mjs +0 -383
- package/dist/macos-Ch5VJmcS.mjs +0 -584
- package/dist/metro-gateway-CX9Xlkq2.mjs +0 -103
- package/dist/miss-reason-mKzZ4VvN.mjs +0 -238
- package/dist/native-android-D5qc3-_v.mjs +0 -226
- package/dist/native-gradle-inputs-BsLRrl7u.mjs +0 -349
- package/dist/ndjson-Du3j0AQ9.d.mts +0 -17
- package/dist/plan-C4TjdPsR.mjs +0 -260
- package/dist/prebuild-DYbucPXy.mjs +0 -212
- package/dist/preview-78a9kR_-.mjs +0 -1011
- package/dist/react-native-build-CtCccJtb.mjs +0 -239
- package/dist/react-native-doctor-CfRnFfjs.mjs +0 -78
- package/dist/remote-cache-OyOyVIS3.mjs +0 -526
- package/dist/result-CaJg5Iat.mjs +0 -186
- package/dist/server-expo-Bigriskl.mjs +0 -2
- package/dist/settings-BORNaaCO.mjs +0 -402
- package/dist/settings-vk3mJGSm.d.mts +0 -13
- package/dist/spawn-claims-DVS5RkMS.mjs +0 -72
- package/dist/stage-KNTQopqv.mjs +0 -157
- package/dist/start-BWqzODpb.mjs +0 -1116
- package/dist/stim-desktop-BzBN2Em2.mjs +0 -63
- package/dist/swiftpm-macos-DRNVJWlb.mjs +0 -119
- package/dist/tailnet-Dh-qiYzG.mjs +0 -265
- package/dist/toolchain-BFkAcstd.mjs +0 -2
- package/dist/toolchain-DxSsNssu.mjs +0 -1657
- package/dist/trigger-9_USgmxz.mjs +0 -2
- package/dist/web-Dq-i3wzJ.mjs +0 -2
- package/dist/worktree-DpLdCHga.mjs +0 -2
- package/dist/{api-run.d.mts → doctor-fingerprint.d.mts} +0 -0
- package/dist/{errors-DzkMYh8Q.mjs → errors-ccaPc4ox.mjs} +2 -2
|
@@ -1,36 +1,66 @@
|
|
|
1
|
-
import { t as getExecutor } from "./exec-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import { a as deviceModelRefusal, h as resolveDeviceType, m as resolveConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
1
|
+
import { t as getExecutor } from "./exec-DEoAhcze.mjs";
|
|
2
|
+
import { o as sharedCompilationCache } from "./paths-DQtTgsBf.mjs";
|
|
3
|
+
import { G as resolveCacheProviderConfig, Nt as repoRootAsync, U as remoteIosSetting, et as settingShapeErrors } from "./settings-C7O8A6ZI.mjs";
|
|
4
|
+
import { g as selectNativeXcodeProject, h as pbxString, p as NativeXcodeError } from "./project-wM_XFTvE.mjs";
|
|
5
|
+
import { r as register } from "./cache-manifest-DSeQjt-Q.mjs";
|
|
6
|
+
import { Fn as processContext, Y as statsProjectKey } from "./budget-Cvwn54qV.mjs";
|
|
7
|
+
import { d as runCancellationSignal } from "./native-run-NwUuxbkg.mjs";
|
|
8
|
+
import { n as buildCacheKey, s as filesystemBuildCapability } from "./build-cache-Dv7RN200.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-BXn9-xYx.mjs";
|
|
11
|
+
import { a as nativeTransferRefusal } from "./client-OyRoEuSr.mjs";
|
|
12
|
+
import { _ as runCaptured, a as iosToolchainAsync, h as readPodState, m as podsAreStale, v as runPodInstall } from "./toolchain-DpJMHq0n.mjs";
|
|
13
|
+
import { a as deviceModelRefusal, h as resolveDeviceType, m as resolveConfiguration, v as resolveRuntime, x as simulatorBuildArch, y as resolveSchemeSelection } from "./support-CNioewsd.mjs";
|
|
14
|
+
import { r as gateProfileForDevice } from "./ios-signing-BtAffm0A.mjs";
|
|
15
|
+
import { l as skippedMissReason, o as explainBuildMiss } from "./prebuild-D4JoEAEs.mjs";
|
|
16
|
+
import { n as planFlagRefusal, t as planCachedBuild } from "./build-plan-DUC8Ka9y.mjs";
|
|
17
|
+
import { t as IosRecipeRefusal } from "./ios-project-CZhKODF3.mjs";
|
|
18
|
+
import { i as DEFAULT_DEPS, r as iosProcessRuntime } from "./launch-BjxemNpK.mjs";
|
|
19
|
+
import { a as nativeXcodeSources, i as nativeXcodePackages, n as nativeXcodeInputSnapshot, t as nativeXcodeHasPackages } from "./native-xcode-inputs-D_VOfFL7.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:
|
|
24
|
-
sdk:
|
|
53
|
+
xcode: await probe("xcodebuild", ["-version"]),
|
|
54
|
+
sdk: await probe("xcodebuild", [
|
|
25
55
|
"-version",
|
|
26
56
|
"-sdk",
|
|
27
57
|
sdk
|
|
28
|
-
]
|
|
29
|
-
swift:
|
|
30
|
-
clang:
|
|
31
|
-
developer:
|
|
32
|
-
developerOverride:
|
|
33
|
-
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;
|
|
@@ -46,14 +76,8 @@ function refusal(error) {
|
|
|
46
76
|
remedy: "Check the native Xcode project and its selected toolchain, then retry."
|
|
47
77
|
};
|
|
48
78
|
}
|
|
49
|
-
function settingsContext(root) {
|
|
50
|
-
return {
|
|
51
|
-
projectPath: root,
|
|
52
|
-
gitCommonDir: gitCommonDir(root),
|
|
53
|
-
repoRoot: repoRoot(root)
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
79
|
function nativeRecipe(root, context) {
|
|
80
|
+
const env = context.operation?.env ?? process.env;
|
|
57
81
|
const configuration = context.configuration ?? "Debug";
|
|
58
82
|
let selected = selectNativeXcodeProject(root, context.buildScheme, configuration);
|
|
59
83
|
let tools = null;
|
|
@@ -76,7 +100,7 @@ function nativeRecipe(root, context) {
|
|
|
76
100
|
throw new IosRecipeRefusal(refusal(error));
|
|
77
101
|
}
|
|
78
102
|
};
|
|
79
|
-
const read = () => {
|
|
103
|
+
const read = async () => {
|
|
80
104
|
if (!tools) return { cacheIneligible: ineligible ?? "Xcode toolchain identity is unavailable" };
|
|
81
105
|
reselect();
|
|
82
106
|
return nativeXcodeInputSnapshot(root, selected, {
|
|
@@ -84,17 +108,21 @@ function nativeRecipe(root, context) {
|
|
|
84
108
|
architecture: context.target.keyArch,
|
|
85
109
|
toolchain: tools,
|
|
86
110
|
optimizations: context.optimizations
|
|
87
|
-
},
|
|
111
|
+
}, env, await repoRootAsync(root, {
|
|
112
|
+
env,
|
|
113
|
+
signal: context.operation?.signal
|
|
114
|
+
}) ?? root, context.operation?.signal);
|
|
88
115
|
};
|
|
89
116
|
return {
|
|
90
117
|
async identity() {
|
|
91
118
|
try {
|
|
92
|
-
tools = toolchain(context.target.sdk);
|
|
119
|
+
tools = await toolchain(context.target.sdk, context.operation);
|
|
93
120
|
} catch (error) {
|
|
121
|
+
context.operation?.signal.throwIfAborted();
|
|
94
122
|
ineligible = `Xcode toolchain identity is unavailable: ${error.message}`;
|
|
95
123
|
return { cacheIneligible: ineligible };
|
|
96
124
|
}
|
|
97
|
-
const value = read();
|
|
125
|
+
const value = await read();
|
|
98
126
|
if ("cacheIneligible" in value) {
|
|
99
127
|
ineligible = value.cacheIneligible;
|
|
100
128
|
return value;
|
|
@@ -102,7 +130,10 @@ function nativeRecipe(root, context) {
|
|
|
102
130
|
snapshot = value;
|
|
103
131
|
return identity(value);
|
|
104
132
|
},
|
|
105
|
-
cache: () => filesystemBuildCapability({
|
|
133
|
+
cache: () => filesystemBuildCapability({
|
|
134
|
+
context: context.operation,
|
|
135
|
+
sources: snapshot ? nativeXcodeSources(snapshot) : null
|
|
136
|
+
}),
|
|
106
137
|
async prepare(beforePrepare) {
|
|
107
138
|
const pods = readPodState(root, root);
|
|
108
139
|
const state = podsAreStale(pods.lockText, pods.manifestText);
|
|
@@ -110,6 +141,7 @@ function nativeRecipe(root, context) {
|
|
|
110
141
|
beforePrepare();
|
|
111
142
|
context.step("pods");
|
|
112
143
|
const result = await runPodInstall(root, context.logWriter(), {
|
|
144
|
+
onHeartbeat: context.note,
|
|
113
145
|
directory: root,
|
|
114
146
|
estimateMs: context.estimates().podsMs
|
|
115
147
|
});
|
|
@@ -139,7 +171,7 @@ function nativeRecipe(root, context) {
|
|
|
139
171
|
],
|
|
140
172
|
cwd: root,
|
|
141
173
|
env: {
|
|
142
|
-
...
|
|
174
|
+
...env,
|
|
143
175
|
NSUnbufferedIO: "YES",
|
|
144
176
|
FORCE_COLOR: "0"
|
|
145
177
|
},
|
|
@@ -161,7 +193,7 @@ function nativeRecipe(root, context) {
|
|
|
161
193
|
}
|
|
162
194
|
},
|
|
163
195
|
async reconcile() {
|
|
164
|
-
const current = snapshot && !mutations.length ? snapshot : read();
|
|
196
|
+
const current = snapshot && !mutations.length ? snapshot : await read();
|
|
165
197
|
if ("cacheIneligible" in current) {
|
|
166
198
|
ineligible = current.cacheIneligible;
|
|
167
199
|
snapshot = null;
|
|
@@ -175,10 +207,11 @@ function nativeRecipe(root, context) {
|
|
|
175
207
|
async validate() {
|
|
176
208
|
if (!snapshot) return null;
|
|
177
209
|
try {
|
|
178
|
-
tools = toolchain(context.target.sdk);
|
|
179
|
-
const after = read();
|
|
210
|
+
tools = await toolchain(context.target.sdk, context.operation);
|
|
211
|
+
const after = await read();
|
|
180
212
|
return !("cacheIneligible" in after) && after.hash === snapshot.hash ? identity(snapshot) : null;
|
|
181
213
|
} catch {
|
|
214
|
+
context.operation?.signal.throwIfAborted();
|
|
182
215
|
return null;
|
|
183
216
|
}
|
|
184
217
|
},
|
|
@@ -191,10 +224,12 @@ function nativeRecipe(root, context) {
|
|
|
191
224
|
},
|
|
192
225
|
async materialize(path) {
|
|
193
226
|
if (context.device) {
|
|
194
|
-
const gate = gateProfileForDevice({
|
|
227
|
+
const gate = await gateProfileForDevice({
|
|
195
228
|
appPath: path,
|
|
196
229
|
udid: context.device.udid,
|
|
197
|
-
configuration
|
|
230
|
+
configuration,
|
|
231
|
+
env: context.operation?.env,
|
|
232
|
+
signal: runCancellationSignal(context.operation) ?? context.operation?.signal
|
|
198
233
|
});
|
|
199
234
|
if (!gate.ok) throw new IosRecipeRefusal({
|
|
200
235
|
code: gate.code,
|
|
@@ -205,6 +240,7 @@ function nativeRecipe(root, context) {
|
|
|
205
240
|
return path;
|
|
206
241
|
},
|
|
207
242
|
compile: () => buildXcode({
|
|
243
|
+
context: context.operation,
|
|
208
244
|
root,
|
|
209
245
|
project: selected.container,
|
|
210
246
|
scheme: selected.scheme,
|
|
@@ -219,6 +255,7 @@ function nativeRecipe(root, context) {
|
|
|
219
255
|
arch: context.target.arch,
|
|
220
256
|
logWriter: context.logWriter(),
|
|
221
257
|
estimateMs: context.estimates().coldBuildMs,
|
|
258
|
+
onHeartbeat: context.note,
|
|
222
259
|
extraArgs: nativeXcodeHasPackages(selected) ? [
|
|
223
260
|
"-clonedSourcePackagesDirPath",
|
|
224
261
|
nativeXcodePackages(root),
|
|
@@ -232,7 +269,7 @@ function nativeRecipe(root, context) {
|
|
|
232
269
|
casPath,
|
|
233
270
|
xcodeMajor: parseXcodeMajor(tools?.xcode),
|
|
234
271
|
swiftVersion: parseSwiftVersion(tools?.swift),
|
|
235
|
-
swiftCacheCompatible: (!
|
|
272
|
+
swiftCacheCompatible: (!env.SWIFT_ENABLE_EXPLICIT_MODULES || env.SWIFT_ENABLE_EXPLICIT_MODULES === "YES") && !selected.projects.some((project) => [...project.objects.values()].some((entry) => {
|
|
236
273
|
if (entry.isa !== "XCBuildConfiguration" || pbxString(entry.name) !== configuration) return false;
|
|
237
274
|
const targetSettings = entry.buildSettings;
|
|
238
275
|
const explicitModules = pbxString(targetSettings?.SWIFT_ENABLE_EXPLICIT_MODULES);
|
|
@@ -242,6 +279,7 @@ function nativeRecipe(root, context) {
|
|
|
242
279
|
});
|
|
243
280
|
if (settings.length && context.optimizations.compilationCache) register({
|
|
244
281
|
dir: casPath,
|
|
282
|
+
registeredBy: context.operation?.cwd ?? root,
|
|
245
283
|
name: "Xcode compilation cache",
|
|
246
284
|
prune: "atomic",
|
|
247
285
|
note: "shared Xcode compilation cache"
|
|
@@ -268,20 +306,23 @@ function nativeRecipe(root, context) {
|
|
|
268
306
|
};
|
|
269
307
|
},
|
|
270
308
|
untrackedLine: () => null,
|
|
271
|
-
|
|
309
|
+
expoCache: null,
|
|
272
310
|
offload: {
|
|
273
|
-
context: () => {
|
|
311
|
+
context: async () => {
|
|
274
312
|
const runtime = context.target.sdk === "iphonesimulator" ? context.target.offloadRuntime() : null;
|
|
275
313
|
return {
|
|
276
314
|
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(
|
|
315
|
+
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, {
|
|
316
|
+
env,
|
|
317
|
+
signal: context.operation?.signal
|
|
318
|
+
}) ?? root, snapshot, runCancellationSignal(context.operation) ?? context.operation?.signal))
|
|
278
319
|
};
|
|
279
320
|
},
|
|
280
|
-
target: (runtime) => ({
|
|
321
|
+
target: async (runtime) => ({
|
|
281
322
|
platform: "ios",
|
|
282
323
|
native: "xcode",
|
|
283
324
|
local: {
|
|
284
|
-
...
|
|
325
|
+
...await iosToolchainAsync(root, "xcode"),
|
|
285
326
|
...context.target.hostedArchitecture ? { arch: context.target.hostedArchitecture === "x86_64" ? "x64" : "arm64" } : {}
|
|
286
327
|
},
|
|
287
328
|
runtime,
|
|
@@ -305,22 +346,21 @@ function nativeRecipe(root, context) {
|
|
|
305
346
|
};
|
|
306
347
|
},
|
|
307
348
|
unchanged: async () => {
|
|
308
|
-
const current = read();
|
|
349
|
+
const current = await read();
|
|
309
350
|
return snapshot !== null && !("cacheIneligible" in current) && current.hash === snapshot.hash;
|
|
310
351
|
}
|
|
311
352
|
}
|
|
312
353
|
};
|
|
313
354
|
}
|
|
314
|
-
async function planNativeXcode(root, options) {
|
|
355
|
+
async function planNativeXcode(root, options, resolved, operation = processContext(root)) {
|
|
315
356
|
if (options.easProfile !== void 0) return { refusal: planFlagRefusal("--eas-profile") };
|
|
316
357
|
try {
|
|
317
|
-
const context =
|
|
318
|
-
const settings = resolveSettings(context);
|
|
358
|
+
const { context, settings } = resolved;
|
|
319
359
|
const errors = settingShapeErrors(settings);
|
|
320
360
|
if (errors.length) throw new NativeXcodeError(errors.join("; "), "Correct the project settings and retry.");
|
|
321
361
|
if (remoteIosSetting(settings)) throw new NativeXcodeError("Native Xcode planning does not resolve hosted placement.", "Unset ios.remote to plan a local build, or run stim ios without --plan.");
|
|
322
362
|
const layers = DEFAULT_DEPS.settingsLayers(context);
|
|
323
|
-
const modelRefusal = deviceModelRefusal({
|
|
363
|
+
const modelRefusal = await deviceModelRefusal({
|
|
324
364
|
slot: options.slot ?? "default",
|
|
325
365
|
deviceTypeFlag: options.deviceType,
|
|
326
366
|
runtimeFlag: options.runtime,
|
|
@@ -330,7 +370,8 @@ async function planNativeXcode(root, options) {
|
|
|
330
370
|
runtimeOrigin: DEFAULT_DEPS.settingOriginScope(layers, "ios.runtime"),
|
|
331
371
|
physical: false,
|
|
332
372
|
remoteBackend: null,
|
|
333
|
-
listRuntimes: DEFAULT_DEPS.listIosRuntimes
|
|
373
|
+
listRuntimes: DEFAULT_DEPS.listIosRuntimes,
|
|
374
|
+
signal: operation?.signal
|
|
334
375
|
});
|
|
335
376
|
if (modelRefusal) return { refusal: modelRefusal };
|
|
336
377
|
const configuration = resolveConfiguration(options.configuration, settings) ?? "Debug";
|
|
@@ -342,12 +383,12 @@ async function planNativeXcode(root, options) {
|
|
|
342
383
|
hostArch: process.arch === "arm64" ? "arm64" : "x86_64",
|
|
343
384
|
configuration
|
|
344
385
|
});
|
|
345
|
-
const snapshot = nativeXcodeInputSnapshot(root, selection, {
|
|
386
|
+
const snapshot = await nativeXcodeInputSnapshot(root, selection, {
|
|
346
387
|
sdk: "iphonesimulator",
|
|
347
388
|
architecture,
|
|
348
|
-
toolchain: toolchain("iphonesimulator"),
|
|
389
|
+
toolchain: await toolchain("iphonesimulator", operation),
|
|
349
390
|
optimizations: optimizations.ios
|
|
350
|
-
}, context.repoRoot ?? root);
|
|
391
|
+
}, operation?.env ?? process.env, context.repoRoot ?? root, operation?.signal);
|
|
351
392
|
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
393
|
const key = buildCacheKey("ios", snapshot.hash, {
|
|
353
394
|
configuration,
|
|
@@ -373,10 +414,13 @@ async function planNativeXcode(root, options) {
|
|
|
373
414
|
expoRemote: null
|
|
374
415
|
}, {
|
|
375
416
|
...DEFAULT_DEPS,
|
|
417
|
+
operation,
|
|
376
418
|
planPrebuild: () => "none",
|
|
377
|
-
note: (line) =>
|
|
419
|
+
note: (line) => operation.output("stderr", `${line}\n`)
|
|
378
420
|
});
|
|
379
421
|
} catch (error) {
|
|
422
|
+
if (error instanceof Error && "reportCleanup" in error) throw error;
|
|
423
|
+
operation?.signal.throwIfAborted();
|
|
380
424
|
return { refusal: refusal(error) };
|
|
381
425
|
}
|
|
382
426
|
}
|
|
@@ -390,7 +434,7 @@ function nativeXcodeIosProject(root) {
|
|
|
390
434
|
],
|
|
391
435
|
eas: false,
|
|
392
436
|
runtimeKind: () => "process",
|
|
393
|
-
plan: (options) => planNativeXcode(root, options),
|
|
437
|
+
plan: (options, resolved, operation) => planNativeXcode(root, options, resolved, operation),
|
|
394
438
|
bundleId: () => null,
|
|
395
439
|
schemeProblem(scheme, configuration) {
|
|
396
440
|
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,49 +1,55 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "
|
|
3
|
-
import "
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
releaseBundleSwap: boolean;
|
|
13
|
-
metroSharedCache: boolean;
|
|
14
|
-
metroWarmup: boolean;
|
|
15
|
-
ios: {
|
|
16
|
-
compilationCache: boolean;
|
|
17
|
-
swiftCompilationCache: boolean | null;
|
|
18
|
-
prefixMapping: boolean;
|
|
1
|
+
import { c as IosToolchain, g as CompilationCacheActivity, h as CcacheActivity, i as AndroidBuildOptions, l as WorkerToolchain, p as Optimizations, r as SwiftpmArtifactToolchain, t as NativeGradleArtifactReceipt } from "./android-project-DVWyCbWU.mjs";
|
|
2
|
+
import { StimContext } from "@stim-cli/core";
|
|
3
|
+
import { BuildReactNativeArtifactQuery, BuildStartParams, BuildSwiftpmArtifactQuery } from "@stim-cli/core/protocol";
|
|
4
|
+
//#region src/offload/react-native-artifact.d.ts
|
|
5
|
+
type ArtifactTools = (IosToolchain & {
|
|
6
|
+
os: string;
|
|
7
|
+
}) | Pick<WorkerToolchain, "stimBuild" | "os" | "arch" | "jdk" | "androidSdk">;
|
|
8
|
+
interface ArtifactReceipt {
|
|
9
|
+
identity: {
|
|
10
|
+
hash: string;
|
|
11
|
+
key: string;
|
|
19
12
|
};
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
compilerCacheFallback: CompilerCacheFallback | null;
|
|
24
|
-
pch: "auto" | "on" | "off";
|
|
25
|
-
gradleBuildCache: boolean;
|
|
26
|
-
targetAbiOnly: boolean;
|
|
13
|
+
receipt: {
|
|
14
|
+
query: BuildReactNativeArtifactQuery;
|
|
15
|
+
toolchain: ArtifactTools;
|
|
27
16
|
};
|
|
28
17
|
}
|
|
29
|
-
|
|
30
|
-
key: string;
|
|
31
|
-
reason: string;
|
|
32
|
-
fromEnvironment: boolean;
|
|
33
|
-
manifest: string | null;
|
|
34
|
-
}
|
|
18
|
+
declare function reactNativeArtifactReceipt(query: BuildReactNativeArtifactQuery, toolchain: ArtifactTools | null): ArtifactReceipt | null;
|
|
35
19
|
//#endregion
|
|
36
|
-
//#region src/offload/
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
20
|
+
//#region src/offload/swiftpm-artifact.d.ts
|
|
21
|
+
interface SwiftpmWorkerToolchain extends SwiftpmArtifactToolchain {
|
|
22
|
+
selection: {
|
|
23
|
+
command: string;
|
|
24
|
+
compiler: string;
|
|
25
|
+
sdk: string;
|
|
26
|
+
xcrun: string;
|
|
27
|
+
xcodebuild: string;
|
|
28
|
+
overrides: Record<string, {
|
|
29
|
+
command: string;
|
|
30
|
+
version: string;
|
|
31
|
+
}>;
|
|
32
|
+
checkoutRequired: boolean;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
interface SwiftpmArtifactReceipt {
|
|
36
|
+
query: BuildSwiftpmArtifactQuery;
|
|
37
|
+
identity: {
|
|
38
|
+
hash: string;
|
|
39
|
+
key: string;
|
|
40
|
+
};
|
|
41
|
+
privateHash: string;
|
|
42
|
+
privateLockfile: boolean;
|
|
43
|
+
checkoutRequired: boolean;
|
|
46
44
|
}
|
|
45
|
+
/** Certifies actual worker inputs, not the client's transfer digest or cache identity. */
|
|
46
|
+
declare function swiftpmWorkerArtifactSnapshot(root: string, query: BuildSwiftpmArtifactQuery, toolchain: SwiftpmWorkerToolchain, env: NodeJS.ProcessEnv, signal?: AbortSignal): Promise<{
|
|
47
|
+
identity: {
|
|
48
|
+
hash: string;
|
|
49
|
+
key: string;
|
|
50
|
+
};
|
|
51
|
+
receipt: SwiftpmArtifactReceipt;
|
|
52
|
+
}>;
|
|
47
53
|
//#endregion
|
|
48
54
|
//#region src/offload/worker.d.ts
|
|
49
55
|
/** One entry of the source transfer: a visible file of the checkout, or a native build's file or directory input. */
|
|
@@ -66,6 +72,7 @@ interface WorkerJob {
|
|
|
66
72
|
bundleId: string;
|
|
67
73
|
resources?: Record<string, string>;
|
|
68
74
|
assetCatalog?: string | null;
|
|
75
|
+
artifactInputs?: BuildSwiftpmArtifactQuery["inputs"];
|
|
69
76
|
} | null;
|
|
70
77
|
swiftpmCache: string;
|
|
71
78
|
project: string;
|
|
@@ -77,6 +84,8 @@ interface WorkerJob {
|
|
|
77
84
|
runtime: string | null;
|
|
78
85
|
android: AndroidBuildOptions | null;
|
|
79
86
|
expectedFingerprint: string | null;
|
|
87
|
+
cacheArtifact?: boolean;
|
|
88
|
+
stimBuild?: string;
|
|
80
89
|
native?: BuildStartParams["native"];
|
|
81
90
|
optimizations: Optimizations["ios"] | null;
|
|
82
91
|
/** How long the client's Gradle daemon stays warm after an Android build; 0 or absent stops it when the build ends. */
|
|
@@ -102,6 +111,15 @@ type WorkerResult = {
|
|
|
102
111
|
fingerprint: string | null;
|
|
103
112
|
androidPackage?: string;
|
|
104
113
|
sourceDigest?: string;
|
|
114
|
+
cacheArtifact?: {
|
|
115
|
+
identity: {
|
|
116
|
+
hash: string;
|
|
117
|
+
key: string;
|
|
118
|
+
};
|
|
119
|
+
receipt: NativeGradleArtifactReceipt;
|
|
120
|
+
};
|
|
121
|
+
reactNativeArtifact?: NonNullable<ReturnType<typeof reactNativeArtifactReceipt>>;
|
|
122
|
+
swiftpmArtifact?: Awaited<ReturnType<typeof swiftpmWorkerArtifactSnapshot>>;
|
|
105
123
|
compilationCache: CompilationCacheActivity | CcacheActivity | Record<string, never>;
|
|
106
124
|
timings: WorkerTimings;
|
|
107
125
|
} | {
|