Malte Ubl and Claude Opus 5.5
bdd447ebb6
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:43 -07:00
Malte Ubl and Claude Opus 5.5
0b7e62dd9c
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:42 -07:00
Malte Ubl and Claude Opus 5.5
604e471bc8
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:42 -07:00
Malte Ubl and Claude Opus 5.5
1ec20be530
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:42 -07:00
Malte Ubl and Claude Opus 5.5
7635d0b4fb
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:41 -07:00
Malte Ubl and Claude Opus 5.5
ae7d4ebf0d
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:41 -07:00
Malte Ubl and Claude Opus 5.5
704e6b4992
Merge the macOS island fixes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:41 -07:00
Malte Ubl and Claude Opus 5.5
1d915b0c04
Merge ni/3-hosted-loop
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:40 -07:00
Malte Ubl and Claude Opus 5.5
bfbbd349a3
Merge the macOS island fixes, and make nested entries' contexts the same way
...
A nested entry below the mark makes its context with ni_make_context,
so macOS clears only the top slice of the range instead of the whole of
Node's stack below the mark on every nested call (17 ms per call, and
the cross-heap GC test ran past its timeout).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:40 -07:00
Malte Ubl and Claude Opus 5.5
5f3e97998d
Merge the macOS island fixes of ni/1-libnode-loader
...
The libnode-linux action becomes .github/actions/libnode, which serves
the Linux x64 and macOS lanes: the libnode-packs cache for the runner's
platform, else the development pack.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:39 -07:00
Malte Ubl and Claude Opus 5.5
b1005549c3
Merge the macOS island fixes of ni/1-libnode-loader
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:39 -07:00
Malte Ubl and Claude Opus 5.5
50385349d3
Merge the macOS island fixes of ni/13-libnode-packs
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:39 -07:00
Malte Ubl and Claude Opus 5.5
df869f28b0
Run Node islands on macOS, and test them in the macOS CI lanes
...
macOS binds libnode's own calls to v8::base::Stack inside libnode, so the
bridge's definitions cannot give V8 Node's stack as they do on Linux; V8
took the main thread's stack start and its conservative scan faulted in
the gap above Node's stack. While Node starts on its stack, the main
thread's pthread record now names that stack, which V8 reads once and
keeps.
macOS's makecontext clears the whole stack it is given, so it gets only
the top slice of Node's stack (no 64 MiB pass per context).
CI: dev-pack.json pins mirrored darwin-arm64 and darwin-x64 libnode
builds of the pinned Node 24.22.0 from the libnode-packs workflow, the
dev-pack action serves either platform, and the macOS lanes provision it,
so island tests fail rather than skip on macOS CI. The arm64 LLVM job
runs the island harness; the Intel job runs it and the island corpus.
bridge-smoke loads the .dylib bridge on macOS.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-26 12:50:38 -07:00
Chris Tate
2e627dab79
Merge main
2026-10-26 14:45:37 -05:00
Chris Tate
6db3393d41
Read TypeScript 7.1's heritage clause elements beside 7.0's ( #2350 )
2026-10-26 14:37:59 -05:00
Chris Tate
f12b2b041d
Cheaper trial deletion in the cycle collector
2026-10-26 14:34:49 -05:00
Chris Tate
f1e27f2e44
Poll the loops of a nest on every iteration in ELF worker executables
2026-10-26 14:31:32 -05:00
Chris Tate
ecaeadc1d7
Give every numbered registry one source of truth and a check ( #2277 )
2026-10-26 14:25:43 -05:00
Chris Tate
05dda22efa
Read TypeScript 7.1's heritage clause elements beside 7.0's
...
TypeScript 7.1 parses the elements of an interface's `extends` and a
class's `implements` as TypeReference nodes, whose names are entity names,
where 7.0 gives ExpressionWithTypeArguments nodes. heritage-elements.ts
recognizes both forms, and the readers that took an element's expression
read either:
- contract-types.ts finds `implements ProgramLifetime` and
`implements Acyclic` written as type references;
- narrowing-stability.ts takes a qualified name as it takes a property
access;
- generic-functions.ts reads an element's name in either form, and keeps
counting a name in a heritage clause as a value reference.
2026-10-26 14:09:17 -05:00
Chris Tate
276a0ca828
Decide concat spreading of dynamic values at run time; keep JS lets from index reads unchecked ( #2229 )
2026-10-26 14:07:43 -05:00
Chris Tate
40b189fcdc
Talk to TypeScript 7.1's API server beside 7.0's ( #2349 )
2026-10-26 13:55:20 -05:00
Chris Tate
b4e9e134f1
Merge main and address review feedback
2026-10-26 13:48:37 -05:00
Malte Ubl
cc091bac48
Merge remote-tracking branch 'origin/ni/i10-js-island-requires' into HEAD
2026-10-26 11:32:11 -07:00
Malte Ubl
6c89aa2644
Merge remote-tracking branch 'origin/ni/i9-recorded-deferral' into HEAD
2026-10-26 11:31:50 -07:00
Malte Ubl
8d1e505850
Merge remote-tracking branch 'origin/ni/i8-exit' into HEAD
...
# Conflicts:
# tests/harness/llvm-differential.test.ts
2026-10-26 11:30:16 -07:00
Malte Ubl
240d552d82
Merge remote-tracking branch 'origin/ni/i7-routing' into HEAD
2026-10-26 11:29:33 -07:00
Malte Ubl
b2fc8c1cd8
Merge remote-tracking branch 'origin/ni/i6-subclasses' into HEAD
2026-10-26 11:28:52 -07:00
Malte Ubl
8b370de223
Merge remote-tracking branch 'origin/ni/i5-shared-modules' into HEAD
...
# Conflicts:
# packages/compiler/ambient/scriptc-node-fallback.d.ts
# packages/compiler/src/frontend/lowering/lower-classes.ts
# packages/compiler/src/frontend/lowering/lower-modules.ts
# tests/harness/npm.test.ts
2026-10-26 11:28:01 -07:00
Malte Ubl
01a87c968a
Merge remote-tracking branch 'origin/ni/i4-deferred' into HEAD
...
# Conflicts:
# packages/compiler/src/frontend/lowering/lower-modules.ts
2026-10-26 11:27:04 -07:00
Chris Tate
9c7d552fdc
Link the arena runtime into the runtime C tests
2026-10-26 13:26:29 -05:00
Malte Ubl
a8067be282
Merge remote-tracking branch 'origin/ni/i3-exports' into HEAD
2026-10-26 11:26:23 -07:00
Malte Ubl
0d054133ad
Merge remote-tracking branch 'origin/ni/i2-handles' into HEAD
...
# Conflicts:
# packages/compiler/src/frontend/lowering/lower-classes.ts
2026-10-26 11:25:53 -07:00
Chris Tate
b0a559e6c9
Address review feedback
2026-10-26 13:25:42 -05:00
Malte Ubl
39a125ec38
Move the Node island handle tag to 84
...
Main's navigator global took tag 83.
2026-10-26 11:25:16 -07:00
Malte Ubl
3a5aab5b2f
Merge remote-tracking branch 'origin/ni/i1-stack-bound' into HEAD
...
# Conflicts:
# packages/compiler/src/cli/command.ts
# packages/compiler/src/executable/executable-cache.ts
# packages/compiler/src/frontend/lowering/builtins/module-resolution.ts
# packages/compiler/src/frontend/lowering/lowerer.ts
# packages/compiler/src/index.ts
# packages/runtime/src/scr_json.c
# tests/harness/npm.test.ts
2026-10-26 11:22:14 -07:00
Malte Ubl
f5b1e5f007
Merge remote-tracking branch 'origin/ni/islands-base' into HEAD
...
# Conflicts:
# packages/compiler/src/diagnostics/diagnostic.ts
# packages/compiler/src/node-islands/libnode-pack.ts
# packages/libnode-darwin-arm64/package.json
# packages/libnode-darwin-x64/package.json
# packages/libnode-linux-arm64-gnu/package.json
# packages/libnode-linux-x64-gnu/package.json
# packages/node/package.json
2026-10-26 11:20:55 -07:00
Malte Ubl
b3e29df342
Merge remote-tracking branch 'origin/ni/13-libnode-packs' into HEAD
...
# Conflicts:
# packages/cli/src/bootstrap.ts
# packages/compiler/src/node-islands/libnode.ts
# packages/libnode-common/smoke/smoke.c
2026-10-26 11:18:28 -07:00
Malte Ubl
ae66edf566
Merge remote-tracking branch 'origin/ni/3-hosted-loop' into HEAD
...
# Conflicts:
# packages/cli/src/bootstrap.ts
# packages/compiler/src/diagnostics/diagnostic.ts
# packages/compiler/src/node-islands/libnode.ts
2026-10-26 11:17:30 -07:00
Malte Ubl
141279b74c
Merge remote-tracking branch 'origin/ni/1-libnode-loader' into ni/13-libnode-packs
2026-10-26 11:15:43 -07:00
Malte Ubl
c088613033
Merge remote-tracking branch 'origin/ni/1-libnode-loader' into ni/3-hosted-loop
2026-10-26 11:15:41 -07:00
Chris Tate
de3a75ff81
Push localized failure down to the failing component of a declared type ( #2307 )
2026-10-26 13:10:05 -05:00
Malte Ubl
5817be4d0f
Merge remote-tracking branch 'origin/main' into ni/1-libnode-loader
...
# Conflicts:
# packages/compiler/src/diagnostics/diagnostic.ts
# packages/compiler/src/ir/function-references.test.ts
2026-10-26 11:08:44 -07:00
Chris Tate
21c199ce0d
Keep the layout of arrays and records passed to wider parameter types ( #2329 )
2026-10-26 13:08:31 -05:00
Chris Tate
fd18db259a
Cut the shape overlay's compile cost; keep package JSDoc it does not replace ( #2223 )
2026-10-26 13:00:54 -05:00
Chris Tate
6a24aae11a
Address review feedback
2026-10-26 12:59:08 -05:00
Chris Tate
58197ed89d
Close the largest canonical-mapping gaps the shadow census found ( #2340 )
2026-10-26 12:42:03 -05:00
Chris Tate
9336188d16
Merge perf/shape-overlay-cost
2026-10-26 12:40:45 -05:00
Chris Tate
4cacdfe821
Merge main
2026-10-26 12:38:20 -05:00
Chris Tate
2aafe6b406
Address review feedback
2026-10-26 12:36:57 -05:00
Chris Tate
ed4fc15443
Regenerate the IR field readers
2026-10-26 12:32:46 -05:00