Files
oxc/crates/oxc_estree/CHANGELOG.md
T
oxc-guard f799f174b5 release(crates): oxc v0.157.0 (#28719)
### 🚀 Features

- 8dd67a6 transform-react: Expose TypeScript transform options (Tomas Särnhammar)
- deed7dc parser: More friendly error for duplicate import attribute key (#28262) (sapphi-red)

### 🐛 Bug Fixes

- eaa8e90 ecmascript: Avoid numeric `+` folding when an operand may be a string (#28544) (camc314)
- b03c7b8 regular_expression: Allow incomplete oversized legacy quantifiers (#28449) (Boshen)
- 128c67d semantic: Check strict eval and arguments writes by reference flags (#28445) (Boshen)
- c97c43c parser: Reject TypeScript default exports in JavaScript (#28440) (Boshen)
- fdd119f span: Count Unicode characters when filtering typo suggestions (#28452) (Boshen)
- cb64638 regular_expression: Reject incomplete Unicode atom escapes (#28448) (Boshen)
- fc0eed3 semantic: Stop let-binding scans at arrow functions (#28444) (Boshen)
- 3421516 parser: Preserve default import names in reexports (#28442) (Boshen)
- a1e7e5f parser: Reject optional class members in JavaScript (#28439) (Boshen)
- 5b9a7bc parser: Parse sloppy let expressions and labels (#28438) (Boshen)
- 8e61652 regex: Reject templates without cooked values (#28345) (Boshen)
- 3b36543 parser: Preserve in-context after TypeScript type arguments (#28300) (Boshen)
- 2e3126c regex: Decode constructor patterns and flags consistently (#28298) (Boshen)
- 8a90be2 regex: Track capture groups and disjunction identity (#28297) (Boshen)
- 3dc2cb0 regex: Preserve escape values and boundaries (#28296) (Boshen)
- fc8acbc parser: Handle leading-zero numeric exponents (#28295) (Boshen)
- 91a638d parser: Normalize raw template line endings with invalid escapes (#28285) (Boshen)
- 2ac9a42 parser: Allow parenthesized private-in expressions (#28284) (Boshen)
- 052bca9 ast: Prevent greyed out fields in AST types in IDEs (#28335) (overlookmotel)
- ed7df7d ast/estree: Include comments in TS Program span (#28326) (camc314)

### ⚡ Performance

- 9b6b7bf regular_expression: Advance validated Unicode escapes directly (#28514) (Boshen)
- 82e1982 regular_expression: Share Unicode property name prefixes (#28513) (Boshen)
- 5395a40 regular_expression: Parse class set character prefixes once (#28512) (Boshen)
- 3708934 regular_expression: Defer literal range dash allocation (#28511) (Boshen)
- d85ee3d semantic: Skip arguments ancestry checks outside classes (#28510) (Boshen)
- cf81d07 semantic: Reuse private reference resolution (#28509) (Boshen)
- a79eebc semantic: Avoid duplicate maps for public JavaScript members (#28508) (Boshen)
- 235ca3b semantic: Skip escape checks for unescaped strings (#28507) (Boshen)
- babf44c parser: Reuse shorthand assignment target identifiers (#28504) (Boshen)
- 444f24a ecmascript: Short-circuit simple parameter checks for rest (#28503) (Boshen)
- 04b20c0 semantic: Compute duplicate parameter policy once per list (#28446) (Boshen)
- dbf8482 parser: Use token lookahead for simple function types (#28489) (Boshen)
- bca1275 parser: Avoid unused destructuring rest capacity (#28499) (Boshen)
- 691be5c parser: Compact cover initialized name storage (#28495) (Boshen)
- b3b5444 parser: Build simple arrow bindings directly (#28493) (Boshen)
- e1c9baf parser: Disambiguate single-identifier arrow heads (#28491) (Boshen)
- 550e98a regular_expression: Avoid rescanning unique capture names (#28450) (Boshen)
- 10e9fc7 parser: Skip duplicate lookup for singleton import attributes (#28441) (Boshen)
- 5238839 parser: Use a stack buffer for float separators (#28435) (Boshen)
- 6e35e3c parser: Fast-path leaf expressions before delimiters (#28432) (Boshen)
- 3d7512c parser: Decode Unicode identifiers once (#28414) (Boshen)
- 30f59f4 parser: Factor object type opening brace (#28430) (Boshen)
- 028a267 parser: Always inline postfix update parsing (#28429) (Boshen)
- 1b5a171 parser: Reuse export kind classification (#28424) (Boshen)
- 179a432 parser: Factor return type identifier parsing (#28416) (Boshen)
- 553dd1d parser: Inline hot paths and fold function dispatch (#28404) (Boshen)
- de75d56 parser: Combine parenthesized arrow lookahead (#28412) (Boshen)
- a768a0c parser: Reuse comment annotations after rewind (#28408) (Boshen)
- 563d92a parser: Skip redundant source cursor updates (#28409) (Boshen)
- 7941ca9 parser: Factor tuple identifier parsing (#28398) (Boshen)
- 426c151 parser: Construct completed tokens without intermediate writes (#28291) (Boshen)
- df42953 minifier: Don't request another pass for block unwrapping (#28315) (Dunqing)
- c2d663d parser: Avoid vectors for single parenthesized expressions (#28374) (Boshen)
- 50bd0a9 parser: Size delimited lists after the first element (#28373) (Boshen)
- bd869b5 parser: Bypass redundant operand parsing (#28372) (Boshen)
- 455fc09 parser: Skip keyword checks for plain identifier expressions (#28371) (Boshen)
- 61303fb parser: Fast-path identifier operands (#28306) (Boshen)
- 6cf5b1a parser: Guard arrow and conditional parsing (#28305) (Boshen)
- 3666939 parser: Specialize identifier reference parsing (#28303) (Boshen)
- 0d6641a parser: Skip inapplicable expression parsing paths (#28294) (Boshen)
- 3be7997 parser: Reduce lexer search batch size (#28292) (Boshen)
- ab5655a regex: Remove redundant character-class and quantifier checks (#28288) (Boshen)
- ec8e8d4 parser: Remove redundant grammar and lexer checks (#28287) (Boshen)
- c903f5c parser: Specialize known-token parsing (#28286) (Boshen)
- 2683225 str: `static_ident!` and `static_str!` macros guarantee const evaluation (#28340) (overlookmotel)
- df90836 ast: Reduce compile time of `#[ast]` macro (#28336) (overlookmotel)
- 8239dac parser: Replace dragonbox_ecma with zmij_ecma (#28282) (Boshen)
2026-11-02 19:40:44 +00:00

6.3 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

⚡ Performance

  • 8239dac parser: Replace dragonbox_ecma with zmij_ecma (#28282) (Boshen)

[0.156.0] - 2026-10-27

⚡ Performance

  • 1ed93af data_structures: Copy short strings without a memcpy call (#27953) (leaysgur)

[0.137.0] - 2026-06-18

💥 BREAKING CHANGES

  • 7a76cd3 estree: [BREAKING] Make whether to include TS fields a runtime option (#23574) (overlookmotel)
  • e7b6b68 estree: [BREAKING] ESTree config use methods not consts (#23573) (overlookmotel)

⚡ Performance

  • 053b0c1 estree: Remove pointless mem::take (#23572) (overlookmotel)

[0.116.0] - 2026-03-02

🚀 Features

  • b25228a estree: Add IS_COMPACT const to Formatter trait (#19787) (overlookmotel)
  • e2a1b79 estree: Expose buffer and formatter of serializers (#19773) (overlookmotel)
  • 233f947 estree: oxc_estree crate export config and formatter types (#19724) (overlookmotel)

⚡ Performance

  • dc9c2e3 estree: Use CodeBuffer::print_strs_array to reduce bounds checks (#19766) (overlookmotel)
  • 845da35 estree: Use CodeBuffer::print_indent (#19727) (overlookmotel)

[0.91.0] - 2025-09-22

💼 Other

  • fb347da crates: V0.91.0 (#13961) (Boshen)

[0.88.0] - 2025-09-15

🚜 Refactor

  • 08cbd39 transformer, estree: Clarify code using is_exhausted stack methods (#13674) (overlookmotel)

[0.86.0] - 2025-08-31

💥 BREAKING CHANGES

  • edeebc6 data_structures: [BREAKING] Rename SliceIterExt to SliceIter (#13439) (overlookmotel)

🚀 Features

  • 5b139aa data_structures: Add ptr and end_ptr methods to SliceIterExt (#13435) (overlookmotel)

[0.82.3] - 2025-08-20

🚜 Refactor

  • 3f92fa8 estree: Add #[repr(transparent)] to config structs (#13212) (overlookmotel)

🧪 Testing

  • 792ae31 estree, allocator: Use default to create ESTreeSerializers (#13211) (overlookmotel)

[0.82.0] - 2025-08-12

💥 BREAKING CHANGES

  • 128b527 data_structures: [BREAKING] Remove PointerExt trait (#12903) (overlookmotel)

[0.81.0] - 2025-08-06

🚜 Refactor

  • d93e373 estree: Remove serializer for f32 (#12838) (Boshen)

⚡ Performance

  • 2c4369a syntax,codegen: Replace ryu_js with dragonbox_ecma for floating point formatting (#12821) (Copilot)

[0.80.0] - 2025-08-03

📚 Documentation

  • de1de35 rust: Add comprehensive README.md documentation for all Rust crates (#12706) (Copilot)

[0.77.1] - 2025-07-16

🚜 Refactor

  • 42abcd2 estree: Use SliceIterExt in string serializer (#12297) (overlookmotel)

[0.75.1] - 2025-07-03

🚜 Refactor

  • 016634f ast/estree: Introduce serialize_span method (#12013) (overlookmotel)
  • 5584e76 ast/estree: Add #[inline(always)] to ranges methods (#12009) (overlookmotel)

📚 Documentation

  • c71529f ast/estree: Document ranges methods (#12011) (overlookmotel)

[0.75.0] - 2025-06-25

💥 BREAKING CHANGES

  • 9a2548a napi/parser: [BREAKING] Add range option (#11728) (Bacary Bruno Bodian)

[0.73.1] - 2025-06-17

⚡ Performance

  • c4faee2 ast/estree: Faster serializing strings to JSON (#11753) (overlookmotel)

🧪 Testing

  • c53a7bd ast/estree: More tests for escaping strings in JSON (#11756) (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.71.0] - 2025-05-20

Features

  • 9e90e00 ast_tools: Introduce #[js_only] attr for struct fields and converters (#11160) (overlookmotel)
  • c79a7d0 data_structures: Introduce PointerExt trait (#11095) (overlookmotel)

Performance

  • 8f8d823 ast/estree: Optimize serializing strings to JSON (#11070) (overlookmotel)

[0.69.0] - 2025-05-09

Features

  • d066516 ast_tools: Support #[estree(prepend_to)] (#10849) (overlookmotel)

Performance

  • 49a6f97 napi/parser: Faster fixup of BigInts and RegExps (#10820) (overlookmotel)

Refactor

  • 5645684 ast/estree: Print header and footer on JSON AST with fixes on separate lines (#10869) (overlookmotel)
  • b16331e ast/estree: Generalize concatenating fields with Concat2 (#10848) (overlookmotel)

[0.63.0] - 2025-04-08

Performance

  • b5f8e38 ast/estree: Faster checking if bytes are ASCII (#10183) (overlookmotel)

[0.62.0] - 2025-04-01

Bug Fixes

  • f0e1510 parser: Store lone surrogates as escape sequence (#10041) (overlookmotel)

[0.61.2] - 2025-03-23

Bug Fixes

  • 8228b74 ast/estree: Fix Function.this_param (#9913) (hi-ogawa)

Refactor

  • dc3e725 ast/estree: Expose INCLUDE_TS_FIELDS constant on Serializer (#9943) (overlookmotel)

[0.60.0] - 2025-03-18

  • b3ce925 data_structures: [BREAKING] Put all parts behind features (#9849) (overlookmotel)

Features

[0.54.0] - 2025-03-04

Performance

  • b0a0a82 ast/estree: Reduce overhead serializing static strings (#9396) (overlookmotel)

[0.53.0] - 2025-02-26

Features

  • 5c775ea ast/estree: Enable serialization without TS fields (#9285) (overlookmotel)

Performance

  • 1bfc459 ast/estree: Pre-allocate CodeBuffer for JSON output (#9340) (overlookmotel)
  • 018c523 ast/estree: ESTree serializer use CodeBuffer (#9331) (overlookmotel)

Refactor

  • b09249c ast/estree: Rename serializers and serialization methods (#9284) (overlookmotel)
  • 2faabe1 estree: Make itoa dependency optional (#9338) (overlookmotel)

[0.52.0] - 2025-02-21

  • 216b33f ast/estree: [BREAKING] Replace serde with custom ESTree serializer (#9256) (overlookmotel)

Features

[0.49.0] - 2025-02-10

Bug Fixes

  • 7e6a537 ast: Include directives in body (#8981) (hi-ogawa)

[0.36.0] - 2024-11-09

  • 092de67 types: [BREAKING] Append rest field into elements for objects and arrays to align with estree (#7212) (ottomated)

Features

  • dc0215c ast_tools: Add #[estree(append_to)], remove some custom serialization code (#7149) (ottomated)

Bug Fixes

[0.32.0] - 2024-10-19

Features

  • e310e52 parser: Generate Serialize impls in ast_tools (#6404) (ottomated)