Chris Tate
7ff5523e60
fix: retain typed-array receiver across nested assignments
2026-08-08 14:26:37 -05:00
Chris Tate and morler
01645c636e
perf(compiler): specialize typed-array element access
...
- Lower typed-array reads, writes, and lengths directly by IR element kind.
- Preserve coercion, bounds, and receiver lifetime semantics across C and LLVM.
- Cover emission, ABI layout, and Node-differential behavior.
Co-authored-by: morler <478444+morler@users.noreply.github.com >
2026-08-08 13:57:58 -05:00
Chris Tate
782d3b8451
fix(compiler): support implicit top-level await modules ( #94 )
...
* fix(compiler): support implicit top-level await modules
- Match Node 24 syntax detection by treating top-level await as an ES module marker.
- Add differential corpus coverage for TypeScript files without explicit imports or exports.
* fix Node ESM classification for top-level await
* fix ESM require diagnostics and classification caching
* fix require binding and package type precedence
* fix: align top-level await module detection with Node
2026-08-08 11:35:01 -05:00
Chris Tate
adae252881
Prepare v0.0.22 release ( #87 )
...
- Stamp all publishable packages at v0.0.22.
- Publish release notes for persistent builds and external coverage types.
- Refresh the compiler surface manifest for the release.
2026-08-03 01:31:43 -05:00
Chris Tate
52459a86d4
feat(compiler): lower stored text codec calls ( #85 )
...
* feat(compiler): lower stored text codec calls
- Lower same-scope const TextEncoder and TextDecoder call receivers without runtime instances.
- Preserve fences for escaping, captured, and imported codec values with actionable diagnostics.
- Add differential, diagnostic, and preflight baseline coverage for the supported idiom.
* fix(compiler): fence deferred text codec calls
* fix text codec switch-clause TDZ handling
2026-08-02 21:24:33 -05:00
Chris Tate
0d5bc0dd0d
feat(coverage): resolve external host type surfaces ( #80 )
...
* feat(coverage): resolve external host type surfaces
- Add repeatable --external-types mappings for checker-only module resolution.
- Keep host runtime values as explicit blockers with tests and documentation.
* fix: validate external type mappings
* fix: fence external host runtime edges
* fix(compiler): skip empty external type lookup
* fix(compiler): honor external type boundaries
2026-08-02 19:41:35 -05:00
Chris Tate
20f2d98fa3
fix(compiler): refine narrowed union payload fields ( #84 )
...
* fix(compiler): refine narrowed union payload fields
- Treat pure union discriminant reads as stable within compound guards.
- Cover payload-field range refinement in analysis and library builds.
* fix(compiler): preserve field facts across union discriminants
2026-08-02 19:37:32 -05:00
Chris Tate
a0c5d6a549
Document synthesized sidecar structs ( #83 )
...
- Define the optional marker as literal true for compiler-created inline records.
- Reject malformed markers and pin the format-1 validator behavior.
2026-08-02 19:13:01 -05:00
Chris Tate
d1ce6ae7d0
Speed up native-cache CI coverage ( #82 )
...
- Memoize immutable native toolchain probes within test workers.
- Preserve strict production-path cache invalidation coverage.
- Shard cache correctness tests without redundant sanitizer runs.
2026-08-02 18:27:29 -05:00
Chris Tate
9fb068ae27
Merge pull request #77 from vercel-labs/ctate/node24-fetch-inventory
...
feat(compat): inventory Node 24 fetch surface
2026-08-02 16:37:36 -05:00
Chris Tate
efb7e77281
fix: address fetch compatibility review findings
2026-08-02 15:31:00 -05:00
Chris Tate
c356ff0ac0
Merge pull request #73 from vercel-labs/ctate/no-persist-compile
...
Persist native compilation cache
2026-08-02 14:58:35 -05:00
Chris Tate
68263610e3
fix(compiler): prevent stale native cache hits
2026-08-02 13:59:06 -05:00
Chris Tate
3f2a78894e
fix(fetch): address Node 24 compatibility gaps
2026-08-02 13:28:46 -05:00
Chris Tate
a1215f6ef9
fix(compiler): bypass cache for opaque wrappers
2026-08-02 13:00:17 -05:00
Chris Tate
0b79e36973
fix: align fetch runtime with Node 24 semantics
2026-08-02 12:29:31 -05:00
Chris Tate
24904ddff7
fix native cache invalidation and safety
2026-08-02 12:03:56 -05:00
Chris Tate
f8377a7440
fix fetch computed dispatch semantics
2026-08-02 11:59:05 -05:00
Chris Tate
8c20c9ac73
fix: validate computed fetch dispatch
2026-08-02 11:29:23 -05:00
Chris Tate
987c52cf18
fix compiler wrapper cache identity
2026-08-02 10:59:32 -05:00
Chris Tate
af685d05f9
fix: close fetch inventory review gaps
2026-08-02 10:41:37 -05:00
Chris Tate
b2711aa6a2
fix compiler cache identity gaps
2026-08-02 01:22:41 -05:00
Chris Tate
b90c0466b2
fix: enforce fetch surface compatibility
2026-08-02 01:09:40 -05:00
Chris Tate
c124516e05
fix compiler cache identity
2026-08-02 00:26:56 -05:00
Chris Tate
f2b9bb9c6f
Fix fetch fence aliases and computed unions
2026-08-01 22:38:08 -05:00
Chris Tate
4cf84283c0
fix: harden native cache publication identity
2026-08-01 21:18:53 -05:00
Chris Tate
57ce47b273
fix fetch inventory coverage gaps
2026-08-01 21:12:49 -05:00
Chris Tate
ae1ce89070
Fix RequestInit fence aliasing
2026-08-01 20:28:38 -05:00
Chris Tate
9aede1ed55
Fix remaining fetch surface fence bypasses
2026-08-01 19:54:37 -05:00
Chris Tate
5ac9dcda3e
Fix fetch surface fence coverage
2026-08-01 18:53:02 -05:00
Chris Tate
dcc5a03a52
fix: validate native cache state and artifacts
2026-08-01 18:38:22 -05:00
Chris Tate
ea3bbddc62
fix: align fetch inventory with lowering
2026-08-01 17:30:06 -05:00
Chris Tate
89b5ab3355
feat(compat): inventory Node 24 fetch surface
...
- Classify Node 24 fetch APIs and options by static, dynamic-only, unsupported, and out-of-scope support.
- Project the inventory into the surface manifest and add runtime drift and conformance checks.
- Fence unprofiled Headers members with actionable SC2020 diagnostics.
2026-08-01 17:01:32 -05:00
Chris Tate
a1a57048eb
fix: close native cache invalidation gaps
2026-08-01 15:52:41 -05:00
Chris Tate
53e07fc55c
fix: harden native build caches
2026-08-01 15:39:44 -05:00
Chris Tate
89b4121ebe
Harden persistent compile caches
2026-08-01 15:39:44 -05:00
Chris Tate
1f1f7d42a7
fix native cache invalidation
2026-08-01 15:39:44 -05:00
Chris Tate
6b996ea4a8
fix: harden persistent compilation cache
2026-08-01 15:39:44 -05:00
Chris Tate
c23741ba75
fix: relink ambient system libraries
2026-08-01 15:39:44 -05:00
Chris Tate
d1dff3879e
fix(compiler): close persistent cache correctness gaps
2026-08-01 15:39:43 -05:00
Chris Tate
2c1406325d
fix(compiler): harden persistent cache identity
2026-08-01 15:39:43 -05:00
Chris Tate
160df747bf
fix(compiler): harden persistent build cache
2026-08-01 15:39:43 -05:00
Chris Tate
a578a9ab9b
Persist native compilation cache
...
- Enable bounded platform-native caching for production executable and library builds.
- Reuse library runtime objects across edits and avoid duplicate no-npm frontend loading.
- Cover cache defaults, invalidation, bypass behavior, and artifact equivalence; document controls.
2026-08-01 15:39:43 -05:00
Chris Tate
2d0bc2df0b
Add generated Node 24 fetch conformance
...
- Pin the supported fetch surface to an explicit Node and Undici profile.
- Generate deterministic WebIDL, AbortSignal, and stream differential campaigns.
- Match Node stream pull scheduling while preserving typed source identity.
2026-08-01 15:33:37 -05:00
Chris Tate
0d3c006c0d
Merge pull request #52 from vercel-labs/ctate/fix-fetch
...
feat: make fetch static-compatible
2026-08-01 14:49:41 -05:00
Chris Tate
6cf7cd9220
fix: align fetch APIs with Node coercion
2026-08-01 14:22:07 -05:00
Chris Tate
bc00d3d65f
fix(fetch): preserve WebIDL conversion semantics
2026-08-01 12:31:13 -05:00
Chris Tate
1544ccda88
fix(fetch): align static stream and body coercion
2026-08-01 09:10:35 -05:00
Chris Tate
a6a68ea861
fix(fetch): preserve coercion and call semantics
2026-08-01 07:46:54 -05:00
Chris Tate
9db07aa05f
fix fetch compatibility edge cases
2026-07-31 21:08:43 -05:00