oxc-project
oxc
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
chore(coverage): skip Babel tests using `disallowAmbiguousJSXLike` option This option is Babel-specific and not supported by TypeScript. Tests using this option (`typescript/disallow-jsx-ambiguity/*`) should be skipped in conformance testing since TypeScript is the reference implementation. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
chore/skip-babel-disallow-ambiguous-jsx-like
4 minutes ago
perf(allocator): add #[cold] annotations to error handling functions Mark error/panic functions as `#[cold]` to improve branch prediction and code layout for hot paths. Functions annotated: - `allocation_size_overflow` in bump.rs - `new_layout_err` in bumpalo_alloc.rs - `handle_alloc_error` in bumpalo_alloc.rs - `capacity_overflow` in raw_vec.rs The `#[cold]` attribute tells the compiler to: 1. Assume branches leading to these functions are unlikely 2. Move cold code away from hot paths (improves i-cache) 3. Avoid inlining cold functions into hot callers Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
perf/cold-path-annotations
6 minutes ago
refactor(traverse): move code generation from JavaScript to Rust Move the traverse crate's code generation scripts from `crates/oxc_traverse/scripts/` to `tasks/ast_tools/src/generators/traverse.rs`, rewriting them in Rust. This change: - Creates a new `TraverseGenerator` in ast_tools that generates: - `traverse.rs` - The `Traverse` trait with enter/exit methods - `ancestor.rs` - The `Ancestor` enum and related types - `walk.rs` - The `walk_*` functions for AST traversal - Removes the old JavaScript-based code generation (build.rs and scripts/) - Filters types to only include those from `oxc_ast/src/ast/` module - Generates offset constants only for structs with visited fields Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
refactor/traverse-rust-codegen
8 minutes ago
feat(parser): add ts error 1540 for `TSModuleDeclaration` Report TS1540 when using the `module` keyword with an identifier name instead of a string literal: - `module M {}` ā error - `declare module M {}` ā error - `namespace M {}` ā ok - `declare module "foo" {}` ā ok Ref: https://github.com/microsoft/TypeScript/pull/62876 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
feat/parser-ts-error-1540
13 minutes ago
fix(parser): respect optional `TSNamedTupleMember` for ts error 1266 &1257 (#18178) > This PR fixes TypeScript parser errors 1266 and 1257 by properly handling the `optional` field of `TSNamedTupleMember` when validating tuple element ordering constraints. Introduced in #18146 and #18145
main
16 minutes ago
perf(allocator): cache bump pointer to reduce indirection in fast path Cache `ptr` and `chunk_start` fields directly in `Bump` struct to eliminate pointer indirection through `ChunkFooter` in the allocation fast path. Before (2 dependent loads): ```asm ldr x9, [x0, #16] ; Load footer ptr from Bump ldr x8, [x9, #32] ; Load ptr from footer (WAITS for x9!) ``` After (2 independent loads): ```asm ldr x8, [x0] ; Load ptr directly (offset 0) ldr x9, [x0, #8] ; Load chunk_start directly - PARALLEL! ``` This removes the data dependency between loads, allowing ARM to issue both loads in parallel via out-of-order execution. Changes: - Add `ptr` and `chunk_start` cached fields to `Bump` struct - Add `#[repr(C)]` to ensure field ordering for optimal cache access - Update `try_alloc_layout_fast` to use direct field access - Sync cached fields on slow path (new chunk allocation) and iteration - Update helper methods to use cached ptr Size impact: `Bump` grows from 24 to 40 bytes - acceptable tradeoff for the hot path optimization. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
perf/type-erase-raw-vec-grow
29 minutes ago
fix(parser): respect optional `TSNamedTupleMember` for ts error 1266 &1257
01-18-fix_parser_respect_optional_tsnamedtuplemember_for_ts_error_1266_1257
55 minutes ago
feat(parser): add ts error 1257 for `TSTupleElement` (#18146)
main
1 hour ago
Active Branches
chore(coverage): skip Babel tests using `disallowAmbiguousJSXLike` option
last run
4 minutes ago
#18182
CodSpeed Performance Gauge
0%
perf(allocator): add #[cold] annotations to error handling functions
last run
6 minutes ago
#18181
CodSpeed Performance Gauge
0%
refactor(traverse): move code generation from JavaScript to Rust
last run
8 minutes ago
#18176
CodSpeed Performance Gauge
0%
Ā© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs