mirror of
https://github.com/oxc-project/oxc.git
synced 2026-11-04 10:29:58 +00:00
### 🚀 Features -8dd67a6transform-react: Expose TypeScript transform options (Tomas Särnhammar) -deed7dcparser: More friendly error for duplicate import attribute key (#28262) (sapphi-red) ### 🐛 Bug Fixes -eaa8e90ecmascript: Avoid numeric `+` folding when an operand may be a string (#28544) (camc314) -b03c7b8regular_expression: Allow incomplete oversized legacy quantifiers (#28449) (Boshen) -128c67dsemantic: Check strict eval and arguments writes by reference flags (#28445) (Boshen) -c97c43cparser: Reject TypeScript default exports in JavaScript (#28440) (Boshen) -fdd119fspan: Count Unicode characters when filtering typo suggestions (#28452) (Boshen) -cb64638regular_expression: Reject incomplete Unicode atom escapes (#28448) (Boshen) -fc0eed3semantic: Stop let-binding scans at arrow functions (#28444) (Boshen) -3421516parser: Preserve default import names in reexports (#28442) (Boshen) -a1e7e5fparser: Reject optional class members in JavaScript (#28439) (Boshen) -5b9a7bcparser: Parse sloppy let expressions and labels (#28438) (Boshen) -8e61652regex: Reject templates without cooked values (#28345) (Boshen) -3b36543parser: Preserve in-context after TypeScript type arguments (#28300) (Boshen) -2e3126cregex: Decode constructor patterns and flags consistently (#28298) (Boshen) -8a90be2regex: Track capture groups and disjunction identity (#28297) (Boshen) -3dc2cb0regex: Preserve escape values and boundaries (#28296) (Boshen) -fc8acbcparser: Handle leading-zero numeric exponents (#28295) (Boshen) -91a638dparser: Normalize raw template line endings with invalid escapes (#28285) (Boshen) -2ac9a42parser: Allow parenthesized private-in expressions (#28284) (Boshen) -052bca9ast: Prevent greyed out fields in AST types in IDEs (#28335) (overlookmotel) -ed7df7dast/estree: Include comments in TS Program span (#28326) (camc314) ### ⚡ Performance -9b6b7bfregular_expression: Advance validated Unicode escapes directly (#28514) (Boshen) -82e1982regular_expression: Share Unicode property name prefixes (#28513) (Boshen) -5395a40regular_expression: Parse class set character prefixes once (#28512) (Boshen) -3708934regular_expression: Defer literal range dash allocation (#28511) (Boshen) -d85ee3dsemantic: Skip arguments ancestry checks outside classes (#28510) (Boshen) -cf81d07semantic: Reuse private reference resolution (#28509) (Boshen) -a79eebcsemantic: Avoid duplicate maps for public JavaScript members (#28508) (Boshen) -235ca3bsemantic: Skip escape checks for unescaped strings (#28507) (Boshen) -babf44cparser: Reuse shorthand assignment target identifiers (#28504) (Boshen) -444f24aecmascript: Short-circuit simple parameter checks for rest (#28503) (Boshen) -04b20c0semantic: Compute duplicate parameter policy once per list (#28446) (Boshen) -dbf8482parser: Use token lookahead for simple function types (#28489) (Boshen) -bca1275parser: Avoid unused destructuring rest capacity (#28499) (Boshen) -691be5cparser: Compact cover initialized name storage (#28495) (Boshen) -b3b5444parser: Build simple arrow bindings directly (#28493) (Boshen) -e1c9bafparser: Disambiguate single-identifier arrow heads (#28491) (Boshen) -550e98aregular_expression: Avoid rescanning unique capture names (#28450) (Boshen) -10e9fc7parser: Skip duplicate lookup for singleton import attributes (#28441) (Boshen) -5238839parser: Use a stack buffer for float separators (#28435) (Boshen) -6e35e3cparser: Fast-path leaf expressions before delimiters (#28432) (Boshen) -3d7512cparser: Decode Unicode identifiers once (#28414) (Boshen) -30f59f4parser: Factor object type opening brace (#28430) (Boshen) -028a267parser: Always inline postfix update parsing (#28429) (Boshen) -1b5a171parser: Reuse export kind classification (#28424) (Boshen) -179a432parser: Factor return type identifier parsing (#28416) (Boshen) -553dd1dparser: Inline hot paths and fold function dispatch (#28404) (Boshen) -de75d56parser: Combine parenthesized arrow lookahead (#28412) (Boshen) -a768a0cparser: Reuse comment annotations after rewind (#28408) (Boshen) -563d92aparser: Skip redundant source cursor updates (#28409) (Boshen) -7941ca9parser: Factor tuple identifier parsing (#28398) (Boshen) -426c151parser: Construct completed tokens without intermediate writes (#28291) (Boshen) -df42953minifier: Don't request another pass for block unwrapping (#28315) (Dunqing) -c2d663dparser: Avoid vectors for single parenthesized expressions (#28374) (Boshen) -50bd0a9parser: Size delimited lists after the first element (#28373) (Boshen) -bd869b5parser: Bypass redundant operand parsing (#28372) (Boshen) -455fc09parser: Skip keyword checks for plain identifier expressions (#28371) (Boshen) -61303fbparser: Fast-path identifier operands (#28306) (Boshen) -6cf5b1aparser: Guard arrow and conditional parsing (#28305) (Boshen) -3666939parser: Specialize identifier reference parsing (#28303) (Boshen) -0d6641aparser: Skip inapplicable expression parsing paths (#28294) (Boshen) -3be7997parser: Reduce lexer search batch size (#28292) (Boshen) -ab5655aregex: Remove redundant character-class and quantifier checks (#28288) (Boshen) -ec8e8d4parser: Remove redundant grammar and lexer checks (#28287) (Boshen) -c903f5cparser: Specialize known-token parsing (#28286) (Boshen) -2683225str: `static_ident!` and `static_str!` macros guarantee const evaluation (#28340) (overlookmotel) -df90836ast: Reduce compile time of `#[ast]` macro (#28336) (overlookmotel) -8239dacparser: Replace dragonbox_ecma with zmij_ecma (#28282) (Boshen)
11 KiB
11 KiB
Changelog
All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog.
[0.157.0] - 2026-11-02
🐛 Bug Fixes
052bca9ast: Prevent greyed out fields in AST types in IDEs (#28335) (overlookmotel)
⚡ Performance
df90836ast: Reduce compile time of#[ast]macro (#28336) (overlookmotel)
[0.154.0] - 2026-10-13
💥 BREAKING CHANGES
7730e14ast: [BREAKING] Refactor comment attachment storage (#27512) (camc314)c904b61ast: [BREAKING] Add comment attachment storage (#27393) (camc314)
[0.149.0] - 2026-09-07
🚀 Features
1d9b9d3ast: AddGetNodeIdtrait (#26145) (camc314)
[0.144.0] - 2026-08-10
💥 BREAKING CHANGES
a33788east: [BREAKING] Group class heritage intoClassHeritage(#25360) (camc314)6be314fast: [BREAKING] Remove duplicatedVariableDeclarator::kind(#25319) (camc314)44fd320ast: [BREAKING] Split TS external modules & Namespace Declarations (#25284) (camc314)
[0.143.0] - 2026-08-03
💥 BREAKING CHANGES
1bdedd1ast: [BREAKING] IntroduceExportDeclaration,ExportFromDeclaration(#25095) (camc314)c917f20ast: [BREAKING] IntroduceArrowFunctionBodyenum (#24987) (camc314)
[0.141.0] - 2026-07-20
💥 BREAKING CHANGES
54cc121ast: [BREAKING] SplitMetaPropertyintoImportMetaandNewTarget(#24557) (camc314)
[0.139.0] - 2026-07-06
🚀 Features
7db7a29allocator: AddReplaceWithtrait (#24012) (overlookmotel)
📚 Documentation
37cbf88ast_macros: Document fields ofStructDetails(#23959) (overlookmotel)
[0.135.0] - 2026-06-08
💥 BREAKING CHANGES
ee4dc73ast: [BREAKING] Add#[non_exhaustive]to AST nodes (#23046) (overlookmotel)
[0.128.0] - 2026-04-27
💥 BREAKING CHANGES
c5b3debsyntax: [BREAKING] RemoveCommentNodeId(#21679) (overlookmotel)
[0.125.0] - 2026-04-13
⚡ Performance
8c51121napi/parser, linter/plugins: Raw transfer deserializeSpanfields asi32s (#21135) (overlookmotel)
[0.122.0] - 2026-03-23
⚡ Performance
c6ea0a0ast: PlaceNodeIdfield afterSpanin structs (#20584) (overlookmotel)
[0.116.0] - 2026-03-02
⚡ Performance
6a6513clinter/plugins: Use Oxc tokens in plugins (#19498) (camc314)
[0.114.0] - 2026-02-16
🚀 Features
ebb80b3ast: Addnode_idfield to all AST struct nodes (#18138) (Boshen)
[0.111.0] - 2026-01-26
🚀 Features
8db0e78linter/plugins: Handle BOMs (#18376) (overlookmotel)
[0.109.0] - 2026-01-19
💥 BREAKING CHANGES
9135b0bast: [BREAKING] Move scope fromTSEnumDeclarationtoTSEnumBody(#18058) (Boshen)
🐛 Bug Fixes
7a0ca99linter/plugins: Use correct ScriptKind for tokens (#17185) (Peter Wagenet)
[0.104.0] - 2025-12-19
⚡ Performance
1f3b19bast:#[ast]macro use#[repr(transparent)]for single-field structs (#17052) (overlookmotel)
[0.99.0] - 2025-11-24
💥 BREAKING CHANGES
cbb27fdast: [BREAKING] AddTSGlobalDeclarationtype (#15712) (overlookmotel)
[0.98.0] - 2025-11-17
🚀 Features
8a61cfdallocator, ast: IntroduceUnstableAddresstrait (#15700) (overlookmotel)
[0.96.0] - 2025-10-30
🚀 Features
bec7a7dsemantic: Add scope toTSConstructorType(#14676) (camc314)
[0.91.0] - 2025-09-22
💼 Other
fb347dacrates: V0.91.0 (#13961) (Boshen)
[0.82.3] - 2025-08-20
🐛 Bug Fixes
d676e04ast_macros: Do not panic in macro (#13102) (overlookmotel)
[0.82.2] - 2025-08-17
🚜 Refactor
c63c944ast_macros: Simplify code (#13101) (overlookmotel)
[0.81.0] - 2025-08-06
💥 BREAKING CHANGES
50b91acast: [BREAKING] RemoveIdentifierReferencefromqualifierfield ofTSImportType(#12799) (camc314)
[0.80.0] - 2025-08-03
💥 BREAKING CHANGES
cd93174ast: [BREAKING] IntroduceWithClauseKeyword(#12741) (overlookmotel)
📚 Documentation
de1de35rust: Add comprehensive README.md documentation for all Rust crates (#12706) (Copilot)
[0.79.0] - 2025-07-30
🚜 Refactor
f0b1f0dnapi/oxlint, napi/parser: Remove source length fromRawTransferMetadata(#12483) (overlookmotel)
[0.78.0] - 2025-07-24
🚀 Features
dee25f4ast: Addpifefield toFunction(#12469) (sapphi-red)
[0.77.3] - 2025-07-20
🚀 Features
0920e98codegen: Keep arrow function PIFEs (#12353) (sapphi-red)b0db2d7allocator:FixedSizeAllocatorstore flag recording if owned by both Rust and JS (#12381) (overlookmotel)bc0fbe5allocator:AllocatorPoolstore IDs inAllocators (#12310) (overlookmotel)
🚜 Refactor
c5dff1elinter, napi/parser: Addsource_lenfield toRawTransferMetadata(#12383) (overlookmotel)5e3b415linter: DuplicateRawTransferMetadatainoxc_lintercrate (#12382) (overlookmotel)319fc3ballocator/fixed-size: Storealloc_ptrin the memory block backing the allocator (#12380) (overlookmotel)
[0.77.1] - 2025-07-16
🚜 Refactor
5fba91cnapi/parser: Raw transfer: introduce metadata struct (#12269) (overlookmotel)
Changelog
All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog, and this project does not adhere to Semantic Versioning until v1.0.0.
[0.72.3] - 2025-06-06
Bug Fixes
5c32b7cast/estree: Make error objects via raw transfer match standard transfer (#11481) (overlookmotel)
[0.72.0] - 2025-05-24
Features
c2c0268syntax: IntroduceCommentNodeId(#11214) (overlookmotel)
[0.71.0] - 2025-05-20
Features
9e90e00ast_tools: Introduce#[js_only]attr for struct fields and converters (#11160) (overlookmotel)
Bug Fixes
ec96e76ast_macros: Fix missingsynfeature "clone-impls" (#11181) (Boshen)
Performance
6571b9bast: Use bitflags for storing comment newline state (#11096) (camchenry)2b0a69fast: Re-order struct fields to reduce padding (#11056) (overlookmotel)
[0.70.0] - 2025-05-15
Refactor
c1e6c9bast_macros: Move logic out of generated code (#11049) (overlookmotel)2a403cbast_macros: Rename generated file (#11047) (overlookmotel)
[0.69.0] - 2025-05-09
Styling
62c3a4aast_tools: Add full stop to end of generated comments (#10809) (overlookmotel)
[0.62.0] - 2025-04-01
Features
8cd7430allocator:TakeIntrait (#9969) (overlookmotel)
[0.52.0] - 2025-02-21
Features
3e7b21cast_tools: Add#[builder(default)]attribute for structs and enums (#9203) (overlookmotel)
[0.51.0] - 2025-02-15
Features
f74d462ast_tools: Introduce meta types (#9117) (overlookmotel)
[0.49.0] - 2025-02-10
b7ff7e1span: [BREAKING] ExportContentEqtrait from root ofoxc_spancrate (#8869) (overlookmotel)
Features
8f0b865ast_tools: Generate mapping of trait name to crate inoxc_ast_macros(#8870) (overlookmotel)e693ff3ast_tools: Generate list of helper attributes inoxc_ast_macroscrate (#8852) (overlookmotel)
Documentation
4cabc16ast_macros: Update docs (#8853) (overlookmotel)
Refactor
893339dast: Record plural names in#[plural]attr (#8889) (overlookmotel)caa651cast:#[content_eq(skip)]attr (#8875) (overlookmotel)
[0.47.0] - 2025-01-18
7066d1cast, span, syntax, regular_expression: [BREAKING] RemoveContentHash(#8512) (overlookmotel)
Features
[0.38.0] - 2024-11-26
Features
eb70219ast: DeriveGetAddresson all enum types (#7472) (overlookmotel)
Documentation
63f4d6cast_tools: Reformat docs for#[ast]proc macro (#7437) (overlookmotel)bc0e8bcast_tools: Update and reformat docs for#[ast]proc macro (#7436) (overlookmotel)
Refactor
cf0b3bcast_tools: Removetsifyhelper attr fromAstderive macro (#7435) (overlookmotel)
[0.35.0] - 2024-11-04
Features
854870east: Label AST fields with #[ts] (#6987) (ottomated)
[0.32.0] - 2024-10-19
Features
e310e52parser: GenerateSerializeimpls in ast_tools (#6404) (ottomated)
[0.30.0] - 2024-09-23
Refactor
17cd903ast: Move functions to top level inastmacro (#5793) (overlookmotel)cf97f6dast: Importsyntypes inastmacro (#5792) (overlookmotel)dc10eafast: Splitastmacro into multiple files (#5791) (overlookmotel)
[0.27.0] - 2024-09-06
Features
90facd3ast: AddContentHashtrait; remove noopHashimplementation fromSpan(#5451) (rzvxa)23285f4ast: AddContentEqtrait. (#5427) (rzvxa)
Refactor
9f6e0edast: SimplifyContentEqtrait definition. (#5468) (rzvxa)b47aca0syntax: Usegenerate_deriveforCloneInin types outside ofoxc_astcrate. (#5280) (rzvxa)
[0.24.3] - 2024-08-18
Documentation
47c9552ast, ast_macros, ast_tools: Better documentation forAsthelper attributes. (#4856) (rzvxa)
[0.24.2] - 2024-08-12
Refactor
0ea697bast, ast_codegen:CloneInimplementations now initialize semantic related cells withDefaultvalue. (#4819) (rzvxa)
[0.24.1] - 2024-08-10
Bug Fixes
f5eeebdast_macros: Raise compile error on invalidgenerate_deriveinput. (#4766) (rzvxa)
Refactor
7ea058dast_codegen: Replace Windows-style line breaks with Unix-style (#4769) (overlookmotel)
[0.24.0] - 2024-08-08
Features
eae401cast, ast_macros: Apply stable repr to all#[ast]enums (#4373) (rzvxa)2e91ad6ast_codegen: Support forgenerate_derivemarker. (#4728) (rzvxa)6a36616syntax: DeriveCloneInfor the AST-related items. (#4730) (rzvxa)
Bug Fixes
94d3c31minifier: Avoid removing function declaration fromKeepVar(#4722) (Boshen)f290191oxc_ast_macros: Fixsynlacking features to build (Boshen)a40a217parser: Parseassertkeyword inTSImportAttributes(#4610) (Boshen)
Refactor
3f53b6fast: Make AST structsrepr(C). (#4614) (rzvxa)452e0eeast: Remove defunctvisit_as+visit_argsattrs from#[ast]macro (#4599) (overlookmotel)
[0.23.1] - 2024-08-06
Features
eae401cast, ast_macros: Apply stable repr to all#[ast]enums (#4373) (rzvxa)
Bug Fixes
a40a217parser: Parseassertkeyword inTSImportAttributes(#4610) (Boshen)
Refactor
3f53b6fast: Make AST structsrepr(C). (#4614) (rzvxa)452e0eeast: Remove defunctvisit_as+visit_argsattrs from#[ast]macro (#4599) (overlookmotel)
[0.22.0] - 2024-07-23
Refactor
abfccbdast: Reduce#[cfg_attr]boilerplate in AST type defs (#4375) (overlookmotel)5f1c7ecast: Rename thevisited_nodemarker toast. (#4289) (rzvxa)
[0.17.0] - 2024-07-05
Features
1854a52ast_codegen: Introduce the#[span]hint. (#4012) (rzvxa)7538af1ast_codegen: Add visit generator (#3954) (rzvxa)
[0.16.0] - 2024-06-26
Refactor
fcd21a6traverse: Indicate scope entry point withscope(enter_before)attr (#3882) (overlookmotel)
[0.13.0] - 2024-05-14
Features
be87ca8transform:oxc_traversecrate (#3169) (overlookmotel)