crates_v0.134.0

oxc-project/oxccrates_v0.134.0Jun 1, 2026by github-actions[bot]

AI Summary

This release focuses on strict parsing for TypeScript in ambient contexts. It rejects invalid syntax like generators in ambient contexts and incompatible class member modifiers.

Key Highlights

  • Strict ambient context parsing (TS1038, TS1036, TS1183, TS1221, TS1222)
  • Reject incompatible class member modifiers
  • Parser improvements for setters and accessors
  • Performance improvements in parser and semantic analysis

New Features

  • Report TS1095 for setter with return type
  • Report TS1051 for optional setter parameter
  • Emit TS1094 for accessor type parameters

Full Release Notes

### 🚀 Features

- 81b86eb parser: Report TS1095 for setter with return type (#22889) (camc314)
- 0899485 parser: Report TS1051 for optional setter parameter (#22887) (camc314)
- 139b531 parser: Emit TS1094 for accessor type parameters (#22885) (camc314)
- 9c71f2e ast, codegen, formatter: Add `WithClauseKeyword::as_str` helper and use it (#22791) (camc314)

### 🐛 Bug Fixes

- 070eb9e isolated-declarations: Omit public accessor modifier (#22880) (camc314)
- a3ae099 isolated-declarations: Omit definite assertion from private declarations (#22878) (camc314)
- 7914807 codegen: Map call-chain punctuation for correct V8 stack columns (#22789) (Dunqing)
- cf5769c parser: Reject TypeScript declarations in single-statement context (#22827) (Boshen)
- c360fb6 parser: Reject generators in ambient contexts and overload signatures (TS1221/TS1222) (#22848) (Boshen)
- cc60d8d parser: Reject invalid index signature parameter types (TS1268/TS1337) (#22852) (Boshen)
- 3d13e29 parser: Reject `declare` in an already-ambient context (TS1038) (#22850) (Boshen)
- 5152854 parser: Reject statements in ambient contexts (TS1036) (#22849) (Boshen)
- 4f9afc5 parser: Reject `export as namespace` inside a namespace body (TS1316) (#22846) (Boshen)
- 2eafea6 parser: Reject function implementations in ambient contexts (TS1183) (#22845) (Boshen)
- c645615 parser: Reject incompatible class member modifiers (#22843) (Boshen)
- 276b78b parser: Reject module-referencing imports/exports in a namespace body (#22836) (Boshen)
- 842ed1c parser: Parse `class implements` with `implements` as the class name (#22801) (Boshen)

### ⚡ Performance

- 7e3a567 parser: Reuse cached token kind in delimited-list loops (#22841) (Boshen)
- 9e741c2 parser: Use peek_token instead of lookahead on the modifier path (#22842) (Boshen)
- 9e496a7 semantic: Defer declare lookup for empty accessors (#22810) (camc314)