Oxc Release Notes

Follow

216 release notes curated from 1 source by the Releasebot Team. Last updated: Oct 5, 2026

Get this feed:
  • Oct 5, 2026
    • Date parsed from source:
      Oct 5, 2026
    • First seen by Releasebot:
      Oct 5, 2026
    Oxc logo

    Oxc

    oxlint v1.87.0

    Oxc adds new lint rule suggestions and ships a set of bug fixes across React, JSX a11y, Unicorn, parser, and ESLint rules, improving autofix behavior, validation, and unused variable handling.

    Features

    42dcfd2 linter/react/no-unescaped-entities: Implement suggestion (#27292) (Mikhail Baev)
    cd4510d linter/unicorn/no-useless-switch-case: Implement suggestion (#27245) (Mikhail Baev)
    1a7c902 linter/react/jsx-no-target-blank: Implement suggestion (#27181) (Mikhail Baev)

    Bug Fixes

    176b4b9 linter/jsx-a11y/label-has-associated-control: Validate label attribute values (#27302) (sama Pyb)
    7d381c3 linter/jsx-a11y/mouse-events-have-key-events: Handle nullish event handlers (#27306) (sama Pyb)
    4e09837 linter/jsx-a11y/lang: Validate lang expression strings (#27304) (sama Pyb)
    7d28a66 linter/unicorn/numeric-separators-style: Report misgrouped BigInt literals (#27207) (breken)
    e928322 linter/unicorn/no-zero-fractions: Parenthesize separator and large integers in fixer (#27206) (breken)
    3d61a59 parser: Validate TypeScript type member separators (#27222) (camc314)
    f08236b linter/eslint/prefer-exponentiation-operator: Preserve autofix precedence (#27150) (camc314)
    7d60ae3 linter/valid-title: Continue checks after allowed words (#27146) (Cameron)
    ad5dd5d linter/eslint/no-unused-vars: Respect disabled argument checks for used ignore patterns (#26925) (camc314)

    Original source
  • Oct 5, 2026
    • Date parsed from source:
      Oct 5, 2026
    • First seen by Releasebot:
      Oct 5, 2026
    Oxc logo

    Oxc

    oxfmt v0.72.0

    Oxc releases a formatter update with a breaking markdown parser change, new embedded CSS block parsing, and a broad set of markdown, CSS, JSON, and core formatting fixes plus performance improvements and documentation updates.

    πŸ’₯ BREAKING CHANGES

    e2c68b1 oxfmt: [BREAKING] Format parser:markdown files by oxc_formatter_markdown (#27256) (leaysgur)

    πŸš€ Features

    b538e3c formatter_css: Parse embedded CSS as a block's contents (#27284) (leaysgur)

    πŸ› Bug Fixes

    71e400b formatter_markdown: Fixed remaining issues found by fuzz (#27334) (leaysgur)

    7d0e54d formatter_markdown: Preserve line breaks around Chinese/Japanese characters in all proseWrap (#27331) (leaysgur)

    e9ae2d8 formatter_css: Fix layouts found in mdn-content repo (css-in-md) (#27326) (leaysgur)

    df85b4c oxfmt: Keep blank lines after a line break in Prettier Doc to IR (#27325) (leaysgur)

    7f65b75 formatter: Format assignment target property as assignment-like (#27289) (leaysgur)

    6c08f2a formatter_css: Apply the url() import exception to a lone comma group (#27288) (leaysgur)

    1967302 formatter_css: Hug a spaced ident ( only at the at-rule prelude head (#27283) (leaysgur)

    2445064 formatter_markdown: Keep a preserved line break before a delimiter row that opens no table (#27278) (leaysgur)

    dd72fbf formatter_markdown: Keep container columns as spaces under useTabs (#27277) (leaysgur)

    1686018 oxfmt: Make one state conditionalGroup fit up to first hardline (#27275) (leaysgur)

    fd4ddce formatter_json: Flatten block comment only array|object (#27274) (leaysgur)

    267557c formatter,oxfmt: Embed only original JSDoc plugin supported languages (#27241) (leaysgur)

    2606c60 oxfmt: Do not re-include a file below an excluded directory with a negated pattern (#27237) (Nicolas Le Cam)

    c2de02b formatter: Decide embedded template layout from AST, not source shape (#27218) (leaysgur)

    c9e1224 formatter: Handle quoteProps: consistent for patterns and computed keys (#27216) (leaysgur)

    36e14df formatter: Keep comments between callee and its opener on the callee side (#27172) (leaysgur)

    6da7657 oxfmt: Render diagnostics with source in Stdin mode (#27130) (leaysgur)

    e9b2ec5 oxfmt/lsp: Reload .prettierignore on watched file change (#27129) (leaysgur)

    30eb463 oxfmt: Check global ignores before resolving nested config in Stdin mode (#27128) (leaysgur)

    ⚑ Performance

    72f42a3 formatter_markdown: Pre-allocate the IR buffer (#27333) (leaysgur)

    cea47e3 formatter_core: Avoid exponential will_break check on nested interned (#27211) (leaysgur)

    0aba566 oxfmt: Do not resolve root js config from nested context (#27147) (leaysgur)

    πŸ“š Documentation

    51506c6 formatter_css: Record divergences found in mdn-content (css-in-md) (#27327) (leaysgur)

    656b81c formatter_markdown: Record unclosed fences closing at a directive's closer (#27279) (leaysgur)

    66545bf formatter_markdown: Record setext heading wrap divergence (#27221) (leaysgur)

    af4b269 oxfmt: Document why format() API does not take cwd (#27131) (leaysgur)

    Original source
  • All of your release notes in one feed

    Join Releasebot and get updates from Oxc and hundreds of other software products.

    Create account
  • Oct 5, 2026
    • Date parsed from source:
      Oct 5, 2026
    • First seen by Releasebot:
      Oct 5, 2026
    Oxc logo

    Oxc

    oxc crates_v0.153.0

    Oxc releases parser, minifier, and transformer improvements with new syntax checks, smarter import and statement merging, explicit resource management lowering, isolated declarations updates, and several performance gains across minification and code generation.

    Features

    61003c7 minifier: Fold undefined argument in non delegating yield (#27324) (Armano)
    07833c0 ast: Tie debug_name return lifetime to the underlying AST node (#27295) (sadan)
    adb1139 minifier: Merge import statements against the same module (#25534) (ηΏ )
    cc82598 minifier: Merge import and export statements against the same module (#25533) (ηΏ )
    1c352ce minifier: Minimize bitwise binary expressions (#27107) (Armano)
    d1a0bcc minifier: Merge statements after terminating if block branches (#26667) (Armano)
    7a95376 minifier: Merge adjucent if stmt with the same content (#26445) (Armano)

    Bug Fixes

    6a7d48b parser: Report abstract private field error on modifier (#27314) (camc314)
    2ff6fb5 parser: Include generator marker in overload diagnostic span (#27313) (camc314)
    4359a66 parser: Reject TypeScript class modifiers in JavaScript (#27312) (camc314)
    565d75d minifier: Correct indopedency when processing nested sequences (#27273) (Armano)
    d0b9372 parser: Remove type-dependent tuple rest diagnostics (#27234) (camc314)
    3d61a59 parser: Validate TypeScript type member separators (#27222) (camc314)
    b2793fa parser: Reject module syntax in script (#27220) (leaysgur)
    5914a24 parser: Report TS1243 for abstract async methods (#27192) (camc314)
    c6c6e5e parser: Report TS1242 for interfaces with abstract modifier (#27191) (camc314)
    dd0bbb9 parser: Avoid duplicate index signature modifier diagnostic (#27190) (camc314)
    8f61129 regex: Decode escaped capturing group names (#27156) (camc314)
    da1fed2 minifier: Fold conditional expressions with long sequences (#27083) (Armano)
    0c601f4 isolated-declarations: Allow adding undefined to keyof parameter types (#27173) (Dunqing)
    4896287 isolated-declarations: Support readonly parameter types (#27009) (sama Pyb)
    72d62a1 transformer/explicit-resource-management: Transform classic for loop using declarations (#27148) (camc314)
    4cf9ae2 minifier: Preserve sibling declarations in arguments copy rewrite (#27140) (camc314)
    24b7015 transformer/explicit-resource-management: Lower using in catch and finally (#27142) (camc314)

    Performance

    99e3c15 minifier: Small performance improvement when merging imports (#27238) (Armano)
    d37d1db codegen: Pre-allocate sourcemap builder vectors (#27230) (codspeed)
    466ef10 minifier: Update expressions in place in merge_import_export (#27226) (Armano)
    028ffb8 minifier: Update nodes in place in wrap_to_avoid_ambiguous_else (#27194) (Armano)
    6fcd135 minifier: Avoid conversion from ident to str when for substitute symbols (#27209) (Armano)
    0b9799d minifier: Reduce usage of minimize_conditional (#26028) (Armano)
    3ca3ded minifier: Short-circuit IfStatement termination on alternate (#25198) (Armano)

    Documentation

    335ce79 agents: Scope verification for local and stacked work (#27299) (Dunqing)

    Original source
  • Sep 28, 2026
    • Date parsed from source:
      Sep 28, 2026
    • First seen by Releasebot:
      Sep 28, 2026
    Oxc logo

    Oxc

    oxlint v1.86.0

    Oxc adds new linting support and delivers a broad round of bug fixes across React, TypeScript, ESLint, parser, and oxlint rules, plus performance tuning for no-unused-vars. The release improves rule accuracy, handling of edge cases, and compiler behavior.

    Features

    9d80eed linter/react/only-export-components: Support allowCompoundComponents (#27117) (Kuroda Kayn)

    e05b155 linter: Add typescript/no-generated-empty-object-type (#26958) (camc314)

    Bug Fixes

    8306aa4 linter/typescript/no-unnecessary-parameter-property-assignment: Account for parameter property reassignment (#26955) (camc314)

    42dfbb5 linter/eslint/one-var: Keep declare when splitting declarations (#27081) (Cheolhee Lee)

    2ba7e33 linter/eslint/require-await: Count await using as an await (#27080) (Cheolhee Lee)

    611e4ed linter/plugins: Include executing selectors in JS plugin rule timings (#27111) (overlookmotel)

    2cac66f react-compiler: Handle recursive function expressions (#26796) (Brennan Butler)

    e996e6c react-compiler: Treat zero-argument new Date as impure (#26894) (Boshen)

    571cfa3 oxlint: Skip type-aware lint rules in type-check-only mode (#27076) (camc314)

    d0b2462 oxlint: Skip undefined children in CFG walker (#27075) (camc314)

    5186328 parser: Handle HTML comment values (#22933) (Boshen)

    0b630e8 linter/typescript/unified-signatures: Align rule with upstream (#26956) (camc314)

    ebb22f1 linter/node/no-exports-assign: Change category from style to suspicious (#26555) (Bartok)

    cce28a0 linter/import/no-duplicates: Distinguish import attributes (#26936) (camc314)

    feb733b linter/unicorn/prefer-spread: Stop checking string split calls (#26935) (camc314)

    929e154 linter/eslint/no-unused-vars: Honor ignore patterns inside array rest bindings (#26923) (camc314)

    5bdb9b8 linter/eslint/no-unused-vars: Recognize consumed update expressions (#26782) (camc314)

    5c05bef linter/eslint/prefer-const: Ignore embedded assignments (#26920) (camc314)

    Performance

    ded4c29 linter/eslint/no-unused-vars: Skip sequence checks when absent (#26921) (camc314)

    Original source
  • Sep 28, 2026
    • Date parsed from source:
      Sep 28, 2026
    • First seen by Releasebot:
      Sep 28, 2026
    Oxc logo

    Oxc

    oxfmt v0.71.0

    Oxc releases a formatter update with bundled Prettier 3.9.9 and 3.9.8, plus a wide set of bug fixes that improve comment handling, Markdown layout, JSDoc alignment, and CLI reliability.

    Features

    e0b1f9f oxfmt: Bump bundled Prettier version to 3.9.9 (#27002) (leaysgur)
    342527d oxfmt: Bump bundled Prettier version to 3.9.8 (#26999) (leaysgur)

    Bug Fixes

    eeba1db formatter: Skip test-call layout when arguments have comments (#27119) (leaysgur)
    1f7b8ad oxfmt: Allow repeated CLI calls in the same process (#27051) (Liang)
    7bcb807 formatter_markdown: Keep blank line between HTML and nested list (#27112) (leaysgur)
    10b10c5 formatter: Keep comments around = on their side and line (#27041) (leaysgur)
    9aad365 formatter: Keep comments deferred before an assignment operator (#26997) (waltu)
    8fbddb1 formatter/jsdoc: More alignment with original plugin (#27039) (leaysgur)
    50be18e formatter: Keep trailing spaces on normal block comments (#27037) (leaysgur)
    56d1880 formatter: Nestle adjacent block comments (#27036) (leaysgur)
    3be5d94 formatter: Treat /*** comments as JSDoc (#27035) (leaysgur)
    cd45f71 formatter: Keep trailing double spaces on JSDoc lines (#26861) (John Costa)
    fd695f4 formatter_markdown: Fix more mismatches found in ecosystem-ci repos (#27003) (leaysgur)
    4e77d59 formatter_markdown: Keep a math span after a kept line break from opening a block (#27001) (leaysgur)
    584b8b0 formatter_markdown: Keep a shape line after a multi-line inline node or link title (#27000) (leaysgur)
    b939645 formatter_markdown: Keep a line break before an inline liquid tag under preserve (#26998) (leaysgur)

    Original source
  • Similar to Oxc with recent updates:

  • Sep 28, 2026
    • Date parsed from source:
      Sep 28, 2026
    • First seen by Releasebot:
      Sep 28, 2026
    Oxc logo

    Oxc

    oxc crates_v0.152.0

    Oxc releases new JS string types, buffer boundary assertions for regular expressions, and a React Compiler diagnostics option, while also adding threadless WASI builds. This update includes multiple parser, minifier, formatter, and codegen fixes plus broad performance improvements.

    πŸš€ Features

    02331c8 str: Add JSStr, JSChar and JSStrBuilder types (#26435) (Dunqing)

    52ae63f regular_expression: Support buffer boundary assertions (#27048) (Boshen)

    3255b89 transform-react: Add reportDiagnostics option to expose recoverable React Compiler diagnostics (#26624) (Jack)

    f585cb4 napi: Add threadless WASI builds (#26898) (Boshen)

    πŸ› Bug Fixes

    c380c85 minifier: Preserve iife with directives (#27060) (Armano)

    c55b35d str: Correct clippy reason (#27013) (overlookmotel)

    8fbddb1 formatter/jsdoc: More alignment with original plugin (#27039) (leaysgur)

    5186328 parser: Handle HTML comment values (#22933) (Boshen)

    01ff33e parser: Reject module export names containing a lone surrogate (#26953) (Dunqing)

    d79ad19 codegen: Remove redundant dollar escapes in minified templates (#26924) (camc314)

    ⚑ Performance

    0afbf85 minifier: Fold logical expressions in place (#26768) (Armano)

    3471f29 minifier: Avoid creation of empty block when folding try finally (#26971) (Armano)

    3893d64 minifier: Update boolean context expressions in place (#26823) (Armano)

    de8af47 minifier: Take return argument directly when converting arrow fn (#26830) (Armano)

    fc37ba0 minifier: Reduce allocations when minimizing assignments (#26609) (Armano)

    dce64f6 minifier: Use ident hashes for catch var and arguments (#26907) (Armano)

    57610b3 minifier: Use ident hashes in label comparison (#26887) (Armano)

    πŸ“š Documentation

    dfa6cf9 str: Reformat and simplify comments (#27011) (overlookmotel)

    d775315 parser: Document AST property order (#27038) (Boshen)

    cd80e3f ast: Correct JSXExpressionContainer example (#26975) (camc314)

    8cb05e3 ast: Simplify JSXAttribute value description (#26974) (camc314)

    fda7fbb ast: Correct TSNumberKeyword example (#26973) (camc314)

    e63c439 ast: Clarify RegExpFlags::V flag features (#26972) (camc314)

    278288e ast: Correct JSXText example (#26970) (camc314)

    e9ff529 ast: Correct TSIntrinsicKeyword example (#26967) (camc314)

    c643ce4 ast: Fix TSTupleType example syntax (#26966) (camc314)

    895b1a7 ast: Correct TSPropertySignature usage example (#26964) (camc314)

    8d8cc7c ast: Correct Class abstract example values (#26963) (camc314)

    f7ef2e2 ast: Use valid variance example for TSTypeParameter (#26962) (camc314)

    145fcdb ast: Attach pure comment to NewExpression field (#26961) (camc314)

    06dfd9f ast: Clarify TSNonNullExpression docs (#26960) (camc314)

    d5f92b5 ast: Add docs for TSNonNullExpression (#26910) (camchenry)

    4a76723 ast: Add docs for TSNamespaceExportDeclaration (#26909) (camchenry)

    de41927 ast: Add docs for TSInstantiationExpression (#26908) (camchenry)

    Original source
  • Sep 21, 2026
    • Date parsed from source:
      Sep 21, 2026
    • First seen by Releasebot:
      Sep 21, 2026
    Oxc logo

    Oxc

    oxlint v1.85.0

    Oxc fixes oxlint and oxfmt nested config discovery in Vite+ mode.

    πŸš€ Features

    415b742 oxlint,oxfmt: Do not discover nested config in Vite+ mode (#26763) (leaysgur)

    Original source
  • Sep 21, 2026
    • Date parsed from source:
      Sep 21, 2026
    • First seen by Releasebot:
      Sep 21, 2026
    Oxc logo

    Oxc

    oxlint_v1.84.0: release(apps): oxlint v1.84.0 && oxfmt v0.69.0 (#26874)

    Oxc releases new linting and formatting improvements, including broader vite.config.* detection, JavaScript plugin rule timing reports, a new Markdown formatter, and numerous bug fixes and performance upgrades across Oxlint and Oxfmt.

    Oxlint

    πŸš€ Features

    • 809090c oxlint,oxfmt: Find all vite.config.* variants (#26755) (leaysgur)
    • a047b67 linter: Report JavaScript plugin rule timings (#26415) (Alexander Lichter)
    • 2300898 linter/unicorn/no-unreadable-iife: Implement suggestion (#26658) (Mikhail Baev)

    πŸ› Bug Fixes

    • 12cb547 linter/eslint/no-unused-vars: Report private namespace bindings (#26842) (camc314)
    • 927bfa4 oxlint/lsp: Align nested config handling with configPath semantics (#26762) (leaysgur)
    • e096dfd linter/esliny/no-unused-vars: Handle comments when removing imports (#26781) (camc314)
    • 9d48bae linter/esliny/no-unused-vars: Preserve rest bindings when removing array elements (#26778) (camc314)
    • 62a2bb2 linter/eslint/preserve-caught-error: Prevent conflicting fixes with prefer-optional-catch-binding (#26726) (camc314)
    • 0d565bc linter/unicorn/consistent-function-scoping: Detect ancestor-only function captures (#26625) (camc314)
    • 3c98cde linter/vitest/prefer-to-be-truthy: Suggest assertion rewrites (#26761) (camc314)
    • 7811f0a parser: Preserve reparsed await tokens (#26619) (camc314)
    • e15f103 linter/react: Add a few more missing properties to no-unknown-property (#26572) (Connor Shea)

    ⚑ Performance

    • c6a00e6 linter/eslint/no-restricted-exports: Skip inactive configurations (#26772) (camc314)
    • 0026008 linter/eslint/capitalized-comments: Avoid unnecessary case-conversion allocations (#26754) (camc314)
    • 34482c9 linter/oxc/no-map-spread: Avoid collecting spread spans twice (#26718) (camc314)
    • 2ce913e linter/eslint/no-inline-comments: Skip unnecessary JSX node scans (#26714) (camc314)
    • b946951 linter/eslint/no-control-regex: Avoid temporary diagnostic allocations (#26713) (camc314)
    • 8903402 linter/promise/no-multiple-resolved: Avoid collecting executor parameters (#26691) (camc314)
    • 3aa4b25 linter/jsx-a11y/anchor-ambiguous-text: Avoid temporary word allocations (#26692) (camc314)
    • 2e07b32 linter/react/jsx-handler-names: Avoid temporary prefix collections (#26688) (camc314)
    • 2d3b7a6 linter/typescript/consistent-generic-constructors: Avoid intermediate comment strings (#26687) (camc314)
    • 97beefb linter/typescript/triple-slash-reference: Avoid attribute parsing allocations (#26686) (camc314)
    • 6b9452d linter/unicorn/prefer-export-from: Avoid temporary attribute vector (#26685) (camc314)
    • 8759780 linter/eslint/no-useless-assignment: Short-circuit identical scopes (#26684) (camc314)

    πŸ“š Documentation

    • 68baaa4 linter/typescript/await-thenable: Revert add missing lang for markdown doc comment (#26757) (camc314)
    • aa7de00 lsp: Document that the run option only applies to push mode clients (#26670) (im10furry)

    Oxfmt

    πŸš€ Features

    • 809090c oxlint,oxfmt: Find all vite.config.* variants (#26755) (leaysgur)
    • 4356dc2 formatter_markdown: Keep frontmatter verbatim (#26779) (leaysgur)
    • 7717813 formatter_markdown: Implement markdown formatter (#26434) (leaysgur)
    • 6c8a862 formatter: Glue fbt component and text (#26616) (leaysgur)

    πŸ› Bug Fixes

    • 68ed6a2 formatter_markdown: Fix real-world missmatches (#26785) (leaysgur)
    • 68ce610 formatter: Keep after-operator comments in place (#26725) (leaysgur)
    • f91ad92 formatter: Let union place leading comments at as|satisfies (#26674) (leaysgur)
    • ea164c0 formatter: Fix block comment with RHS assignment and typecast-ed arrow body (#26672) (leaysgur)
    • 406ff1f formatter: Preserve redundant parens for TSTypeAliasDeclaration with suppress comment (#26671) (leaysgur)

    πŸ“š Documentation

    • e012542 formatter_core: Add note for blanked front matter (#26786) (leaysgur)
    • 11ff089 formatter_markdown: Follow updated DIVERGENCES policy (#26776) (leaysgur)
    • 8fa3617 oxfmt: Unify DIVERGENCES reference and drop notes (#26750) (leaysgur)
    • d8a716c formatter_css: Unify DIVERGENCES reference (#26749) (leaysgur)
    • 095a97c formatter: Unify DIVERGENCES reference (#26748) (leaysgur)
    • 97dc427 formatter_graphql: Unify DIVERGENCES reference (#26747) (leaysgur)
    • 09ecfa7 formatter_yaml: Unify DIVERGENCES reference (#26746) (leaysgur)
    • 0c16983 formatter_core: Clean up FORMATTER_POLICY (#26745) (leaysgur)
    Original source
  • Sep 21, 2026
    • Date parsed from source:
      Sep 21, 2026
    • First seen by Releasebot:
      Sep 21, 2026
    Oxc logo

    Oxc

    oxfmt v0.70.0

    Oxc fixes oxlint and oxfmt config discovery in Vite+ mode by skipping nested configs.

    πŸš€ Features

    415b742 oxlint,oxfmt: Do not discover nested config in Vite+ mode (#26763) (leaysgur)

    Original source
  • Sep 21, 2026
    • Date parsed from source:
      Sep 21, 2026
    • First seen by Releasebot:
      Sep 21, 2026
    Oxc logo

    Oxc

    oxfmt_v0.69.0: release(apps): oxlint v1.84.0 && oxfmt v0.69.0 (#26874)

    Oxc adds broader Vite config detection, new JavaScript plugin timing reports, and multiple lint and parser fixes. Oxfmt also gains a markdown formatter, keeps frontmatter verbatim, and ships several formatting bug fixes and cleanup updates.

    Oxlint

    πŸš€ Features

    • 809090c oxlint,oxfmt: Find all vite.config.* variants (#26755) (leaysgur)
    • a047b67 linter: Report JavaScript plugin rule timings (#26415) (Alexander Lichter)
    • 2300898 linter/unicorn/no-unreadable-iife: Implement suggestion (#26658) (Mikhail Baev)

    πŸ› Bug Fixes

    • 12cb547 linter/eslint/no-unused-vars: Report private namespace bindings (#26842) (camc314)
    • 927bfa4 oxlint/lsp: Align nested config handling with configPath semantics (#26762) (leaysgur)
    • e096dfd linter/esliny/no-unused-vars: Handle comments when removing imports (#26781) (camc314)
    • 9d48bae linter/esliny/no-unused-vars: Preserve rest bindings when removing array elements (#26778) (camc314)
    • 62a2bb2 linter/eslint/preserve-caught-error: Prevent conflicting fixes with prefer-optional-catch-binding (#26726) (camc314)
    • 0d565bc linter/unicorn/consistent-function-scoping: Detect ancestor-only function captures (#26625) (camc314)
    • 3c98cde linter/vitest/prefer-to-be-truthy: Suggest assertion rewrites (#26761) (camc314)
    • 7811f0a parser: Preserve reparsed await tokens (#26619) (camc314)
    • e15f103 linter/react: Add a few more missing properties to no-unknown-property (#26572) (Connor Shea)

    ⚑ Performance

    • c6a00e6 linter/eslint/no-restricted-exports: Skip inactive configurations (#26772) (camc314)
    • 0026008 linter/eslint/capitalized-comments: Avoid unnecessary case-conversion allocations (#26754) (camc314)
    • 34482c9 linter/oxc/no-map-spread: Avoid collecting spread spans twice (#26718) (camc314)
    • 2ce913e linter/eslint/no-inline-comments: Skip unnecessary JSX node scans (#26714) (camc314)
    • b946951 linter/eslint/no-control-regex: Avoid temporary diagnostic allocations (#26713) (camc314)
    • 8903402 linter/promise/no-multiple-resolved: Avoid collecting executor parameters (#26691) (camc314)
    • 3aa4b25 linter/jsx-a11y/anchor-ambiguous-text: Avoid temporary word allocations (#26692) (camc314)
    • 2e07b32 linter/react/jsx-handler-names: Avoid temporary prefix collections (#26688) (camc314)
    • 2d3b7a6 linter/typescript/consistent-generic-constructors: Avoid intermediate comment strings (#26687) (camc314)
    • 97beefb linter/typescript/triple-slash-reference: Avoid attribute parsing allocations (#26686) (camc314)
    • 6b9452d linter/unicorn/prefer-export-from: Avoid temporary attribute vector (#26685) (camc314)
    • 8759780 linter/eslint/no-useless-assignment: Short-circuit identical scopes (#26684) (camc314)

    πŸ“š Documentation

    • 68baaa4 linter/typescript/await-thenable: Revert add missing lang for markdown doc comment (#26757) (camc314)
    • aa7de00 lsp: Document that the run option only applies to push mode clients (#26670) (im10furry)

    Oxfmt

    πŸš€ Features

    • 809090c oxlint,oxfmt: Find all vite.config.* variants (#26755) (leaysgur)
    • 4356dc2 formatter_markdown: Keep frontmatter verbatim (#26779) (leaysgur)
    • 7717813 formatter_markdown: Implement markdown formatter (#26434) (leaysgur)
    • 6c8a862 formatter: Glue fbt component and text (#26616) (leaysgur)

    πŸ› Bug Fixes

    • 68ed6a2 formatter_markdown: Fix real-world missmatches (#26785) (leaysgur)
    • 68ce610 formatter: Keep after-operator comments in place (#26725) (leaysgur)
    • f91ad92 formatter: Let union place leading comments at as|satisfies (#26674) (leaysgur)
    • ea164c0 formatter: Fix block comment with RHS assignment and typecast-ed arrow body (#26672) (leaysgur)
    • 406ff1f formatter: Preserve redundant parens for TSTypeAliasDeclaration with suppress comment (#26671) (leaysgur)

    πŸ“š Documentation

    • e012542 formatter_core: Add note for blanked front matter (#26786) (leaysgur)
    • 11ff089 formatter_markdown: Follow updated DIVERGENCES policy (#26776) (leaysgur)
    • 8fa3617 oxfmt: Unify DIVERGENCES reference and drop notes (#26750) (leaysgur)
    • d8a716c formatter_css: Unify DIVERGENCES reference (#26749) (leaysgur)
    • 095a97c formatter: Unify DIVERGENCES reference (#26748) (leaysgur)
    • 97dc427 formatter_graphql: Unify DIVERGENCES reference (#26747) (leaysgur)
    • 09ecfa7 formatter_yaml: Unify DIVERGENCES reference (#26746) (leaysgur)
    • 0c16983 formatter_core: Clean up FORMATTER_POLICY (#26745) (leaysgur)
    Original source
  • Sep 21, 2026
    • Date parsed from source:
      Sep 21, 2026
    • First seen by Releasebot:
      Sep 21, 2026
    Oxc logo

    Oxc

    oxc crates_v0.151.0

    Oxc adds coverage for a new TypeScript fixture layout and ships parser, transformer, and minifier fixes alongside performance improvements. The update focuses on better syntax handling, fewer edge-case bugs, and more efficient minification work.

    πŸš€ Features

    • 1fac655 coverage: Support new TypeScript fixture layout (#26226) (camc314)

    πŸ› Bug Fixes

    • cd7228f minifier: Add missing negation for boolean literal (#26847) (Armano)
    • 32305e2 transformer: Skip enum reverse mappings for syntactic string initializers (#26724) (Dunqing)
    • 7811f0a parser: Preserve reparsed await tokens (#26619) (camc314)
    • 9220158 transformer: Skip recovered using loop patterns (#26722) (camc314)
    • 3130405 parser: Recover await using object binding patterns (#26721) (camc314)
    • 827fdbd parser: Reject invalid modifiers on import aliases (#26622) (camc314)

    ⚑ Performance

    • 3f1e3aa minifier: Preallocate stmts vec size to avoid excesive reallocs (#26856) (Armano)
    • bd3f69e semantic: Reuse identifier hashes in enum member lookups (#26773) (camc314)
    • 5f72954 minifier: Reduce allocations when processing if statements (#26666) (Armano)
    Original source
  • Sep 21, 2026
    • Date parsed from source:
      Sep 21, 2026
    • First seen by Releasebot:
      Sep 21, 2026
    Oxc logo

    Oxc

    oxlint v1.84.0 & oxfmt v0.69.0

    Oxc releases Oxlint v1.84.0 and Oxfmt v0.69.0 with new vite.config.* discovery, JavaScript plugin timing reports, markdown formatting support, and several linter, parser, and formatter fixes plus performance improvements.

    Table of Contents

    Oxlint v1.84.0

    Oxfmt v0.69.0

    Oxlint v1.84.0

    πŸš€ Features

    • 809090c oxlint,oxfmt: Find all vite.config.* variants (#26755) (leaysgur)
    • a047b67 linter: Report JavaScript plugin rule timings (#26415) (Alexander Lichter)
    • 2300898 linter/unicorn/no-unreadable-iife: Implement suggestion (#26658) (Mikhail Baev)

    πŸ› Bug Fixes

    • 12cb547 linter/eslint/no-unused-vars: Report private namespace bindings (#26842) (camc314)
    • 927bfa4 oxlint/lsp: Align nested config handling with configPath semantics (#26762) (leaysgur)
    • e096dfd linter/esliny/no-unused-vars: Handle comments when removing imports (#26781) (camc314)
    • 9d48bae linter/esliny/no-unused-vars: Preserve rest bindings when removing array elements (#26778) (camc314)
    • 62a2bb2 linter/eslint/preserve-caught-error: Prevent conflicting fixes with prefer-optional-catch-binding (#26726) (camc314)
    • 0d565bc linter/unicorn/consistent-function-scoping: Detect ancestor-only function captures (#26625) (camc314)
    • 3c98cde linter/vitest/prefer-to-be-truthy: Suggest assertion rewrites (#26761) (camc314)
    • 7811f0a parser: Preserve reparsed await tokens (#26619) (camc314)
    • e15f103 linter/react: Add a few more missing properties to no-unknown-property (#26572) (Connor Shea)

    ⚑ Performance

    • c6a00e6 linter/eslint/no-restricted-exports: Skip inactive configurations (#26772) (camc314)
    • 0026008 linter/eslint/capitalized-comments: Avoid unnecessary case-conversion allocations (#26754) (camc314)
    • 34482c9 linter/oxc/no-map-spread: Avoid collecting spread spans twice (#26718) (camc314)
    • 2ce913e linter/eslint/no-inline-comments: Skip unnecessary JSX node scans (#26714) (camc314)
    • b946951 linter/eslint/no-control-regex: Avoid temporary diagnostic allocations (#26713) (camc314)
    • 8903402 linter/promise/no-multiple-resolved: Avoid collecting executor parameters (#26691) (camc314)
    • 3aa4b25 linter/jsx-a11y/anchor-ambiguous-text: Avoid temporary word allocations (#26692) (camc314)
    • 2e07b32 linter/react/jsx-handler-names: Avoid temporary prefix collections (#26688) (camc314)
    • 2d3b7a6 linter/typescript/consistent-generic-constructors: Avoid intermediate comment strings (#26687) (camc314)
    • 97beefb linter/typescript/triple-slash-reference: Avoid attribute parsing allocations (#26686) (camc314)
    • 6b9452d linter/unicorn/prefer-export-from: Avoid temporary attribute vector (#26685) (camc314)
    • 8759780 linter/eslint/no-useless-assignment: Short-circuit identical scopes (#26684) (camc314)

    πŸ“š Documentation

    • 68baaa4 linter/typescript/await-thenable: Revert add missing lang for markdown doc comment (#26757) (camc314)
    • aa7de00 lsp: Document that the run option only applies to push mode clients (#26670) (im10furry)

    Oxfmt v0.69.0

    πŸš€ Features

    • 809090c oxlint,oxfmt: Find all vite.config.* variants (#26755) (leaysgur)
    • 4356dc2 formatter_markdown: Keep frontmatter verbatim (#26779) (leaysgur)
    • 7717813 formatter_markdown: Implement markdown formatter (#26434) (leaysgur)
    • 6c8a862 formatter: Glue fbt component and text (#26616) (leaysgur)

    πŸ› Bug Fixes

    • 68ed6a2 formatter_markdown: Fix real-world missmatches (#26785) (leaysgur)
    • 68ce610 formatter: Keep after-operator comments in place (#26725) (leaysgur)
    • f91ad92 formatter: Let union place leading comments at as|satisfies (#26674) (leaysgur)
    • ea164c0 formatter: Fix block comment with RHS assignment and typecast-ed arrow body (#26672) (leaysgur)
    • 406ff1f formatter: Preserve redundant parens for TSTypeAliasDeclaration with suppress comment (#26671) (leaysgur)

    πŸ“š Documentation

    • e012542 formatter_core: Add note for blanked front matter (#26786) (leaysgur)
    • 11ff089 formatter_markdown: Follow updated DIVERGENCES policy (#26776) (leaysgur)
    • 8fa3617 oxfmt: Unify DIVERGENCES reference and drop notes (#26750) (leaysgur)
    • d8a716c formatter_css: Unify DIVERGENCES reference (#26749) (leaysgur)
    • 095a97c formatter: Unify DIVERGENCES reference (#26748) (leaysgur)
    • 97dc427 formatter_graphql: Unify DIVERGENCES reference (#26747) (leaysgur)
    • 09ecfa7 formatter_yaml: Unify DIVERGENCES reference (#26746) (leaysgur)
    • 0c16983 formatter_core: Clean up FORMATTER_POLICY (#26745) (leaysgur)
    Original source
  • Sep 14, 2026
    • Date parsed from source:
      Sep 14, 2026
    • First seen by Releasebot:
      Sep 14, 2026
    Oxc logo

    Oxc

    oxlint_v1.83.0: release(apps): oxlint v1.83.0 && oxfmt v0.68.0 (#26631)

    Oxc releases Oxlint and Oxfmt updates with React 19.3 lint rule support, new bug fixes across eslint, unicorn, TypeScript, parser, and formatter behavior, plus a set of performance improvements and documentation tweaks for smoother linting and formatting.

    Oxlint

    πŸš€ Features

    • afe950d linter/react: Update lint rules to accomodate changes in React 19.3 (#26571) (Connor Shea)

    πŸ› Bug Fixes

    • fb87ed7 linter/unicorn/prefer-array-flat-map: Report .filter().flatMap() chains (#26626) (camc314)
    • 336b654 linter/unicorn/prefer-at: Report single-character substring calls (#26623) (camc314)
    • a5bba6d linter/eslint/no-unused-vars: Respect rest params after-used option (#26579) (Bartok)
    • c1470a2 linter/eslint/no-unused-vars: Preserve ambient implicit exports (#26582) (Dex Hunter)
    • 9a469d2 linter/unicorn/prefer-global-this: Preserve window event method references (#26611) (Dex Hunter)
    • aaff758 linter/unicorn/prefer-default-parameters: Report violation for ??= and ||= (#26607) (Bartok)
    • 2bed25a linter/unicorn/prefer-array-flat: Skip plain concat normalization (#26604) (im10furry)
    • 72bc7f2 oxlint: Replace backlashes path for "no js runtime" diagnostic (#26599) (Sysix)
    • 1aa5ec1 linter/typescript/prefer-for-of: Handle computed collections (#26584) (camc314)
    • 1e90019 linter/typescript: Mark no-unnecessary-type-parameters and prefer-find suggestions as implemented (#26586) (Mikhail Baev)
    • 4231536 linter: Compare label text in runtime optimization assertion (#26526) (camc314)
    • 36d5534 linter: Include file path in diagnostic assertion (#26525) (camc314)
    • 31508b1 parser: Reject return types on constructor overloads (#26523) (camc314)

    ⚑ Performance

    • 1d681b0 linter/react/jsx-pascal-case: Avoid temporary name segment vector (#26531) (camc314)
    • 2ad7d49 linter/promise/catch-or-return: Avoid temporary formatting vectors (#26505) (camc314)
    • 203235b linter/jsx-a11y/no-static-element-interactions: Avoid role vector (#26504) (camc314)
    • 2e95167 linter/jsx-a11y/anchor-is-valid: Avoid temporary attribute vector (#26501) (camc314)
    • deafdba linter/react/exhaustive-deps: Avoid temporary dependency vector (#26502) (camc314)
    • 4f1627f linter/oxc/branches-sharing-code: Compute deletion spans lazily (#26500) (camc314)
    • c068fd2 linter/react/jsx-curly-brace-presence: Avoid newline position allocation (#26499) (camc314)
    • ed4357c linter/eslint/no-restricted-properties: Skip empty configurations (#26497) (camc314)
    • 92e41b7 linter/oxc/no-barrel-file: Iterate module requests directly (#26498) (camc314)
    • 5255ee3 linter/unicorn/prefer-single-call: Avoid temporary argument vector (#26494) (camc314)
    • 96ef365 linter/unicorn/prefer-includes: Reduce suggestion allocations (#26492) (camc314)
    • a71fd7f linter/unicorn/no-new-buffer: Avoid temporary argument vector (#26491) (camc314)
    • 11085e7 linter/jsdoc/require-yields: Short-circuit JSDoc checks (#26488) (camc314)
    • 9b1aff8 linter/unicorn/no-useless-undefined: Skip calls without trailing undefined (#26481) (camc314)
    • 1e5d5d7 linter/eslint/no-unused-vars: Skip absent global declaration checks (#26457) (camc314)
    • 403f899 linter/eslint/no-undef: Check globals once per unresolved name (#26456) (camc314)
    • 118adb0 linter/eslint/no-restricted-imports: Avoid redundant import scans (#26455) (camc314)
    • ab848f2 linter/eslint/no-useless-assignment: Skip tracking exported symbols (#26449) (camc314)
    • 1b6e409 linter/unicorn/prefer-object-from-entries: Avoid allocating configured paths (#26448) (camc314)
    • 2206875 linter/eslint/new-cap: Avoid unnecessary callee name allocations (#26447) (camc314)

    πŸ“š Documentation

    • b927e0a linter/typescript/await-thenable: Add missing lang for markdown doc comment (#26438) (Ari PerkkiΓΆ)

    Oxfmt

    πŸš€ Features

    • 586f27a formatter_core: Add prefix_align builder and Tag::(Start|End)Prefix (#26520) (leaysgur)
    • dc45cc3 formatter_test: Test Prettier dynamic snippet tests (#26469) (leaysgur)

    πŸ› Bug Fixes

    • d7e0c82 formatter: Keep an enum member's trailing suppress comment (#26549) (leaysgur)
    • d2fe01e formatter: Unify suppress comment behavior (#26547) (leaysgur)
    • d35d89f oxfmt: Skip shutdown delay on fixed Node 24 releases (#26518) (Pablo GarcΓ­a)
    • aef8b4a formatter_css: Handle less-test-suites failures (#26513) (leaysgur)
    • 9dbddca formatter: Keep group flat for own-line comment in JSX (#26475) (leaysgur)
    • d226e6f formatter_yaml: Bump oxc-yaml-parser to 0.0.6 (#26472) (leaysgur)
    • 8b41fc0 formatter_yaml: Clamp tab_width: 0 to 1 to keep semantics (#26471) (leaysgur)
    • dea2ba0 formatter_core: Do not panic with align(0) (#26468) (leaysgur)
    • bf1d3f6 formatter: Check this_param for simple parameters test (#26474) (leaysgur)
    • 33cdc84 formatter: Keep cast-target assignment and commented parameter patterns (#26429) (leaysgur)
    • 876fbe3 oxfmt: Expand Fill parts in tsx-in-vue (#26427) (leaysgur)

    πŸ“š Documentation

    • 66fda4f formatter: Update AGENTS.md comment handling (#26551) (leaysgur)
    • 41abcba formatter: Note why jsx-test-suite snippets stay off (#26515) (leaysgur)
    Original source
  • Sep 14, 2026
    • Date parsed from source:
      Sep 14, 2026
    • First seen by Releasebot:
      Sep 14, 2026
    Oxc logo

    Oxc

    oxfmt_v0.68.0: release(apps): oxlint v1.83.0 && oxfmt v0.68.0 (#26631)

    Oxc releases Oxlint and Oxfmt updates with React 19.3 lint rule support, several bug fixes, and broad performance improvements. Oxfmt adds new formatter core capabilities, fixes comment handling and YAML behavior, and improves stability across formatting cases.

    Oxlint

    πŸš€ Features

    • afe950d linter/react: Update lint rules to accomodate changes in React 19.3 (#26571) (Connor Shea)

    πŸ› Bug Fixes

    • fb87ed7 linter/unicorn/prefer-array-flat-map: Report .filter().flatMap() chains (#26626) (camc314)
    • 336b654 linter/unicorn/prefer-at: Report single-character substring calls (#26623) (camc314)
    • a5bba6d linter/eslint/no-unused-vars: Respect rest params after-used option (#26579) (Bartok)
    • c1470a2 linter/eslint/no-unused-vars: Preserve ambient implicit exports (#26582) (Dex Hunter)
    • 9a469d2 linter/unicorn/prefer-global-this: Preserve window event method references (#26611) (Dex Hunter)
    • aaff758 linter/unicorn/prefer-default-parameters: Report violation for ??= and ||= (#26607) (Bartok)
    • 2bed25a linter/unicorn/prefer-array-flat: Skip plain concat normalization (#26604) (im10furry)
    • 72bc7f2 oxlint: Replace backlashes path for "no js runtime" diagnostic (#26599) (Sysix)
    • 1aa5ec1 linter/typescript/prefer-for-of: Handle computed collections (#26584) (camc314)
    • 1e90019 linter/typescript: Mark no-unnecessary-type-parameters and prefer-find suggestions as implemented (#26586) (Mikhail Baev)
    • 4231536 linter: Compare label text in runtime optimization assertion (#26526) (camc314)
    • 36d5534 linter: Include file path in diagnostic assertion (#26525) (camc314)
    • 31508b1 parser: Reject return types on constructor overloads (#26523) (camc314)

    ⚑ Performance

    • 1d681b0 linter/react/jsx-pascal-case: Avoid temporary name segment vector (#26531) (camc314)
    • 2ad7d49 linter/promise/catch-or-return: Avoid temporary formatting vectors (#26505) (camc314)
    • 203235b linter/jsx-a11y/no-static-element-interactions: Avoid role vector (#26504) (camc314)
    • 2e95167 linter/jsx-a11y/anchor-is-valid: Avoid temporary attribute vector (#26501) (camc314)
    • deafdba linter/react/exhaustive-deps: Avoid temporary dependency vector (#26502) (camc314)
    • 4f1627f linter/oxc/branches-sharing-code: Compute deletion spans lazily (#26500) (camc314)
    • c068fd2 linter/react/jsx-curly-brace-presence: Avoid newline position allocation (#26499) (camc314)
    • ed4357c linter/eslint/no-restricted-properties: Skip empty configurations (#26497) (camc314)
    • 92e41b7 linter/oxc/no-barrel-file: Iterate module requests directly (#26498) (camc314)
    • 5255ee3 linter/unicorn/prefer-single-call: Avoid temporary argument vector (#26494) (camc314)
    • 96ef365 linter/unicorn/prefer-includes: Reduce suggestion allocations (#26492) (camc314)
    • a71fd7f linter/unicorn/no-new-buffer: Avoid temporary argument vector (#26491) (camc314)
    • 11085e7 linter/jsdoc/require-yields: Short-circuit JSDoc checks (#26488) (camc314)
    • 9b1aff8 linter/unicorn/no-useless-undefined: Skip calls without trailing undefined (#26481) (camc314)
    • 1e5d5d7 linter/eslint/no-unused-vars: Skip absent global declaration checks (#26457) (camc314)
    • 403f899 linter/eslint/no-undef: Check globals once per unresolved name (#26456) (camc314)
    • 118adb0 linter/eslint/no-restricted-imports: Avoid redundant import scans (#26455) (camc314)
    • ab848f2 linter/eslint/no-useless-assignment: Skip tracking exported symbols (#26449) (camc314)
    • 1b6e409 linter/unicorn/prefer-object-from-entries: Avoid allocating configured paths (#26448) (camc314)
    • 2206875 linter/eslint/new-cap: Avoid unnecessary callee name allocations (#26447) (camc314)

    πŸ“š Documentation

    • b927e0a linter/typescript/await-thenable: Add missing lang for markdown doc comment (#26438) (Ari PerkkiΓΆ)

    Oxfmt

    πŸš€ Features

    • 586f27a formatter_core: Add prefix_align builder and Tag::(Start|End)Prefix (#26520) (leaysgur)
    • dc45cc3 formatter_test: Test Prettier dynamic snippet tests (#26469) (leaysgur)

    πŸ› Bug Fixes

    • d7e0c82 formatter: Keep an enum member's trailing suppress comment (#26549) (leaysgur)
    • d2fe01e formatter: Unify suppress comment behavior (#26547) (leaysgur)
    • d35d89f oxfmt: Skip shutdown delay on fixed Node 24 releases (#26518) (Pablo GarcΓ­a)
    • aef8b4a formatter_css: Handle less-test-suites failures (#26513) (leaysgur)
    • 9dbddca formatter: Keep group flat for own-line comment in JSX (#26475) (leaysgur)
    • d226e6f formatter_yaml: Bump oxc-yaml-parser to 0.0.6 (#26472) (leaysgur)
    • 8b41fc0 formatter_yaml: Clamp tab_width: 0 to 1 to keep semantics (#26471) (leaysgur)
    • dea2ba0 formatter_core: Do not panic with align(0) (#26468) (leaysgur)
    • bf1d3f6 formatter: Check this_param for simple parameters test (#26474) (leaysgur)
    • 33cdc84 formatter: Keep cast-target assignment and commented parameter patterns (#26429) (leaysgur)
    • 876fbe3 oxfmt: Expand Fill parts in tsx-in-vue (#26427) (leaysgur)

    πŸ“š Documentation

    • 66fda4f formatter: Update AGENTS.md comment handling (#26551) (leaysgur)
    • 41abcba formatter: Note why jsx-test-suite snippets stay off (#26515) (leaysgur)
    Original source
  • Sep 14, 2026
    • Date parsed from source:
      Sep 14, 2026
    • First seen by Releasebot:
      Sep 14, 2026
    Oxc logo

    Oxc

    oxc crates_v0.150.0

    Oxc releases parser, codegen, minifier, and TypeScript-focused fixes with new math constant globals, an ascii_only codegen option, better handling of modern syntax, and a set of performance improvements across core tooling.

    πŸš€ Features

    ca649e0 ecma: Define math constants as known globals and resolve their types (#26585) (Armano)

    9ef028c codegen: Add ascii_only option (#25994) (Samuel Attard)

    80a76a0 minifier: Negate binary comparison for typeof x < 'u' (#26367) (Armano)

    πŸ› Bug Fixes

    8ca76da parser: Reject accessor modifiers on methods (#26617) (camc314)

    1916f31 parser: Reject readonly modifier on constructors (#26612) (camc314)

    1c42008 parser: Handle escaped let in for loops (#26583) (camc314)

    d21d5cf parser: Recognize annotated empty arrows in conditionals (#26537) (camc314)

    d7713ad parser: Classify Unicode line breaks in block comments (#26536) (camc314)

    75cd919 transformer: Preserve receivers in private optional chains (#26535) (camc314)

    b32d25d parser: Reject escaped import-phase keywords (#26534) (camc314)

    47b8311 parser: Recognize contextual binding names in type lookaheads (#26532) (camc314)

    d6b6705 parser: Require arrow separator in TypeScript function types (#26529) (camc314)

    e98beef parser: Disambiguate await using in for initializers (#26527) (camc314)

    92afee6 parser: Allow parenthesized JSX comma expressions with preserve_parens=false (#26524) (camc314)

    31508b1 parser: Reject return types on constructor overloads (#26523) (camc314)

    a091fc4 parser: Validate await context for await using declarations (#26495) (camc314)

    5501e86 parser: Disallow in expressions in using for-loop initializers (#26490) (camc314)

    c8e5fa7 parser: Allow escaped type names in import and export specifiers (#26487) (camc314)

    2dcee2f parser: Reject async modifiers on class fields (#26486) (camc314)

    973d58e parser: Require comma after TypeScript this parameter (#26480) (camc314)

    32d00c5 codegen: Preserve instantiation expression precedence (#26424) (camc314)

    cfa47ab parser: Allow in expressions in class static blocks (#26423) (camc314)

    5986187 packages/codegen: Preserve private-in right operand precedence (#26420) (camc314)

    f8e6c6c packages/codegen: Preserve in restriction through yield arguments (#26421) (camc314)

    d61e3bf parser: Validate TS named tuple rest elements (#26419) (camc314)

    ae6c386 codegen: Preserve in restriction through yield arguments (#26413) (camc314)

    42ac916 codegen: Preserve private-in right operand precedence (#26411) (camc314)

    10521b2 parser: Allow escaped type default import bindings (#26409) (camc314)

    72cb5e3 parser: Reject rest parameters in getters (#26400) (camc314)

    6e15ad5 packages/codegen: Print matching quoted import names as identifiers (#26404) (camc314)

    bbbb4bc packages/codegen: Preserve private-in left operand precedence (#26403) (camc314)

    a111b5b packages/codegen: Print accessibility modifiers before abstract (#26402) (camc314)

    4e76602 parser: Allow in in arrow block bodies within for initializers (#26395) (camc314)

    b20fc19 parser: Reject partially parenthesized mixed coalesce expressions (#26394) (camc314)

    ⚑ Performance

    1f902a6 isolated_declarations: Key scope maps by Ident (#26380) (Dunqing)

    a242469 minfiier: Reduce allocs when creating indirect access (#26601) (Armano)

    5b4787f minifier: Update chain expressions in place (#26544) (Armano)

    0bc1661 minifier: Try merging before creating new expression statements (#26556) (Armano)

    c78d707 minifier: Process newly created stmt in handle_if_statement (#26541) (Armano)

    029c84b minfier: Update expressions in place when substituting alternate syntax (#26460) (Armano)

    d198982 codegen: Outline postfix source mapping work (#26450) (camc314)

    53f006e ecmascript: Format small integer literals with itoa (#26446) (camc314)

    8bfb8c0 codegen: Avoid duplicate sourcemap name lookups (#26441) (camc314)

    πŸ“š Documentation

    38533ac ast: Move type annotation span comment to span field (#26522) (camc314)

    Original source
Releasebot

Curated by the Releasebot team

Releasebot is an aggregator of official release notes from hundreds of software vendors and thousands of sources.

Our editorial process involves the manual review and audit of release notes procured with the help of automated systems.