oxc-project
oxc
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
feat(oxc_str): upgrade Ident with precomputed hash for fast equality (#18400) ## Summary Upgrade `Ident` to store a precomputed hash for fast equality checks and efficient hash map operations. ### Changes - Change `Ident` layout from simple `&str` wrapper to `NonNull<u8>` + `len: u32` + `hash: u32` - Fast `PartialEq` between `Ident`s: compare length and hash first before doing full string comparison - `Hash` impl uses precomputed hash (no `Borrow<str>` - lookups must use `&Ident`) - Add `Ident::new()` and `Ident::len()` methods - Add specific `PartialEq` implementations for `&Ident`, `&str`, `String`, `Atom`, `&Atom` - Add `rustc-hash` dependency for `FxHasher` - Fix enum layout calculation in ast_tools to round size to alignment ### Layout - **64-bit**: 16 bytes, align 8 (ptr 8 + len 4 + hash 4) - **32-bit**: 12 bytes, align 4 (ptr 4 + len 4 + hash 4) Using two separate `u32` fields instead of a single `u64` keeps 4-byte alignment on 32-bit platforms, avoiding size increases in AST structs. π€ Generated with [Claude Code](https://claude.ai/code)
refactor/ident-precomputed-hash
2 hours ago
perf(coverage): simplify architecture and cache test data upfront (#18478) Local: 2.4x faster (31s β 13s) CI: saved 50s
main
2 hours ago
refactor(coverage): simplify architecture and cache test data upfront Remove Suite/Case traits and load all test files once at startup, reducing execution time from ~53s to ~13s (4x speedup). Changes: - Remove Suite trait, Case trait, and 32+ wrapper case structs - Add simple data structures: Test262File, BabelFile, TypeScriptFile, MiscFile - Add TestData::load() that reads all files in parallel once - Add simple tool runner functions in tools.rs - Remove ~2000 lines of boilerplate wrapper code The speedup comes from: - Reading all files once instead of 8 times (once per tool) - Parsing all metadata (YAML/JSON) once during loading - Better CPU utilization (676% vs 486%) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
refactor/coverage-speedup
2 hours ago
ci(github): use `ubuntu-slim` for lightweight jobs (#18477)
main
3 hours ago
fix: rerun cargo run -p oxc_linter_codegen
yue4u:object-shorthand
3 hours ago
ci(github): revert jobs that need Rust toolchain `deny` and `github-release` use `setup-rust` which requires the Rust toolchain to be available. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
ci/use-ubuntu-slim-runners
3 hours ago
ci(github): use `ubuntu-slim` for lightweight jobs Use GitHub's new 1 vCPU Linux runner for 26 lightweight jobs that don't require heavy computation: - Spell checking (typos) - PR labeling and title validation - Dependency checks (cargo-deny) - Security scanning (zizmor) - Version checks - Artifact downloads/uploads - npm publishing - Workflow dispatching These jobs only run pre-built binaries, Node.js scripts, or simple shell commands, making them ideal for the lower-cost slim runner. Reference: https://github.blog/changelog/2026-01-22-1-vcpu-linux-runner-now-generally-available-in-github-actions/ Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
ci/use-ubuntu-slim-runners
3 hours ago
[autofix.ci] apply automated fixes
01-24-perf_semantic_preserve_identifier_hash
5 hours ago
Active Branches
feat(oxc_str): upgrade Ident with precomputed hash for fast equality
last run
2 hours ago
#18400
CodSpeed Performance Gauge
-4%
feat(linter/eslint): eslint/object-shorthand (WIP)
last run
3 hours ago
#17688
CodSpeed Performance Gauge
-1%
perf(semantic): preserve precomputed identifier hash throughout semantic analysis
last run
5 hours ago
#18476
CodSpeed Performance Gauge
0%
Β© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs