crates_v0.149.0
Kong/insomniacrates_v0.149.0Sep 7, 2026by github-actions[bot]
Upgrading?
AI Summary
This release focuses on significant performance improvements in the minifier using `Ident` types and introduces breaking changes to the parser regarding error handling and limits. It also includes various bug fixes for semantic analysis and transformers.
Key Highlights
- Dramatic performance improvements in the minifier using `Ident` types for property and variable name mangling.
- Parser improvements include shrinking annotation comment ranges and renaming `panicked` to `fatal_error`.
- Bug fixes for semantic analysis, including duplicate private class elements and semantic validation of jumps.
Breaking Changes
- Rename `panicked` to `fatal_error` in `ParserReturn`.
- Reduce `MAX_LEN` to 256 bytes below `u32::MAX`.
New Features
- Construct `ArenaHashSet` with any `Default` hasher.
- Process return/throw in non-last position and fix async inlining.
- Distinguish unapplied no-side-effects comments.
- Add `GetNodeId` trait to AST.
Full Release Notes
### ๐ฅ BREAKING CHANGES - 66744f0 parser: [**BREAKING**] Rename `panicked` to `fatal_error` in `ParserReturn` (#26382) (overlookmotel) - 2c9a947 parser: [**BREAKING**] Reduce `MAX_LEN` to 256 bytes below `u32::MAX` (#26352) (overlookmotel) ### ๐ Features - 32bdc5b allocator: Construct `ArenaHashSet` with any `Default` hasher (#26372) (Dunqing) - a17de58 minifier: Process of return/throw in non last position and fix async * inlining (#26214) (Armano) - bfb4c57 parser: Distinguish unapplied no-side-effects comments (#26120) (็ขณ่ฏ Carbon) - 1d9b9d3 ast: Add `GetNodeId` trait (#26145) (camc314) ### ๐ Bug Fixes - b156333 codegen: Order accessibility before abstract on accessors (#26392) (camc314) - 116c8b8 transformer/class-properties: Keep private methods in class-expression scope (#26308) (Changsu Seong) - 1400a0f parser: Require a string source after `export ... from` (#26389) (camc314) - 2da73b7 codegen: Print matching quoted import names as identifiers (#26386) (camc314) - 0a81d29 codegen: Preserve private-in left operand precedence (#26383) (camc314) - 9a02337 parser: Correctly round large nondecimal literals (#26379) (camc314) - 3d95477 transformer: Gate async-only rewrites by owning transform (#26326) (Dunqing) - f45a9ee transformer: Limit arguments capture to lowered async functions (#26317) (Dunqing) - 789969f transformer: Gate this capture by owning async transform (#26227) (Dunqing) - affeb14 minifier: Mangle class private members in Node API (#26118) (็ขณ่ฏ Carbon) - 8b35abd semantic: Detect duplicate private class elements (#26361) (camc314) - 457ed57 semantic: Reject await and yield in rest parameter defaults (#26359) (camc314) - 4b89c7b semantic: Reject jumps across arrow functions (#26357) (camc314) - c966aca parser: Do not omit `<` token opening type argument list (#26328) (overlookmotel) - f07dca5 ast_visit: Add the trimmed prefix length to translation table offsets (#26173) (Bharadwaj Pendyala) - 3ab9bd1 parser: Do not re-lex template substitution tail after fatal error (#26230) (overlookmotel) - 07851b9 parser: Fix debug assert failure when lexer error with tokens enabled (#26229) (overlookmotel) - 00dea7a allocator: Gate `Allocator::data_end_ptr` behind fixed_size feature (#26248) (camc314) - 853ffab ecmascript: Avoid `charAt` panic on 32-bit (#26244) (camc314) - 34feccb runtime: Remove stale regenerator exports (#26243) (camc314) ### โก Performance - 34a242e minifier: Use `Ident` for property mangler (#26334) (sapphi-red) - 5303f5c minifier: Unify merging of last expression into target sequence (#26264) (Armano) - 2ca7d29 minifier: Consume nodes in minimize_statements in reverse order (#26258) (Armano) - d2354b4 mangler: Use `Ident` for variable names to keep (#26333) (sapphi-red) - 5b3e335 minifier: Use `Ident` instead of `Str` in `KeepVar` (#26332) (sapphi-red) - 51366fb minifier: Use `IdentHashSet` in `PrivateMemberUsageStack` (#26331) (sapphi-red) - d19c42a minifier: Merge nested if stmt in place instead of creating dummies (#26351) (Armano) - 356def6 parser: Shrink annotation comment ranges (#26356) (overlookmotel) - a5be474 parser: Shave instruction off `parse_jsx_element_name` (#26355) (overlookmotel) - 9780663 parser: Remove fatal error guard from `parse_jsx_element_name` (#26354) (overlookmotel) - 766e12f parser: Remove `token` field from `LexerCheckpoint` (#26350) (overlookmotel) ### ๐ Documentation - d4b4e61 transformer: Document ES2015 target floor (#26378) (Dunqing) - 67dd054 ast_visit: Correct out-of-date comments on `Utf8ToUtf16` converter (#26285) (overlookmotel) - a8ed2a7 minifier: Fix stale validation instructions (#26251) (camc314)
Related Repositories
openclaw/openclawโ
392,706
The AI that really does things. Any OS. Any Platform. The lobster way. ๐ฆ
nilbuild/developer-roadmapโ
370,074
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
morluto/reaโ
358,310
Reverse engineer anything with agents, from app behavior down to native binaries.
anomalyco/opencodeโ
219,720
The open source coding agent.
n8n-io/n8nโ
208,261
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.