Commit Graph
942 Commits
Author SHA1 Message Date
Chris Tate f3612f21ff Optimize typed-array numeric processing
- Streamline typed-array conversion, copying, and filling.
- Share exact integer coercion across typed storage and scalar operators.
- Cover numeric boundaries, aliased buffers, and portable execution.
2026-10-06 12:15:58 -05:00
Chris Tate 0ba86b289a Optimize keyed collection and object processing
- Speed up string-keyed collections and wide object property lookup.
- Share scalable numeric-key ordering across typed and checked objects.
- Preserve property, iteration, and ownership behavior across native and WASI targets.
2026-10-06 11:49:04 -05:00
Chris Tate e0bb196a73 Optimize text and byte conversion paths
- Reduce temporary storage and per-byte overhead across Buffer conversions, bounded writes, and text encoding.
- Support runtime Buffer string encodings with consistent defaults, aliases, and catchable errors.
- Cover conversion boundaries, partial writes, malformed inputs, and retained outputs across native and WASI execution.
2026-10-06 10:27:25 -05:00
Chris Tate 0b52b24d30 Optimize stable collection ordering
- Share adaptive stable sorting across arrays and byte arrays, reusing captured values and merge inputs.
- Use bounded-domain ordering for default byte sorting.
- Preserve sparse values, stable ties, callback effects, and reference lifetimes with native and portable coverage.
2026-10-06 09:28:35 -05:00
Chris Tate 88e6e6dcd0 Streamline class callbacks and compiler source access
- Defer empty callback storage while preserving method and prototype updates.
- Reuse source and node-handle information within compiler snapshots.
- Coalesce small checker requests and avoid response copies.
2026-10-06 08:10:34 -05:00
Chris Tate 05c24f6a41 Streamline local tagged values and collection reads
- Keep projection-only tagged values in local storage across branches and reassignment.
- Fuse optional array reads and avoid temporary wrappers for tag and string conversions.
- Preserve payload ownership across mutation, sparse iteration, and exception cleanup.
2026-10-06 06:51:14 -05:00
Chris Tate d5fc4a5b95 Accelerate string navigation and boundary operations
- Reuse bounded local spans and process Unicode index conversions in chunks.
- Share slice extraction and avoid unnecessary work in positioned searches.
- Preserve cached receiver state across suffix checks and cover navigation lifetimes.
2026-10-06 05:18:15 -05:00
Chris Tate d3a165997b Optimize literal dispatch and source processing
- Lower literal switches to guarded native dispatch while preserving control flow and evaluation order.
- Reduce repeated AST lookup, traversal ownership, and source classification work.
- Share UTF-8 validation and decode spans directly into final string storage.
2026-10-06 04:19:01 -05:00
Chris Tate 3608a88602 Streamline regular expression and text transformations
- Share regex input preparation and bound capture storage to each result.
- Batch replacement output and avoid rebuilding unchanged strings.
- Accelerate case conversion and normalization while preserving Unicode and ownership behavior.
2026-10-06 02:17:01 -05:00
Chris Tate f22013f177 Improve array storage and bulk transformations
- Share dense array storage and move owned ranges without rebuilding containers.
- Batch array construction and insertion while preserving evaluation order and bounded temporary storage.
- Lower indexed mutations natively and preserve typed-array reversal across numeric element types.
2026-10-06 01:05:40 -05:00
Chris Tate 150e529d84 Streamline structured text scanning and serialization
- Share bounded JSON scanning and copy string spans in chunks.
- Avoid temporary key snapshots for primitive containers.
- Preserve Unicode, property ordering, and callback behavior.
2026-10-05 23:41:57 -05:00
Chris Tate 30e72eff79 Reduce checked-value allocation and lookup overhead
- Reuse bounded property-key and small-integer storage.
- Cache validated property positions and avoid tracing primitive object members.
- Cover storage transitions, numeric edge cases, and shared-value lifetimes.
2026-10-05 22:43:29 -05:00
Chris Tate 0ceb78f886 Reduce ownership traffic and allocation for native collections
- Borrow rooted collection receivers across safe helpers and typed updates.
- Keep small Maps and Sets compact through cloning, growth, and live iteration.
- Preserve ownership at reassignment, exception, and capture boundaries.
2026-10-05 21:50:11 -05:00
Chris Tate 52cca919f5 Refactor native toolchain ownership and shared build operations
- Separate driver, fingerprint, artifact, and build responsibilities.
- Share shard selection, trace parsing, cache staging, and stamp publication.
- Preserve cache invalidation and enforce implementation imports.
2026-10-05 20:48:48 -05:00
Chris Tate 6d16696b8e Refactor container lowering and callback builders
- Give arrays, collections, iterators, and indexed objects explicit lowering owners.
- Share callback frames and live collection iteration while preserving existing behavior.
- Enforce container ownership boundaries with compiler quality checks.
2026-10-05 20:00:42 -05:00
Chris Tate 38aa6230e7 Refactor function lowering and native call contracts
- Separate function signatures, argument completion, specialization, and body construction from call dispatch.
- Share generic binding checks, argument prologues, return completion, and native input validation.
- Enforce direct implementation imports while preserving existing ABI and diagnostic behavior.
2026-10-05 19:19:32 -05:00
Chris Tate d575a5cfda Centralize builtin contracts and IR analysis ownership
- Derive builtin call names from shared signatures and keep call semantics with their ABI contracts.
- Separate runtime dependency detection, exception metadata, and library policy from the core IR while preserving existing exports.
- Enforce the frontend signature boundary and validate native compilation and policy behavior.
2026-10-05 18:36:03 -05:00
Chris Tate c08ab955ae Enforce linting and consistent source formatting
- Enforce oxlint and oxfmt for owned JavaScript and TypeScript with independent CI checks.
- Preserve compiler import boundaries and protected fixtures while cleaning up lint findings.
- Standardize source formatting and validate import, fixture, and embedded-source protections.
2026-10-05 17:51:24 -05:00
Chris Tate 665db543e2 Organize compiler conversions and builtin dispatch
- Separate conversion planning, helper generation, and timer lowering into focused modules.
- Share array, closure, record projection, and builtin dispatch logic, including timer namespace calls.
- Validate shared helpers with native correctness and differential coverage.
2026-10-05 16:21:22 -05:00
Chris Tate a4fd6ed2c0 Optimize structured-data consumption and storage
- Consume native iterator values directly while preserving custom iteration and cleanup behavior.
- Reuse bounded object-key storage and simplify text splitting and empty-string checks.
- Cover iterator reentrancy, property ownership, and storage boundaries.
2026-10-05 14:03:40 -05:00
Chris Tate 98dd1b3f0f Optimize native file processing (#688)
- Read binary and text files into owned storage across filesystem entry points.
- Extend integer inference through module initialization and filtered processing loops.
- Preserve shared bindings, byte views, and filesystem error behavior.
2026-10-05 12:59:31 -05:00
Chris Tate b1c11aac19 Release v0.2.4 (#689)
- Bump all published packages to 0.2.4.

- Document collection, performance, and Windows toolchain updates.

- Regenerate the versioned compiler surface manifest.
v0.2.4
2026-10-05 12:20:42 -05:00
Chris Tate 5de340f933 Optimize binary numeric pipelines
- Specialize standard Buffer and DataView numeric reads and writes while preserving checked errors, byte order, and unaligned access.
- Carry integer values through binary-processing loops and remove proven field bounds and receiver ownership overhead.
- Strengthen numeric IR validation and cover binary pipelines, edge cases, and native compiler parity.
2026-10-05 10:35:06 -05:00
Chris TateandEdwardXie d2cdd203fe Fix native Windows toolchain paths through package links
- Resolve installed toolchain assets from the physical manifest path.
- Cover linked-package launches in toolchain and native CLI regressions.
- Run the toolchain path regressions in Windows CI.

Fixes #682

Co-authored-by: EdwardXie <185573060+EdwardJoke@users.noreply.github.com>
2026-10-05 10:10:02 -05:00
Chris Tate 4427f1fb5a Expand native collection keys and construction
- Support boolean, bigint, and mixed value keys in native Maps and Sets.
- Reuse key hashes and copy collections directly into compact storage.
- Preserve collection identity, ordering, iteration, and ownership behavior.
2026-10-05 09:32:14 -05:00
Chris Tate addc2418ab Streamline native string construction
- Combine bounded string concatenations while preserving evaluation and ownership.
- Build array joins and raw strings directly in their final storage.
- Support literal null and undefined string conversions with preserved effects.
2026-10-05 07:32:26 -05:00
Chris Tate 0311082801 Reduce cycle traversal overhead
- Bound collector recursion and reuse scanned candidates during cycle cleanup.
- Skip redundant candidate checks and unused array storage.
- Preserve reference counts across deep, shared, and mixed-generation graphs.
2026-10-05 06:26:26 -05:00
Chris Tate 865f98ad0a Reduce temporary ownership for checked values (#681)
- Infer safe input lifetimes across checked reads, calls, conversions, and comparisons.
- Reuse immutable primitive values during construction and JSON parsing.
- Preserve callback ordering, result ownership, and exception cleanup.
2026-10-05 04:51:04 -05:00
Chris Tate c7f4cb1d42 Reduce ownership and allocation in text operations
- Extend safe borrowing across expressions and direct helpers.
- Remove redundant ownership work and avoid materializing regex predicate results.
- Support native regex string conversion with consistent flag ordering.
2026-10-05 03:48:06 -05:00
Chris Tate d31bf3c4f8 Reduce ownership overhead across helpers and collections
- Infer stable heap inputs and local aliases while preserving ownership of escaping values.
- Remove redundant ownership work from collection and byte operations.
- Cover mutation, exceptions, indirect calls, and native bootstrap behavior.
2026-10-05 02:24:35 -05:00
Chris Tate 0328efe2e3 Optimize integer loops and typed-array access
- Carry exact integer facts through branches, arithmetic, and computed indexes.
- Lower ascending, descending, and strided loops with guarded integer induction.
- Remove proven typed-array bounds checks while preserving number semantics and target-width safety.
2026-10-05 00:54:17 -05:00
Chris Tate 6086bc1487 Reuse integer values across numeric operations
- Reuse integer values across local updates, branches, and numeric operations.
- Preserve typed-array integer values through reads and writes.
- Cover number semantics, evaluation order, and native emission boundaries.
2026-10-04 23:08:32 -05:00
Chris Tate 52169979ee Fix utility runtime dependencies in native builds
- Separate parsing, comparison, and styling runtime units by their dependencies.
- Keep packaged and source runtime selection consistent across native targets.
- Cover independent utility linking in Windows CI and native differential tests.
v0.2.3
2026-10-04 21:18:58 -05:00
Chris Tate b4e8d8aa1d Improve native collection construction and mapping
- Consume native collection views and stored cursors directly into final storage.
- Support collection mapping and Map iterator construction with live mutation behavior.
- Preserve reference identity, evaluation order, and iterator error handling.
2026-10-04 20:44:07 -05:00
Chris Tate 7c064e7338 chore: prepare v0.2.3 (#674)
- Add v0.2.3 release notes and marked release body.

- Bump CLI, compiler, runtime, and platform package versions.

- Regenerate the compiler surface manifest.
2026-10-04 19:47:17 -05:00
Chris Tate 3f51c72ae8 Support native Set iterator construction
- Construct Sets from live collection iterators while preserving order and reference identity.
- Reject checked key conversions that would copy existing references.
- Avoid repeated compiler traversal and cache-validation reads.
2026-10-04 19:35:49 -05:00
Chris Tate 3f2335153b Preserve lifetimes across map reads
- Keep temporary map results in local storage with independent payload snapshots.
- Borrow stable map and set read inputs while preserving owned boundaries.
- Cover mutation, escaping values, and exceptional cleanup.
2026-10-04 16:51:27 -05:00
Chris Tate 932ef772f2 Improve input lifetimes and compiler memory use
- Borrow string inputs through proven helpers while preserving owned call boundaries.
- Keep temporary array arguments on the stack with safe snapshots and compact lookups.
- Bound shared LLVM shard growth and cover evaluation order, escaping values, and cleanup.
2026-10-04 16:00:55 -05:00
Chris Tate c72885070b Preserve value lifetimes across helper calls
- Infer direct-call parameter lifetimes and keep eligible union values on the stack.
- Preserve ownership across exceptions and callable boundaries with focused regression coverage.
- Keep optional argument representations consistent across virtual methods.
2026-10-04 13:51:13 -05:00
Chris Tate 1d8c042a47 Separate native bootstrap validation phases
- Run command and self-rebuild checks independently in both validation lanes.
- Preserve complete local coverage and native package installation checks.
- Reject invalid phase selection and verify the CI matrix retains every contract.
2026-10-04 12:29:56 -05:00
Chris Tate 80ca9e82ba Preserve array borrowing across direct helpers
- Preserve array-element borrowing across direct helpers that cannot replace references.
- Retain ordinary ownership handling for mutations, callbacks, and unsupported effects.
- Cover recursive calls, argument evaluation order, and exceptional cleanup.
2026-10-04 11:51:07 -05:00
Chris Tate 7efc573285 Add Node 24 filesystem-capacity queries (#666) 2026-10-04 11:12:43 -05:00
Chris Tate 668eb78124 Optimize native array loops and preserve live tuple iteration
- Reduce allocation and reference-management overhead in native array loops.
- Enable vectorization while preserving numeric behavior.
- Preserve live tuple iteration and cover reference lifetimes and missing values.
2026-10-04 10:38:10 -05:00
Chris Tate 46188eefe1 Add Node 24 filesystem link support (#664)
* Add Node 24 filesystem link support

* Use executable extensions in Windows link fixtures

* Remove Windows links without walking their targets

* Match Windows symlink inference and Buffer validation

* Match Node Windows symlink paths and fallback state

* Preserve Windows errors when following filesystem links
2026-10-04 09:46:00 -05:00
Chris Tate 4d3fe2c140 feat: support Node 24 filesystem timestamps (#663)
* feat: support Node 24 filesystem timestamp operations

* test: record frontend baselines for timestamp fixtures

* test: link timestamp validation into the runtime smoke test
2026-10-04 07:54:11 -05:00
Chris Tate a0b75e21bf perf: reuse class field metadata during IR validation (#662) 2026-10-04 06:45:43 -05:00
Chris Tate e7d5c67cdc Add Node 24 readable stream readers, controllers, and tee (#661) 2026-10-04 06:07:41 -05:00
Chris Tate 3aad3e8ebe Add Node 24 Web Stream pipelines and streaming encoding (#660) 2026-10-04 05:36:27 -05:00
Chris Tate 99613bce5a Add Node 24 writable Web Streams support (#659) 2026-10-04 04:54:43 -05:00
Chris Tate 095673351e Add Node 24 URL authority and protocol mutation support (#658) 2026-10-04 04:14:12 -05:00