🚀 Features
🐛 Bug Fixes
- 703557c codegen: Keep
exports[STR] = …key as plain string in minify (#22402) (Dunqing) - 5ac7e79 minifier: Drop unused-var-init pure IIFEs and preserve annotation for downstream (#22349) (Dunqing)
- 4ab57eb allocator: Fixed-size allocators use
VirtualAllocon Windows (#22124) (overlookmotel) - 66d77eb allocator: Fix segfault on Linux MUSL with fixed-size allocators (#22388) (overlookmotel)
- b8fbc1f transformer/object-rest-spread: Correct scope id when moving bindings (#22419) (camc314)
- 18edc2c codegen: Keep
Object.definePropertyproperty name as plain string in minify (#22400) (Dunqing) - dda33de transformer/explicit-resource-management: Align lexical binding scopes (#22320) (camc314)
- 8e79de8 transformer: Preserve for-await statement bodies (#22361) (camc314)
- 0cba210 transformer/class: Replace
new.targetin static blocks (#22360) (camc314) - 67ab1c9 transformer/es2018/for-await: Hoist for-await generated bindings (#22355) (camc314)
- c3ceb4a transformer/object-rest-spread: Use hoisted scope for
for-oftemp refs (#22347) (camc314)
⚡ Performance
- 73a9043 allocator/bitset: Avoid temp heap
Stringallocation (#22403) (camc314) - 8b2f4f9 transformer/object-rest-spread: Collect
Vec<SymbolIdoverVec<BindingIdentifier>(#22418) (camc314) - 83679ea parser: Split TriviaBuilder::handle_token hot/cold paths (#22415) (Boshen)
- 2c7d781 codegen: Inline identifier-name accessors (#22411) (Boshen)
- 618bc76 diagnostics: Inline
OxcDiagnosticInnerto avoid heap allocation (#22406) (Boshen) - 0b4e158 parser: Reserve cap
2for sequence expressions vec (#22374) (camc314) - 5f3bdd0 codegen: Add
#[inline]tocode,code_len(#22373) (camc314)