Oxc crates_v0.143.0

crates_v0.143.0

oxc crates_v0.143.0

Added 9
  • Introduce `ExportDeclaration`, `ExportFromDeclaration`
  • Introduce `ArrowFunctionBody` enum
  • Derive `GetSpan` for `Comment`
  • Generate minifier scope collector
  • Skip transparent TS expressions
  • Add React Compiler transform binding
Changed 4
  • Return borrowed JSDoc so the parse cache works
  • Store single parameter in `TSIndexSignature::parameter`
  • Change `TSIndexSignatureName::name` to `Ident`
  • Make `Box` `Send` + `Sync` when the type it contains is
Fixed 5
  • Preserve if-chain idempotency and correct side effects when alternate should not be moved
  • Do not treat lone-surrogate strings as constants
  • Strip re-export attributes
  • Report export imports in namespaces
  • Preserve nonfatal diagnostics in React Compiler
Removed 2
  • Remove `ArenaBox::dangling` method
  • Remove conversion to `Box` from AST builder methods
💥 BREAKING CHANGES
  • 4120da0 semantic: [BREAKING] Return borrowed JSDoc so the parse cache works (#25186) (Connor Shea)
  • f0a41c8 allocator: [BREAKING] Remove ArenaBox::dangling method (#25236) (overlookmotel)
  • 067da8c ast: [BREAKING] Store single parameter in TSIndexSignature::parameter (#25154) (camc314)
  • a0c7788 ast: [BREAKING] Change TSIndexSignatureName::name to Ident (#25150) (camc314)
  • 1bdedd1 ast: [BREAKING] Introduce ExportDeclaration, ExportFromDeclaration (#25095) (camc314)
  • c917f20 ast: [BREAKING] Introduce ArrowFunctionBody enum (#24987) (camc314)
  • 7e1199c ast: [BREAKING] Remove conversion to Box from AST builder methods (#25038) (overlookmotel)
🚀 Features
  • 3c8312e allocator: Make Box Send + Sync when the type it contains is (#25242) (overlookmotel)
  • cb5bc08 ast: Derive GetSpan for Comment (#25147) (leaysgur)
  • 8541e18 ast_tools: Generate minifier scope collector (#25088) (camc314)
  • 5acdae2 ecmascript: Skip transparent TS expressions (#25072) (camc314)
  • 85d0f4d napi: Add React Compiler transform binding (#24934) (Boshen)
  • 70d6ece minifier: Fold safe integer exponentiation (#25009) (Dunqing)
  • 73fc747 minifier: Enable termination statement optimization for do while (#24921) (Armano)
  • 5eadfdb minifier: Fold safe integer division and remainder (#24981) (Dunqing)
🐛 Bug Fixes
  • 6c9ee14 minifier: Preserve if-chain idempotency and correct side effects when alternate should not be moved (#25041) (Armano)
  • 8a47ff3 ecmascript: Do not treat lone-surrogate strings as constants (#25084) (Dunqing)
  • 468b970 isolated-declarations: Strip re-export attributes (#25090) (camc314)
  • a70035d parser: Report export imports in namespaces (#25086) (camc314)
  • 5d8ccf5 react_compiler: Preserve nonfatal diagnostics (#25066) (Boshen)
  • d349e4a react_compiler: Match eslint suppression gating (#25068) (Boshen)
  • 0dc16ba react_compiler: Track catch block declarations (#25067) (Boshen)
  • e6734a5 minifier: Fold typeof comparisons with known object strings (#25017) (Dunqing)
  • 3a9d5a5 minifier: Keep typeof foo == ['object'] as-is (#24941) (sapphi-red)
  • 10ec276 ast: Custom AST builder methods take IntoIn<ArenaBox> where child method does (#25033) (overlookmotel)
  • fbe8d31 minifier: Respect targets when folding RegExp source (#24790) (Dunqing)
⚡ Performance
  • fb402b0 minifier: Stop re-deriving printed numeric spellings (#25103) (Dunqing)
  • 7251e52 react_compiler: Avoid large types on stack (#25037) (overlookmotel)
  • e07718f isolated_declarations: Avoid large types on stack (#25036) (overlookmotel)
  • 9fb1e3e transformer: Avoid large types on stack (#25035) (overlookmotel)
  • 8b80f8b parser: Avoid large types on stack (#25034) (overlookmotel)
📚 Documentation
  • 2ea0aa9 ast: Correct grammar in AST builder methods doc comments (#25173) (overlookmotel)
View original

Upgraded? How did it go?

Discussion