peachsim 0.1.2217 → 0.1.2219
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/cli/outbound-endpoints.ts +2 -2
- package/detox/index.ts +6 -2
- 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 +1 -1
- package/dist-lib/beta.cjs +1 -1
- package/dist-lib/beta.mjs +1 -1
- package/dist-lib/bridge-constants.cjs +1 -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 +1 -1
- package/dist-lib/bridge-contract.mjs +1 -1
- package/dist-lib/bundle-channel.cjs +19 -12
- 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 +1 -1
- package/dist-lib/config.mjs +1 -1
- package/dist-lib/detox/index.cjs +7 -3
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/expo-swift-bundle.cjs +18 -11
- package/dist-lib/expo-swift-metadata.cjs +1 -1
- package/dist-lib/expo-swift-metadata.mjs +1 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +19 -12
- package/dist-lib/host/fetch-proxy-handler.cjs +3 -3
- 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 +3 -3
- 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 +3 -3
- package/dist-lib/native-app-identity-project.cjs +2 -2
- package/dist-lib/native-app-identity-project.mjs +2 -2
- package/dist-lib/native-app-identity.cjs +1 -1
- package/dist-lib/native-app-identity.mjs +1 -1
- package/dist-lib/native-firebase-metadata.cjs +1 -1
- package/dist-lib/native-firebase-metadata.mjs +1 -1
- package/dist-lib/pdfium-raster.cjs +1 -1
- package/dist-lib/pdfium-raster.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/public-origins-lib-esm.json +24 -24
- package/dist-lib/public-origins-lib.json +53 -53
- package/dist-lib/react-native-host-modules.cjs +1 -1
- package/dist-lib/react-native-host-modules.mjs +1 -1
- package/dist-lib/reap-browser.cjs +1 -1
- package/dist-lib/scripts/dev-server-scanner.cjs +1 -1
- package/dist-lib/sdk.cjs +1 -1
- package/dist-lib/sdk.mjs +1 -1
- package/dist-lib/skills.cjs +19 -12
- package/dist-lib/swift-compile.cjs +14 -7
- package/dist-lib/swift-compile.mjs +14 -7
- package/dist-lib/swift-package.cjs +1 -1
- package/dist-lib/swift-package.mjs +1 -1
- package/dist-lib/swift-submit.cjs +1 -1
- package/dist-lib/swift-submit.mjs +1 -1
- package/dist-lib/swift-toolchain.cjs +1 -1
- package/dist-lib/swift.cjs +1 -1
- package/dist-lib/vite-swift.cjs +17 -10
- package/dist-lib/vite.cjs +3 -3
- package/dist-lib/worklet-executable.cjs +1 -1
- package/dist-lib/worklet-executable.mjs +1 -1
- package/kotlin/sdk.tar.gz +0 -0
- package/package.json +1 -1
- package/src/swift-guest-runtime-plan.ts +13 -5
- package/src/swift-standins.ts +1 -1
- package/src/swift-xcframework.ts +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
|
|
3
3
|
// src/swift-compile.ts
|
|
4
4
|
import {
|
|
@@ -8141,6 +8141,9 @@ var packageSchema = v3.object({
|
|
|
8141
8141
|
|
|
8142
8142
|
// src/swift-guest-runtime-plan.ts
|
|
8143
8143
|
var SDK_CATALOG_DIRECTORY = "swift.xctoolchain/usr/lib/swift_static/wasi";
|
|
8144
|
+
function canonicalArchivePath(file) {
|
|
8145
|
+
return path13.join(realpathSync(path13.dirname(file)), path13.basename(file));
|
|
8146
|
+
}
|
|
8144
8147
|
function sdkArtifactBytes(root, artifact) {
|
|
8145
8148
|
const file = path13.resolve(root, artifact.path);
|
|
8146
8149
|
const linked = readFileSync9(file);
|
|
@@ -8246,7 +8249,7 @@ function guestRuntimeInputIdentities(options) {
|
|
|
8246
8249
|
];
|
|
8247
8250
|
add(file, JSON.stringify(identity));
|
|
8248
8251
|
if (artifact.kind !== "archive") continue;
|
|
8249
|
-
for (const origin of origins.get(file) ?? [])
|
|
8252
|
+
for (const origin of origins.get(canonicalArchivePath(file)) ?? [])
|
|
8250
8253
|
add(
|
|
8251
8254
|
path13.resolve(origin.original),
|
|
8252
8255
|
JSON.stringify([...identity, origin.member, origin.ordinal])
|
|
@@ -8319,7 +8322,8 @@ function guestRuntimeProductsForInputs(options) {
|
|
|
8319
8322
|
for (const { product, root } of options.products) {
|
|
8320
8323
|
byId.set(product.id, product);
|
|
8321
8324
|
for (const artifact of product.artifacts) {
|
|
8322
|
-
const
|
|
8325
|
+
const absolute = path13.resolve(root, artifact.path);
|
|
8326
|
+
const file = artifact.kind === "archive" ? canonicalArchivePath(absolute) : absolute;
|
|
8323
8327
|
const owners = byFile.get(file) ?? [];
|
|
8324
8328
|
owners.push({ id: product.id, artifact });
|
|
8325
8329
|
byFile.set(file, owners);
|
|
@@ -8351,7 +8355,9 @@ function guestRuntimeProductsForInputs(options) {
|
|
|
8351
8355
|
const file = original.get(path13.resolve(selection.artifact)) ?? path13.resolve(selection.artifact);
|
|
8352
8356
|
const origin = origins.get(file);
|
|
8353
8357
|
const archive = origin ? path13.resolve(origin.archive) : file;
|
|
8354
|
-
const records = byFile.get(
|
|
8358
|
+
const records = byFile.get(
|
|
8359
|
+
origin || selection.member !== null ? canonicalArchivePath(archive) : archive
|
|
8360
|
+
);
|
|
8355
8361
|
if (frameworkObjects.has(file)) {
|
|
8356
8362
|
if (frameworkId === null || !byId.has(frameworkId))
|
|
8357
8363
|
throw new Error(`framework runtime product has no producer record ${file}`);
|
|
@@ -8463,8 +8469,9 @@ function guestSdkProductLinkArtifacts(products, sdk, inputs, linkedArchives, rew
|
|
|
8463
8469
|
for (const { product, root } of products) {
|
|
8464
8470
|
for (const artifact of product.artifacts) {
|
|
8465
8471
|
const file = path13.resolve(root, artifact.path);
|
|
8466
|
-
const
|
|
8467
|
-
|
|
8472
|
+
const archive = artifact.kind === "archive" ? canonicalArchivePath(file) : null;
|
|
8473
|
+
const objects = archive !== null ? origins.filter(
|
|
8474
|
+
(origin) => path13.resolve(origin.archive) === archive && (!selectedObjects || selectedObjects.has(
|
|
8468
8475
|
path13.resolve(rewritten.get(origin.original) ?? origin.original)
|
|
8469
8476
|
))
|
|
8470
8477
|
) : [];
|
|
@@ -12577,7 +12584,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
|
|
|
12577
12584
|
var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
|
|
12578
12585
|
var MULTI_MANIFEST_VERSION = 68;
|
|
12579
12586
|
var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
|
|
12580
|
-
var compilerSourceDigest = true ? "
|
|
12587
|
+
var compilerSourceDigest = true ? "0a0bc1c871aee83ea273120655f55a43ddccde646478a452b4c73d2daefd58c3" : swiftCompilerSourceDigest(import.meta.dirname);
|
|
12581
12588
|
function swiftArtifactHash(input, release, moduleRoot) {
|
|
12582
12589
|
const hash = createHash13("sha256");
|
|
12583
12590
|
hash.update(`swift-compile
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
package/dist-lib/swift.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/dist-lib/vite-swift.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -13170,6 +13170,9 @@ var packageSchema = v3.object({
|
|
|
13170
13170
|
|
|
13171
13171
|
// src/swift-guest-runtime-plan.ts
|
|
13172
13172
|
var SDK_CATALOG_DIRECTORY = "swift.xctoolchain/usr/lib/swift_static/wasi";
|
|
13173
|
+
function canonicalArchivePath(file) {
|
|
13174
|
+
return import_node_path13.default.join((0, import_node_fs13.realpathSync)(import_node_path13.default.dirname(file)), import_node_path13.default.basename(file));
|
|
13175
|
+
}
|
|
13173
13176
|
function sdkArtifactBytes(root, artifact) {
|
|
13174
13177
|
const file = import_node_path13.default.resolve(root, artifact.path);
|
|
13175
13178
|
const linked = (0, import_node_fs13.readFileSync)(file);
|
|
@@ -13275,7 +13278,7 @@ function guestRuntimeInputIdentities(options) {
|
|
|
13275
13278
|
];
|
|
13276
13279
|
add(file, JSON.stringify(identity2));
|
|
13277
13280
|
if (artifact.kind !== "archive") continue;
|
|
13278
|
-
for (const origin of origins.get(file) ?? [])
|
|
13281
|
+
for (const origin of origins.get(canonicalArchivePath(file)) ?? [])
|
|
13279
13282
|
add(
|
|
13280
13283
|
import_node_path13.default.resolve(origin.original),
|
|
13281
13284
|
JSON.stringify([...identity2, origin.member, origin.ordinal])
|
|
@@ -13348,7 +13351,8 @@ function guestRuntimeProductsForInputs(options) {
|
|
|
13348
13351
|
for (const { product, root } of options.products) {
|
|
13349
13352
|
byId.set(product.id, product);
|
|
13350
13353
|
for (const artifact of product.artifacts) {
|
|
13351
|
-
const
|
|
13354
|
+
const absolute = import_node_path13.default.resolve(root, artifact.path);
|
|
13355
|
+
const file = artifact.kind === "archive" ? canonicalArchivePath(absolute) : absolute;
|
|
13352
13356
|
const owners = byFile.get(file) ?? [];
|
|
13353
13357
|
owners.push({ id: product.id, artifact });
|
|
13354
13358
|
byFile.set(file, owners);
|
|
@@ -13380,7 +13384,9 @@ function guestRuntimeProductsForInputs(options) {
|
|
|
13380
13384
|
const file = original.get(import_node_path13.default.resolve(selection.artifact)) ?? import_node_path13.default.resolve(selection.artifact);
|
|
13381
13385
|
const origin = origins.get(file);
|
|
13382
13386
|
const archive = origin ? import_node_path13.default.resolve(origin.archive) : file;
|
|
13383
|
-
const records = byFile.get(
|
|
13387
|
+
const records = byFile.get(
|
|
13388
|
+
origin || selection.member !== null ? canonicalArchivePath(archive) : archive
|
|
13389
|
+
);
|
|
13384
13390
|
if (frameworkObjects.has(file)) {
|
|
13385
13391
|
if (frameworkId === null || !byId.has(frameworkId))
|
|
13386
13392
|
throw new Error(`framework runtime product has no producer record ${file}`);
|
|
@@ -13492,8 +13498,9 @@ function guestSdkProductLinkArtifacts(products, sdk, inputs, linkedArchives, rew
|
|
|
13492
13498
|
for (const { product, root } of products) {
|
|
13493
13499
|
for (const artifact of product.artifacts) {
|
|
13494
13500
|
const file = import_node_path13.default.resolve(root, artifact.path);
|
|
13495
|
-
const
|
|
13496
|
-
|
|
13501
|
+
const archive = artifact.kind === "archive" ? canonicalArchivePath(file) : null;
|
|
13502
|
+
const objects = archive !== null ? origins.filter(
|
|
13503
|
+
(origin) => import_node_path13.default.resolve(origin.archive) === archive && (!selectedObjects || selectedObjects.has(
|
|
13497
13504
|
import_node_path13.default.resolve(rewritten.get(origin.original) ?? origin.original)
|
|
13498
13505
|
))
|
|
13499
13506
|
) : [];
|
|
@@ -17452,7 +17459,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
|
|
|
17452
17459
|
var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
|
|
17453
17460
|
var MULTI_MANIFEST_VERSION = 68;
|
|
17454
17461
|
var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
|
|
17455
|
-
var compilerSourceDigest = true ? "
|
|
17462
|
+
var compilerSourceDigest = true ? "0a0bc1c871aee83ea273120655f55a43ddccde646478a452b4c73d2daefd58c3" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
|
|
17456
17463
|
function swiftArtifactHash(input, release, moduleRoot) {
|
|
17457
17464
|
const hash = (0, import_node_crypto13.createHash)("sha256");
|
|
17458
17465
|
hash.update(`swift-compile
|
|
@@ -30868,7 +30875,7 @@ function sourceClosureDigest(srcDir, entrypoints) {
|
|
|
30868
30875
|
return hash.digest("hex");
|
|
30869
30876
|
}
|
|
30870
30877
|
var standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
|
|
30871
|
-
var STANDIN_SOURCE_DIGEST = true ? "
|
|
30878
|
+
var STANDIN_SOURCE_DIGEST = true ? "f5dd13fe8982e117facf0d8c668773904364a887ec47c728db7584b73f34d119" : standinSourceDigest();
|
|
30872
30879
|
|
|
30873
30880
|
// src/swift-standins.ts
|
|
30874
30881
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -31033,7 +31040,7 @@ function simulatorNativeLibrary(dir) {
|
|
|
31033
31040
|
continue;
|
|
31034
31041
|
if (typeof entry.LibraryPath !== "string" || typeof entry.LibraryIdentifier !== "string")
|
|
31035
31042
|
throw new Error(`${dir}: invalid simulator library paths`);
|
|
31036
|
-
const archive =
|
|
31043
|
+
const archive = /\.a$/.test(entry.LibraryPath);
|
|
31037
31044
|
const framework = /\.framework$/.test(entry.LibraryPath);
|
|
31038
31045
|
if (!archive && !framework) continue;
|
|
31039
31046
|
const bundle = import_node_path44.default.resolve(dir, entry.LibraryIdentifier, entry.LibraryPath);
|
|
@@ -33592,7 +33599,7 @@ function standinLibrary(binary, searchRoot, toolchain) {
|
|
|
33592
33599
|
if (prebuilt2) return import_node_path49.default.join(prebuilt2, recipe.archive);
|
|
33593
33600
|
}
|
|
33594
33601
|
}
|
|
33595
|
-
const manifest = crateFor(searchRoot,
|
|
33602
|
+
const manifest = crateFor(searchRoot, import_node_path49.default.basename(library, ".a").replace(/^lib/, ""));
|
|
33596
33603
|
if (!manifest) return null;
|
|
33597
33604
|
const entry = rustCrateEntry(manifest, library);
|
|
33598
33605
|
const prebuilt = fetchNativeEntry("rust", entry.name, entry.key);
|
package/dist-lib/vite.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
@@ -2923,7 +2923,7 @@ function readIosSdkTree(root) {
|
|
|
2923
2923
|
|
|
2924
2924
|
// src/swift-standin-digest.ts
|
|
2925
2925
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
2926
|
-
var STANDIN_SOURCE_DIGEST = true ? "
|
|
2926
|
+
var STANDIN_SOURCE_DIGEST = true ? "f5dd13fe8982e117facf0d8c668773904364a887ec47c728db7584b73f34d119" : standinSourceDigest();
|
|
2927
2927
|
|
|
2928
2928
|
// src/expo-native-workspace.ts
|
|
2929
2929
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -6417,7 +6417,7 @@ var FOUNDATION_IMPLICIT_MODULES = [
|
|
|
6417
6417
|
var FOUNDATION_IMPLICIT_FLAGS = FOUNDATION_IMPLICIT_MODULES.map(
|
|
6418
6418
|
(module2) => `, "-Xfrontend", "-import-module", "-Xfrontend", "${module2}"`
|
|
6419
6419
|
).join("");
|
|
6420
|
-
var compilerSourceDigest = true ? "
|
|
6420
|
+
var compilerSourceDigest = true ? "0a0bc1c871aee83ea273120655f55a43ddccde646478a452b4c73d2daefd58c3" : swiftCompilerSourceDigest2(__sootsim_import_meta_dirname);
|
|
6421
6421
|
var CORE_FOUNDATION_HANDLE_IMPORTS = [
|
|
6422
6422
|
"CFAllocator",
|
|
6423
6423
|
"CFArray",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2219 | (c) 2026 Tamagui LLC | Proprietary; see LICENSE */
|
|
2
2
|
let __sootsim_import_meta_url = '', __sootsim_import_meta_dirname = '', __sootsim_import_meta_filename = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; __sootsim_import_meta_dirname = __dirname; __sootsim_import_meta_filename = __filename; } catch {}
|
|
3
3
|
"use strict";
|
|
4
4
|
var __defProp = Object.defineProperty;
|
package/kotlin/sdk.tar.gz
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -30,6 +30,10 @@ import type {
|
|
|
30
30
|
|
|
31
31
|
const SDK_CATALOG_DIRECTORY = 'swift.xctoolchain/usr/lib/swift_static/wasi'
|
|
32
32
|
|
|
33
|
+
function canonicalArchivePath(file: string): string {
|
|
34
|
+
return path.join(realpathSync(path.dirname(file)), path.basename(file))
|
|
35
|
+
}
|
|
36
|
+
|
|
33
37
|
// the SDK view weakens three Foundation Bundle symbols. bind that view to the
|
|
34
38
|
// catalogued archive by reproducing the exact transformation on its bytes.
|
|
35
39
|
function sdkArtifactBytes(root: string, artifact: SwiftSdkProduct['artifacts'][number]) {
|
|
@@ -184,7 +188,7 @@ export function guestRuntimeInputIdentities(options: {
|
|
|
184
188
|
]
|
|
185
189
|
add(file, JSON.stringify(identity))
|
|
186
190
|
if (artifact.kind !== 'archive') continue
|
|
187
|
-
for (const origin of origins.get(file) ?? [])
|
|
191
|
+
for (const origin of origins.get(canonicalArchivePath(file)) ?? [])
|
|
188
192
|
add(
|
|
189
193
|
path.resolve(origin.original),
|
|
190
194
|
JSON.stringify([...identity, origin.member, origin.ordinal]),
|
|
@@ -308,7 +312,8 @@ export function guestRuntimeProductsForInputs(options: {
|
|
|
308
312
|
for (const { product, root } of options.products) {
|
|
309
313
|
byId.set(product.id, product)
|
|
310
314
|
for (const artifact of product.artifacts) {
|
|
311
|
-
const
|
|
315
|
+
const absolute = path.resolve(root, artifact.path)
|
|
316
|
+
const file = artifact.kind === 'archive' ? canonicalArchivePath(absolute) : absolute
|
|
312
317
|
const owners = byFile.get(file) ?? []
|
|
313
318
|
owners.push({ id: product.id, artifact })
|
|
314
319
|
byFile.set(file, owners)
|
|
@@ -343,7 +348,9 @@ export function guestRuntimeProductsForInputs(options: {
|
|
|
343
348
|
original.get(path.resolve(selection.artifact)) ?? path.resolve(selection.artifact)
|
|
344
349
|
const origin = origins.get(file)
|
|
345
350
|
const archive = origin ? path.resolve(origin.archive) : file
|
|
346
|
-
const records = byFile.get(
|
|
351
|
+
const records = byFile.get(
|
|
352
|
+
origin || selection.member !== null ? canonicalArchivePath(archive) : archive,
|
|
353
|
+
)
|
|
347
354
|
if (frameworkObjects.has(file)) {
|
|
348
355
|
if (frameworkId === null || !byId.has(frameworkId))
|
|
349
356
|
throw new Error(`framework runtime product has no producer record ${file}`)
|
|
@@ -494,11 +501,12 @@ export function guestSdkProductLinkArtifacts(
|
|
|
494
501
|
for (const { product, root } of products) {
|
|
495
502
|
for (const artifact of product.artifacts) {
|
|
496
503
|
const file = path.resolve(root, artifact.path)
|
|
504
|
+
const archive = artifact.kind === 'archive' ? canonicalArchivePath(file) : null
|
|
497
505
|
const objects =
|
|
498
|
-
|
|
506
|
+
archive !== null
|
|
499
507
|
? origins.filter(
|
|
500
508
|
(origin) =>
|
|
501
|
-
path.resolve(origin.archive) ===
|
|
509
|
+
path.resolve(origin.archive) === archive &&
|
|
502
510
|
(!selectedObjects ||
|
|
503
511
|
selectedObjects.has(
|
|
504
512
|
path.resolve(rewritten.get(origin.original) ?? origin.original),
|
package/src/swift-standins.ts
CHANGED
|
@@ -2351,7 +2351,7 @@ export function standinLibrary(
|
|
|
2351
2351
|
if (prebuilt) return path.join(prebuilt, recipe.archive)
|
|
2352
2352
|
}
|
|
2353
2353
|
}
|
|
2354
|
-
const manifest = crateFor(searchRoot,
|
|
2354
|
+
const manifest = crateFor(searchRoot, path.basename(library, '.a').replace(/^lib/, ''))
|
|
2355
2355
|
if (!manifest) return null
|
|
2356
2356
|
const entry = rustCrateEntry(manifest, library)
|
|
2357
2357
|
const prebuilt = fetchNativeEntry('rust', entry.name, entry.key)
|
package/src/swift-xcframework.ts
CHANGED
|
@@ -28,7 +28,7 @@ export function simulatorNativeLibrary(
|
|
|
28
28
|
typeof entry.LibraryIdentifier !== 'string'
|
|
29
29
|
)
|
|
30
30
|
throw new Error(`${dir}: invalid simulator library paths`)
|
|
31
|
-
const archive =
|
|
31
|
+
const archive = /\.a$/.test(entry.LibraryPath)
|
|
32
32
|
const framework = /\.framework$/.test(entry.LibraryPath)
|
|
33
33
|
if (!archive && !framework) continue
|
|
34
34
|
const bundle = path.resolve(dir, entry.LibraryIdentifier, entry.LibraryPath)
|