peachsim 0.1.1625 → 0.1.1640
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/LICENSE +1 -1
- package/README.md +15 -2
- package/cli/app-config.ts +18 -6
- package/cli/app-fonts.ts +37 -17
- package/cli/app-stubs.ts +284 -20
- package/cli/bridge-flow-runner.ts +66 -45
- package/cli/cloud-client.ts +60 -40
- package/cli/command-registry.ts +1 -0
- package/cli/commands/control.ts +283 -49
- package/cli/commands/doctor.ts +30 -189
- package/cli/commands/flow.ts +79 -11
- package/cli/commands/inspect/core.ts +10 -5
- package/cli/commands/inspect/settling.ts +14 -2
- package/cli/commands/inspect/shared.ts +9 -4
- package/cli/commands/inspect/wait-ready.ts +12 -0
- package/cli/commands/inspect.ts +91 -50
- package/cli/commands/install-desktop.ts +1 -0
- package/cli/commands/maestro-compare.ts +97 -38
- package/cli/commands/maestro.ts +9 -1
- package/cli/commands/preview.ts +1 -1
- package/cli/commands/record.ts +118 -48
- package/cli/commands/screenshot.ts +23 -1
- package/cli/commands/serve.ts +7 -2
- package/cli/commands/setup.ts +19 -42
- package/cli/commands/swift.ts +14 -3
- package/cli/commands/upload.ts +93 -48
- package/cli/desktop-companion.ts +102 -17
- package/cli/drivers/desktop.ts +14 -1
- package/cli/drivers/playwright-sim-host.ts +103 -45
- package/cli/drivers/playwright.ts +9 -8
- package/cli/drivers/types.ts +5 -0
- package/cli/maestro-accessibility.ts +1 -1
- package/cli/maestro-compare.ts +84 -12
- package/cli/main.ts +3 -2
- package/cli/outbound-endpoints.ts +20 -6
- package/cli/pause-aware-timeout.ts +106 -0
- package/cli/scene-video.ts +89 -0
- package/cli/ws-bridge.ts +37 -19
- package/detox/attempt-events.cjs +66 -5
- package/detox/attempt-events.d.cts +7 -0
- package/detox/expectations.ts +7 -3
- package/detox/index.ts +269 -170
- package/detox/motion-change.cjs +206 -21
- package/detox/motion-change.d.cts +39 -2
- package/detox/navigation-lifecycle.ts +35 -3
- package/dist-lib/agent-daemon-client.cjs +1 -1
- package/dist-lib/agent-events.cjs +1 -1
- package/dist-lib/attached-projects.cjs +1 -1
- package/dist-lib/auth/shared-session.cjs +1 -1
- package/dist-lib/backend-origin.cjs +8 -7
- package/dist-lib/beta.cjs +1 -1
- package/dist-lib/beta.mjs +1 -1
- package/dist-lib/bridge-constants.cjs +13 -1
- package/dist-lib/bridge-contract-input.cjs +1 -1
- package/dist-lib/bridge-contract-input.mjs +1 -1
- package/dist-lib/bridge-contract.cjs +14 -8
- package/dist-lib/bridge-contract.mjs +13 -7
- package/dist-lib/bundle-channel.cjs +11887 -7900
- package/dist-lib/capture-contract.cjs +1 -1
- package/dist-lib/capture-contract.mjs +1 -1
- package/dist-lib/cloud-contract.cjs +1 -1
- package/dist-lib/cloud-contract.mjs +1 -1
- package/dist-lib/cloud-test-args.cjs +1 -1
- package/dist-lib/cloud-test-args.mjs +1 -1
- package/dist-lib/cloud.cjs +1 -1
- package/dist-lib/cloud.mjs +1 -1
- package/dist-lib/config.cjs +6 -3
- package/dist-lib/config.mjs +6 -3
- package/dist-lib/detox/index.cjs +1379 -725
- package/dist-lib/dev-bundle-resolution.cjs +14 -2
- package/dist-lib/expo-swift-bundle.cjs +9341 -5462
- package/dist-lib/expo-swift-metadata.cjs +11 -7
- package/dist-lib/expo-swift-metadata.mjs +11 -7
- package/dist-lib/home-paths.cjs +32 -3
- package/dist-lib/host/bridge-host.cjs +50204 -7258
- package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
- package/dist-lib/host/replacement-module-handler.cjs +1 -1
- package/dist-lib/host/websocket-proxy.cjs +1 -1
- package/dist-lib/index.cjs +3541 -448
- package/dist-lib/jump-to-source-babel.cjs +1 -1
- package/dist-lib/jump-to-source-native.cjs +1 -1
- package/dist-lib/kotlin-host.cjs +1 -1
- package/dist-lib/menu.cjs +1 -1
- package/dist-lib/menu.mjs +1 -1
- package/dist-lib/metro-fingerprint-registry.cjs +1 -1
- package/dist-lib/metro-fingerprint-registry.mjs +1 -1
- package/dist-lib/metro-production-bundle.cjs +1 -1
- package/dist-lib/metro-production-bundle.mjs +1 -1
- package/dist-lib/metro.cjs +2931 -104
- package/dist-lib/native-app-identity-project.cjs +289 -49
- package/dist-lib/native-app-identity-project.mjs +289 -49
- package/dist-lib/native-app-identity.cjs +77 -26
- package/dist-lib/native-app-identity.mjs +76 -26
- package/dist-lib/native-firebase-metadata.cjs +1 -1
- package/dist-lib/native-firebase-metadata.mjs +1 -1
- package/dist-lib/plist.cjs +1 -1
- package/dist-lib/plist.mjs +1 -1
- package/dist-lib/profiles.cjs +1 -1
- package/dist-lib/public-brand.cjs +1 -1
- package/dist-lib/react-native-host-modules.cjs +6 -2
- package/dist-lib/react-native-host-modules.mjs +6 -2
- package/dist-lib/scripts/dev-server-scanner.cjs +22 -8
- package/dist-lib/sdk.cjs +27 -11
- package/dist-lib/sdk.mjs +27 -10
- package/dist-lib/skills.cjs +72201 -26208
- package/dist-lib/swift-compile.cjs +1007 -140
- package/dist-lib/swift-compile.mjs +1049 -174
- package/dist-lib/swift-package.cjs +12 -3
- package/dist-lib/swift-package.mjs +12 -3
- package/dist-lib/swift-submit.cjs +13 -5
- package/dist-lib/swift-submit.mjs +11 -5
- package/dist-lib/swift-toolchain.cjs +423 -33
- package/dist-lib/swift.cjs +1 -1
- package/dist-lib/vite-swift.cjs +8628 -5268
- package/dist-lib/vite.cjs +2859 -12
- package/dist-lib/worklet-executable.cjs +14 -2
- package/dist-lib/worklet-executable.mjs +14 -2
- package/kotlin/AppSources/dev/peach/app/PeachDrawable.kt +21 -14
- package/kotlin/Sources/androidx/annotation/DrawableRes.kt +14 -0
- package/package.json +1 -1
- package/scripts/dev-server-scanner.ts +2 -1
- package/skills/peach-perf/SKILL.md +11 -5
- package/skills/peach-setup/SKILL.md +16 -19
- package/src/backend-origin.ts +13 -6
- package/src/bridge-constants.ts +11 -0
- package/src/bridge-contract.ts +22 -34
- package/src/config.ts +15 -0
- package/src/desktop-host-delivery.ts +5 -1
- package/src/dev-bundle-resolution.ts +2 -1
- package/src/expo-manifest-body.ts +13 -0
- package/src/expo-swift-host.ts +196 -49
- package/src/expo-swift-ready.ts +78 -0
- package/src/expoKotlinContract.ts +4 -7
- package/src/expoSwiftContract.ts +17 -6
- package/src/home-paths.ts +48 -2
- package/src/host/bridge-host.ts +5 -2
- package/src/host/staged-host-files.ts +9 -0
- package/src/native-app-identity-project.ts +27 -6
- package/src/native-app-identity.ts +91 -4
- package/src/native-firebase-config.ts +209 -13
- package/src/nativeAppIconContract.ts +1 -4
- package/src/output-lock-stdio.ts +36 -0
- package/src/process-group.ts +25 -2
- package/src/react-native-bridge-modules.ts +431 -0
- package/src/react-native-host-modules.ts +8 -1
- package/src/settings-bundle.ts +1 -4
- package/src/swift-binary-modules.ts +2 -2
- package/src/swift-compile.ts +918 -109
- package/src/swift-compiler-digest.ts +14 -0
- package/src/swift-distribution.lock.json +24 -12
- package/src/swift-distribution.ts +103 -4
- package/src/swift-host.ts +180 -55
- package/src/swift-icu.ts +27 -13
- package/src/swift-objc-compile.ts +355 -0
- package/src/swift-objc-sdk.ts +821 -27
- package/src/swift-objc-standin.ts +148 -14
- package/src/swift-package-manifest.ts +60 -7
- package/src/swift-package.ts +15 -1
- package/src/swift-packages.ts +154 -81
- package/src/swift-standin-emit.ts +96 -15
- package/src/swift-standins.ts +530 -116
- package/src/swift-submit.ts +13 -5
- package/src/swift-toolchain.ts +500 -42
- package/src/vite-plugin.ts +12 -1
- package/src/worker-system-chunks.ts +11 -12
- package/src/worklet-executable.ts +19 -1
- package/src/xcode-project.ts +270 -30
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.1640 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -158,7 +158,11 @@ function swiftPackageIdentity(url) {
|
|
|
158
158
|
function swiftManifestTargets(manifest, resourcePaths = []) {
|
|
159
159
|
const implicitResources = swiftImplicitResourcePaths(resourcePaths);
|
|
160
160
|
const targets = [];
|
|
161
|
-
const declarations = manifestCalls(manifest, [
|
|
161
|
+
const declarations = manifestCalls(manifest, [
|
|
162
|
+
"executableTarget",
|
|
163
|
+
"target",
|
|
164
|
+
"systemLibrary"
|
|
165
|
+
]);
|
|
162
166
|
const targetNames = new Set(
|
|
163
167
|
declarations.flatMap(({ flat }) => {
|
|
164
168
|
const name = /\bname\s*:\s*"([^"]+)"/.exec(flat)?.[1];
|
|
@@ -181,6 +185,9 @@ function swiftManifestTargets(manifest, resourcePaths = []) {
|
|
|
181
185
|
const defines = [
|
|
182
186
|
...call.matchAll(/\.define\(\s*"([A-Za-z_][A-Za-z0-9_]*)"\s*\)/g)
|
|
183
187
|
].map((match) => match[1]);
|
|
188
|
+
const linkedLibraries = [...call.matchAll(/\.linkedLibrary\(\s*"([^"]+)"\s*\)/g)].map(
|
|
189
|
+
(match) => match[1]
|
|
190
|
+
);
|
|
184
191
|
const excluded = [
|
|
185
192
|
...(/\bexclude\s*:\s*\[([^\]]*)\]/.exec(flat)?.[1] ?? "").matchAll(/"([^"]+)"/g)
|
|
186
193
|
].map((match) => match[1].replace(/^\.\//, "").replace(/\/+$/, ""));
|
|
@@ -215,10 +222,12 @@ function swiftManifestTargets(manifest, resourcePaths = []) {
|
|
|
215
222
|
name,
|
|
216
223
|
path: targetPath,
|
|
217
224
|
executable,
|
|
225
|
+
...kind === "systemLibrary" ? { systemLibrary: true } : {},
|
|
218
226
|
languageMode,
|
|
219
227
|
mainActorIsolation,
|
|
220
228
|
...cxxInterop ? { cxxInterop: true } : {},
|
|
221
229
|
...defines.length === 0 ? {} : { defines },
|
|
230
|
+
...linkedLibraries.length === 0 ? {} : { linkedLibraries },
|
|
222
231
|
resources,
|
|
223
232
|
...dependencies.length === 0 ? {} : { dependencies },
|
|
224
233
|
...excluded.length === 0 ? {} : { exclude: excluded }
|
|
@@ -282,7 +291,7 @@ function swiftMetalSourceFiles(files) {
|
|
|
282
291
|
}
|
|
283
292
|
function swiftPackagePartition(manifest, resourcePaths = []) {
|
|
284
293
|
const targets = swiftManifestTargets(manifest, resourcePaths);
|
|
285
|
-
return targets.length === 1 && targets[0].executable && targets[0].path === "." && targets[0].languageMode === 5 && !targets[0].mainActorIsolation && !targets[0].defines?.length && !targets[0].cxxInterop && !swiftManifestCxxLanguageStandard(manifest) ? [] : targets;
|
|
294
|
+
return targets.length === 1 && targets[0].executable && targets[0].path === "." && targets[0].languageMode === 5 && !targets[0].mainActorIsolation && !targets[0].defines?.length && !targets[0].linkedLibraries?.length && !targets[0].cxxInterop && !swiftManifestCxxLanguageStandard(manifest) ? [] : targets;
|
|
286
295
|
}
|
|
287
296
|
// Annotate the CommonJS export names for ESM import in node:
|
|
288
297
|
0 && (module.exports = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.1640 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
|
|
3
3
|
// src/swift-package.ts
|
|
4
4
|
function isSwiftManifestFile(file) {
|
|
@@ -123,7 +123,11 @@ function swiftPackageIdentity(url) {
|
|
|
123
123
|
function swiftManifestTargets(manifest, resourcePaths = []) {
|
|
124
124
|
const implicitResources = swiftImplicitResourcePaths(resourcePaths);
|
|
125
125
|
const targets = [];
|
|
126
|
-
const declarations = manifestCalls(manifest, [
|
|
126
|
+
const declarations = manifestCalls(manifest, [
|
|
127
|
+
"executableTarget",
|
|
128
|
+
"target",
|
|
129
|
+
"systemLibrary"
|
|
130
|
+
]);
|
|
127
131
|
const targetNames = new Set(
|
|
128
132
|
declarations.flatMap(({ flat }) => {
|
|
129
133
|
const name = /\bname\s*:\s*"([^"]+)"/.exec(flat)?.[1];
|
|
@@ -146,6 +150,9 @@ function swiftManifestTargets(manifest, resourcePaths = []) {
|
|
|
146
150
|
const defines = [
|
|
147
151
|
...call.matchAll(/\.define\(\s*"([A-Za-z_][A-Za-z0-9_]*)"\s*\)/g)
|
|
148
152
|
].map((match) => match[1]);
|
|
153
|
+
const linkedLibraries = [...call.matchAll(/\.linkedLibrary\(\s*"([^"]+)"\s*\)/g)].map(
|
|
154
|
+
(match) => match[1]
|
|
155
|
+
);
|
|
149
156
|
const excluded = [
|
|
150
157
|
...(/\bexclude\s*:\s*\[([^\]]*)\]/.exec(flat)?.[1] ?? "").matchAll(/"([^"]+)"/g)
|
|
151
158
|
].map((match) => match[1].replace(/^\.\//, "").replace(/\/+$/, ""));
|
|
@@ -180,10 +187,12 @@ function swiftManifestTargets(manifest, resourcePaths = []) {
|
|
|
180
187
|
name,
|
|
181
188
|
path: targetPath,
|
|
182
189
|
executable,
|
|
190
|
+
...kind === "systemLibrary" ? { systemLibrary: true } : {},
|
|
183
191
|
languageMode,
|
|
184
192
|
mainActorIsolation,
|
|
185
193
|
...cxxInterop ? { cxxInterop: true } : {},
|
|
186
194
|
...defines.length === 0 ? {} : { defines },
|
|
195
|
+
...linkedLibraries.length === 0 ? {} : { linkedLibraries },
|
|
187
196
|
resources,
|
|
188
197
|
...dependencies.length === 0 ? {} : { dependencies },
|
|
189
198
|
...excluded.length === 0 ? {} : { exclude: excluded }
|
|
@@ -247,7 +256,7 @@ function swiftMetalSourceFiles(files) {
|
|
|
247
256
|
}
|
|
248
257
|
function swiftPackagePartition(manifest, resourcePaths = []) {
|
|
249
258
|
const targets = swiftManifestTargets(manifest, resourcePaths);
|
|
250
|
-
return targets.length === 1 && targets[0].executable && targets[0].path === "." && targets[0].languageMode === 5 && !targets[0].mainActorIsolation && !targets[0].defines?.length && !targets[0].cxxInterop && !swiftManifestCxxLanguageStandard(manifest) ? [] : targets;
|
|
259
|
+
return targets.length === 1 && targets[0].executable && targets[0].path === "." && targets[0].languageMode === 5 && !targets[0].mainActorIsolation && !targets[0].defines?.length && !targets[0].linkedLibraries?.length && !targets[0].cxxInterop && !swiftManifestCxxLanguageStandard(manifest) ? [] : targets;
|
|
251
260
|
}
|
|
252
261
|
export {
|
|
253
262
|
SWIFT_NATIVE_SOURCE_EXTENSIONS,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.1640 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -22,6 +22,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
22
22
|
// src/swift-submit.ts
|
|
23
23
|
var swift_submit_exports = {};
|
|
24
24
|
__export(swift_submit_exports, {
|
|
25
|
+
DEFAULT_SWIFT_COMPILE_BUILD_MS: () => DEFAULT_SWIFT_COMPILE_BUILD_MS,
|
|
26
|
+
MAX_SWIFT_COMPILE_BUILD_MS: () => MAX_SWIFT_COMPILE_BUILD_MS,
|
|
25
27
|
MAX_SWIFT_COMPILE_FILES: () => MAX_SWIFT_COMPILE_FILES,
|
|
26
28
|
MAX_SWIFT_COMPILE_IMAGES: () => MAX_SWIFT_COMPILE_IMAGES,
|
|
27
29
|
MAX_SWIFT_COMPILE_IMAGE_BYTES: () => MAX_SWIFT_COMPILE_IMAGE_BYTES,
|
|
@@ -44,6 +46,11 @@ __export(swift_submit_exports, {
|
|
|
44
46
|
});
|
|
45
47
|
module.exports = __toCommonJS(swift_submit_exports);
|
|
46
48
|
|
|
49
|
+
// src/is-record.ts
|
|
50
|
+
function isRecord(value) {
|
|
51
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
52
|
+
}
|
|
53
|
+
|
|
47
54
|
// src/swiftContract.ts
|
|
48
55
|
function isSwiftResourcePath(value) {
|
|
49
56
|
return typeof value === "string" && value.length <= 4096 && !value.startsWith("/") && !value.includes("\\") && !value.includes("\0") && value.split("/").every((part) => part !== "" && part !== "." && part !== "..");
|
|
@@ -67,6 +74,8 @@ var SWIFT_COMPILE_PATH = "/api/swift-compile";
|
|
|
67
74
|
var SWIFT_PACKAGE_PATH = "/__peach/swift-package/";
|
|
68
75
|
var SWIFT_HMR_PATH = "/__peach/swift-hmr";
|
|
69
76
|
var MAX_SWIFT_COMPILE_FILES = 256;
|
|
77
|
+
var DEFAULT_SWIFT_COMPILE_BUILD_MS = 10 * 6e4;
|
|
78
|
+
var MAX_SWIFT_COMPILE_BUILD_MS = 60 * 6e4;
|
|
70
79
|
var MAX_SWIFT_COMPILE_SOURCE_BYTES = 2 * 1024 * 1024;
|
|
71
80
|
var MAX_SWIFT_COMPILE_RESOURCES = 128;
|
|
72
81
|
var MAX_SWIFT_COMPILE_RESOURCE_BYTES = 2 * 1024 * 1024;
|
|
@@ -77,7 +86,7 @@ var MAX_SWIFT_COMPILE_METAL_TOTAL_BYTES = 8 * 1024 * 1024;
|
|
|
77
86
|
var MAX_SWIFT_COMPILE_IMAGES = 128;
|
|
78
87
|
var MAX_SWIFT_COMPILE_IMAGE_BYTES = 4 * 1024 * 1024;
|
|
79
88
|
var MAX_SWIFT_COMPILE_IMAGE_TOTAL_BYTES = 16 * 1024 * 1024;
|
|
80
|
-
var SWIFT_HOST_ABI =
|
|
89
|
+
var SWIFT_HOST_ABI = 47;
|
|
81
90
|
var POLL_INTERVAL_MS = 1500;
|
|
82
91
|
function swiftNativeEntry(native, file) {
|
|
83
92
|
return {
|
|
@@ -129,9 +138,6 @@ function httpSwiftCompileSubmit(context) {
|
|
|
129
138
|
return outcome;
|
|
130
139
|
};
|
|
131
140
|
}
|
|
132
|
-
function isRecord(value) {
|
|
133
|
-
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
134
|
-
}
|
|
135
141
|
function isSwiftNativeModules(value) {
|
|
136
142
|
return isRecord(value) && typeof value.packageId === "string" && typeof value.hash === "string" && isRecord(value.files) && isRecord(value.modules) && isRecord(value.views) && [
|
|
137
143
|
...Object.values(value.files),
|
|
@@ -217,6 +223,8 @@ async function compileSwiftProject(submit, work, origin, signal) {
|
|
|
217
223
|
}
|
|
218
224
|
// Annotate the CommonJS export names for ESM import in node:
|
|
219
225
|
0 && (module.exports = {
|
|
226
|
+
DEFAULT_SWIFT_COMPILE_BUILD_MS,
|
|
227
|
+
MAX_SWIFT_COMPILE_BUILD_MS,
|
|
220
228
|
MAX_SWIFT_COMPILE_FILES,
|
|
221
229
|
MAX_SWIFT_COMPILE_IMAGES,
|
|
222
230
|
MAX_SWIFT_COMPILE_IMAGE_BYTES,
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.1640 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
|
+
|
|
3
|
+
// src/is-record.ts
|
|
4
|
+
function isRecord(value) {
|
|
5
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
6
|
+
}
|
|
2
7
|
|
|
3
8
|
// src/swiftContract.ts
|
|
4
9
|
function isSwiftResourcePath(value) {
|
|
@@ -23,6 +28,8 @@ var SWIFT_COMPILE_PATH = "/api/swift-compile";
|
|
|
23
28
|
var SWIFT_PACKAGE_PATH = "/__peach/swift-package/";
|
|
24
29
|
var SWIFT_HMR_PATH = "/__peach/swift-hmr";
|
|
25
30
|
var MAX_SWIFT_COMPILE_FILES = 256;
|
|
31
|
+
var DEFAULT_SWIFT_COMPILE_BUILD_MS = 10 * 6e4;
|
|
32
|
+
var MAX_SWIFT_COMPILE_BUILD_MS = 60 * 6e4;
|
|
26
33
|
var MAX_SWIFT_COMPILE_SOURCE_BYTES = 2 * 1024 * 1024;
|
|
27
34
|
var MAX_SWIFT_COMPILE_RESOURCES = 128;
|
|
28
35
|
var MAX_SWIFT_COMPILE_RESOURCE_BYTES = 2 * 1024 * 1024;
|
|
@@ -33,7 +40,7 @@ var MAX_SWIFT_COMPILE_METAL_TOTAL_BYTES = 8 * 1024 * 1024;
|
|
|
33
40
|
var MAX_SWIFT_COMPILE_IMAGES = 128;
|
|
34
41
|
var MAX_SWIFT_COMPILE_IMAGE_BYTES = 4 * 1024 * 1024;
|
|
35
42
|
var MAX_SWIFT_COMPILE_IMAGE_TOTAL_BYTES = 16 * 1024 * 1024;
|
|
36
|
-
var SWIFT_HOST_ABI =
|
|
43
|
+
var SWIFT_HOST_ABI = 47;
|
|
37
44
|
var POLL_INTERVAL_MS = 1500;
|
|
38
45
|
function swiftNativeEntry(native, file) {
|
|
39
46
|
return {
|
|
@@ -85,9 +92,6 @@ function httpSwiftCompileSubmit(context) {
|
|
|
85
92
|
return outcome;
|
|
86
93
|
};
|
|
87
94
|
}
|
|
88
|
-
function isRecord(value) {
|
|
89
|
-
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
90
|
-
}
|
|
91
95
|
function isSwiftNativeModules(value) {
|
|
92
96
|
return isRecord(value) && typeof value.packageId === "string" && typeof value.hash === "string" && isRecord(value.files) && isRecord(value.modules) && isRecord(value.views) && [
|
|
93
97
|
...Object.values(value.files),
|
|
@@ -172,6 +176,8 @@ async function compileSwiftProject(submit, work, origin, signal) {
|
|
|
172
176
|
}
|
|
173
177
|
}
|
|
174
178
|
export {
|
|
179
|
+
DEFAULT_SWIFT_COMPILE_BUILD_MS,
|
|
180
|
+
MAX_SWIFT_COMPILE_BUILD_MS,
|
|
175
181
|
MAX_SWIFT_COMPILE_FILES,
|
|
176
182
|
MAX_SWIFT_COMPILE_IMAGES,
|
|
177
183
|
MAX_SWIFT_COMPILE_IMAGE_BYTES,
|