peachsim 0.1.2209 → 0.1.2213
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/command-registry.ts +1 -0
- package/cli/commands/inspect/settling.ts +1 -1
- package/cli/commands/map.ts +576 -0
- package/cli/commands/runtime.ts +1 -1
- package/cli/main.ts +6 -0
- package/cli/outbound-endpoints.ts +11 -0
- 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 +282 -53
- 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 +6 -3
- package/dist-lib/dev-bundle-resolution.cjs +1 -1
- package/dist-lib/expo-swift-bundle.cjs +280 -51
- 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 +1264 -856
- package/dist-lib/host/fetch-proxy-handler.cjs +21 -5
- 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 +1966 -752
- 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 +1806 -593
- package/dist-lib/native-app-identity-project.cjs +19 -3
- package/dist-lib/native-app-identity-project.mjs +19 -3
- 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 +25 -24
- package/dist-lib/public-origins-lib.json +83 -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 +2 -2
- package/dist-lib/sdk.mjs +2 -2
- package/dist-lib/skills.cjs +1800 -1334
- package/dist-lib/swift-compile.cjs +58 -12
- package/dist-lib/swift-compile.mjs +57 -12
- 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 +257 -47
- package/dist-lib/vite.cjs +1530 -303
- package/dist-lib/worklet-executable.cjs +1 -1
- package/dist-lib/worklet-executable.mjs +1 -1
- package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +1 -1
- package/dist-types/packages/peach-engine/src/engine/node.d.ts +1 -0
- package/kotlin/sdk.tar.gz +0 -0
- package/package.json +1 -1
- package/runtime-companion.json +1 -1
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/CoreData.apinotes +35 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/CoreData.h +8 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSAttributeDescription.h +30 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSEntityDescription.h +14 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSExpressionDescription.h +10 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSFetchIndexDescription.h +13 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSFetchIndexElementDescription.h +18 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSManagedObject.h +11 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSManagedObjectContext.h +19 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSManagedObjectID.h +2 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSManagedObjectModel.h +3 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSMergePolicy.h +17 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSPersistentStore.h +8 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSPersistentStoreCoordinator.h +6 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSPropertyDescription.h +13 -0
- package/sdk/ios/System/Library/Frameworks/CoreData.framework/Headers/NSRelationshipDescription.h +21 -0
- package/sdk/ios/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h +2 -0
- package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UIImage.h +1 -10
- package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UIKit.apinotes +21 -0
- package/sdk/ios/System/Library/Frameworks/UIKit.framework/Headers/UINibLoading.h +1 -1
- package/sdk/ios/System/Library/Frameworks/UIKitTypes.framework/Headers/UIKitTypes.h +11 -0
- package/sdk/ios/usr/lib/swift/Combine.swiftmodule/arm64-apple-ios-simulator.swiftinterface +18 -0
- package/sdk/ios/usr/lib/swift/Foundation.swiftmodule/arm64-apple-ios-simulator.swiftinterface +1 -0
- package/sdk/ios/usr/lib/swift/SwiftUI.swiftmodule/arm64-apple-ios-simulator.swiftinterface +19 -0
- package/sdk/ios/usr/lib/swift/SwiftUICore.swiftmodule/arm64-apple-ios-simulator.swiftinterface +4 -0
- package/sdk/ios/usr/lib/swift/UIKit.swiftmodule/arm64-apple-ios-simulator.swiftinterface +4 -0
- package/sdk/ios/wasm/include/pthread.h +1 -0
- package/sdk/ios/wasm/include/signal.h +2 -2
- package/sdk/native-hashes.json +3 -3
- package/skills/contrast/SKILL.md +1 -0
- package/src/home-paths.ts +1 -1
- package/src/host/bridge-host.ts +101 -97
- package/src/metro-plugin.ts +4 -1
- package/src/native-static-libraries.ts +7 -0
- package/src/react-native-coverage/native-source-ranges-file.ts +1 -1
- package/src/runtime-assets.ts +0 -1
- package/src/runtime-delivery.ts +1 -1
- package/src/runtime-packs.ts +212 -0
- package/src/swift-compile.ts +48 -10
- package/src/swift-host.ts +22 -3
- package/src/swift-objc-compile.ts +1 -1
- package/src/swift-objc-import.ts +32 -2
- package/src/swift-objc-standin.ts +1 -1
- package/src/swift-packages.ts +53 -28
- package/src/swift-pdf-raster.ts +60 -4
- package/src/swift-shipped-archives.json +44 -0
- package/src/swift-shipped-binaries.ts +12 -0
- package/src/swift-standin-config.ts +4 -2
- package/src/swift-standin-emit.ts +9 -3
- package/src/swift-standins.ts +75 -8
- package/src/vite-plugin-one.ts +4 -1
package/dist-lib/vite-swift.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! peach v0.1.
|
|
1
|
+
/*! peach v0.1.2213 | (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;
|
|
@@ -39,7 +39,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
39
39
|
var define_SWIFT_COVERAGE_SOURCE_DIGESTS_default;
|
|
40
40
|
var init_define_SWIFT_COVERAGE_SOURCE_DIGESTS = __esm({
|
|
41
41
|
"<define:__SWIFT_COVERAGE_SOURCE_DIGESTS__>"() {
|
|
42
|
-
define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "4b7d4a715cdaf57468ead23f2ff9dce76d02c6a888d73d144d4baa2ae571ba3c", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "
|
|
42
|
+
define_SWIFT_COVERAGE_SOURCE_DIGESTS_default = { "swift-coverage/indexdump.ts": "0d82d8eeb96bf377f409ea7e33274c341a710c0e071f6b6e17571a23d8d92412", "swift-coverage/indexing.ts": "633ccf19eec1f382a8847d0ee1dca42a2792a3c60aafd43622ed5152b09b8272", "swift-coverage/types.ts": "bd8fae54ea6c53e110cd8a5d7b57c1d532dd0166e09fdaea63c4f270c3780dd1", "swift-coverage/source.ts": "c151758a9f67631bc61473c375df0dc017da6902a34533b2cf4fc4fd7d19b6ee", "swift-coverage/package.ts": "1f0068be7461fa7c5a7a891faf318f305cbed2e94c19667ba76627f7e5be260b", "swift-coverage/xcode.ts": "65a500b806ce1c3a496de27f2e0ad77287c0f6795c618342c08af647f92af1fa", "swift-coverage/xcode-assets.ts": "99e03b74c961d2449afd58c2cbc415ba91d1d469a4f89e461c137fd6c305b27c", "swift-coverage/xcode-asset-symbols.ts": "1b2a67733bc9d139b351466270205452a6172140bc25080d72619e2952c44671", "swift-coverage/xcode-bridging.ts": "33184be8c5daf6646aa5a1276a4e15531f1be27b7c26f56550e0fbb1fc678a11", "swift-coverage/xcode-packages.ts": "8e6020d17d24474150a5a50d042aca6261819ef75c79680a287a66f395909915", "swift-coverage/xcode-strings.ts": "f2dd4c7cd8ef77035184b0132909c2fa09fd20ed06b7757c2f1f960bfdde031c", "swift-coverage/reader.ts": "da559b67ecd1161dea70c980b5f98f2c55af3550f0714479100fa5e9e813625c", "swift-coverage/provenance.ts": "eb3b41ae8b58b48f6758f084800f188dfb1edb227e483abdd6b80cde66e849b9", "swift-package-manifest.ts": "4b7d4a715cdaf57468ead23f2ff9dce76d02c6a888d73d144d4baa2ae571ba3c", "swift-package.ts": "338cfef9a34a930206ac2e1a8a90b85c8d61f776d9a41e6445dc18e0c5385cdb", "swift-source-file.ts": "93fd659ed63a27b67f54a7c229a7ceb636dc9c59e68414920ba36cff1eda1f94", "swift-toolchain.ts": "25505683ca29a0b380413bf2a5026d4967eacf886e35bc11ece6e15317e5bb02", "home-paths.ts": "d1606390f0e8e50f0ff72544eadb3d49dfabf08e004c1218f2998c36fb8995dd", "xcode-header-search.ts": "f8c3d557b4eca5ddad32907545353eb7ad53b2ebd0969d9ed8f7275e109a13b1", "xcode-project.ts": "86f79e98323ec065e0e5195324c75ca608f490efbd95dcc25c53d5aa0b9aecc9", "xcode-target-members.ts": "ad7589132bffab265e8a10b64e24484fe88b4a2b1cc0ee19a97f151a002eca77", "xcode-json-project.ts": "41990ebbe4b488eef34e74c4608b4b48e5a5b299ba98ca7fbcfdfa0e77be63b6", "openstep-plist.ts": "74e6ce1dac80c9c318e0e9f5e3e8cd19a898a8820c36fc160609695bcb59dcd3" };
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
|
|
@@ -7148,7 +7148,7 @@ function emitSwiftStandin(sourceGraphs, options) {
|
|
|
7148
7148
|
const coder = members2.some((member) => leaf(member) === "init(coder:)");
|
|
7149
7149
|
if (designated2 && !coder && externalRoot(id) !== "NSObject" && externalRoot(id) !== null)
|
|
7150
7150
|
emit(
|
|
7151
|
-
`${inner}public required init?(coder: NSCoder) { ${options.inert ? "return nil" : trap(`${path51}.init(coder:)`)} }`
|
|
7151
|
+
`${inner}public required init${options.coderNonfailable?.has(path51) ? "" : "?"}(coder: NSCoder) { ${options.inert && !options.coderNonfailable?.has(path51) ? "return nil" : trap(`${path51}.init(coder:)`)} }`
|
|
7152
7152
|
);
|
|
7153
7153
|
if (designated2 && !members2.some((member) => leaf(member) === "init()") && [...superChain(id)].some(
|
|
7154
7154
|
(at) => options.requiredInits?.has(`${pathOf(byId.get(at))}.init()`)
|
|
@@ -7329,15 +7329,18 @@ function emitSwiftStandin(sourceGraphs, options) {
|
|
|
7329
7329
|
const { 2: rest } = LEADING_ATTRS.exec(text(member));
|
|
7330
7330
|
const decl = rest.replace(/^(?:weak |unowned )/, "").replace(/^((?:static )?)let /, "$1var ");
|
|
7331
7331
|
const witness = `${owner2}.${leaf(member)}`;
|
|
7332
|
+
if (options.forcedOverride?.has(witness)) return;
|
|
7332
7333
|
const body = options.inert ? inertBody(member) : trap(witness);
|
|
7333
7334
|
if (member.kind.identifier === "swift.property" || member.kind.identifier === "swift.type.property") {
|
|
7334
7335
|
const parsed = splitAccessors(decl);
|
|
7335
7336
|
const setter = parsed.settable ? ` ${parsed.nonmutating ? "nonmutating " : ""}set { ${body} }` : "";
|
|
7336
|
-
|
|
7337
|
+
emitAt(
|
|
7338
|
+
witness,
|
|
7337
7339
|
`${indent2}${visibility} ${parsed.decl} { get${parsed.effects} { ${body} }${setter} }`
|
|
7338
7340
|
);
|
|
7339
7341
|
} else
|
|
7340
|
-
|
|
7342
|
+
emitAt(
|
|
7343
|
+
witness,
|
|
7341
7344
|
`${indent2}${member.kind.identifier === "swift.init" ? "public required " : visibility + " "}${stripDefaults(decl)} { ${body} }`
|
|
7342
7345
|
);
|
|
7343
7346
|
};
|
|
@@ -7773,7 +7776,7 @@ function iosDeploymentMinimum(version2) {
|
|
|
7773
7776
|
if (!parts) return void 0;
|
|
7774
7777
|
return Number(parts[1]) * 1e4 + Number(parts[2] ?? 0) * 100 + Number(parts[3] ?? 0);
|
|
7775
7778
|
}
|
|
7776
|
-
var headerFiles = (dir) => import_node_fs7.default.readdirSync(dir, { recursive: true, encoding: "utf8" }).filter((file) => file.endsWith(".h")).sort();
|
|
7779
|
+
var headerFiles = (dir) => import_node_fs7.default.readdirSync(dir, { recursive: true, encoding: "utf8" }).filter((file) => file.endsWith(".h") || file.endsWith(".hh")).sort();
|
|
7777
7780
|
function moduleMapHeaders(modulemap, directoryHeaders = []) {
|
|
7778
7781
|
const tokens2 = moduleMapTokens(import_node_fs7.default.readFileSync(modulemap, "utf8"));
|
|
7779
7782
|
const open = [];
|
|
@@ -14998,6 +15001,9 @@ init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
|
14998
15001
|
// ../contrast-runtime-delivery/src/version.ts
|
|
14999
15002
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
15000
15003
|
|
|
15004
|
+
// ../contrast-runtime-delivery/src/packs.ts
|
|
15005
|
+
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
15006
|
+
|
|
15001
15007
|
// ../contrast-runtime-delivery/src/index.ts
|
|
15002
15008
|
async function installVerifiedTarball(tarball) {
|
|
15003
15009
|
const { destDir, installedMarker, signal } = tarball;
|
|
@@ -16049,10 +16055,25 @@ function swiftClangImporterFlags(flags) {
|
|
|
16049
16055
|
(flag) => flag !== "-fobjc-arc" && flag !== "-fno-objc-arc" && !/^-std=(?:c(?!\+\+)|gnu(?!\+\+)|iso9899:)/.test(flag)
|
|
16050
16056
|
);
|
|
16051
16057
|
}
|
|
16052
|
-
|
|
16058
|
+
var SWIFT_SUBMODULE_IMPORT = /^[ \t]*(?:@\w+(?:\([^)]*\))?[ \t]+)*import[ \t]+([A-Za-z_]\w*)\.([A-Za-z_]\w*)[ \t]*(?:\/\/.*)?$/gm;
|
|
16059
|
+
function swiftSubmoduleImports(sources) {
|
|
16060
|
+
const imports2 = /* @__PURE__ */ new Map();
|
|
16061
|
+
for (const source of sources)
|
|
16062
|
+
for (const [, module2, submodule] of source.matchAll(SWIFT_SUBMODULE_IMPORT)) {
|
|
16063
|
+
const names = imports2.get(module2) ?? /* @__PURE__ */ new Set();
|
|
16064
|
+
names.add(submodule);
|
|
16065
|
+
imports2.set(module2, names);
|
|
16066
|
+
}
|
|
16067
|
+
return imports2;
|
|
16068
|
+
}
|
|
16069
|
+
function swiftObjCModuleMap(module2, headers, submodules = /* @__PURE__ */ new Set()) {
|
|
16070
|
+
const header = (file) => `header ${JSON.stringify(file)}`;
|
|
16071
|
+
const stem = (file) => file.slice(file.lastIndexOf("/") + 1).replace(/\.[^.]*$/, "");
|
|
16053
16072
|
return [
|
|
16054
16073
|
`module ${module2} {`,
|
|
16055
|
-
...headers.map(
|
|
16074
|
+
...headers.map(
|
|
16075
|
+
(file) => submodules.has(stem(file)) ? ` module ${stem(file)} { ${header(file)} export * }` : ` ${header(file)}`
|
|
16076
|
+
),
|
|
16056
16077
|
" export *",
|
|
16057
16078
|
"}",
|
|
16058
16079
|
""
|
|
@@ -17431,7 +17452,7 @@ var darwinRecordsRegion = (quoted) => quoted.length ? ["-Wl,--start-lib", ...quo
|
|
|
17431
17452
|
var REACTOR_FLAG = '"-Xclang-linker", "-mexec-model=reactor",\n';
|
|
17432
17453
|
var MULTI_MANIFEST_VERSION = 68;
|
|
17433
17454
|
var SWIFT_HEADER_PRODUCTS_TARGET = "PeachHeaderProducts";
|
|
17434
|
-
var compilerSourceDigest = true ? "
|
|
17455
|
+
var compilerSourceDigest = true ? "4646bbe2e0cd2e48e498f51fd3d0d5ea29ecd5e6163fdf3afe8d64d4368022d7" : swiftCompilerSourceDigest(__sootsim_import_meta_dirname);
|
|
17435
17456
|
function swiftArtifactHash(input, release, moduleRoot) {
|
|
17436
17457
|
const hash = (0, import_node_crypto13.createHash)("sha256");
|
|
17437
17458
|
hash.update(`swift-compile
|
|
@@ -19020,6 +19041,20 @@ function stripCCode(source) {
|
|
|
19020
19041
|
}
|
|
19021
19042
|
return code;
|
|
19022
19043
|
}
|
|
19044
|
+
var wasmMacroEnvironment = {
|
|
19045
|
+
...emptyMacroEnvironment,
|
|
19046
|
+
defines: /* @__PURE__ */ new Map([
|
|
19047
|
+
["__wasm__", "1"],
|
|
19048
|
+
["__wasm32__", "1"],
|
|
19049
|
+
["__wasi__", "1"]
|
|
19050
|
+
])
|
|
19051
|
+
};
|
|
19052
|
+
function swiftCTakesReturnAddress(source) {
|
|
19053
|
+
if (!source.includes("__builtin_return_address")) return false;
|
|
19054
|
+
return /\b__builtin_return_address\s*\(/.test(
|
|
19055
|
+
cActiveCode(stripCCode(source), wasmMacroEnvironment)
|
|
19056
|
+
);
|
|
19057
|
+
}
|
|
19023
19058
|
function swiftCDefinedNames(sources) {
|
|
19024
19059
|
const names = /* @__PURE__ */ new Set();
|
|
19025
19060
|
for (const source of sources)
|
|
@@ -19317,6 +19352,11 @@ ${swiftProjectFilesProblems(input.projectFiles).join("\n")}`
|
|
|
19317
19352
|
clangImportedModules.add(name3);
|
|
19318
19353
|
}
|
|
19319
19354
|
}
|
|
19355
|
+
const submoduleImports = swiftSubmoduleImports(
|
|
19356
|
+
Object.entries(input.files).flatMap(
|
|
19357
|
+
([file, contents]) => file.endsWith(".swift") ? [contents] : []
|
|
19358
|
+
)
|
|
19359
|
+
);
|
|
19320
19360
|
const headerDirectory = import_node_path27.default.join(layout2.root, ".build", "peach-cxx-headers");
|
|
19321
19361
|
const flattenedHeaders = /* @__PURE__ */ new Set();
|
|
19322
19362
|
if ((0, import_node_fs27.existsSync)(headerDirectory)) {
|
|
@@ -19702,7 +19742,8 @@ ${swiftProjectFilesProblems(input.projectFiles).join("\n")}`
|
|
|
19702
19742
|
);
|
|
19703
19743
|
const moduleContents = originalModuleMap ? input.files[originalModuleMap[1]] : swiftpmModuleMap?.contents ?? packageModuleMap?.[1] ?? swiftObjCModuleMap(
|
|
19704
19744
|
swiftTargetModuleName(target.name),
|
|
19705
|
-
roots2.map((file) => import_node_path27.default.join(layout2.root, file))
|
|
19745
|
+
roots2.map((file) => import_node_path27.default.join(layout2.root, file)),
|
|
19746
|
+
submoduleImports.get(swiftTargetModuleName(target.name))
|
|
19706
19747
|
);
|
|
19707
19748
|
if (moduleContents === void 0)
|
|
19708
19749
|
throw new Error("missing original module map " + modulemap);
|
|
@@ -20027,10 +20068,14 @@ module ${moduleName}.Swift {
|
|
|
20027
20068
|
header ${JSON.stringify(import_node_path27.default.join(headerDirectory, name3 + "-Swift.h"))}
|
|
20028
20069
|
requires objc
|
|
20029
20070
|
}
|
|
20030
|
-
` : swiftObjCModuleMap(
|
|
20031
|
-
|
|
20032
|
-
|
|
20033
|
-
|
|
20071
|
+
` : swiftObjCModuleMap(
|
|
20072
|
+
moduleName,
|
|
20073
|
+
[
|
|
20074
|
+
...(input.nativeTargets?.find((target) => target.name === name3)?.publicHeaders ?? []).map((header) => import_node_path27.default.join(layout2.root, header)),
|
|
20075
|
+
import_node_path27.default.join(headerDirectory, name3 + "-Swift.h")
|
|
20076
|
+
],
|
|
20077
|
+
submoduleImports.get(moduleName)
|
|
20078
|
+
)
|
|
20034
20079
|
);
|
|
20035
20080
|
nativeHeaderFlags.push("-fmodule-map-file=" + modulemap);
|
|
20036
20081
|
}
|
|
@@ -21021,8 +21066,12 @@ async function buildFrameworkProducts(scratch2, args) {
|
|
|
21021
21066
|
const linked = frameworkLinkClosure(scratch2, linkedTargets.targets);
|
|
21022
21067
|
const objects = linked.objects;
|
|
21023
21068
|
if (linked.modules.has("UniformTypeIdentifiers")) {
|
|
21024
|
-
const
|
|
21025
|
-
|
|
21069
|
+
const constantsDir = import_node_path27.default.join(scratch2, "uniform-type-constants");
|
|
21070
|
+
const constantsStamp = import_node_path27.default.join(constantsDir, ".complete");
|
|
21071
|
+
const object4 = import_node_path27.default.join(constantsDir, "UniformTypeIdentifiers-NativeConstants.o");
|
|
21072
|
+
if (!(0, import_node_fs27.existsSync)(constantsStamp) || (0, import_node_fs27.readFileSync)(constantsStamp, "utf8") !== args.frameworkKey) {
|
|
21073
|
+
(0, import_node_fs27.rmSync)(constantsDir, { recursive: true, force: true });
|
|
21074
|
+
(0, import_node_fs27.mkdirSync)(constantsDir);
|
|
21026
21075
|
const sdkPaths2 = swiftSdkPaths(args.moduleRoot, args.toolchainBin);
|
|
21027
21076
|
compileUniformTypeConstants({
|
|
21028
21077
|
bin: args.toolchainBin,
|
|
@@ -21030,8 +21079,9 @@ async function buildFrameworkProducts(scratch2, args) {
|
|
|
21030
21079
|
darwin: sdkPaths2.darwin,
|
|
21031
21080
|
packageRoot: args.moduleRoot,
|
|
21032
21081
|
minimum: darwinRecordsMinimum(),
|
|
21033
|
-
out:
|
|
21082
|
+
out: constantsDir
|
|
21034
21083
|
});
|
|
21084
|
+
(0, import_node_fs27.writeFileSync)(constantsStamp, args.frameworkKey);
|
|
21035
21085
|
}
|
|
21036
21086
|
objects.push(object4);
|
|
21037
21087
|
linked.owners.set(object4, "UniformTypeIdentifiers");
|
|
@@ -30139,6 +30189,62 @@ init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
|
30139
30189
|
// src/numbered-lock.ts
|
|
30140
30190
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
30141
30191
|
|
|
30192
|
+
// src/swift-shipped-binaries.ts
|
|
30193
|
+
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
30194
|
+
|
|
30195
|
+
// src/swift-shipped-archives.json
|
|
30196
|
+
var swift_shipped_archives_default = {
|
|
30197
|
+
AppCheckCore: "a18d4e5aff27ff4b9bce8d6e73e55ccf1d11515311e219aa4473319cdff3187b",
|
|
30198
|
+
AppLovinSDK: "c00f052c4b15766a6a2734e2b3685234e6bd28dbc47fbe7cbc3edbf56f701d5c",
|
|
30199
|
+
AppsFlyerLib: "13bae495e63e22579dd9525a1c9e88d8eedc78b4586979b7e2d492cfd3efbe1f",
|
|
30200
|
+
FBAEMKit: "ceaf685683c6a23ae4893150d0d770aeeaec34811ac8c146b3aa351beade5fa0",
|
|
30201
|
+
FBAudienceNetwork: "4d84bf1e404a83852a93af2ae73e22e45bb2b11e0a9a445c3b461173a5d6aec3",
|
|
30202
|
+
FBLPromises: "3544fb457e7f60c69740cdd26617a75bdd613943e948becca643022c7edd76c0",
|
|
30203
|
+
FBSDKCoreKit: "1577edd62ec0c172928befed3b309dc59ae8915d2aaad091460d9d1be5ddc13d",
|
|
30204
|
+
FBSDKCoreKit_Basics: "c780833f204f9ec6eab70a3758a45c5c78bfb6f4e590289ccf395497f204cac1",
|
|
30205
|
+
FirebaseAnalytics: "e3253a494375c5174d20cb81925e20afa1ff6b1419125cb608d39b092b53ff2a",
|
|
30206
|
+
FirebaseAppCheck: "af82d72727d55d14f65eee96845d4d9495e4e603b4673709d6f3448b9595cc63",
|
|
30207
|
+
FirebaseAppCheckInterop: "7ffd54e6fe187bf8cd714e3d863e0095f7cbbb0fb802adb87a40c552de7cffcc",
|
|
30208
|
+
FirebaseAuth: "fcde09db8d45ffba67802e81c17b8046db6b56568226ace3fca898983b08c968",
|
|
30209
|
+
FirebaseAuthInterop: "e8e6f4fb42b3fa76c2bade7a522ab0f224558d27d2321175c791d307541787a8",
|
|
30210
|
+
FirebaseCore: "30e3505c715e17682c1dc20bb26ba475e99e6981a9a0dba3cf9352eea632fc1d",
|
|
30211
|
+
FirebaseCoreExtension: "e37ce2abcd4c218ab5426da78cbe7ab41f79ee7eba1d02dd4b0cde952ed2c4a0",
|
|
30212
|
+
FirebaseCoreInternal: "72a15c0c63585faf93e9ffa91e8a8c1c50b24749405804ffae19a29ec05b07ab",
|
|
30213
|
+
FirebaseCrashlytics: "e03c71913efd97678b895abb1e968c83e58b3fbd7955a81ec6e6581b95db16e3",
|
|
30214
|
+
FirebaseFirestore: "f7a1bb7fc4a2fb09298b514114d6aaca9a4f00fd8868667524a05bc4563bf1fd",
|
|
30215
|
+
FirebaseFirestoreInternal: "d9595a1784beaf5cd4a8e0dda0f4364ddfa6b536ad60f82746d81d14dce037a3",
|
|
30216
|
+
FirebaseInstallations: "141e313325bab001f2dbb79dc8a433f884f4c4a12a5feb665e6958098d637f7b",
|
|
30217
|
+
FirebaseRemoteConfig: "e0ae6d626a423d535bc67216f9f0cd66f98f1c0fb4b5bf88074d4496733e2db1",
|
|
30218
|
+
FirebaseRemoteConfigInterop: "794f599eb4232058715b606fa671639c8cc5d821655a0f739651d17c5ef65c37",
|
|
30219
|
+
FirebaseSessions: "1781d72e47dac0fc7a532412641021730bd5b659135633cd9ef7b97ccd31b0ce",
|
|
30220
|
+
FirebaseSharedSwift: "8d63b09a517733ef3a58390bf1e8cf054f058bdd618bb4f19a1f4b5a0b4f09e5",
|
|
30221
|
+
FirebaseStorage: "636b33180dd5ad60b4878357691fe6472cf3bd57ec691e9d661c5444f523df66",
|
|
30222
|
+
GTMSessionFetcher: "f58dc2bd9db39defd73f0f67e7a11893a0c6e6f0ba45cd83cf420b2b3c15f1bd",
|
|
30223
|
+
GoogleAdsOnDeviceConversion: "31a5a1f5204f4844a480d3889b6ebe2e69473ef32b868935c51812c0483cb08b",
|
|
30224
|
+
GoogleAppMeasurement: "5741e6334392e0345f1b5896111ffef4d5a78859970f5e197fa0b7d881165305",
|
|
30225
|
+
GoogleAppMeasurementIdentitySupport: "b70cb033eeb002ed1c5a8140953ccb3be0221ca754c05fe450ed9c9c6547f274",
|
|
30226
|
+
GoogleDataTransport: "7d08050419e0906f13039cc4d2dd69be075234c0bf5bbb34df9dd4891e48831d",
|
|
30227
|
+
GoogleMobileAds: "f2c09c60ee331ce029f563304ad73a481d57ace0d4bc11ce33a2bf59497c59bf",
|
|
30228
|
+
GoogleUtilities: "37a9d3d3810dad763a8a79bd4c7cc4c37b386240725aca07f45dba1826676c8c",
|
|
30229
|
+
Intercom: "fc8251f24b305b91f83304d4dffaf1a90c424a7bc37be8b595dd1fc5cff566ea",
|
|
30230
|
+
Promises: "6d8f1a4b3d561d67adfc2026834779b05685d1cdacea6e83c70d0641c39f24de",
|
|
30231
|
+
RecaptchaInterop: "cf5cc62ebc237b34d5267c1190d18f33b424dbc7f81713f127108d0ad8a592cf",
|
|
30232
|
+
RiveRuntime: "72b6ff5c5a1d153c9cdbea9a917c09be557cfcb1fafa02853fa06b0268551710",
|
|
30233
|
+
absl: "fff0388cf074c69a2da4bc197a005da0b8e5c23ebdcfa383600c540a342f9df1",
|
|
30234
|
+
grpc: "918737c9f8f93e14127b3894e31c7a0522475f2247b74f87d8166dff3a6bafb0",
|
|
30235
|
+
grpcpp: "b83f85e0256cf06df00cf0ed728b5c0d68373ca401742877935771447450b90a",
|
|
30236
|
+
leveldb: "5521a6e6e4cd01b2e31b099d4341f1bccae7e8ba43de648b028928573daf8bb4",
|
|
30237
|
+
nanopb: "a7fafe2e4e16d99de4c58f72e22dcc53221885aa6d678d1270123e4b01badfa3",
|
|
30238
|
+
openssl_grpc: "b2aaede82457cdd15915762a4f57b38e28ba0f47b9b48556a7e0c46881973096"
|
|
30239
|
+
};
|
|
30240
|
+
|
|
30241
|
+
// src/swift-shipped-binaries.ts
|
|
30242
|
+
var SHIPPED_ARCHIVES = new Map(Object.entries(swift_shipped_archives_default));
|
|
30243
|
+
function shippedBinaryDiffers(target, checksum) {
|
|
30244
|
+
const shipped = SHIPPED_ARCHIVES.get(target);
|
|
30245
|
+
return shipped !== void 0 && checksum !== null && checksum !== shipped;
|
|
30246
|
+
}
|
|
30247
|
+
|
|
30142
30248
|
// src/swift-packages.ts
|
|
30143
30249
|
var swiftBinaryOnDisk = (binary) => binary.url !== null || import_node_fs40.default.existsSync(binary.dir);
|
|
30144
30250
|
var SWIFT_PLACEHOLDER_PACKAGES = /* @__PURE__ */ new Map();
|
|
@@ -30151,16 +30257,22 @@ function remoteSwiftCheckouts(root) {
|
|
|
30151
30257
|
return import_node_path41.default.join(import_node_fs40.default.realpathSync(cacheDir()), "swift-packages", key2, "checkouts");
|
|
30152
30258
|
}
|
|
30153
30259
|
var UNSUPPORTED_NATIVE = /\.(s|S)$/;
|
|
30154
|
-
function
|
|
30260
|
+
function unlowerableSources(files2, target) {
|
|
30261
|
+
if (target.declaresWasiNativeSettings) return [];
|
|
30262
|
+
return [
|
|
30263
|
+
...files2.filter((file) => UNSUPPORTED_NATIVE.test(file)),
|
|
30264
|
+
...files2.filter(isSwiftNativeTranslationUnit).filter((file) => swiftCTakesReturnAddress(import_node_fs40.default.readFileSync(file, "utf8")))
|
|
30265
|
+
];
|
|
30266
|
+
}
|
|
30267
|
+
function unloweredSources(files2, target) {
|
|
30155
30268
|
if (target.type !== "regular") return null;
|
|
30156
|
-
if (target.declaresWasiNativeSettings) return null;
|
|
30157
|
-
const assembly = files2.filter((file) => UNSUPPORTED_NATIVE.test(file));
|
|
30158
|
-
if (assembly.length === 0) return null;
|
|
30159
30269
|
if (!files2.some(isSwiftNativeTranslationUnit)) return null;
|
|
30270
|
+
const unlowered = unlowerableSources(files2, target);
|
|
30271
|
+
if (unlowered.length === 0) return null;
|
|
30160
30272
|
const headers = import_node_path41.default.resolve(target.dir, target.publicHeadersPath);
|
|
30161
30273
|
if (!files2.some((file) => file.startsWith(`${headers}${import_node_path41.default.sep}`) && file.endsWith(".h")))
|
|
30162
30274
|
return null;
|
|
30163
|
-
return
|
|
30275
|
+
return unlowered;
|
|
30164
30276
|
}
|
|
30165
30277
|
var BINARY = "is a binary framework";
|
|
30166
30278
|
var blockers = (reasons) => [...new Set(reasons.flat())];
|
|
@@ -30325,9 +30437,9 @@ function resolveSwiftPackages(options) {
|
|
|
30325
30437
|
if (target.type === "macro") return preservePackage(pkg, [name3], "host");
|
|
30326
30438
|
const files2 = target.type === "regular" || target.type === "system" ? swiftTargetFiles(pkg.manifest, target) : [];
|
|
30327
30439
|
const gap = options.binaryGaps?.get(name3);
|
|
30328
|
-
const
|
|
30440
|
+
const unlowerable = unlowerableSources(files2, target);
|
|
30329
30441
|
const placeholder = placeholderPackage(pkg);
|
|
30330
|
-
const ownReason = target.type === "binary" ? `${name3} ${BINARY}${gap ? `; ${gap}` : ""}` : placeholder && gap ? `${name3} stands in as a placeholder (${placeholder}), and ${gap}` : target.type !== "regular" && target.type !== "system" ? `${name3} is a ${target.type} target` :
|
|
30442
|
+
const ownReason = target.type === "binary" ? `${name3} ${BINARY}${gap ? `; ${gap}` : ""}` : placeholder && gap ? `${name3} stands in as a placeholder (${placeholder}), and ${gap}` : target.type !== "regular" && target.type !== "system" ? `${name3} is a ${target.type} target` : unlowerable.length > 0 ? `${name3} has native sources with no wasm32 lowering: ${unlowerable.map((file) => import_node_path41.default.relative(pkg.manifest.dir, file)).join(", ")}${gap ? `; ${gap}` : ""}` : null;
|
|
30331
30443
|
const reasons = target.dependencies.map((dependency) => {
|
|
30332
30444
|
if (dependency.kind === "target") return resolveTarget(pkg, dependency.name);
|
|
30333
30445
|
const nested = resolveDependencyProduct(pkg, dependency);
|
|
@@ -30406,7 +30518,7 @@ function resolveSwiftPackages(options) {
|
|
|
30406
30518
|
(file) => file.endsWith(".swift") && import_node_fs40.default.readFileSync(file, "utf8").trim() === ""
|
|
30407
30519
|
))
|
|
30408
30520
|
return false;
|
|
30409
|
-
if (
|
|
30521
|
+
if (unloweredSources(files2, target)) return false;
|
|
30410
30522
|
claimed.add(key2);
|
|
30411
30523
|
providedTargets.delete(name3);
|
|
30412
30524
|
for (const dependency of target.dependencies) {
|
|
@@ -30420,6 +30532,13 @@ function resolveSwiftPackages(options) {
|
|
|
30420
30532
|
};
|
|
30421
30533
|
const claimProduct = (pkg, product) => {
|
|
30422
30534
|
const roots = pkg.manifest.products.get(product)?.targets ?? [];
|
|
30535
|
+
for (const root of roots) {
|
|
30536
|
+
const target = pkg.manifest.targets.get(root);
|
|
30537
|
+
if (target?.type === "binary" && !options.standinTargets?.has(root) && shippedBinaryDiffers(root, target.checksum)) {
|
|
30538
|
+
providedTargets.delete(root);
|
|
30539
|
+
providedProducts.delete(product);
|
|
30540
|
+
}
|
|
30541
|
+
}
|
|
30423
30542
|
if (roots.map((name3) => claimTarget(pkg, name3)).some(Boolean))
|
|
30424
30543
|
providedProducts.delete(product);
|
|
30425
30544
|
};
|
|
@@ -30447,7 +30566,7 @@ function resolveSwiftPackages(options) {
|
|
|
30447
30566
|
if (target.type === "executable") continue;
|
|
30448
30567
|
const files2 = target.type === "regular" || target.type === "system" ? swiftTargetFiles(pkg.manifest, target) : [];
|
|
30449
30568
|
const objc = target.type === "regular" && files2.some((file) => /\.(m|mm)$/.test(file));
|
|
30450
|
-
const
|
|
30569
|
+
const unlowered = unloweredSources(files2, target);
|
|
30451
30570
|
const gap = placeholderPackage(pkg);
|
|
30452
30571
|
const sources = files2.filter((file) => file.endsWith(".swift"));
|
|
30453
30572
|
const release = (setting) => setting.configuration !== "debug";
|
|
@@ -30474,7 +30593,7 @@ function resolveSwiftPackages(options) {
|
|
|
30474
30593
|
]
|
|
30475
30594
|
}
|
|
30476
30595
|
});
|
|
30477
|
-
else if (target.type === "binary" || objc ||
|
|
30596
|
+
else if (target.type === "binary" || objc || unlowered)
|
|
30478
30597
|
result.binaries.push({
|
|
30479
30598
|
target: name3,
|
|
30480
30599
|
source: pkg.source,
|
|
@@ -30488,8 +30607,8 @@ function resolveSwiftPackages(options) {
|
|
|
30488
30607
|
import_node_path41.default.join(target.dir, target.publicHeadersPath)
|
|
30489
30608
|
)
|
|
30490
30609
|
},
|
|
30491
|
-
...
|
|
30492
|
-
|
|
30610
|
+
...unlowered ? {
|
|
30611
|
+
unloweredSources: unlowered.map(
|
|
30493
30612
|
(file) => import_node_path41.default.relative(pkg.manifest.dir, file)
|
|
30494
30613
|
)
|
|
30495
30614
|
} : {}
|
|
@@ -30746,7 +30865,7 @@ function sourceClosureDigest(srcDir, entrypoints) {
|
|
|
30746
30865
|
return hash.digest("hex");
|
|
30747
30866
|
}
|
|
30748
30867
|
var standinSourceDigest = (srcDir = __sootsim_import_meta_dirname) => sourceClosureDigest(srcDir, STANDIN_DIGEST_ENTRYPOINTS);
|
|
30749
|
-
var STANDIN_SOURCE_DIGEST = true ? "
|
|
30868
|
+
var STANDIN_SOURCE_DIGEST = true ? "f077081111b09ca27482cd53be422dae6cd1bd3a5fd2b2bdef48a83a9c0d6ca8" : standinSourceDigest();
|
|
30750
30869
|
|
|
30751
30870
|
// src/swift-standins.ts
|
|
30752
30871
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -31094,6 +31213,13 @@ var NATIVE_STATIC_LIBRARY_RECIPES = [
|
|
|
31094
31213
|
upstream: "b94213a11b3a2edadfae89f0c57a7f4ab72772c9",
|
|
31095
31214
|
recipe: "a2642115a5eeb04559c9f1daaa4b4cbe4b1c211533b4cc80cb8339a4477af205",
|
|
31096
31215
|
archive: "libsksg.a"
|
|
31216
|
+
},
|
|
31217
|
+
{
|
|
31218
|
+
name: "webgpu_dawn",
|
|
31219
|
+
nativeSha256: "95078993275bccc969b1dfa1ad0934cbacc05ae59e8aa2a6cc46ce93e97d4f69",
|
|
31220
|
+
upstream: "3d786993a7ded64c4ebb4884b9b079db9ad0e580",
|
|
31221
|
+
recipe: "c55468cc976e837ad894133f2231beb7d1ed64633af7b457b8a2610d7df45994",
|
|
31222
|
+
archive: "libwebgpu_dawn.a"
|
|
31097
31223
|
}
|
|
31098
31224
|
];
|
|
31099
31225
|
function nativeStaticLibraryEntry(recipe, compiler, sdk, distribution) {
|
|
@@ -32607,7 +32733,7 @@ function interfaceEnumValues(graphs, interfaceText) {
|
|
|
32607
32733
|
const declarations = [
|
|
32608
32734
|
...interfaceText.matchAll(
|
|
32609
32735
|
new RegExp(
|
|
32610
|
-
`^([ \\t]*)(?:@[\\w.]+(?:\\([^)]*\\))?\\s+)*(?:nonisolated\\s+)?(?:public|open)\\s+enum\\s+${name3}\\s*:\\s*(?:Swift\\.)?U?Int(?:8|16|32|64)
|
|
32736
|
+
`^([ \\t]*)(?:@[\\w.]+(?:\\([^)]*\\))?\\s+)*(?:nonisolated\\s+)?(?:public|open)\\s+enum\\s+${name3}\\s*:\\s*(?:Swift\\.)?(?:U?Int(?:8|16|32|64)?|IntegerLiteralType)\\b[^{]*\\{[ \\t]*$`,
|
|
32611
32737
|
"gm"
|
|
32612
32738
|
)
|
|
32613
32739
|
)
|
|
@@ -32706,9 +32832,26 @@ function mixedStandin(surface, binary, toolchain, work, behavior, frameworkDirs,
|
|
|
32706
32832
|
view.protocolProperties ?? /* @__PURE__ */ new Map(),
|
|
32707
32833
|
null,
|
|
32708
32834
|
view.inheritedConformances,
|
|
32709
|
-
interfaceProjections(view.graphs, interfaceText)
|
|
32835
|
+
interfaceProjections(view.graphs, interfaceText),
|
|
32836
|
+
[],
|
|
32837
|
+
externalConformances(surface.module, interfaceText)
|
|
32710
32838
|
);
|
|
32711
32839
|
}
|
|
32840
|
+
function externalConformances(module2, interfaceText) {
|
|
32841
|
+
const lines = /* @__PURE__ */ new Set();
|
|
32842
|
+
for (const match of interfaceText.matchAll(
|
|
32843
|
+
/^(?:@\w+\s+)*extension\s+([\w.]+)\s*:\s*([^{\n]+?)\s*\{/gm
|
|
32844
|
+
)) {
|
|
32845
|
+
const [, extended, conformances] = match;
|
|
32846
|
+
if (extended.startsWith(`${module2}.`) || /\bwhere\b/.test(conformances)) continue;
|
|
32847
|
+
const own = conformances.split(",").map((name3) => name3.trim()).filter((name3) => name3.startsWith(`${module2}.`));
|
|
32848
|
+
const type = extended.startsWith("Swift.") ? extended : extended.split(".").slice(1).join(".");
|
|
32849
|
+
if (own.length > 0 && type) lines.add(`extension ${type} : ${own.join(", ")} {}
|
|
32850
|
+
`);
|
|
32851
|
+
}
|
|
32852
|
+
return lines.size > 0 ? `
|
|
32853
|
+
${[...lines].join("")}` : "";
|
|
32854
|
+
}
|
|
32712
32855
|
var WASM_EH_FLAGS = ["-Xllvm", "-wasm-enable-eh"];
|
|
32713
32856
|
function wasmFlags(toolchain, imports2) {
|
|
32714
32857
|
const { sysroot, darwin, resources, cFlags } = swiftSdkPaths(
|
|
@@ -32804,7 +32947,7 @@ function objcStandin(surface, binary, toolchain, work, behavior, frameworks, sib
|
|
|
32804
32947
|
}
|
|
32805
32948
|
var OBJC_UNREPRESENTABLE = "cannot be marked '@objc' because its type cannot be represented in Objective-C";
|
|
32806
32949
|
var INERT_VALUE = /missing argument|cannot be constructed|has no member 'init'|no exact matches in call to initializer|cannot convert return expression|does not conform to '|extra argument|takes no arguments|could not be inferred|cannot infer/;
|
|
32807
|
-
function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, requiredInits2, declared, imports2 = [], requireSwift = false, objcProperties = /* @__PURE__ */ new Map(), placeholder = null, inheritedConformances = /* @__PURE__ */ new Map(), projections = /* @__PURE__ */ new Map(), dependencyGraphs = []) {
|
|
32950
|
+
function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, requiredInits2, declared, imports2 = [], requireSwift = false, objcProperties = /* @__PURE__ */ new Map(), placeholder = null, inheritedConformances = /* @__PURE__ */ new Map(), projections = /* @__PURE__ */ new Map(), dependencyGraphs = [], trailer = "") {
|
|
32808
32951
|
const paths = new Set(
|
|
32809
32952
|
graphs.flatMap(
|
|
32810
32953
|
(graph) => graph.symbols.map((symbol2) => symbol2.pathComponents.join("."))
|
|
@@ -32845,6 +32988,8 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
|
|
|
32845
32988
|
const plain = /* @__PURE__ */ new Set();
|
|
32846
32989
|
const unobjc = /* @__PURE__ */ new Set();
|
|
32847
32990
|
const trapped = /* @__PURE__ */ new Set();
|
|
32991
|
+
const forced = /* @__PURE__ */ new Set();
|
|
32992
|
+
const nonfailable = /* @__PURE__ */ new Set();
|
|
32848
32993
|
const unconformed = /* @__PURE__ */ new Map();
|
|
32849
32994
|
const objcProtocols = new Set(
|
|
32850
32995
|
graphs.flatMap(
|
|
@@ -32854,7 +32999,7 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
|
|
|
32854
32999
|
)
|
|
32855
33000
|
);
|
|
32856
33001
|
const file = import_node_path49.default.join(work, `${module2}.swift`);
|
|
32857
|
-
const inert = binary.placeholder !== void 0 || binary.publicHeaders !== void 0 && binary.
|
|
33002
|
+
const inert = binary.placeholder !== void 0 || binary.publicHeaders !== void 0 && binary.unloweredSources === void 0;
|
|
32858
33003
|
for (; ; ) {
|
|
32859
33004
|
const { source, owners, skipped } = emitSwiftStandin(graphs, {
|
|
32860
33005
|
module: module2,
|
|
@@ -32867,6 +33012,8 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
|
|
|
32867
33012
|
unobjc,
|
|
32868
33013
|
unconformed,
|
|
32869
33014
|
trapped,
|
|
33015
|
+
forcedOverride: forced,
|
|
33016
|
+
coderNonfailable: nonfailable,
|
|
32870
33017
|
inert,
|
|
32871
33018
|
imports: [...placeholder?.peachImports ?? [], ...imports2],
|
|
32872
33019
|
family: [...imports2, ...placeholder?.peachImports ?? []],
|
|
@@ -32886,7 +33033,7 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
|
|
|
32886
33033
|
`Configured Swift behavior ${module2}.${entry.path} was not emitted: ${entry.reason}`
|
|
32887
33034
|
);
|
|
32888
33035
|
}
|
|
32889
|
-
import_node_fs48.default.writeFileSync(file, source);
|
|
33036
|
+
import_node_fs48.default.writeFileSync(file, source + trailer);
|
|
32890
33037
|
const check2 = (0, import_node_child_process29.spawnSync)(
|
|
32891
33038
|
import_node_path49.default.join(toolchain.toolchainBin, "swiftc"),
|
|
32892
33039
|
// emitting the module runs the diagnostics a typecheck skips, such as
|
|
@@ -32910,10 +33057,10 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
|
|
|
32910
33057
|
return {
|
|
32911
33058
|
module: module2,
|
|
32912
33059
|
target: binary.target,
|
|
32913
|
-
files: { [`${module2}.swift`]: source },
|
|
33060
|
+
files: { [`${module2}.swift`]: source + trailer },
|
|
32914
33061
|
...imports2.length ? { dependencies: imports2 } : {}
|
|
32915
33062
|
};
|
|
32916
|
-
const before = omit.size + plain.size + unobjc.size + trapped.size + unconformed.size;
|
|
33063
|
+
const before = omit.size + plain.size + unobjc.size + trapped.size + unconformed.size + forced.size + nonfailable.size;
|
|
32917
33064
|
const elsewhere = [];
|
|
32918
33065
|
for (const match of check2.stderr.matchAll(/^(\S+?):(\d+):\d+: error: (.*)$/gm)) {
|
|
32919
33066
|
const owner = match[1] === file ? owners[Number(match[2]) - 1] : void 0;
|
|
@@ -32936,14 +33083,22 @@ function graphStandin(module2, graphs, values, wasm, binary, toolchain, work, re
|
|
|
32936
33083
|
throw new Error(
|
|
32937
33084
|
`Configured Swift behavior ${module2}.${owner} does not typecheck: ${match[3]}`
|
|
32938
33085
|
);
|
|
32939
|
-
if (owner && /does not override any|overrides nothing/.test(
|
|
33086
|
+
if (owner && /does not override any|overrides nothing|does not override a designated initializer/.test(
|
|
33087
|
+
match[3]
|
|
33088
|
+
))
|
|
32940
33089
|
plain.add(owner);
|
|
33090
|
+
else if (owner && /failable initializer 'init\(coder:\)' cannot override a non-failable/.test(
|
|
33091
|
+
match[3]
|
|
33092
|
+
) && !nonfailable.has(owner))
|
|
33093
|
+
nonfailable.add(owner);
|
|
33094
|
+
else if (owner && /requires an 'override' keyword/.test(match[3]) && !forced.has(owner))
|
|
33095
|
+
forced.add(owner);
|
|
32941
33096
|
else if (owner && inert && INERT_VALUE.test(match[3]) && !trapped.has(owner))
|
|
32942
33097
|
trapped.add(owner);
|
|
32943
33098
|
else if (owner) omit.set(owner, `rejected by swiftc: ${match[3]}`);
|
|
32944
33099
|
else elsewhere.push(match[3]);
|
|
32945
33100
|
}
|
|
32946
|
-
if (omit.size + plain.size + unobjc.size + trapped.size + unconformed.size === before)
|
|
33101
|
+
if (omit.size + plain.size + unobjc.size + trapped.size + unconformed.size + forced.size + nonfailable.size === before)
|
|
32947
33102
|
throw new Error(
|
|
32948
33103
|
`its generated source does not typecheck: ${elsewhere.slice(0, 3).join("; ") || check2.stderr.trim().slice(0, 400)}`
|
|
32949
33104
|
);
|
|
@@ -33757,7 +33912,7 @@ function standinGenerationInputs(binaries, toolchain, configuredBehavior = {}, s
|
|
|
33757
33912
|
...(binary.headerDependencies ?? []).map(
|
|
33758
33913
|
(dependency) => `${swiftTargetModuleName(dependency.module)}\0${treeDigest(import_node_path49.default.join(binary.dir, dependency.path))}`
|
|
33759
33914
|
),
|
|
33760
|
-
...binary.
|
|
33915
|
+
...binary.unloweredSources ?? []
|
|
33761
33916
|
].join("\0") : swiftBinaryFramework(binary).digest
|
|
33762
33917
|
);
|
|
33763
33918
|
} catch {
|
|
@@ -34394,7 +34549,7 @@ function* xcodeObjCInputSteps(app, binaries, moduleRoot, products, sourceRoot =
|
|
|
34394
34549
|
const binaryHeaders = binarySearch.flatMap((search) => search.headers);
|
|
34395
34550
|
const configuration = app.configuration === "Debug" ? "debug" : "release";
|
|
34396
34551
|
for (const binary of binaries) {
|
|
34397
|
-
if (!binary.reached || binary.publicHeaders === void 0 || binary.
|
|
34552
|
+
if (!binary.reached || binary.publicHeaders === void 0 || binary.unloweredSources !== void 0)
|
|
34398
34553
|
continue;
|
|
34399
34554
|
const manifest = swiftPackageManifest(binary.dir);
|
|
34400
34555
|
const target = manifest.targets.get(binary.target);
|
|
@@ -35758,9 +35913,9 @@ guard let dest = CGImageDestinationCreateWithURL(output as CFURL, UTType.png.ide
|
|
|
35758
35913
|
CGImageDestinationAddImage(dest, image, nil)
|
|
35759
35914
|
guard CGImageDestinationFinalize(dest) else { exit(7) }
|
|
35760
35915
|
`;
|
|
35761
|
-
function rasterBinary() {
|
|
35762
|
-
const tag = (0, import_node_crypto28.createHash)("sha256").update(
|
|
35763
|
-
const binary = import_node_path53.default.join(cacheDir(),
|
|
35916
|
+
function rasterBinary(swift = RASTER_SWIFT, name3 = "swift-pdf-raster") {
|
|
35917
|
+
const tag = (0, import_node_crypto28.createHash)("sha256").update(swift).digest("hex").slice(0, 16);
|
|
35918
|
+
const binary = import_node_path53.default.join(cacheDir(), `${name3}-${tag}`);
|
|
35764
35919
|
try {
|
|
35765
35920
|
import_node_fs52.default.accessSync(binary, import_node_fs52.default.constants.X_OK);
|
|
35766
35921
|
return binary;
|
|
@@ -35772,7 +35927,7 @@ function rasterBinary() {
|
|
|
35772
35927
|
import_node_fs52.default.mkdtempSync(import_node_path53.default.join(import_node_os14.default.tmpdir(), "swift-pdf-raster-")),
|
|
35773
35928
|
"raster.swift"
|
|
35774
35929
|
);
|
|
35775
|
-
import_node_fs52.default.writeFileSync(source,
|
|
35930
|
+
import_node_fs52.default.writeFileSync(source, swift);
|
|
35776
35931
|
try {
|
|
35777
35932
|
(0, import_node_child_process32.execFileSync)("xcrun", ["swiftc", "-o", binary, source], { stdio: "pipe" });
|
|
35778
35933
|
} finally {
|
|
@@ -35830,6 +35985,49 @@ function rasterizePdfFile(diskPath, pdfSha256) {
|
|
|
35830
35985
|
import_node_fs52.default.rmSync(import_node_path53.default.dirname(out), { recursive: true, force: true });
|
|
35831
35986
|
}
|
|
35832
35987
|
}
|
|
35988
|
+
var RASTER_SVG_SWIFT = `import AppKit
|
|
35989
|
+
guard CommandLine.arguments.count == 4 else { exit(1) }
|
|
35990
|
+
let input = URL(fileURLWithPath: CommandLine.arguments[1])
|
|
35991
|
+
let scale = CGFloat(Double(CommandLine.arguments[2]) ?? 3.0)
|
|
35992
|
+
let output = URL(fileURLWithPath: CommandLine.arguments[3])
|
|
35993
|
+
guard let image = NSImage(contentsOf: input), image.size.width > 0, image.size.height > 0 else { exit(2) }
|
|
35994
|
+
let width = Int(ceil(image.size.width * scale))
|
|
35995
|
+
let height = Int(ceil(image.size.height * scale))
|
|
35996
|
+
if width > 12000 || height > 12000 { exit(3) }
|
|
35997
|
+
guard let rep = NSBitmapImageRep(bitmapDataPlanes: nil, pixelsWide: width, pixelsHigh: height, bitsPerSample: 8, samplesPerPixel: 4, hasAlpha: true, isPlanar: false, colorSpaceName: .deviceRGB, bytesPerRow: 0, bitsPerPixel: 0) else { exit(4) }
|
|
35998
|
+
guard let context = NSGraphicsContext(bitmapImageRep: rep) else { exit(5) }
|
|
35999
|
+
NSGraphicsContext.saveGraphicsState()
|
|
36000
|
+
NSGraphicsContext.current = context
|
|
36001
|
+
context.imageInterpolation = .high
|
|
36002
|
+
image.draw(in: NSRect(x: 0, y: 0, width: width, height: height), from: .zero, operation: .copy, fraction: 1)
|
|
36003
|
+
NSGraphicsContext.restoreGraphicsState()
|
|
36004
|
+
guard let data = rep.representation(using: .png, properties: [:]) else { exit(6) }
|
|
36005
|
+
do { try data.write(to: output) } catch { exit(7) }
|
|
36006
|
+
`;
|
|
36007
|
+
function rasterizeSvgFile(diskPath, svgSha256) {
|
|
36008
|
+
if (process.platform !== "darwin") return null;
|
|
36009
|
+
const binary = rasterBinary(RASTER_SVG_SWIFT, "swift-svg-raster");
|
|
36010
|
+
const tag = (0, import_node_crypto28.createHash)("sha256").update(RASTER_SVG_SWIFT).digest("hex").slice(0, 16);
|
|
36011
|
+
const cached = import_node_path53.default.join(cacheDir(), `swift-svg-png-${tag}-${svgSha256}.png`);
|
|
36012
|
+
if (import_node_fs52.default.existsSync(cached)) return { bytes: import_node_fs52.default.readFileSync(cached) };
|
|
36013
|
+
const out = import_node_path53.default.join(
|
|
36014
|
+
import_node_fs52.default.mkdtempSync(import_node_path53.default.join(import_node_os14.default.tmpdir(), "swift-svg-png-")),
|
|
36015
|
+
"out.png"
|
|
36016
|
+
);
|
|
36017
|
+
try {
|
|
36018
|
+
(0, import_node_child_process32.execFileSync)(binary, [diskPath, "3", out], { stdio: "pipe" });
|
|
36019
|
+
const bytes = import_node_fs52.default.readFileSync(out);
|
|
36020
|
+
import_node_fs52.default.mkdirSync(cacheDir(), { recursive: true });
|
|
36021
|
+
import_node_fs52.default.copyFileSync(out, cached);
|
|
36022
|
+
return { bytes: Buffer.from(bytes) };
|
|
36023
|
+
} catch (error) {
|
|
36024
|
+
throw new Error(
|
|
36025
|
+
`swift svg asset ${diskPath} did not rasterize: ${error instanceof Error ? error.message : String(error)}`
|
|
36026
|
+
);
|
|
36027
|
+
} finally {
|
|
36028
|
+
import_node_fs52.default.rmSync(import_node_path53.default.dirname(out), { recursive: true, force: true });
|
|
36029
|
+
}
|
|
36030
|
+
}
|
|
35833
36031
|
|
|
35834
36032
|
// src/swift-standin-config.ts
|
|
35835
36033
|
init_define_SWIFT_COVERAGE_SOURCE_DIGESTS();
|
|
@@ -35995,7 +36193,7 @@ async function swiftPackages(entry, app) {
|
|
|
35995
36193
|
] : []
|
|
35996
36194
|
);
|
|
35997
36195
|
let reached = [...cached.binaries.filter((binary) => binary.reached), ...vendored];
|
|
35998
|
-
const standinArtifact = (binary) => binary.publicHeaders === void 0 || binary.
|
|
36196
|
+
const standinArtifact = (binary) => binary.publicHeaders === void 0 || binary.unloweredSources !== void 0;
|
|
35999
36197
|
const artifacts = reached.filter(standinArtifact);
|
|
36000
36198
|
if (entry.moduleRoot && entry.provided && artifacts.length > 0) {
|
|
36001
36199
|
const resolved = swiftModuleToolchain(entry.moduleRoot);
|
|
@@ -36014,10 +36212,13 @@ async function swiftPackages(entry, app) {
|
|
|
36014
36212
|
const cxxArtifacts = reached.filter(standinArtifact);
|
|
36015
36213
|
const generation = standinGenerationInputs(cxxArtifacts, toolchain, entry.behavior);
|
|
36016
36214
|
if (cached.standinKey !== generation) {
|
|
36215
|
+
const replaced = new Set(
|
|
36216
|
+
cxxArtifacts.filter((binary) => shippedBinaryDiffers(binary.target, binary.checksum)).map((binary) => binary.target)
|
|
36217
|
+
);
|
|
36017
36218
|
const built2 = await swiftStandins(
|
|
36018
36219
|
cxxArtifacts,
|
|
36019
36220
|
toolchain,
|
|
36020
|
-
entry.provided,
|
|
36221
|
+
new Set([...entry.provided].filter((name3) => !replaced.has(name3))),
|
|
36021
36222
|
entry.behavior
|
|
36022
36223
|
);
|
|
36023
36224
|
cached.packages = await resolveSwiftPackagesAsync({
|
|
@@ -36031,6 +36232,9 @@ async function swiftPackages(entry, app) {
|
|
|
36031
36232
|
...entry.provided,
|
|
36032
36233
|
...cxxArtifacts.map((binary) => binary.target).filter((target) => !built2.gaps.has(target))
|
|
36033
36234
|
]),
|
|
36235
|
+
standinTargets: new Set(
|
|
36236
|
+
[...replaced].filter((target) => !built2.gaps.has(target))
|
|
36237
|
+
),
|
|
36034
36238
|
binaryGaps: built2.gaps,
|
|
36035
36239
|
owners
|
|
36036
36240
|
});
|
|
@@ -36930,6 +37134,12 @@ function buildSwiftResourceTable(project, baseUrl, inputs) {
|
|
|
36930
37134
|
throw new Error("swift image pack exceeds the compile service caps");
|
|
36931
37135
|
}
|
|
36932
37136
|
bytes = readPackageFile2(project.packagePath, disk, limits.imageBytes);
|
|
37137
|
+
const svg = ext === ".svg" ? rasterizeSvgFile(disk, (0, import_node_crypto29.createHash)("sha256").update(bytes).digest("hex")) : null;
|
|
37138
|
+
if (svg) {
|
|
37139
|
+
bytes = svg.bytes;
|
|
37140
|
+
ext = ".png";
|
|
37141
|
+
uploadName = `${import_node_path54.default.posix.basename(file, import_node_path54.default.posix.extname(file))}.png`;
|
|
37142
|
+
}
|
|
36933
37143
|
}
|
|
36934
37144
|
if (imageBytes + bytes.length > limits.imageTotalBytes) {
|
|
36935
37145
|
throw new Error("swift image pack exceeds the compile service caps");
|