💥 BREAKING CHANGES
- 2bf7293 mangler: [BREAKING] Enable
top_levelby default for modules and commonjs (#18278) (sapphi-red) - 48b0542 span: [BREAKING] SourceType::ts should set module to unambigious (#18873) (Boshen)
🚀 Features
- 500d071 minifier: Local traverse ctx and generated minifier traverse (#19106) (Boshen)
- 142a1be parser: Detect binary files with TS1490 error (#19047) (Boshen)
- e316857 allocator/bitset: Add
Onesiterator toBitSet(#19027) (sapphi-red) - 742ad3f minifier: Default
invalid_import_side_effectstofalse(#18916) (sapphi-red) - 0eff6be parser: Error JSX-like type assertions and generics in
.mts/.cts(#18910) (Boshen) - 18320c6 span: Store file extension in
SourceType(#18893) (Boshen)
🐛 Bug Fixes
- bcd0f64 napi: Disable mimalloc global allocator on android targets (#19214) (Cameron)
- 0441237 source-type: Don't treat
d.tsas a declaration file (#19185) (Cameron) - a7514e4 isolated-declarations: Preserve const context in literal type inference (#19178) (camc314)
- 312e756 isolated-declarations: Preserve readonly literal initializers (#19177) (camc314)
- d0ca8d0 isolated-declarations: Skip parenthesis when inferring type (#19176) (camc314)
- 110c300 oxc_ecmascript:
+[false]and+[true]should evaluate toNaN(#19174) (copilot-swe-agent) - f32ea19 semantic: Report redeclaration error for import bindings conflicting with value declarations (#19068) (Boshen)
- 3aeba7a semantic: Report redeclaration error for
function a() {} var ain module mode (#19041) (Boshen) - 35e32c6 coverage: Match Babel's options.json inheritance for test fixtures (#19002) (Boshen)
- 463d60d semantic: Skip TS2391 for standalone computed-name class methods (#19025) (Boshen)
- 56c086b parser: Add modifier ordering validation (TS1029) (#19024) (Boshen)
- 6067a49 linter/jsdoc: False positive in
check-tag-namesfor@in email addresses and npm scopes (#19021) (Boshen) - b13bb70 semantic/jsdoc: Inline tags like
{@link}break jsdoc parsing (#19019) (Boshen) - e3609e3 regular_expression: Preserve UnicodeEscape CharacterKind in string literals (#18998) (Boshen)
- 57917ee parser: Parse decorators on rest parameters (#18938) (Boshen)
- 487601b napi: Disable mimalloc on Windows to fix worker_threads crash (#18923) (Boshen)
- 1f6b193 parser: Validate TypeScript import type options (#18889) (Boshen)
- 1663184 parser: Allow conditional types in function type parameters (#18886) (Boshen)
- 5758046 parser: Error on property access after instantiation expression (#18887) (Boshen)
- 5eb4a94 parser: Handle
<<as two<tokens in type argument contexts (#18885) (Boshen)
⚡ Performance
- ed8c054 oxc_str: Add precomputed hash to Ident for fast HashMap lookups (#19143) (Boshen)
- d4a0867 transformer_plugins: Switch ReplaceGlobalDefines from Traverse to VisitMut (#19146) (Boshen)
- 9eb16b3 syntax: Pack ASCII identifier tables into single bitflag table (#19088) (Boshen)
- e7595d1 mangler: Use BitSet for exported symbols set (#19023) (sapphi-red)
- 2537924 semantic: Optimize scope resolution with fast paths and inlining (#19029) (Boshen)
- 69a8d85 mangler: Use BitSet for keep_names symbols set (#19028) (sapphi-red)
- f78c525 parser: Try hybrid parsing for jsx children and closing element/fragments (#18789) (camchenry)