@scriptc/compiler 0.4.4 → 0.4.5
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/ambient/scriptc-node-fallback.d.ts +198 -44
- package/ambient/scriptc-overrides.d.ts +21 -0
- package/dist/backend/executable-features.js +3 -0
- package/dist/backend/executable-features.js.map +1 -1
- package/dist/backend/library-pack.js +2 -1
- package/dist/backend/library-pack.js.map +1 -1
- package/dist/backend/linker.js +11 -1
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/lld.d.ts +9 -0
- package/dist/backend/lld.js +48 -0
- package/dist/backend/lld.js.map +1 -0
- package/dist/backend/lld.test.d.ts +1 -0
- package/dist/backend/lld.test.js +53 -0
- package/dist/backend/lld.test.js.map +1 -0
- package/dist/backend/llvm/appended-array-literals.d.ts +11 -1
- package/dist/backend/llvm/appended-array-literals.js +29 -0
- package/dist/backend/llvm/appended-array-literals.js.map +1 -1
- package/dist/backend/llvm/blocks.js +10 -1
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/bytes-alias.d.ts +13 -4
- package/dist/backend/llvm/bytes-alias.js +16 -5
- package/dist/backend/llvm/bytes-alias.js.map +1 -1
- package/dist/backend/llvm/bytes-bounds.d.ts +5 -1
- package/dist/backend/llvm/bytes-bounds.js +199 -2
- package/dist/backend/llvm/bytes-bounds.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.d.ts +45 -3
- package/dist/backend/llvm/bytes-loop-versions.js +238 -20
- package/dist/backend/llvm/bytes-loop-versions.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.test.js +11 -4
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.d.ts +8 -2
- package/dist/backend/llvm/call-lifetimes.js +87 -18
- package/dist/backend/llvm/call-lifetimes.js.map +1 -1
- package/dist/backend/llvm/call-lifetimes.test.js +132 -0
- package/dist/backend/llvm/call-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/classes.d.ts +3 -2
- package/dist/backend/llvm/classes.js +4 -4
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/counted-loops.d.ts +14 -2
- package/dist/backend/llvm/counted-loops.js +54 -5
- package/dist/backend/llvm/counted-loops.js.map +1 -1
- package/dist/backend/llvm/debug-info.d.ts +42 -1
- package/dist/backend/llvm/debug-info.js +70 -1
- package/dist/backend/llvm/debug-info.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.js +2 -2
- package/dist/backend/llvm/dense-array-loops.js.map +1 -1
- package/dist/backend/llvm/dense-array-loops.test.js +1 -0
- package/dist/backend/llvm/dense-array-loops.test.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +65 -8
- package/dist/backend/llvm/dyn.js +375 -40
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.js +28 -8
- package/dist/backend/llvm/emit-function.js.map +1 -1
- package/dist/backend/llvm/emit-journal.d.ts +8 -4
- package/dist/backend/llvm/emit-journal.js +75 -5
- package/dist/backend/llvm/emit-journal.js.map +1 -1
- package/dist/backend/llvm/emit-module.d.ts +4 -0
- package/dist/backend/llvm/emit-module.js +58 -23
- package/dist/backend/llvm/emit-module.js.map +1 -1
- package/dist/backend/llvm/emit-statements.js +297 -28
- package/dist/backend/llvm/emit-statements.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +134 -13
- package/dist/backend/llvm/emitter.js +514 -87
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.d.ts +6 -4
- package/dist/backend/llvm/expr-bytes.js +31 -8
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js +13 -11
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.d.ts +11 -0
- package/dist/backend/llvm/expr-containers.js +87 -9
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +3 -0
- package/dist/backend/llvm/expr-control.js +83 -0
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.d.ts +1 -1
- package/dist/backend/llvm/expr-dynamic.js +22 -4
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +107 -9
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +95 -22
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/forked-analysis.d.ts +8 -0
- package/dist/backend/llvm/forked-analysis.js +43 -0
- package/dist/backend/llvm/forked-analysis.js.map +1 -0
- package/dist/backend/llvm/integer-values.d.ts +7 -0
- package/dist/backend/llvm/integer-values.js +42 -2
- package/dist/backend/llvm/integer-values.js.map +1 -1
- package/dist/backend/llvm/integer-views.d.ts +2 -1
- package/dist/backend/llvm/integer-views.js +12 -1
- package/dist/backend/llvm/integer-views.js.map +1 -1
- package/dist/backend/llvm/js-ic.d.ts +4 -0
- package/dist/backend/llvm/js-ic.js +133 -15
- package/dist/backend/llvm/js-ic.js.map +1 -1
- package/dist/backend/llvm/layouts.d.ts +1 -0
- package/dist/backend/llvm/layouts.js.map +1 -1
- package/dist/backend/llvm/lazy-captures.d.ts +6 -1
- package/dist/backend/llvm/lazy-captures.js +10 -5
- package/dist/backend/llvm/lazy-captures.js.map +1 -1
- package/dist/backend/llvm/lib-abi.d.ts +5 -0
- package/dist/backend/llvm/lib-abi.js +19 -0
- package/dist/backend/llvm/lib-abi.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +128 -42
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-filesystem.d.ts +10 -0
- package/dist/backend/llvm/lib-filesystem.js +32 -0
- package/dist/backend/llvm/lib-filesystem.js.map +1 -1
- package/dist/backend/llvm/lib-http2.js +2 -2
- package/dist/backend/llvm/lib-http2.js.map +1 -1
- package/dist/backend/llvm/lib-network.js +2 -0
- package/dist/backend/llvm/lib-network.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +11 -0
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +43 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-tls.js +28 -3
- package/dist/backend/llvm/lib-tls.js.map +1 -1
- package/dist/backend/llvm/local-union-storage.test.js +2 -1
- package/dist/backend/llvm/local-union-storage.test.js.map +1 -1
- package/dist/backend/llvm/loop-array-borrows.d.ts +4 -1
- package/dist/backend/llvm/loop-array-borrows.js +11 -5
- package/dist/backend/llvm/loop-array-borrows.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.d.ts +5 -3
- package/dist/backend/llvm/map-entry-fusion.js +20 -11
- package/dist/backend/llvm/map-entry-fusion.js.map +1 -1
- package/dist/backend/llvm/map-entry-fusion.test.js +14 -6
- package/dist/backend/llvm/map-entry-fusion.test.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.d.ts +16 -6
- package/dist/backend/llvm/map-number-lookup.js +41 -9
- package/dist/backend/llvm/map-number-lookup.js.map +1 -1
- package/dist/backend/llvm/map-number-lookup.test.js +70 -2
- package/dist/backend/llvm/map-number-lookup.test.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.d.ts +25 -2
- package/dist/backend/llvm/map-read-lifetimes.js +136 -6
- package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
- package/dist/backend/llvm/map-read-lifetimes.test.js +8 -3
- package/dist/backend/llvm/map-read-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.d.ts +5 -0
- package/dist/backend/llvm/nullable-unions.js +29 -2
- package/dist/backend/llvm/nullable-unions.js.map +1 -1
- package/dist/backend/llvm/nullable-unions.test.js +25 -1
- package/dist/backend/llvm/nullable-unions.test.js.map +1 -1
- package/dist/backend/llvm/record-union-keys.test.d.ts +1 -0
- package/dist/backend/llvm/record-union-keys.test.js +161 -0
- package/dist/backend/llvm/record-union-keys.test.js.map +1 -0
- package/dist/backend/llvm/serialized-ir-emission.test.js +2 -0
- package/dist/backend/llvm/serialized-ir-emission.test.js.map +1 -1
- package/dist/backend/llvm/shapes.d.ts +4 -5
- package/dist/backend/llvm/shapes.js +104 -51
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/shapes.test.js +14 -2
- package/dist/backend/llvm/shapes.test.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.d.ts +50 -3
- package/dist/backend/llvm/speculative-integers.js +411 -24
- package/dist/backend/llvm/speculative-integers.js.map +1 -1
- package/dist/backend/llvm/speculative-integers.test.js +103 -1
- package/dist/backend/llvm/speculative-integers.test.js.map +1 -1
- package/dist/backend/llvm/split.d.ts +10 -1
- package/dist/backend/llvm/split.js +243 -59
- package/dist/backend/llvm/split.js.map +1 -1
- package/dist/backend/llvm/split.test.js +92 -13
- package/dist/backend/llvm/split.test.js.map +1 -1
- package/dist/backend/llvm/stack-objects.test.js +3 -2
- package/dist/backend/llvm/stack-objects.test.js.map +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js +1 -1
- package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
- package/dist/backend/llvm/string-reads.d.ts +13 -0
- package/dist/backend/llvm/string-reads.js +22 -0
- package/dist/backend/llvm/string-reads.js.map +1 -1
- package/dist/backend/llvm/string-slices.d.ts +36 -2
- package/dist/backend/llvm/string-slices.js +308 -12
- package/dist/backend/llvm/string-slices.js.map +1 -1
- package/dist/backend/llvm/string-slices.test.js +182 -3
- package/dist/backend/llvm/string-slices.test.js.map +1 -1
- package/dist/backend/llvm/string-unit-versions.d.ts +11 -0
- package/dist/backend/llvm/string-unit-versions.js +191 -0
- package/dist/backend/llvm/string-unit-versions.js.map +1 -0
- package/dist/backend/llvm/string-unit-versions.test.d.ts +1 -0
- package/dist/backend/llvm/string-unit-versions.test.js +117 -0
- package/dist/backend/llvm/string-unit-versions.test.js.map +1 -0
- package/dist/backend/llvm/test-boxed-unions.d.ts +5 -2
- package/dist/backend/llvm/test-boxed-unions.js +24 -8
- package/dist/backend/llvm/test-boxed-unions.js.map +1 -1
- package/dist/backend/llvm/unwind-abi.d.ts +52 -0
- package/dist/backend/llvm/unwind-abi.js +498 -0
- package/dist/backend/llvm/unwind-abi.js.map +1 -0
- package/dist/backend/llvm/unwind-abi.test.d.ts +1 -0
- package/dist/backend/llvm/unwind-abi.test.js +255 -0
- package/dist/backend/llvm/unwind-abi.test.js.map +1 -0
- package/dist/backend/llvm/wrapping-sums.d.ts +14 -10
- package/dist/backend/llvm/wrapping-sums.js +31 -14
- package/dist/backend/llvm/wrapping-sums.js.map +1 -1
- package/dist/backend/loop-polls.d.ts +6 -0
- package/dist/backend/loop-polls.js +24 -0
- package/dist/backend/loop-polls.js.map +1 -1
- package/dist/backend/may-throw.js +8 -8
- package/dist/backend/may-throw.js.map +1 -1
- package/dist/backend/native/contracts.d.ts +12 -2
- package/dist/backend/native/executable.js +48 -6
- package/dist/backend/native/executable.js.map +1 -1
- package/dist/backend/native/library.js +4 -3
- package/dist/backend/native/library.js.map +1 -1
- package/dist/backend/native/program-shards.d.ts +2 -2
- package/dist/backend/native/program-shards.js +2 -2
- package/dist/backend/native/program-shards.js.map +1 -1
- package/dist/backend/native/runtime-inputs.d.ts +1 -1
- package/dist/backend/native/runtime-inputs.js +4 -1
- package/dist/backend/native/runtime-inputs.js.map +1 -1
- package/dist/backend/native/vendor.d.ts +1 -1
- package/dist/backend/native/vendor.js +1 -1
- package/dist/backend/native/vendor.js.map +1 -1
- package/dist/backend/native-codegen.d.ts +3 -1
- package/dist/backend/native-codegen.js +4 -3
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-link-info-core.d.ts +8 -0
- package/dist/backend/native-link-info-core.js.map +1 -1
- package/dist/backend/native-profile.d.ts +14 -0
- package/dist/backend/native-profile.js +28 -0
- package/dist/backend/native-profile.js.map +1 -1
- package/dist/backend/native-profile.test.js +8 -1
- package/dist/backend/native-profile.test.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +11 -11
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/runtime-abi.d.ts +2 -2
- package/dist/backend/runtime-abi.js +2 -2
- package/dist/backend/runtime-pack-core.d.ts +3 -1
- package/dist/backend/runtime-pack-core.js +2 -0
- package/dist/backend/runtime-pack-core.js.map +1 -1
- package/dist/backend/runtime-pack-native.d.ts +17 -5
- package/dist/backend/runtime-pack-native.js +186 -14
- package/dist/backend/runtime-pack-native.js.map +1 -1
- package/dist/backend/runtime-pack-native.test.js +160 -3
- package/dist/backend/runtime-pack-native.test.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +2 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +2 -1
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/vendor-archives.d.ts +4 -1
- package/dist/backend/vendor-archives.js +78 -4
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/backend/vendor-inputs.d.ts +3 -1
- package/dist/backend/vendor-inputs.js +3 -1
- package/dist/backend/vendor-inputs.js.map +1 -1
- package/dist/backend/warm-cache.js +1 -0
- package/dist/backend/warm-cache.js.map +1 -1
- package/dist/cli/command.js +78 -11
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/usage.d.ts +22 -1
- package/dist/cli/usage.js +33 -3
- package/dist/cli/usage.js.map +1 -1
- package/dist/compat/fetch-profile.d.ts +15 -6
- package/dist/compat/fetch-profile.js +519 -498
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/compile-types.d.ts +7 -0
- package/dist/contracts/int32-elements.js +2 -1
- package/dist/contracts/int32-elements.js.map +1 -1
- package/dist/coverage/report.d.ts +14 -3
- package/dist/coverage/report.js +216 -0
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +25 -25
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/coverage/verdict-cache.d.ts +2 -0
- package/dist/coverage/verdict-cache.js +10 -1
- package/dist/coverage/verdict-cache.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +19 -0
- package/dist/diagnostics/diagnostic.js +52 -1
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/envelope.d.ts +54 -0
- package/dist/diagnostics/envelope.js +7 -1
- package/dist/diagnostics/envelope.js.map +1 -1
- package/dist/diagnostics/render.d.ts +7 -0
- package/dist/diagnostics/render.js +15 -4
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +3 -0
- package/dist/executable/executable-cache.js +1 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +1 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/executable/prepare.js +5 -1
- package/dist/executable/prepare.js.map +1 -1
- package/dist/frontend/analysis.js +26 -2
- package/dist/frontend/analysis.js.map +1 -1
- package/dist/frontend/fork-target.js +67 -1
- package/dist/frontend/fork-target.js.map +1 -1
- package/dist/frontend/fork-target.test.js +43 -0
- package/dist/frontend/fork-target.test.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +4 -1
- package/dist/frontend/input-tracker.js +42 -4
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +45 -0
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lowering/abstract-equality.js +38 -1
- package/dist/frontend/lowering/abstract-equality.js.map +1 -1
- package/dist/frontend/lowering/argument-counts.d.ts +36 -0
- package/dist/frontend/lowering/argument-counts.js +201 -0
- package/dist/frontend/lowering/argument-counts.js.map +1 -0
- package/dist/frontend/lowering/array-values.d.ts +27 -0
- package/dist/frontend/lowering/array-values.js +112 -0
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/binding-analysis.d.ts +3 -0
- package/dist/frontend/lowering/binding-analysis.js +9 -3
- package/dist/frontend/lowering/binding-analysis.js.map +1 -1
- package/dist/frontend/lowering/builtin-namespaces.d.ts +13 -0
- package/dist/frontend/lowering/builtin-namespaces.js +238 -0
- package/dist/frontend/lowering/builtin-namespaces.js.map +1 -0
- package/dist/frontend/lowering/builtins/compression.d.ts +4 -3
- package/dist/frontend/lowering/builtins/compression.js +86 -5
- package/dist/frontend/lowering/builtins/compression.js.map +1 -1
- package/dist/frontend/lowering/builtins/date-classes.js +17 -1
- package/dist/frontend/lowering/builtins/date-classes.js.map +1 -1
- package/dist/frontend/lowering/builtins/dates.d.ts +19 -5
- package/dist/frontend/lowering/builtins/dates.js +159 -8
- package/dist/frontend/lowering/builtins/dates.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js +26 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-streams.d.ts +4 -0
- package/dist/frontend/lowering/builtins/fs-streams.js +24 -1
- package/dist/frontend/lowering/builtins/fs-streams.js.map +1 -1
- package/dist/frontend/lowering/builtins/json.d.ts +4 -1
- package/dist/frontend/lowering/builtins/json.js +9 -3
- package/dist/frontend/lowering/builtins/json.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-bindings.d.ts +6 -0
- package/dist/frontend/lowering/builtins/module-bindings.js +23 -1
- package/dist/frontend/lowering/builtins/module-bindings.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-resolution.d.ts +5 -0
- package/dist/frontend/lowering/builtins/module-resolution.js +95 -4
- package/dist/frontend/lowering/builtins/module-resolution.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.js +144 -1
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/builtins/readline.d.ts +5 -1
- package/dist/frontend/lowering/builtins/readline.js +22 -11
- package/dist/frontend/lowering/builtins/readline.js.map +1 -1
- package/dist/frontend/lowering/builtins/reflection.d.ts +4 -1
- package/dist/frontend/lowering/builtins/reflection.js +41 -1
- package/dist/frontend/lowering/builtins/reflection.js.map +1 -1
- package/dist/frontend/lowering/builtins/text-codecs.js +31 -2
- package/dist/frontend/lowering/builtins/text-codecs.js.map +1 -1
- package/dist/frontend/lowering/builtins/webassembly.js +4 -1
- package/dist/frontend/lowering/builtins/webassembly.js.map +1 -1
- package/dist/frontend/lowering/builtins/x509.d.ts +33 -0
- package/dist/frontend/lowering/builtins/x509.js +431 -0
- package/dist/frontend/lowering/builtins/x509.js.map +1 -0
- package/dist/frontend/lowering/call-arguments.js +44 -0
- package/dist/frontend/lowering/call-arguments.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.js +1 -1
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/cjs-inline-require.js +1 -1
- package/dist/frontend/lowering/cjs-inline-require.js.map +1 -1
- package/dist/frontend/lowering/class-attributes.d.ts +7 -0
- package/dist/frontend/lowering/class-attributes.js +52 -10
- package/dist/frontend/lowering/class-attributes.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +13 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js +174 -9
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-method-mutations.js +43 -8
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-method-values.js +71 -1
- package/dist/frontend/lowering/class-method-values.js.map +1 -1
- package/dist/frontend/lowering/class-prototypes.d.ts +8 -0
- package/dist/frontend/lowering/class-prototypes.js +83 -2
- package/dist/frontend/lowering/class-prototypes.js.map +1 -1
- package/dist/frontend/lowering/class-to-primitive.d.ts +5 -0
- package/dist/frontend/lowering/class-to-primitive.js +79 -7
- package/dist/frontend/lowering/class-to-primitive.js.map +1 -1
- package/dist/frontend/lowering/coercions/state.d.ts +1 -0
- package/dist/frontend/lowering/coercions/state.js.map +1 -1
- package/dist/frontend/lowering/coercions/structural.js +89 -10
- package/dist/frontend/lowering/coercions/structural.js.map +1 -1
- package/dist/frontend/lowering/coercions/unions.d.ts +4 -2
- package/dist/frontend/lowering/coercions/unions.js +13 -6
- package/dist/frontend/lowering/coercions/unions.js.map +1 -1
- package/dist/frontend/lowering/containers/array-callbacks.js +51 -15
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.d.ts +4 -1
- package/dist/frontend/lowering/containers/array-construction.js +102 -9
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +85 -5
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/array-pipelines.js +346 -77
- package/dist/frontend/lowering/containers/array-pipelines.js.map +1 -1
- package/dist/frontend/lowering/containers/callback-arguments.js +11 -1
- package/dist/frontend/lowering/containers/callback-arguments.js.map +1 -1
- package/dist/frontend/lowering/containers/collection-methods.js +12 -0
- package/dist/frontend/lowering/containers/collection-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/indexed-objects.js +73 -25
- package/dist/frontend/lowering/containers/indexed-objects.js.map +1 -1
- package/dist/frontend/lowering/containers/iterator-helpers.d.ts +4 -4
- package/dist/frontend/lowering/containers/iterator-helpers.js +8 -2
- package/dist/frontend/lowering/containers/iterator-helpers.js.map +1 -1
- package/dist/frontend/lowering/containers/replacer-params.d.ts +37 -0
- package/dist/frontend/lowering/containers/replacer-params.js +294 -0
- package/dist/frontend/lowering/containers/replacer-params.js.map +1 -0
- package/dist/frontend/lowering/containers/replacer-params.test.d.ts +1 -0
- package/dist/frontend/lowering/containers/replacer-params.test.js +61 -0
- package/dist/frontend/lowering/containers/replacer-params.test.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +2 -1
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
- package/dist/frontend/lowering/containers/string-replacement.js +7 -3
- package/dist/frontend/lowering/containers/string-replacement.js.map +1 -1
- package/dist/frontend/lowering/cycle-initialization.d.ts +4 -2
- package/dist/frontend/lowering/cycle-initialization.js +4 -1
- package/dist/frontend/lowering/cycle-initialization.js.map +1 -1
- package/dist/frontend/lowering/date-values.d.ts +9 -6
- package/dist/frontend/lowering/date-values.js +63 -16
- package/dist/frontend/lowering/date-values.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.js +16 -8
- package/dist/frontend/lowering/deferred-module-initializers.js.map +1 -1
- package/dist/frontend/lowering/deferred-module-initializers.test.js +22 -6
- package/dist/frontend/lowering/deferred-module-initializers.test.js.map +1 -1
- package/dist/frontend/lowering/dispatch-sites.js +1 -0
- package/dist/frontend/lowering/dispatch-sites.js.map +1 -1
- package/dist/frontend/lowering/expressions/array-literals.d.ts +0 -8
- package/dist/frontend/lowering/expressions/array-literals.js +119 -26
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/binary.js +38 -0
- package/dist/frontend/lowering/expressions/binary.js.map +1 -1
- package/dist/frontend/lowering/expressions/element-access.js +50 -6
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/identifiers.js +35 -3
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
- package/dist/frontend/lowering/expressions/narrowing.d.ts +2 -1
- package/dist/frontend/lowering/expressions/narrowing.js +8 -1
- package/dist/frontend/lowering/expressions/narrowing.js.map +1 -1
- package/dist/frontend/lowering/expressions/object-literals.js +8 -2
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.js +65 -34
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/relational.js +76 -11
- package/dist/frontend/lowering/expressions/relational.js.map +1 -1
- package/dist/frontend/lowering/expressions/typeof.js +6 -1
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.js +20 -11
- package/dist/frontend/lowering/expressions/updates.js.map +1 -1
- package/dist/frontend/lowering/f64-handles.d.ts +8 -0
- package/dist/frontend/lowering/f64-handles.js +16 -0
- package/dist/frontend/lowering/f64-handles.js.map +1 -0
- package/dist/frontend/lowering/frozen-records.d.ts +5 -0
- package/dist/frontend/lowering/frozen-records.js +12 -4
- package/dist/frontend/lowering/frozen-records.js.map +1 -1
- package/dist/frontend/lowering/function-context.d.ts +3 -0
- package/dist/frontend/lowering/function-context.js.map +1 -1
- package/dist/frontend/lowering/function-returns.js +15 -0
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/generic-functions.js +17 -6
- package/dist/frontend/lowering/generic-functions.js.map +1 -1
- package/dist/frontend/lowering/instantiation-path.d.ts +3 -2
- package/dist/frontend/lowering/instantiation-path.js.map +1 -1
- package/dist/frontend/lowering/instantiation-path.test.js +6 -4
- package/dist/frontend/lowering/instantiation-path.test.js.map +1 -1
- package/dist/frontend/lowering/iterator-adapters.d.ts +4 -2
- package/dist/frontend/lowering/iterator-adapters.js +26 -33
- package/dist/frontend/lowering/iterator-adapters.js.map +1 -1
- package/dist/frontend/lowering/js-collection-types.d.ts +11 -0
- package/dist/frontend/lowering/js-collection-types.js +490 -0
- package/dist/frontend/lowering/js-collection-types.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +2 -2
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.d.ts +14 -0
- package/dist/frontend/lowering/lower-assert.js +283 -26
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-builtin-values.js +3 -3
- package/dist/frontend/lowering/lower-builtin-values.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.js +97 -7
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +59 -7
- package/dist/frontend/lowering/lower-classes.js +647 -176
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-console.js +2 -1
- package/dist/frontend/lowering/lower-console.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +5 -0
- package/dist/frontend/lowering/lower-exprs.js +52 -5
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-functions.js +7 -0
- package/dist/frontend/lowering/lower-functions.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.js +4 -3
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +264 -46
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +28 -17
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-namespaces.d.ts +3 -0
- package/dist/frontend/lowering/lower-namespaces.js +44 -1
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.js +1 -1
- package/dist/frontend/lowering/lower-node-module.js.map +1 -1
- package/dist/frontend/lowering/lower-server.js +126 -32
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stdlib.d.ts +4 -1
- package/dist/frontend/lowering/lower-stdlib.js +51 -37
- package/dist/frontend/lowering/lower-stdlib.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.js +294 -46
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +515 -121
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +52 -10
- package/dist/frontend/lowering/lowerer.js +249 -37
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/lowerer.test.js +1 -1
- package/dist/frontend/lowering/lowerer.test.js.map +1 -1
- package/dist/frontend/lowering/module-namespace-elements.d.ts +13 -0
- package/dist/frontend/lowering/module-namespace-elements.js +118 -1
- package/dist/frontend/lowering/module-namespace-elements.js.map +1 -1
- package/dist/frontend/lowering/private-brands.d.ts +5 -0
- package/dist/frontend/lowering/private-brands.js +39 -0
- package/dist/frontend/lowering/private-brands.js.map +1 -1
- package/dist/frontend/lowering/runtime-optional-elements.d.ts +6 -0
- package/dist/frontend/lowering/runtime-optional-elements.js +14 -3
- package/dist/frontend/lowering/runtime-optional-elements.js.map +1 -1
- package/dist/frontend/lowering/sanitize-class-types.js +2 -0
- package/dist/frontend/lowering/sanitize-class-types.js.map +1 -1
- package/dist/frontend/lowering/site-dependencies.d.ts +7 -2
- package/dist/frontend/lowering/site-dependencies.js +0 -15
- package/dist/frontend/lowering/site-dependencies.js.map +1 -1
- package/dist/frontend/lowering/site-dependencies.test.js +7 -5
- package/dist/frontend/lowering/site-dependencies.test.js.map +1 -1
- package/dist/frontend/lowering/string-index-bounds.d.ts +7 -4
- package/dist/frontend/lowering/string-index-bounds.js +21 -7
- package/dist/frontend/lowering/string-index-bounds.js.map +1 -1
- package/dist/frontend/lowering/surfaces.d.ts +12 -3
- package/dist/frontend/lowering/surfaces.js +1576 -1539
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/lowering/symbol-fields.d.ts +7 -0
- package/dist/frontend/lowering/symbol-fields.js +45 -2
- package/dist/frontend/lowering/symbol-fields.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.d.ts +5 -2
- package/dist/frontend/lowering/union-narrow.js +6 -3
- package/dist/frontend/lowering/union-narrow.js.map +1 -1
- package/dist/frontend/lowering/union-narrow.test.js +10 -0
- package/dist/frontend/lowering/union-narrow.test.js.map +1 -1
- package/dist/frontend/npm-static-namespace-defaults.d.ts +6 -0
- package/dist/frontend/npm-static-namespace-defaults.js +163 -0
- package/dist/frontend/npm-static-namespace-defaults.js.map +1 -0
- package/dist/frontend/npm-static-namespace-defaults.test.d.ts +1 -0
- package/dist/frontend/npm-static-namespace-defaults.test.js +72 -0
- package/dist/frontend/npm-static-namespace-defaults.test.js.map +1 -0
- package/dist/frontend/npm-static-prune.js +152 -111
- package/dist/frontend/npm-static-prune.js.map +1 -1
- package/dist/frontend/npm-static.js +35 -32
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/package-shims.d.ts +7 -4
- package/dist/frontend/package-shims.js +39 -40
- package/dist/frontend/package-shims.js.map +1 -1
- package/dist/frontend/pipeline-native.d.ts +2 -2
- package/dist/frontend/pipeline-native.js +2 -2
- package/dist/frontend/pipeline-native.js.map +1 -1
- package/dist/frontend/pipeline.d.ts +19 -2
- package/dist/frontend/pipeline.js +102 -11
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/program-analysis.d.ts +2 -0
- package/dist/frontend/program-analysis.js +3 -0
- package/dist/frontend/program-analysis.js.map +1 -1
- package/dist/frontend/program.d.ts +15 -0
- package/dist/frontend/program.js +227 -64
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +2 -0
- package/dist/frontend/resolve.js +5 -0
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/services.d.ts +3 -0
- package/dist/frontend/services.js +31 -4
- package/dist/frontend/services.js.map +1 -1
- package/dist/frontend/shape-inference/analyze.d.ts +93 -0
- package/dist/frontend/shape-inference/analyze.js +3138 -0
- package/dist/frontend/shape-inference/analyze.js.map +1 -0
- package/dist/frontend/shape-inference/constant-graphs.d.ts +54 -0
- package/dist/frontend/shape-inference/constant-graphs.js +357 -0
- package/dist/frontend/shape-inference/constant-graphs.js.map +1 -0
- package/dist/frontend/shape-inference/domain.d.ts +32 -0
- package/dist/frontend/shape-inference/domain.js +104 -0
- package/dist/frontend/shape-inference/domain.js.map +1 -0
- package/dist/frontend/shape-inference/index.d.ts +7 -0
- package/dist/frontend/shape-inference/index.js +19 -0
- package/dist/frontend/shape-inference/index.js.map +1 -0
- package/dist/frontend/shape-inference/report.d.ts +21 -0
- package/dist/frontend/shape-inference/report.js +348 -0
- package/dist/frontend/shape-inference/report.js.map +1 -0
- package/dist/frontend/token-equivalence.d.ts +6 -0
- package/dist/frontend/token-equivalence.js +66 -9
- package/dist/frontend/token-equivalence.js.map +1 -1
- package/dist/frontend/token-equivalence.test.js +33 -1
- package/dist/frontend/token-equivalence.test.js.map +1 -1
- package/dist/frontend/ts7/checker-features.d.ts +15 -0
- package/dist/frontend/ts7/checker-features.js +45 -0
- package/dist/frontend/ts7/checker-features.js.map +1 -0
- package/dist/frontend/ts7/checker-features.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-features.test.js +40 -0
- package/dist/frontend/ts7/checker-features.test.js.map +1 -0
- package/dist/frontend/ts7/checker-server.d.ts +19 -0
- package/dist/frontend/ts7/checker-server.js +46 -0
- package/dist/frontend/ts7/checker-server.js.map +1 -0
- package/dist/frontend/ts7/checker-server.test.d.ts +1 -0
- package/dist/frontend/ts7/checker-server.test.js +38 -0
- package/dist/frontend/ts7/checker-server.test.js.map +1 -0
- package/dist/frontend/ts7/lib-diagnostics.js +39 -13
- package/dist/frontend/ts7/lib-diagnostics.js.map +1 -1
- package/dist/frontend/ts7/lib-diagnostics.test.js +40 -0
- package/dist/frontend/ts7/lib-diagnostics.test.js.map +1 -1
- package/dist/frontend/ts7/native-api.d.ts +1 -0
- package/dist/frontend/ts7/native-api.js +25 -2
- package/dist/frontend/ts7/native-api.js.map +1 -1
- package/dist/frontend/ts7/native-process.d.ts +9 -2
- package/dist/frontend/ts7/native-process.js +22 -4
- package/dist/frontend/ts7/native-process.js.map +1 -1
- package/dist/frontend/ts7/program-host.d.ts +11 -0
- package/dist/frontend/ts7/program-host.js +36 -22
- package/dist/frontend/ts7/program-host.js.map +1 -1
- package/dist/frontend/ts7/semantic-json.d.ts +9 -0
- package/dist/frontend/ts7/semantic-json.js +25 -5
- package/dist/frontend/ts7/semantic-json.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.js +3 -1
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/source-parser.js +3 -1
- package/dist/frontend/ts7/source-parser.js.map +1 -1
- package/dist/frontend/tsc-codes.js +10 -0
- package/dist/frontend/tsc-codes.js.map +1 -1
- package/dist/frontend/type-mapper.d.ts +18 -6
- package/dist/frontend/type-mapper.js +160 -28
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.d.ts +44 -3
- package/dist/index.js +27 -8
- package/dist/index.js.map +1 -1
- package/dist/ir/builtin-effects.js +29 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +7 -2
- package/dist/ir/builtin-signatures.js +5104 -4950
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/callback-specialization.d.ts +4 -2
- package/dist/ir/callback-specialization.js +24 -9
- package/dist/ir/callback-specialization.js.map +1 -1
- package/dist/ir/capture-values.js +4 -2
- package/dist/ir/capture-values.js.map +1 -1
- package/dist/ir/char-unit-locals.d.ts +12 -2
- package/dist/ir/char-unit-locals.js +400 -58
- package/dist/ir/char-unit-locals.js.map +1 -1
- package/dist/ir/char-unit-locals.test.js +111 -0
- package/dist/ir/char-unit-locals.test.js.map +1 -1
- package/dist/ir/constant-globals.js +18 -4
- package/dist/ir/constant-globals.js.map +1 -1
- package/dist/ir/expression-inlining.d.ts +15 -0
- package/dist/ir/expression-inlining.js +166 -0
- package/dist/ir/expression-inlining.js.map +1 -0
- package/dist/ir/expression-inlining.test.d.ts +1 -0
- package/dist/ir/expression-inlining.test.js +123 -0
- package/dist/ir/expression-inlining.test.js.map +1 -0
- package/dist/ir/function-references.js +2 -0
- package/dist/ir/function-references.js.map +1 -1
- package/dist/ir/function-references.test.js +6 -0
- package/dist/ir/function-references.test.js.map +1 -1
- package/dist/ir/int32-arrays.d.ts +27 -6
- package/dist/ir/int32-arrays.js +106 -18
- package/dist/ir/int32-arrays.js.map +1 -1
- package/dist/ir/int32-slots.d.ts +26 -1
- package/dist/ir/int32-slots.js +284 -5
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +5 -0
- package/dist/ir/int32-slots.test.js.map +1 -1
- package/dist/ir/integer-loop-facts.d.ts +5 -0
- package/dist/ir/integer-loop-facts.js +90 -1
- package/dist/ir/integer-loop-facts.js.map +1 -1
- package/dist/ir/integer-loops.d.ts +14 -1
- package/dist/ir/integer-loops.js +93 -7
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/integer-loops.test.js +70 -0
- package/dist/ir/integer-loops.test.js.map +1 -1
- package/dist/ir/integer-ranges.js +18 -2
- package/dist/ir/integer-ranges.js.map +1 -1
- package/dist/ir/integer-ranges.test.js +64 -4
- package/dist/ir/integer-ranges.test.js.map +1 -1
- package/dist/ir/ir.d.ts +50 -8
- package/dist/ir/ir.js +38 -12
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/js-ic.d.ts +25 -5
- package/dist/ir/js-ic.js +93 -13
- package/dist/ir/js-ic.js.map +1 -1
- package/dist/ir/js-ic.test.js +153 -0
- package/dist/ir/js-ic.test.js.map +1 -1
- package/dist/ir/node-index.d.ts +7 -0
- package/dist/ir/node-index.js +32 -0
- package/dist/ir/node-index.js.map +1 -1
- package/dist/ir/receiver-readers.d.ts +6 -1
- package/dist/ir/receiver-readers.js +53 -28
- package/dist/ir/receiver-readers.js.map +1 -1
- package/dist/ir/row-pairs.d.ts +15 -0
- package/dist/ir/row-pairs.js +373 -0
- package/dist/ir/row-pairs.js.map +1 -0
- package/dist/ir/row-pairs.test.d.ts +1 -0
- package/dist/ir/row-pairs.test.js +129 -0
- package/dist/ir/row-pairs.test.js.map +1 -0
- package/dist/ir/runtime-features.d.ts +17 -4
- package/dist/ir/runtime-features.js +69 -12
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/scalar-records.d.ts +15 -0
- package/dist/ir/scalar-records.js +301 -1
- package/dist/ir/scalar-records.js.map +1 -1
- package/dist/ir/scalar-records.test.js +181 -1
- package/dist/ir/scalar-records.test.js.map +1 -1
- package/dist/ir/self-captures.js +8 -0
- package/dist/ir/self-captures.js.map +1 -1
- package/dist/ir/validate.js +37 -28
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/fence-eval.js +4 -4
- package/dist/library/fence-eval.js.map +1 -1
- package/dist/library/ir-policy.js +4 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/library/library-cache.d.ts +1 -0
- package/dist/library/library-cache.js +1 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +13 -0
- package/dist/library/library-cache.test.js.map +1 -1
- package/dist/native/cache.d.ts +5 -1
- package/dist/native/cache.js +15 -3
- package/dist/native/cache.js.map +1 -1
- package/dist/native/cli.js +6 -0
- package/dist/native/cli.js.map +1 -1
- package/dist/native/compiler.d.ts +3 -0
- package/dist/native/compiler.js +72 -26
- package/dist/native/compiler.js.map +1 -1
- package/dist/native/compiler.test.js +87 -2
- package/dist/native/compiler.test.js.map +1 -1
- package/dist/native/executable-cache-open.test.d.ts +1 -0
- package/dist/native/executable-cache-open.test.js +80 -0
- package/dist/native/executable-cache-open.test.js.map +1 -0
- package/dist/native/executable-cache.d.ts +43 -3
- package/dist/native/executable-cache.js +177 -36
- package/dist/native/executable-cache.js.map +1 -1
- package/dist/native/executable-cache.test.js +103 -0
- package/dist/native/executable-cache.test.js.map +1 -1
- package/dist/native/prepare.js +38 -16
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +51 -1
- package/dist/native/prepare.test.js.map +1 -1
- package/dist/native/sanitizer.d.ts +1 -1
- package/dist/native/sanitizer.js +17 -3
- package/dist/native/sanitizer.js.map +1 -1
- package/dist/native/sanitizer.test.js +4 -0
- package/dist/native/sanitizer.test.js.map +1 -1
- package/dist/node-islands/classify.d.ts +14 -0
- package/dist/node-islands/classify.js +114 -0
- package/dist/node-islands/classify.js.map +1 -0
- package/dist/node-islands/detect.d.ts +13 -0
- package/dist/node-islands/detect.js +805 -0
- package/dist/node-islands/detect.js.map +1 -0
- package/dist/node-islands/detect.test.d.ts +1 -0
- package/dist/node-islands/detect.test.js +136 -0
- package/dist/node-islands/detect.test.js.map +1 -0
- package/dist/node-islands/origin.d.ts +21 -0
- package/dist/node-islands/origin.js +60 -0
- package/dist/node-islands/origin.js.map +1 -0
- package/dist/node-islands/policy.d.ts +49 -0
- package/dist/node-islands/policy.js +130 -0
- package/dist/node-islands/policy.js.map +1 -0
- package/dist/node-islands/report.d.ts +22 -0
- package/dist/node-islands/report.js +326 -0
- package/dist/node-islands/report.js.map +1 -0
- package/dist/node-islands/report.test.d.ts +1 -0
- package/dist/node-islands/report.test.js +228 -0
- package/dist/node-islands/report.test.js.map +1 -0
- package/dist/node-islands/rules.d.ts +20 -0
- package/dist/node-islands/rules.js +91 -0
- package/dist/node-islands/rules.js.map +1 -0
- package/dist/node-islands/scan.d.ts +53 -0
- package/dist/node-islands/scan.js +104 -0
- package/dist/node-islands/scan.js.map +1 -0
- package/dist/node-islands/summary.d.ts +78 -0
- package/dist/node-islands/summary.js +26 -0
- package/dist/node-islands/summary.js.map +1 -0
- package/dist/project-config.d.ts +50 -0
- package/dist/project-config.js +372 -0
- package/dist/project-config.js.map +1 -0
- package/dist/project-config.test.d.ts +1 -0
- package/dist/project-config.test.js +154 -0
- package/dist/project-config.test.js.map +1 -0
- package/dist/wasm/discover.js +6 -31
- package/dist/wasm/discover.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +20 -35
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* of the link contract: a program object keeps this symbol undefined and the
|
|
3
3
|
* matching runtime defines it, so incompatible manual links fail before the
|
|
4
4
|
* program can start. */
|
|
5
|
-
export declare const RUNTIME_ABI_VERSION:
|
|
6
|
-
export declare const RUNTIME_ABI_MARKER: "
|
|
5
|
+
export declare const RUNTIME_ABI_VERSION: 45;
|
|
6
|
+
export declare const RUNTIME_ABI_MARKER: "scr_runtime_abi_v45";
|
|
7
7
|
/** Object consumption is useful today, but the complete scr_* surface may
|
|
8
8
|
* still change before 1.0. The versioned marker prevents accidental mixing;
|
|
9
9
|
* it does not promise semver stability yet. */
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* of the link contract: a program object keeps this symbol undefined and the
|
|
3
3
|
* matching runtime defines it, so incompatible manual links fail before the
|
|
4
4
|
* program can start. */
|
|
5
|
-
export const RUNTIME_ABI_VERSION =
|
|
6
|
-
export const RUNTIME_ABI_MARKER = "
|
|
5
|
+
export const RUNTIME_ABI_VERSION = 45;
|
|
6
|
+
export const RUNTIME_ABI_MARKER = "scr_runtime_abi_v45";
|
|
7
7
|
/** Object consumption is useful today, but the complete scr_* surface may
|
|
8
8
|
* still change before 1.0. The versioned marker prevents accidental mixing;
|
|
9
9
|
* it does not promise semver stability yet. */
|
|
@@ -28,7 +28,7 @@ interface RuntimePackUnit {
|
|
|
28
28
|
variants: RuntimePackVariant[];
|
|
29
29
|
}
|
|
30
30
|
interface RuntimePackArchive extends RuntimePackArtifact {
|
|
31
|
-
id: "quickjs" | "libregexp" | "zlib" | "mbedtls";
|
|
31
|
+
id: "quickjs" | "libregexp" | "zlib" | "brotli" | "mbedtls";
|
|
32
32
|
predicate: RuntimePredicate;
|
|
33
33
|
}
|
|
34
34
|
export type RuntimePackMode = "executable" | "library" | "library-thread";
|
|
@@ -89,6 +89,8 @@ export interface RuntimeFeatureSet extends NativeLinkFeatures {
|
|
|
89
89
|
builtinValues: boolean;
|
|
90
90
|
warningReplace: boolean;
|
|
91
91
|
stdioExtended: boolean;
|
|
92
|
+
brotli: boolean;
|
|
93
|
+
moduleNamespace: boolean;
|
|
92
94
|
nativeFetch: boolean;
|
|
93
95
|
netEffective: boolean;
|
|
94
96
|
httpEffective: boolean;
|
|
@@ -160,6 +160,8 @@ export function effectiveRuntimeFeatures(features, _env = process.env) {
|
|
|
160
160
|
builtinValues: features.builtinValues === true,
|
|
161
161
|
warningReplace: features.warningReplace === true,
|
|
162
162
|
stdioExtended: features.stdioExtended === true,
|
|
163
|
+
brotli: features.brotli === true,
|
|
164
|
+
moduleNamespace: features.moduleNamespace === true,
|
|
163
165
|
nativeFetch,
|
|
164
166
|
netEffective,
|
|
165
167
|
httpEffective,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-pack-core.js","sourceRoot":"","sources":["../../src/backend/runtime-pack-core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime-pack-core.js","sourceRoot":"","sources":["../../src/backend/runtime-pack-core.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/** Synchronous runtime-pack host for the statically compiled driver. Each
|
|
2
|
-
* selected artifact is
|
|
3
|
-
* storage.
|
|
2
|
+
* selected artifact is verified and copied from the same read into private
|
|
3
|
+
* storage. With a store, a pack's selections and the identities of the
|
|
4
|
+
* artifacts it verified are kept between builds: an artifact whose file
|
|
5
|
+
* identity is unchanged since it was hashed is not hashed again. */
|
|
4
6
|
import type { NativeOptimization } from "./optimization.js";
|
|
5
7
|
import type { NativeLinkFeatures } from "./native-link-info.js";
|
|
6
8
|
import type { NativeTargetSpec } from "./targets.js";
|
|
@@ -12,14 +14,24 @@ export interface NativeRuntimePack {
|
|
|
12
14
|
}
|
|
13
15
|
export interface NativeRuntimeSelection {
|
|
14
16
|
root: string;
|
|
15
|
-
manifest
|
|
17
|
+
/** The parsed manifest; a selection read from a store has none until
|
|
18
|
+
* runtimePackManifest parses it. */
|
|
19
|
+
manifest?: RuntimePackManifest;
|
|
20
|
+
licenses: RuntimePackManifest["licenses"];
|
|
16
21
|
packageText: string;
|
|
17
22
|
manifestText: string;
|
|
18
23
|
selected: RuntimePackArtifacts;
|
|
19
24
|
flavor: NativeOptimization;
|
|
20
25
|
}
|
|
21
|
-
|
|
26
|
+
/** Text entries kept between builds (the native compiler's cache). */
|
|
27
|
+
export interface RuntimePackStore {
|
|
28
|
+
read(key: string): string | null;
|
|
29
|
+
write(key: string, text: string): void;
|
|
30
|
+
}
|
|
31
|
+
export declare function selectNativeRuntimePack(root: string, target: NativeTargetSpec, compilerVersion: string, features: NativeLinkFeatures, flavor: NativeOptimization, mode?: RuntimePackMode, store?: RuntimePackStore): NativeRuntimeSelection;
|
|
32
|
+
/** The selection's parsed manifest. */
|
|
33
|
+
export declare function runtimePackManifest(selection: NativeRuntimeSelection): RuntimePackManifest;
|
|
22
34
|
/** stageRoot must be a new private directory owned by the caller. The caller
|
|
23
35
|
* removes it on success or failure, after all native tools have finished. */
|
|
24
36
|
export declare function stageNativeRuntimePack(root: string, stageRoot: string, target: NativeTargetSpec, compilerVersion: string, features: NativeLinkFeatures, flavor: NativeOptimization, mode?: RuntimePackMode): NativeRuntimePack;
|
|
25
|
-
export declare function stageNativeRuntimeSelection(selection: NativeRuntimeSelection, stageRoot: string): NativeRuntimePack;
|
|
37
|
+
export declare function stageNativeRuntimeSelection(selection: NativeRuntimeSelection, stageRoot: string, store?: RuntimePackStore): NativeRuntimePack;
|
|
@@ -1,33 +1,190 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
|
-
import { closeSync, constants, existsSync, mkdirSync, openSync, readFileSync, writeSync, } from "node:fs";
|
|
2
|
+
import { closeSync, constants, existsSync, fstatSync, mkdirSync, openSync, readFileSync, statSync, writeSync, } from "node:fs";
|
|
3
3
|
import { dirname, join } from "node:path";
|
|
4
4
|
import { RuntimePackError, parseRuntimePackManifest, selectRuntimePackArtifacts, validateRuntimePackIdentity, } from "./runtime-pack-core.js";
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
function fileIdentity(path) {
|
|
6
|
+
return statsIdentity(statSync(path));
|
|
7
|
+
}
|
|
8
|
+
function statsIdentity(info) {
|
|
9
|
+
return {
|
|
10
|
+
dev: info.dev,
|
|
11
|
+
ino: info.ino,
|
|
12
|
+
size: info.size,
|
|
13
|
+
mtime: info.mtimeMs,
|
|
14
|
+
ctime: info.ctimeMs,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function sameIdentity(a, b) {
|
|
18
|
+
return (a.dev === b.dev &&
|
|
19
|
+
a.ino === b.ino &&
|
|
20
|
+
a.size === b.size &&
|
|
21
|
+
a.mtime === b.mtime &&
|
|
22
|
+
a.ctime === b.ctime);
|
|
23
|
+
}
|
|
24
|
+
function storeKey(text) {
|
|
25
|
+
return createHash("sha256").update(text).digest("hex");
|
|
26
|
+
}
|
|
27
|
+
export function selectNativeRuntimePack(root, target, compilerVersion, features, flavor, mode = "executable", store) {
|
|
28
|
+
const packagePath = join(root, "package.json");
|
|
29
|
+
const manifestPath = join(root, "runtime-pack.json");
|
|
30
|
+
if (!existsSync(packagePath)) {
|
|
7
31
|
throw new RuntimePackError(`runtime pack for ${target.name} is not installed; install ${target.runtimePackPackage}@${compilerVersion} in your project or set SCRIPTC_RUNTIME_PACK to its directory`, "missing", "scriptc includes the runtime pack for its own platform only; other targets need their runtime pack package in the project");
|
|
8
32
|
}
|
|
9
|
-
|
|
10
|
-
|
|
33
|
+
// The pack's files by identity, with everything else selection reads.
|
|
34
|
+
let key = null;
|
|
35
|
+
let identities = [];
|
|
36
|
+
if (store !== undefined) {
|
|
37
|
+
try {
|
|
38
|
+
identities = [fileIdentity(packagePath), fileIdentity(manifestPath)];
|
|
39
|
+
key = storeKey(JSON.stringify({
|
|
40
|
+
schema: 1,
|
|
41
|
+
root,
|
|
42
|
+
identities,
|
|
43
|
+
target: target.name,
|
|
44
|
+
compilerVersion,
|
|
45
|
+
features,
|
|
46
|
+
flavor,
|
|
47
|
+
mode,
|
|
48
|
+
}));
|
|
49
|
+
const stored = readStoredSelection(store.read(key));
|
|
50
|
+
if (stored !== null) {
|
|
51
|
+
const packageText = readFileSync(packagePath, "utf8");
|
|
52
|
+
const manifestText = readFileSync(manifestPath, "utf8");
|
|
53
|
+
// The texts read are the ones with the stored identities.
|
|
54
|
+
if (sameIdentity(fileIdentity(packagePath), identities[0]) &&
|
|
55
|
+
sameIdentity(fileIdentity(manifestPath), identities[1])) {
|
|
56
|
+
return {
|
|
57
|
+
root,
|
|
58
|
+
licenses: stored.licenses,
|
|
59
|
+
packageText,
|
|
60
|
+
manifestText,
|
|
61
|
+
selected: stored.selected,
|
|
62
|
+
flavor,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
key = null;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
const packageText = readFileSync(packagePath, "utf8");
|
|
72
|
+
const manifestText = readFileSync(manifestPath, "utf8");
|
|
11
73
|
const identity = JSON.parse(packageText);
|
|
12
74
|
const manifest = parseRuntimePackManifest(JSON.parse(manifestText));
|
|
13
75
|
validateRuntimePackIdentity(manifest, identity.name, identity.version, target, compilerVersion);
|
|
14
76
|
const selected = selectRuntimePackArtifacts(manifest, features, flavor, process.env, mode);
|
|
15
|
-
|
|
77
|
+
if (store !== undefined && key !== null) {
|
|
78
|
+
try {
|
|
79
|
+
// Stored only when the files selected from still have the identities
|
|
80
|
+
// in the key.
|
|
81
|
+
if (sameIdentity(fileIdentity(packagePath), identities[0]) &&
|
|
82
|
+
sameIdentity(fileIdentity(manifestPath), identities[1])) {
|
|
83
|
+
const entry = { schema: 1, licenses: manifest.licenses, selected };
|
|
84
|
+
store.write(key, JSON.stringify(entry));
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
/* A failed write is a later miss. */
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
root,
|
|
93
|
+
manifest,
|
|
94
|
+
licenses: manifest.licenses,
|
|
95
|
+
packageText,
|
|
96
|
+
manifestText,
|
|
97
|
+
selected,
|
|
98
|
+
flavor,
|
|
99
|
+
};
|
|
16
100
|
}
|
|
17
|
-
|
|
101
|
+
/** The selection's parsed manifest. */
|
|
102
|
+
export function runtimePackManifest(selection) {
|
|
103
|
+
return (selection.manifest ??= parseRuntimePackManifest(JSON.parse(selection.manifestText)));
|
|
104
|
+
}
|
|
105
|
+
function readStoredSelection(text) {
|
|
106
|
+
if (text === null)
|
|
107
|
+
return null;
|
|
108
|
+
const value = JSON.parse(text);
|
|
109
|
+
if (value === null || typeof value !== "object")
|
|
110
|
+
return null;
|
|
111
|
+
const entry = value;
|
|
112
|
+
if (entry.schema !== 1 ||
|
|
113
|
+
!Array.isArray(entry.licenses) ||
|
|
114
|
+
entry.selected === undefined ||
|
|
115
|
+
entry.selected === null ||
|
|
116
|
+
typeof entry.selected !== "object" ||
|
|
117
|
+
!Array.isArray(entry.selected.runtime) ||
|
|
118
|
+
!Array.isArray(entry.selected.archives) ||
|
|
119
|
+
!Array.isArray(entry.selected.systemLibraries))
|
|
120
|
+
return null;
|
|
121
|
+
return entry;
|
|
122
|
+
}
|
|
123
|
+
function readVerified(store, key) {
|
|
124
|
+
const verified = new Map();
|
|
125
|
+
try {
|
|
126
|
+
const text = store?.read(key) ?? null;
|
|
127
|
+
if (text === null)
|
|
128
|
+
return verified;
|
|
129
|
+
const stored = JSON.parse(text);
|
|
130
|
+
if (stored.schema === 1)
|
|
131
|
+
for (const artifact of stored.artifacts)
|
|
132
|
+
verified.set(artifact.path, artifact);
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
/* A malformed entry verifies everything again. */
|
|
136
|
+
}
|
|
137
|
+
return verified;
|
|
138
|
+
}
|
|
139
|
+
function stageArtifact(root, stage, artifact, verified, newlyVerified) {
|
|
18
140
|
const source = join(root, artifact.path);
|
|
19
141
|
const destination = join(stage, artifact.path);
|
|
20
142
|
let bytes;
|
|
143
|
+
let before;
|
|
144
|
+
let after;
|
|
21
145
|
try {
|
|
22
|
-
bytes
|
|
146
|
+
// The identities are those of the open file the bytes come from, also
|
|
147
|
+
// when the path is a symbolic link that changes during the read.
|
|
148
|
+
const input = openSync(source, constants.O_RDONLY);
|
|
149
|
+
try {
|
|
150
|
+
before = statsIdentity(fstatSync(input));
|
|
151
|
+
bytes = readFileSync(input);
|
|
152
|
+
after = statsIdentity(fstatSync(input));
|
|
153
|
+
}
|
|
154
|
+
finally {
|
|
155
|
+
closeSync(input);
|
|
156
|
+
}
|
|
23
157
|
}
|
|
24
158
|
catch {
|
|
25
159
|
throw new RuntimePackError(`runtime pack artifact is missing: ${artifact.path}`, "invalid");
|
|
26
160
|
}
|
|
161
|
+
// The bytes are those last hashed when the file kept the identity it had
|
|
162
|
+
// then for the whole read.
|
|
163
|
+
const known = verified.get(artifact.path);
|
|
164
|
+
const unchanged = sameIdentity(before, after);
|
|
165
|
+
const trusted = known !== undefined &&
|
|
166
|
+
known.sha256 === artifact.sha256 &&
|
|
167
|
+
known.size === artifact.size &&
|
|
168
|
+
unchanged &&
|
|
169
|
+
known.dev === before.dev &&
|
|
170
|
+
known.ino === before.ino &&
|
|
171
|
+
known.size === before.size &&
|
|
172
|
+
known.mtime === before.mtime &&
|
|
173
|
+
known.ctime === before.ctime;
|
|
27
174
|
if (bytes.length !== artifact.size ||
|
|
28
|
-
createHash("sha256").update(bytes).digest("hex") !== artifact.sha256) {
|
|
175
|
+
(!trusted && createHash("sha256").update(bytes).digest("hex") !== artifact.sha256)) {
|
|
29
176
|
throw new RuntimePackError(`runtime pack artifact hash mismatch: ${artifact.path}`, "invalid");
|
|
30
177
|
}
|
|
178
|
+
if (!trusted && unchanged)
|
|
179
|
+
newlyVerified.push({
|
|
180
|
+
path: artifact.path,
|
|
181
|
+
sha256: artifact.sha256,
|
|
182
|
+
dev: before.dev,
|
|
183
|
+
ino: before.ino,
|
|
184
|
+
size: before.size,
|
|
185
|
+
mtime: before.mtime,
|
|
186
|
+
ctime: before.ctime,
|
|
187
|
+
});
|
|
31
188
|
mkdirSync(dirname(destination), { recursive: true });
|
|
32
189
|
const fd = openSync(destination, constants.O_WRONLY | constants.O_CREAT | constants.O_EXCL, 0o400);
|
|
33
190
|
try {
|
|
@@ -49,13 +206,17 @@ function stageArtifact(root, stage, artifact) {
|
|
|
49
206
|
export function stageNativeRuntimePack(root, stageRoot, target, compilerVersion, features, flavor, mode = "executable") {
|
|
50
207
|
return stageNativeRuntimeSelection(selectNativeRuntimePack(root, target, compilerVersion, features, flavor, mode), stageRoot);
|
|
51
208
|
}
|
|
52
|
-
export function stageNativeRuntimeSelection(selection, stageRoot) {
|
|
53
|
-
const { root,
|
|
209
|
+
export function stageNativeRuntimeSelection(selection, stageRoot, store) {
|
|
210
|
+
const { root, licenses, selected, packageText, manifestText } = selection;
|
|
54
211
|
const packagePath = join(root, "package.json");
|
|
55
212
|
const manifestPath = join(root, "runtime-pack.json");
|
|
56
|
-
const
|
|
57
|
-
const
|
|
58
|
-
|
|
213
|
+
const key = storeKey(JSON.stringify({ schema: 1, verified: root }));
|
|
214
|
+
const verified = readVerified(store, key);
|
|
215
|
+
const newlyVerified = [];
|
|
216
|
+
const stage = (artifact) => stageArtifact(root, stageRoot, artifact, verified, newlyVerified);
|
|
217
|
+
const runtimeObjects = selected.runtime.map(stage);
|
|
218
|
+
const archives = selected.archives.map(stage);
|
|
219
|
+
for (const license of licenses) {
|
|
59
220
|
try {
|
|
60
221
|
readFileSync(join(root, license.path));
|
|
61
222
|
}
|
|
@@ -67,6 +228,17 @@ export function stageNativeRuntimeSelection(selection, stageRoot) {
|
|
|
67
228
|
readFileSync(manifestPath, "utf8") !== manifestText) {
|
|
68
229
|
throw new RuntimePackError("runtime pack changed while staging verified artifacts", "invalid");
|
|
69
230
|
}
|
|
231
|
+
if (store !== undefined && newlyVerified.length > 0) {
|
|
232
|
+
for (const artifact of newlyVerified)
|
|
233
|
+
verified.set(artifact.path, artifact);
|
|
234
|
+
const entry = { schema: 1, artifacts: [...verified.values()] };
|
|
235
|
+
try {
|
|
236
|
+
store.write(key, JSON.stringify(entry));
|
|
237
|
+
}
|
|
238
|
+
catch {
|
|
239
|
+
/* A failed write only means hashing again next time. */
|
|
240
|
+
}
|
|
241
|
+
}
|
|
70
242
|
return { runtimeObjects, archives, systemLibraries: selected.systemLibraries };
|
|
71
243
|
}
|
|
72
244
|
//# sourceMappingURL=runtime-pack-native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-pack-native.js","sourceRoot":"","sources":["../../src/backend/runtime-pack-native.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-pack-native.js","sourceRoot":"","sources":["../../src/backend/runtime-pack-native.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,SAAS,GAEV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG1C,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,GAK5B,MAAM,wBAAwB,CAAC;AAkChC,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,IAAW;IAChC,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,OAAO;QACnB,KAAK,EAAE,IAAI,CAAC,OAAO;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,CAAe,EAAE,CAAe;IACpD,OAAO,CACL,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG;QACf,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG;QACf,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QACjB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;QACnB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CACpB,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAUD,MAAM,UAAU,uBAAuB,CACrC,IAAY,EACZ,MAAwB,EACxB,eAAuB,EACvB,QAA4B,EAC5B,MAA0B,EAC1B,IAAI,GAAoB,YAAY,EACpC,KAAwB;IAExB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,MAAM,CAAC,IAAI,8BAA8B,MAAM,CAAC,kBAAkB,IAAI,eAAe,+DAA+D,EACxK,SAAS,EACT,2HAA2H,CAC5H,CAAC;IACJ,CAAC;IACD,sEAAsE;IACtE,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,UAAU,GAAmB,EAAE,CAAC;IACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,UAAU,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;YACrE,GAAG,GAAG,QAAQ,CACZ,IAAI,CAAC,SAAS,CAAC;gBACb,MAAM,EAAE,CAAC;gBACT,IAAI;gBACJ,UAAU;gBACV,MAAM,EAAE,MAAM,CAAC,IAAI;gBACnB,eAAe;gBACf,QAAQ;gBACR,MAAM;gBACN,IAAI;aACL,CAAC,CACH,CAAC;YACF,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACpD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBACtD,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBACxD,0DAA0D;gBAC1D,IACE,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC;oBACvD,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,EACxD,CAAC;oBACD,OAAO;wBACL,IAAI;wBACJ,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,WAAW;wBACX,YAAY;wBACZ,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,MAAM;qBACP,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,GAAG,GAAG,IAAI,CAAC;QACb,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAwC,CAAC;IAChF,MAAM,QAAQ,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IACpE,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IAChG,MAAM,QAAQ,GAAG,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3F,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,qEAAqE;YACrE,cAAc;YACd,IACE,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC;gBACvD,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,EACxD,CAAC;gBACD,MAAM,KAAK,GAAoB,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;gBACpF,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC;IACD,OAAO;QACL,IAAI;QACJ,QAAQ;QACR,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,WAAW;QACX,YAAY;QACZ,QAAQ;QACR,MAAM;KACP,CAAC;AACJ,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,mBAAmB,CAAC,SAAiC;IACnE,OAAO,CAAC,SAAS,CAAC,QAAQ,KAAK,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAmB;IAC9C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,KAAK,GAAG,KAAiC,CAAC;IAChD,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;QAClB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC9B,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC5B,KAAK,CAAC,QAAQ,KAAK,IAAI;QACvB,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAClC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;QACtC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC;QAE9C,OAAO,IAAI,CAAC;IACd,OAAO,KAAwB,CAAC;AAClC,CAAC;AAmBD,SAAS,YAAY,CACnB,KAAmC,EACnC,GAAW;IAEX,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IACrD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;QACtC,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,QAAQ,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC;QACtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YACrB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS;gBAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnF,CAAC;IAAC,MAAM,CAAC;QACP,kDAAkD;IACpD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,aAAa,CACpB,IAAY,EACZ,KAAa,EACb,QAA6B,EAC7B,QAAuC,EACvC,aAAiC;IAEjC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,KAAa,CAAC;IAClB,IAAI,MAAoB,CAAC;IACzB,IAAI,KAAmB,CAAC;IACxB,IAAI,CAAC;QACH,sEAAsE;QACtE,iEAAiE;QACjE,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YACzC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YAC5B,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;gBAAS,CAAC;YACT,SAAS,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,gBAAgB,CAAC,qCAAqC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;IAC9F,CAAC;IACD,yEAAyE;IACzE,2BAA2B;IAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9C,MAAM,OAAO,GACX,KAAK,KAAK,SAAS;QACnB,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;QAChC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;QAC5B,SAAS;QACT,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG;QACxB,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG;QACxB,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAC1B,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;QAC5B,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC;IAC/B,IACE,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,IAAI;QAC9B,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAClF,CAAC;QACD,MAAM,IAAI,gBAAgB,CAAC,wCAAwC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC,OAAO,IAAI,SAAS;QACvB,aAAa,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;IACL,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,MAAM,EAAE,GAAG,QAAQ,CACjB,WAAW,EACX,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,EACzD,KAAK,CACN,CAAC;IACF,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;YACpE,IAAI,OAAO,KAAK,CAAC;gBACf,MAAM,IAAI,gBAAgB,CACxB,0CAA0C,QAAQ,CAAC,IAAI,EAAE,EACzD,SAAS,CACV,CAAC;YACJ,MAAM,IAAI,OAAO,CAAC;QACpB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;6EAC6E;AAC7E,MAAM,UAAU,sBAAsB,CACpC,IAAY,EACZ,SAAiB,EACjB,MAAwB,EACxB,eAAuB,EACvB,QAA4B,EAC5B,MAA0B,EAC1B,IAAI,GAAoB,YAAY;IAEpC,OAAO,2BAA2B,CAChC,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAC9E,SAAS,CACV,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,SAAiC,EACjC,SAAiB,EACjB,KAAwB;IAExB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;IAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAuB,EAAE,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,QAA6B,EAAU,EAAE,CACtD,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACpE,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,gBAAgB,CAAC,4CAA4C,EAAE,SAAS,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IACD,IACE,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,WAAW;QACjD,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,YAAY,EACnD,CAAC;QACD,MAAM,IAAI,gBAAgB,CAAC,uDAAuD,EAAE,SAAS,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,KAAK,MAAM,QAAQ,IAAI,aAAa;YAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5E,MAAM,KAAK,GAAuB,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QACnF,IAAI,CAAC;YACH,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;QAC1D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,CAAC,eAAe,EAAE,CAAC;AACjF,CAAC"}
|
|
@@ -1,11 +1,23 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { mkdirSync, readFileSync, renameSync, statSync, symlinkSync, unlinkSync, utimesSync, writeFileSync, } from "node:fs";
|
|
1
3
|
import { mkdtemp, rm } from "node:fs/promises";
|
|
2
4
|
import { tmpdir } from "node:os";
|
|
3
5
|
import { join } from "node:path";
|
|
4
|
-
import { afterEach, expect, test } from "vitest";
|
|
6
|
+
import { afterEach, expect, test, vi } from "vitest";
|
|
5
7
|
import { nativeCodegenDiag } from "../diagnostics/diagnostic.js";
|
|
8
|
+
import { compilerReleaseVersion } from "../library/sidecar.js";
|
|
9
|
+
import { RUNTIME_ABI_MARKER, RUNTIME_ABI_VERSION } from "./runtime-abi.js";
|
|
6
10
|
import { RuntimePackError } from "./runtime-pack-core.js";
|
|
7
|
-
import { selectNativeRuntimePack } from "./runtime-pack-native.js";
|
|
8
|
-
import { WASM32_WASI_TARGET } from "./targets.js";
|
|
11
|
+
import { runtimePackManifest, selectNativeRuntimePack, stageNativeRuntimeSelection, } from "./runtime-pack-native.js";
|
|
12
|
+
import { MACOS_ARM64_TARGET, WASM32_WASI_TARGET } from "./targets.js";
|
|
13
|
+
vi.mock("node:crypto", async (original) => {
|
|
14
|
+
const crypto = await original();
|
|
15
|
+
return { ...crypto, createHash: vi.fn(crypto.createHash) };
|
|
16
|
+
});
|
|
17
|
+
vi.mock("node:fs", async (original) => {
|
|
18
|
+
const fs = await original();
|
|
19
|
+
return { ...fs, readFileSync: vi.fn(fs.readFileSync) };
|
|
20
|
+
});
|
|
9
21
|
const dirs = [];
|
|
10
22
|
afterEach(async () => Promise.all(dirs.splice(0).map((dir) => rm(dir, { recursive: true, force: true }))));
|
|
11
23
|
test("a missing cross-target runtime pack names its package in the diagnostic", async () => {
|
|
@@ -28,4 +40,149 @@ test("a missing cross-target runtime pack names its package in the diagnostic",
|
|
|
28
40
|
test("a missing native helper keeps the reinstall hint", () => {
|
|
29
41
|
expect(nativeCodegenDiag("SC3003", "helper missing", "main.ts").hint).toBe("reinstall scriptc with optional dependencies enabled for this host");
|
|
30
42
|
});
|
|
43
|
+
/** A runtime pack with one runtime object and a license, and a store that
|
|
44
|
+
* keeps entries in memory. */
|
|
45
|
+
async function packFixture() {
|
|
46
|
+
const root = await mkdtemp(join(tmpdir(), "scriptc-runtime-pack-store-"));
|
|
47
|
+
dirs.push(root);
|
|
48
|
+
const target = MACOS_ARM64_TARGET;
|
|
49
|
+
const version = compilerReleaseVersion();
|
|
50
|
+
writeFileSync(join(root, "package.json"), JSON.stringify({ name: target.runtimePackPackage, version }));
|
|
51
|
+
mkdirSync(join(root, "artifacts"));
|
|
52
|
+
const object = join(root, "artifacts", "base.o");
|
|
53
|
+
writeFileSync(object, "base object");
|
|
54
|
+
writeFileSync(join(root, "license.txt"), "license");
|
|
55
|
+
const unit = {
|
|
56
|
+
source: "scr_base.c",
|
|
57
|
+
predicate: true,
|
|
58
|
+
variants: [
|
|
59
|
+
{
|
|
60
|
+
id: "default",
|
|
61
|
+
when: {},
|
|
62
|
+
defines: [],
|
|
63
|
+
path: "artifacts/base.o",
|
|
64
|
+
sha256: createHash("sha256").update("base object").digest("hex"),
|
|
65
|
+
size: Buffer.byteLength("base object"),
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
};
|
|
69
|
+
const manifest = {
|
|
70
|
+
schema: "scriptc.runtime-pack.v1",
|
|
71
|
+
format: 1,
|
|
72
|
+
package: target.runtimePackPackage,
|
|
73
|
+
version,
|
|
74
|
+
target: {
|
|
75
|
+
name: target.name,
|
|
76
|
+
llvm_triple: target.llvmTriple,
|
|
77
|
+
architecture: target.architecture,
|
|
78
|
+
object_format: target.objectFormat,
|
|
79
|
+
minimum_os: target.minimumOs,
|
|
80
|
+
},
|
|
81
|
+
runtime_abi: { version: RUNTIME_ABI_VERSION, marker: RUNTIME_ABI_MARKER },
|
|
82
|
+
compiler: { command: "clang", identity: "fixture clang", target: target.llvmTriple },
|
|
83
|
+
macros: {
|
|
84
|
+
executable: [],
|
|
85
|
+
excluded: ["SCR_LIB", "SCR_THREAD_INSTANCES", "SCR_RC_AUDIT"],
|
|
86
|
+
sanitizer: "external-toolchain-required",
|
|
87
|
+
},
|
|
88
|
+
flavors: {
|
|
89
|
+
release: { optimization: "-O2", runtime_units: [unit] },
|
|
90
|
+
dev: { optimization: "-O0", runtime_units: [unit] },
|
|
91
|
+
},
|
|
92
|
+
archives: [],
|
|
93
|
+
system_libraries: [{ name: "System", predicate: true }],
|
|
94
|
+
licenses: [{ path: "license.txt", license: "fixture" }],
|
|
95
|
+
};
|
|
96
|
+
const manifestText = JSON.stringify(manifest);
|
|
97
|
+
writeFileSync(join(root, "runtime-pack.json"), manifestText);
|
|
98
|
+
const entries = new Map();
|
|
99
|
+
const store = {
|
|
100
|
+
read: (key) => entries.get(key) ?? null,
|
|
101
|
+
write: (key, text) => void entries.set(key, text),
|
|
102
|
+
};
|
|
103
|
+
const select = () => selectNativeRuntimePack(root, target, version, {}, "release", "executable", store);
|
|
104
|
+
let stages = 0;
|
|
105
|
+
const stage = (selection) => {
|
|
106
|
+
const directory = join(root, `stage-${stages++}`);
|
|
107
|
+
mkdirSync(directory);
|
|
108
|
+
return stageNativeRuntimeSelection(selection, directory, store);
|
|
109
|
+
};
|
|
110
|
+
return { root, object, manifestText, entries, select, stage };
|
|
111
|
+
}
|
|
112
|
+
test("a stored selection answers while the pack's files keep their identities", async () => {
|
|
113
|
+
const f = await packFixture();
|
|
114
|
+
const first = f.select();
|
|
115
|
+
expect(first.selected.systemLibraries).toEqual(["System"]);
|
|
116
|
+
expect(f.entries.size).toBe(1);
|
|
117
|
+
// The next selection reads the stored answer instead of the manifest.
|
|
118
|
+
const [key, text] = [...f.entries][0];
|
|
119
|
+
const stored = JSON.parse(text);
|
|
120
|
+
stored.selected.systemLibraries = ["Stored"];
|
|
121
|
+
f.entries.set(key, JSON.stringify(stored));
|
|
122
|
+
const second = f.select();
|
|
123
|
+
expect(second.selected.systemLibraries).toEqual(["Stored"]);
|
|
124
|
+
expect(second.licenses).toEqual(first.licenses);
|
|
125
|
+
expect(second.manifest).toBeUndefined();
|
|
126
|
+
expect(runtimePackManifest(second).flavors.release).toEqual(first.manifest.flavors.release);
|
|
127
|
+
// Writing the manifest again, with the same text, gives it a new identity.
|
|
128
|
+
writeFileSync(join(f.root, "runtime-pack.json"), f.manifestText);
|
|
129
|
+
expect(f.select().selected.systemLibraries).toEqual(["System"]);
|
|
130
|
+
});
|
|
131
|
+
test.each(["replaced", "rewritten in place"])("staging hashes an artifact again when it is %s, even at the same size and mtime", async (change) => {
|
|
132
|
+
const f = await packFixture();
|
|
133
|
+
const selection = f.select();
|
|
134
|
+
f.stage(selection);
|
|
135
|
+
const before = statSync(f.object);
|
|
136
|
+
const changed = change === "replaced" ? f.object + ".new" : f.object;
|
|
137
|
+
writeFileSync(changed, "x".repeat(before.size));
|
|
138
|
+
utimesSync(changed, before.atime, before.mtime);
|
|
139
|
+
if (changed !== f.object)
|
|
140
|
+
renameSync(changed, f.object);
|
|
141
|
+
expect(() => f.stage(selection)).toThrow("runtime pack artifact hash mismatch: artifacts/base.o");
|
|
142
|
+
});
|
|
143
|
+
test("staging does not hash an unchanged artifact again", async () => {
|
|
144
|
+
const f = await packFixture();
|
|
145
|
+
const selection = f.select();
|
|
146
|
+
const hashes = () => vi.mocked(createHash).mock.calls.length;
|
|
147
|
+
let start = hashes();
|
|
148
|
+
f.stage(selection);
|
|
149
|
+
const firstStage = hashes() - start;
|
|
150
|
+
start = hashes();
|
|
151
|
+
const staged = f.stage(selection);
|
|
152
|
+
// Only the store key is hashed; the staged copy has the verified bytes.
|
|
153
|
+
expect(hashes() - start).toBe(firstStage - 1);
|
|
154
|
+
expect(readFileSync(staged.runtimeObjects[0], "utf8")).toBe("base object");
|
|
155
|
+
});
|
|
156
|
+
test.skipIf(process.platform === "win32")("staging reads an artifact's bytes from the file whose identity it checks", async () => {
|
|
157
|
+
const f = await packFixture();
|
|
158
|
+
// The artifact path is a symbolic link to the verified file.
|
|
159
|
+
const real = f.object + ".real";
|
|
160
|
+
renameSync(f.object, real);
|
|
161
|
+
symlinkSync(real, f.object);
|
|
162
|
+
const selection = f.select();
|
|
163
|
+
f.stage(selection);
|
|
164
|
+
// During the next read the link names another file of the same size,
|
|
165
|
+
// and it names the verified file again before the read ends.
|
|
166
|
+
const other = f.object + ".other";
|
|
167
|
+
writeFileSync(other, "x".repeat(statSync(real).size));
|
|
168
|
+
const read = vi.mocked(readFileSync);
|
|
169
|
+
const original = read.getMockImplementation();
|
|
170
|
+
read.mockImplementation(((source, ...rest) => {
|
|
171
|
+
if (typeof source === "string" && !source.endsWith("base.o"))
|
|
172
|
+
return original(source, ...rest);
|
|
173
|
+
read.mockImplementation(original);
|
|
174
|
+
unlinkSync(f.object);
|
|
175
|
+
symlinkSync(other, f.object);
|
|
176
|
+
try {
|
|
177
|
+
return original(source, ...rest);
|
|
178
|
+
}
|
|
179
|
+
finally {
|
|
180
|
+
unlinkSync(f.object);
|
|
181
|
+
symlinkSync(real, f.object);
|
|
182
|
+
}
|
|
183
|
+
}));
|
|
184
|
+
const staged = f.stage(selection);
|
|
185
|
+
expect(read.getMockImplementation()).toBe(original);
|
|
186
|
+
expect(readFileSync(staged.runtimeObjects[0], "utf8")).toBe("base object");
|
|
187
|
+
});
|
|
31
188
|
//# sourceMappingURL=runtime-pack-native.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-pack-native.test.js","sourceRoot":"","sources":["../../src/backend/runtime-pack-native.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-pack-native.test.js","sourceRoot":"","sources":["../../src/backend/runtime-pack-native.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ async function fixture(target, workers = false) {
|
|
|
36
36
|
object_format: target.objectFormat,
|
|
37
37
|
minimum_os: target.minimumOs,
|
|
38
38
|
},
|
|
39
|
-
runtime_abi: { version:
|
|
39
|
+
runtime_abi: { version: 45, marker: "scr_runtime_abi_v45" },
|
|
40
40
|
compiler: { command: "fixture", identity: "fixture", target: target.llvmTriple },
|
|
41
41
|
macros: { executable: [], excluded: ["SCR_LIB"], sanitizer: "external-toolchain-required" },
|
|
42
42
|
flavors: {
|
|
@@ -112,6 +112,7 @@ const features = {
|
|
|
112
112
|
dh: false,
|
|
113
113
|
pki: false,
|
|
114
114
|
ed25519: false,
|
|
115
|
+
x509: false,
|
|
115
116
|
webcrypto: false,
|
|
116
117
|
perfLoop: false,
|
|
117
118
|
};
|