Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Tags: tt-a1i/oxc

Tags

oxlint_v1.32.0

Toggle oxlint_v1.32.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.32.0 && oxfmt v0.17.0 (oxc-project#16596)

# Oxlint
### 🚀 Features

- 5c62c16 linter/plugins: Allow JS plugins to access `globals` (oxc-project#16512)
(Arsh)
- ba7bd51 linter: Implement no-useless-return rule (oxc-project#16388) (FMP1783)
- fa605df linter: Fix `arrow-body-style` automatically (oxc-project#16252) (Hamir
Mahal)
- 7584938 linter/plugins: Add ESLint compat mode to `RuleTester`
(oxc-project#16538) (overlookmotel)
- b38c2d0 linter/plugins: Add `SourceCode#lineStartIndices` getter
(oxc-project#16510) (overlookmotel)
- ba93ffc linter/plugins: Add `SourceCode#tokensAndComments` getter
(oxc-project#16503) (overlookmotel)
- d2ca540 linter/plugins: Add `SourceCode#isESTree` property (oxc-project#16499)
(overlookmotel)
- 9001234 linter: Add fix support for tsgolint diagnostics (oxc-project#16344)
(camc314)
- 2d6bb85 editors: Toggle client after vscode config changing (oxc-project#16162)
(Liang Mi)
- 0ec454c linter/plugins: Merge default options into options (oxc-project#16358)
(overlookmotel)

### 🐛 Bug Fixes

- a806d74 linter: Use import type for ESTree in visitor.d.ts (oxc-project#16472)
(camc314)
- 8933c84 linter: Fix jest/expect-expect rule docs. (oxc-project#16550)
(connorshea)
- 1c08879 linter: Fix false positive in no-invalid-fetch-options for
conditional expressions (oxc-project#16570) (camc314)
- 1a69b06 linter: Junit support for multiple files/errors/diagnostics
(oxc-project#16568) (Shrey Sudhir)
- a7d435b linter/sort-keys: Preserve multi-line formatting in autofix
(oxc-project#16563) (camc314)
- fd84dcc linter/plugins: `RuleTester` parser catch fatal errors
(oxc-project#16558) (overlookmotel)
- ab4deb0 linter/plugins: Improve safety of options merging (oxc-project#16549)
(overlookmotel)
- a58c76a linter: Fix the `react/jsx-fragments` rule config to take a
string argument (oxc-project#16175) (connorshea)
- f7751cc linter/plugins: Fix TS types for `RuleTester` (oxc-project#16546)
(overlookmotel)
- 6d33320 linter/plugins: Prevent user modifying the default config
(oxc-project#16545) (overlookmotel)
- b4483c5 linter/plugins: Add config support skeleton to `RuleTester`
(oxc-project#16537) (overlookmotel)
- 3a49158 linter/plugins: Improve TS types for tokens (oxc-project#16502)
(overlookmotel)
- 0c14531 oxlint/lsp: Revalidate all known files after internal restart
(oxc-project#16407) (Sysix)
- 2d3217e linter/plugins: Remove panics from `lint_file` and
`setup_configs` (oxc-project#16453) (overlookmotel)
- 655341b linter/oxc: Not emit error when the threshold is zero and we
haven't detected a barrel file (oxc-project#16455) (Said Atrahouch)
- b9f359f linter/no-var: Expand fix span to prevent conflicts with other
rules (oxc-project#16445) (camc314)
- c6778f3 linter: Preserve original quote style in no-hex-escape fixer
(oxc-project#16410) (camc314)
- 3ad913b linter: Improve rule docs page autofix description (oxc-project#16281)
(Hamir Mahal)
- 0b7e00c linter: Handle keyword unary expressions in yoda rule fix
(oxc-project#16402) (camc314)
- 5fd3096 lsp: Skip (un)registering file watcher when not dynamic
watchers are supported (oxc-project#16406) (Sysix)
- 804144f lsp: Respect `null` as invalid settings for
`workspace/didChangeConfiguration` (oxc-project#16361) (Sysix)
- 723a7e5 linter: Prevent invalid BigInt literal fix for exponential
notation (oxc-project#16401) (camc314)
- 2589fb1 linter: Fix prefer_expect_resolves fixer for member
expressions (oxc-project#16393) (camc314)
- 428c7cd linter: Wrap logical expressions in parentheses when fixing
no-extra-boolean-cast (oxc-project#16363) (camc314)
- 3903567 linter: Skip prefer-string-raw in type annotations and .d.ts
files (oxc-project#16382) (camc314)
- d490daa linter/func-names: Use centralized reserved keyword check and
fix ancestor traversal (oxc-project#16362) (camc314)
- d846c53 tsgolint: Use `expect` when sending diagnostics (oxc-project#16341)
(camc314)
- 114665d lsp: Watch for files when workspace folder is added &
`workspace/configuration` is not supported (oxc-project#16307) (Sysix)
- f5d0ebb linter/func-names: Avoid suggesting reserved keywords as
function names (oxc-project#16352) (camc314)
- d268135 linter/no-console-spaces: Preserve escape sequences in fixer
output (oxc-project#16349) (camc314)
- b02c21a linter/valid-title: Preserve escape sequences in fixer output
(oxc-project#16348) (camc314)
- 2373b76 linter/no-untyped-mock-factory: Fix fixer producing invalid
syntax when newline exists after opening paren (oxc-project#16351) (camc314)

### ⚡ Performance

- 67cfa58 lsp: Avoid some clones (oxc-project#16519) (Sysix)
- 2a09665 oxlint/lsp: Store only `LinterCodeAction` instead of the
complete `DiagnosticReport` (oxc-project#16516) (Sysix)
- 0ca9754 lsp: Avoid `Uri` to `String` and back to `Uri` conversion
(oxc-project#16470) (Sysix)
- 2736636 lsp: Avoid cloning when revalidating diagnostics (oxc-project#16469)
(Sysix)
- 793b989 linter/plugins: Move result-processing work off main JS thread
(oxc-project#16456) (overlookmotel)
- 44dff7b linter/plugins: Skip serialization overhead when no errors
(oxc-project#16443) (overlookmotel)
- 1aa2409 linter/plugins: Do not remove `messageId` field from
`DiagnosticReport` before sending to Rust (oxc-project#16442) (overlookmotel)
- 5017db8 linter/plugins: Reduce calls to `Path::to_string_lossy`
(oxc-project#16429) (overlookmotel)
- 194e357 linter: Use `SmallVec` for rule options (oxc-project#16400) (Copilot)
- e31b2bd linter: Only clone config if required (oxc-project#16350) (overlookmotel)
- 3026086 linter: Avoid cloning rule options (oxc-project#16338) (overlookmotel)

### 📚 Documentation

- fef77af linter: Fix `jsx-a11y/img-redundant-alt` configuration option
names. (oxc-project#16552) (connorshea)
- c0766df linter: Add config option docs for `unicorn/filename-case`
rule. (oxc-project#16280) (connorshea)
- e24aabd linter/plugins: Correct comment (oxc-project#16559) (overlookmotel)
- 514c724 linter: Fix the name of the IIFEs config option in
eslint/max-lines-per-function (oxc-project#16554) (connorshea)
- 4d94438 linter/rules: Correct arrow body style options in
documentation (oxc-project#16509) (GRK)
- 6bac4ec linter: Pull configuration struct doc comment when rendering
config docs (oxc-project#16288) (connorshea)
- 8c85e08 linter/plugins: Add TODO comment (oxc-project#16511) (overlookmotel)
- a9b9298 linter/plugins: Add JSDoc comments to `SourceCode` properties
(oxc-project#16497) (overlookmotel)
- 467cc1a linter/plugins: Improve comment on error branch (oxc-project#16464)
(overlookmotel)
- 041b119 linter: Add config option docs to `jest/consistent-test-it`
rule. (oxc-project#16286) (connorshea)

### 🛡️ Security

- d90ef9f deps: Update dependency rolldown to v1.0.0-beta.53 (oxc-project#16428)
(renovate[bot])
# Oxfmt
### 🚀 Features

- 3184f17 oxfmt: Pass filepath field to prettier formatting (oxc-project#16591)
(Yuji Sugiura)
- 7bb3304 oxfmt: Pass populated config to prettier formatting (oxc-project#16584)
(leaysgur)
- 69f84d2 oxfmt: Pass raw config to prettier formatting (oxc-project#16582)
(leaysgur)
- a83a2ec oxfmt: Expose `setupConfig(configJSON: string)` napi callback
(oxc-project#16579) (leaysgur)
- 930533f formatter: Convert single `\r` to `\n` in string and add a
debug assertion to ensure that there is no `\r` in the text (oxc-project#16531)
(Dunqing)
- af76b0e oxfmt: Support formatting HTML, YAML, GraphQL, Handlerbars,
Markdown, CSS files (oxc-project#16524) (leaysgur)
- 66b64ef oxfmt: Support formatting JSON files (oxc-project#16523) (leaysgur)
- 4767926 oxfmt: Prepare non-js/ts file support with prettier (oxc-project#16480)
(leaysgur)
- 2b4ce5d oxfmt: Use dedicated `format_by_xxx_formatter` method by
`SourceType` (oxc-project#16417) (leaysgur)
- 0867d2f oxfmt: Set up JS `formatFile()` function for Rust via napi
(oxc-project#16415) (leaysgur)
- b6feb66 oxfmt: Rename `embedded.ts` with preparing `formatFile()`
function (oxc-project#16414) (leaysgur)
- 80e6999 formatter: Add debug assertion to ensure that there is no
empty content is passed in (oxc-project#16475) (Dunqing)
- 7374856 formatter/sort-imports: Support `options.internalPattern`
(oxc-project#16372) (leaysgur)
- dd2cb62 oxfmt: Not error on explicit `--write` flag used (oxc-project#16376)
(leaysgur)

### 🐛 Bug Fixes

- 40b0134 formatter: Incorrect formatting of `useImperativeHandle` hook
(oxc-project#16533) (Dunqing)
- 75393e7 formatter: Incorrect handling of `CRLF` for multiline block
comment (oxc-project#16528) (Dunqing)
- ee0756b formatter: JSX text wrapping incorrect 2 (oxc-project#16320) (Dunqing)
- 36308b8 formatter: Fix indent for new expression with type cast
(oxc-project#16380) (leaysgur)

### ⚡ Performance

- 6f16a8f formatter: Avoid using an indent with a empty content (oxc-project#16474)
(Dunqing)
- 201c98f formatter: Early return when no comments need to be printed
(oxc-project#16432) (Dunqing)

Co-authored-by: Boshen <[email protected]>

oxfmt_v0.17.0

Toggle oxfmt_v0.17.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.32.0 && oxfmt v0.17.0 (oxc-project#16596)

# Oxlint
### 🚀 Features

- 5c62c16 linter/plugins: Allow JS plugins to access `globals` (oxc-project#16512)
(Arsh)
- ba7bd51 linter: Implement no-useless-return rule (oxc-project#16388) (FMP1783)
- fa605df linter: Fix `arrow-body-style` automatically (oxc-project#16252) (Hamir
Mahal)
- 7584938 linter/plugins: Add ESLint compat mode to `RuleTester`
(oxc-project#16538) (overlookmotel)
- b38c2d0 linter/plugins: Add `SourceCode#lineStartIndices` getter
(oxc-project#16510) (overlookmotel)
- ba93ffc linter/plugins: Add `SourceCode#tokensAndComments` getter
(oxc-project#16503) (overlookmotel)
- d2ca540 linter/plugins: Add `SourceCode#isESTree` property (oxc-project#16499)
(overlookmotel)
- 9001234 linter: Add fix support for tsgolint diagnostics (oxc-project#16344)
(camc314)
- 2d6bb85 editors: Toggle client after vscode config changing (oxc-project#16162)
(Liang Mi)
- 0ec454c linter/plugins: Merge default options into options (oxc-project#16358)
(overlookmotel)

### 🐛 Bug Fixes

- a806d74 linter: Use import type for ESTree in visitor.d.ts (oxc-project#16472)
(camc314)
- 8933c84 linter: Fix jest/expect-expect rule docs. (oxc-project#16550)
(connorshea)
- 1c08879 linter: Fix false positive in no-invalid-fetch-options for
conditional expressions (oxc-project#16570) (camc314)
- 1a69b06 linter: Junit support for multiple files/errors/diagnostics
(oxc-project#16568) (Shrey Sudhir)
- a7d435b linter/sort-keys: Preserve multi-line formatting in autofix
(oxc-project#16563) (camc314)
- fd84dcc linter/plugins: `RuleTester` parser catch fatal errors
(oxc-project#16558) (overlookmotel)
- ab4deb0 linter/plugins: Improve safety of options merging (oxc-project#16549)
(overlookmotel)
- a58c76a linter: Fix the `react/jsx-fragments` rule config to take a
string argument (oxc-project#16175) (connorshea)
- f7751cc linter/plugins: Fix TS types for `RuleTester` (oxc-project#16546)
(overlookmotel)
- 6d33320 linter/plugins: Prevent user modifying the default config
(oxc-project#16545) (overlookmotel)
- b4483c5 linter/plugins: Add config support skeleton to `RuleTester`
(oxc-project#16537) (overlookmotel)
- 3a49158 linter/plugins: Improve TS types for tokens (oxc-project#16502)
(overlookmotel)
- 0c14531 oxlint/lsp: Revalidate all known files after internal restart
(oxc-project#16407) (Sysix)
- 2d3217e linter/plugins: Remove panics from `lint_file` and
`setup_configs` (oxc-project#16453) (overlookmotel)
- 655341b linter/oxc: Not emit error when the threshold is zero and we
haven't detected a barrel file (oxc-project#16455) (Said Atrahouch)
- b9f359f linter/no-var: Expand fix span to prevent conflicts with other
rules (oxc-project#16445) (camc314)
- c6778f3 linter: Preserve original quote style in no-hex-escape fixer
(oxc-project#16410) (camc314)
- 3ad913b linter: Improve rule docs page autofix description (oxc-project#16281)
(Hamir Mahal)
- 0b7e00c linter: Handle keyword unary expressions in yoda rule fix
(oxc-project#16402) (camc314)
- 5fd3096 lsp: Skip (un)registering file watcher when not dynamic
watchers are supported (oxc-project#16406) (Sysix)
- 804144f lsp: Respect `null` as invalid settings for
`workspace/didChangeConfiguration` (oxc-project#16361) (Sysix)
- 723a7e5 linter: Prevent invalid BigInt literal fix for exponential
notation (oxc-project#16401) (camc314)
- 2589fb1 linter: Fix prefer_expect_resolves fixer for member
expressions (oxc-project#16393) (camc314)
- 428c7cd linter: Wrap logical expressions in parentheses when fixing
no-extra-boolean-cast (oxc-project#16363) (camc314)
- 3903567 linter: Skip prefer-string-raw in type annotations and .d.ts
files (oxc-project#16382) (camc314)
- d490daa linter/func-names: Use centralized reserved keyword check and
fix ancestor traversal (oxc-project#16362) (camc314)
- d846c53 tsgolint: Use `expect` when sending diagnostics (oxc-project#16341)
(camc314)
- 114665d lsp: Watch for files when workspace folder is added &
`workspace/configuration` is not supported (oxc-project#16307) (Sysix)
- f5d0ebb linter/func-names: Avoid suggesting reserved keywords as
function names (oxc-project#16352) (camc314)
- d268135 linter/no-console-spaces: Preserve escape sequences in fixer
output (oxc-project#16349) (camc314)
- b02c21a linter/valid-title: Preserve escape sequences in fixer output
(oxc-project#16348) (camc314)
- 2373b76 linter/no-untyped-mock-factory: Fix fixer producing invalid
syntax when newline exists after opening paren (oxc-project#16351) (camc314)

### ⚡ Performance

- 67cfa58 lsp: Avoid some clones (oxc-project#16519) (Sysix)
- 2a09665 oxlint/lsp: Store only `LinterCodeAction` instead of the
complete `DiagnosticReport` (oxc-project#16516) (Sysix)
- 0ca9754 lsp: Avoid `Uri` to `String` and back to `Uri` conversion
(oxc-project#16470) (Sysix)
- 2736636 lsp: Avoid cloning when revalidating diagnostics (oxc-project#16469)
(Sysix)
- 793b989 linter/plugins: Move result-processing work off main JS thread
(oxc-project#16456) (overlookmotel)
- 44dff7b linter/plugins: Skip serialization overhead when no errors
(oxc-project#16443) (overlookmotel)
- 1aa2409 linter/plugins: Do not remove `messageId` field from
`DiagnosticReport` before sending to Rust (oxc-project#16442) (overlookmotel)
- 5017db8 linter/plugins: Reduce calls to `Path::to_string_lossy`
(oxc-project#16429) (overlookmotel)
- 194e357 linter: Use `SmallVec` for rule options (oxc-project#16400) (Copilot)
- e31b2bd linter: Only clone config if required (oxc-project#16350) (overlookmotel)
- 3026086 linter: Avoid cloning rule options (oxc-project#16338) (overlookmotel)

### 📚 Documentation

- fef77af linter: Fix `jsx-a11y/img-redundant-alt` configuration option
names. (oxc-project#16552) (connorshea)
- c0766df linter: Add config option docs for `unicorn/filename-case`
rule. (oxc-project#16280) (connorshea)
- e24aabd linter/plugins: Correct comment (oxc-project#16559) (overlookmotel)
- 514c724 linter: Fix the name of the IIFEs config option in
eslint/max-lines-per-function (oxc-project#16554) (connorshea)
- 4d94438 linter/rules: Correct arrow body style options in
documentation (oxc-project#16509) (GRK)
- 6bac4ec linter: Pull configuration struct doc comment when rendering
config docs (oxc-project#16288) (connorshea)
- 8c85e08 linter/plugins: Add TODO comment (oxc-project#16511) (overlookmotel)
- a9b9298 linter/plugins: Add JSDoc comments to `SourceCode` properties
(oxc-project#16497) (overlookmotel)
- 467cc1a linter/plugins: Improve comment on error branch (oxc-project#16464)
(overlookmotel)
- 041b119 linter: Add config option docs to `jest/consistent-test-it`
rule. (oxc-project#16286) (connorshea)

### 🛡️ Security

- d90ef9f deps: Update dependency rolldown to v1.0.0-beta.53 (oxc-project#16428)
(renovate[bot])
# Oxfmt
### 🚀 Features

- 3184f17 oxfmt: Pass filepath field to prettier formatting (oxc-project#16591)
(Yuji Sugiura)
- 7bb3304 oxfmt: Pass populated config to prettier formatting (oxc-project#16584)
(leaysgur)
- 69f84d2 oxfmt: Pass raw config to prettier formatting (oxc-project#16582)
(leaysgur)
- a83a2ec oxfmt: Expose `setupConfig(configJSON: string)` napi callback
(oxc-project#16579) (leaysgur)
- 930533f formatter: Convert single `\r` to `\n` in string and add a
debug assertion to ensure that there is no `\r` in the text (oxc-project#16531)
(Dunqing)
- af76b0e oxfmt: Support formatting HTML, YAML, GraphQL, Handlerbars,
Markdown, CSS files (oxc-project#16524) (leaysgur)
- 66b64ef oxfmt: Support formatting JSON files (oxc-project#16523) (leaysgur)
- 4767926 oxfmt: Prepare non-js/ts file support with prettier (oxc-project#16480)
(leaysgur)
- 2b4ce5d oxfmt: Use dedicated `format_by_xxx_formatter` method by
`SourceType` (oxc-project#16417) (leaysgur)
- 0867d2f oxfmt: Set up JS `formatFile()` function for Rust via napi
(oxc-project#16415) (leaysgur)
- b6feb66 oxfmt: Rename `embedded.ts` with preparing `formatFile()`
function (oxc-project#16414) (leaysgur)
- 80e6999 formatter: Add debug assertion to ensure that there is no
empty content is passed in (oxc-project#16475) (Dunqing)
- 7374856 formatter/sort-imports: Support `options.internalPattern`
(oxc-project#16372) (leaysgur)
- dd2cb62 oxfmt: Not error on explicit `--write` flag used (oxc-project#16376)
(leaysgur)

### 🐛 Bug Fixes

- 40b0134 formatter: Incorrect formatting of `useImperativeHandle` hook
(oxc-project#16533) (Dunqing)
- 75393e7 formatter: Incorrect handling of `CRLF` for multiline block
comment (oxc-project#16528) (Dunqing)
- ee0756b formatter: JSX text wrapping incorrect 2 (oxc-project#16320) (Dunqing)
- 36308b8 formatter: Fix indent for new expression with type cast
(oxc-project#16380) (leaysgur)

### ⚡ Performance

- 6f16a8f formatter: Avoid using an indent with a empty content (oxc-project#16474)
(Dunqing)
- 201c98f formatter: Early return when no comments need to be printed
(oxc-project#16432) (Dunqing)

Co-authored-by: Boshen <[email protected]>

crates_v0.102.0

Toggle crates_v0.102.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(crates): oxc v0.102.0 (oxc-project#16595)

### 💥 BREAKING CHANGES

- 083fea9 napi/parser: [**BREAKING**] Represent empty optional fields on
JS side as `null` (oxc-project#16411) (overlookmotel)

### 🚀 Features

- 7a2afee parser: Add TS1174 error for classes extending multiple base
classes (oxc-project#15993) (sapphi-red)
- da87812 semantic: Add TS2309 error for export assignment with other
exports (oxc-project#15992) (sapphi-red)
- d6d2bcd minifier: Remove unused function calls that are marked by
`manual_pure_functions` (oxc-project#16534) (sapphi-red)
- c90f053 minifier: Support `.` separated values for
`compress.treeshake.manualPureFunctions` (oxc-project#16529) (sapphi-red)
- a607cc4 codegen: Preserve comments between CatchClause's param and
body (oxc-project#16167) (copilot-swe-agent)
- 8c10694 semantic: Expose get_comment_at method (oxc-project#16439) (camc314)
- 3981e7a ast: Add get_comment_at to lookup a comment by span (oxc-project#16438)
(camc314)

### 🐛 Bug Fixes

- 699406a napi/parser: Move `ExportEntry::module_request` field to first
(oxc-project#16412) (overlookmotel)
- 12bd794 napi/parser: Move `ExportEntry::module_request` field to last
(oxc-project#16403) (overlookmotel)

### ⚡ Performance

- 790beeb napi/parser: Do not remove extraneous options on JS side
(oxc-project#16447) (overlookmotel)

Co-authored-by: Boshen <[email protected]>

apps_v1.32.0

Toggle apps_v1.32.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.32.0 && oxfmt v0.17.0 (oxc-project#16596)

# Oxlint
### 🚀 Features

- 5c62c16 linter/plugins: Allow JS plugins to access `globals` (oxc-project#16512)
(Arsh)
- ba7bd51 linter: Implement no-useless-return rule (oxc-project#16388) (FMP1783)
- fa605df linter: Fix `arrow-body-style` automatically (oxc-project#16252) (Hamir
Mahal)
- 7584938 linter/plugins: Add ESLint compat mode to `RuleTester`
(oxc-project#16538) (overlookmotel)
- b38c2d0 linter/plugins: Add `SourceCode#lineStartIndices` getter
(oxc-project#16510) (overlookmotel)
- ba93ffc linter/plugins: Add `SourceCode#tokensAndComments` getter
(oxc-project#16503) (overlookmotel)
- d2ca540 linter/plugins: Add `SourceCode#isESTree` property (oxc-project#16499)
(overlookmotel)
- 9001234 linter: Add fix support for tsgolint diagnostics (oxc-project#16344)
(camc314)
- 2d6bb85 editors: Toggle client after vscode config changing (oxc-project#16162)
(Liang Mi)
- 0ec454c linter/plugins: Merge default options into options (oxc-project#16358)
(overlookmotel)

### 🐛 Bug Fixes

- a806d74 linter: Use import type for ESTree in visitor.d.ts (oxc-project#16472)
(camc314)
- 8933c84 linter: Fix jest/expect-expect rule docs. (oxc-project#16550)
(connorshea)
- 1c08879 linter: Fix false positive in no-invalid-fetch-options for
conditional expressions (oxc-project#16570) (camc314)
- 1a69b06 linter: Junit support for multiple files/errors/diagnostics
(oxc-project#16568) (Shrey Sudhir)
- a7d435b linter/sort-keys: Preserve multi-line formatting in autofix
(oxc-project#16563) (camc314)
- fd84dcc linter/plugins: `RuleTester` parser catch fatal errors
(oxc-project#16558) (overlookmotel)
- ab4deb0 linter/plugins: Improve safety of options merging (oxc-project#16549)
(overlookmotel)
- a58c76a linter: Fix the `react/jsx-fragments` rule config to take a
string argument (oxc-project#16175) (connorshea)
- f7751cc linter/plugins: Fix TS types for `RuleTester` (oxc-project#16546)
(overlookmotel)
- 6d33320 linter/plugins: Prevent user modifying the default config
(oxc-project#16545) (overlookmotel)
- b4483c5 linter/plugins: Add config support skeleton to `RuleTester`
(oxc-project#16537) (overlookmotel)
- 3a49158 linter/plugins: Improve TS types for tokens (oxc-project#16502)
(overlookmotel)
- 0c14531 oxlint/lsp: Revalidate all known files after internal restart
(oxc-project#16407) (Sysix)
- 2d3217e linter/plugins: Remove panics from `lint_file` and
`setup_configs` (oxc-project#16453) (overlookmotel)
- 655341b linter/oxc: Not emit error when the threshold is zero and we
haven't detected a barrel file (oxc-project#16455) (Said Atrahouch)
- b9f359f linter/no-var: Expand fix span to prevent conflicts with other
rules (oxc-project#16445) (camc314)
- c6778f3 linter: Preserve original quote style in no-hex-escape fixer
(oxc-project#16410) (camc314)
- 3ad913b linter: Improve rule docs page autofix description (oxc-project#16281)
(Hamir Mahal)
- 0b7e00c linter: Handle keyword unary expressions in yoda rule fix
(oxc-project#16402) (camc314)
- 5fd3096 lsp: Skip (un)registering file watcher when not dynamic
watchers are supported (oxc-project#16406) (Sysix)
- 804144f lsp: Respect `null` as invalid settings for
`workspace/didChangeConfiguration` (oxc-project#16361) (Sysix)
- 723a7e5 linter: Prevent invalid BigInt literal fix for exponential
notation (oxc-project#16401) (camc314)
- 2589fb1 linter: Fix prefer_expect_resolves fixer for member
expressions (oxc-project#16393) (camc314)
- 428c7cd linter: Wrap logical expressions in parentheses when fixing
no-extra-boolean-cast (oxc-project#16363) (camc314)
- 3903567 linter: Skip prefer-string-raw in type annotations and .d.ts
files (oxc-project#16382) (camc314)
- d490daa linter/func-names: Use centralized reserved keyword check and
fix ancestor traversal (oxc-project#16362) (camc314)
- d846c53 tsgolint: Use `expect` when sending diagnostics (oxc-project#16341)
(camc314)
- 114665d lsp: Watch for files when workspace folder is added &
`workspace/configuration` is not supported (oxc-project#16307) (Sysix)
- f5d0ebb linter/func-names: Avoid suggesting reserved keywords as
function names (oxc-project#16352) (camc314)
- d268135 linter/no-console-spaces: Preserve escape sequences in fixer
output (oxc-project#16349) (camc314)
- b02c21a linter/valid-title: Preserve escape sequences in fixer output
(oxc-project#16348) (camc314)
- 2373b76 linter/no-untyped-mock-factory: Fix fixer producing invalid
syntax when newline exists after opening paren (oxc-project#16351) (camc314)

### ⚡ Performance

- 67cfa58 lsp: Avoid some clones (oxc-project#16519) (Sysix)
- 2a09665 oxlint/lsp: Store only `LinterCodeAction` instead of the
complete `DiagnosticReport` (oxc-project#16516) (Sysix)
- 0ca9754 lsp: Avoid `Uri` to `String` and back to `Uri` conversion
(oxc-project#16470) (Sysix)
- 2736636 lsp: Avoid cloning when revalidating diagnostics (oxc-project#16469)
(Sysix)
- 793b989 linter/plugins: Move result-processing work off main JS thread
(oxc-project#16456) (overlookmotel)
- 44dff7b linter/plugins: Skip serialization overhead when no errors
(oxc-project#16443) (overlookmotel)
- 1aa2409 linter/plugins: Do not remove `messageId` field from
`DiagnosticReport` before sending to Rust (oxc-project#16442) (overlookmotel)
- 5017db8 linter/plugins: Reduce calls to `Path::to_string_lossy`
(oxc-project#16429) (overlookmotel)
- 194e357 linter: Use `SmallVec` for rule options (oxc-project#16400) (Copilot)
- e31b2bd linter: Only clone config if required (oxc-project#16350) (overlookmotel)
- 3026086 linter: Avoid cloning rule options (oxc-project#16338) (overlookmotel)

### 📚 Documentation

- fef77af linter: Fix `jsx-a11y/img-redundant-alt` configuration option
names. (oxc-project#16552) (connorshea)
- c0766df linter: Add config option docs for `unicorn/filename-case`
rule. (oxc-project#16280) (connorshea)
- e24aabd linter/plugins: Correct comment (oxc-project#16559) (overlookmotel)
- 514c724 linter: Fix the name of the IIFEs config option in
eslint/max-lines-per-function (oxc-project#16554) (connorshea)
- 4d94438 linter/rules: Correct arrow body style options in
documentation (oxc-project#16509) (GRK)
- 6bac4ec linter: Pull configuration struct doc comment when rendering
config docs (oxc-project#16288) (connorshea)
- 8c85e08 linter/plugins: Add TODO comment (oxc-project#16511) (overlookmotel)
- a9b9298 linter/plugins: Add JSDoc comments to `SourceCode` properties
(oxc-project#16497) (overlookmotel)
- 467cc1a linter/plugins: Improve comment on error branch (oxc-project#16464)
(overlookmotel)
- 041b119 linter: Add config option docs to `jest/consistent-test-it`
rule. (oxc-project#16286) (connorshea)

### 🛡️ Security

- d90ef9f deps: Update dependency rolldown to v1.0.0-beta.53 (oxc-project#16428)
(renovate[bot])
# Oxfmt
### 🚀 Features

- 3184f17 oxfmt: Pass filepath field to prettier formatting (oxc-project#16591)
(Yuji Sugiura)
- 7bb3304 oxfmt: Pass populated config to prettier formatting (oxc-project#16584)
(leaysgur)
- 69f84d2 oxfmt: Pass raw config to prettier formatting (oxc-project#16582)
(leaysgur)
- a83a2ec oxfmt: Expose `setupConfig(configJSON: string)` napi callback
(oxc-project#16579) (leaysgur)
- 930533f formatter: Convert single `\r` to `\n` in string and add a
debug assertion to ensure that there is no `\r` in the text (oxc-project#16531)
(Dunqing)
- af76b0e oxfmt: Support formatting HTML, YAML, GraphQL, Handlerbars,
Markdown, CSS files (oxc-project#16524) (leaysgur)
- 66b64ef oxfmt: Support formatting JSON files (oxc-project#16523) (leaysgur)
- 4767926 oxfmt: Prepare non-js/ts file support with prettier (oxc-project#16480)
(leaysgur)
- 2b4ce5d oxfmt: Use dedicated `format_by_xxx_formatter` method by
`SourceType` (oxc-project#16417) (leaysgur)
- 0867d2f oxfmt: Set up JS `formatFile()` function for Rust via napi
(oxc-project#16415) (leaysgur)
- b6feb66 oxfmt: Rename `embedded.ts` with preparing `formatFile()`
function (oxc-project#16414) (leaysgur)
- 80e6999 formatter: Add debug assertion to ensure that there is no
empty content is passed in (oxc-project#16475) (Dunqing)
- 7374856 formatter/sort-imports: Support `options.internalPattern`
(oxc-project#16372) (leaysgur)
- dd2cb62 oxfmt: Not error on explicit `--write` flag used (oxc-project#16376)
(leaysgur)

### 🐛 Bug Fixes

- 40b0134 formatter: Incorrect formatting of `useImperativeHandle` hook
(oxc-project#16533) (Dunqing)
- 75393e7 formatter: Incorrect handling of `CRLF` for multiline block
comment (oxc-project#16528) (Dunqing)
- ee0756b formatter: JSX text wrapping incorrect 2 (oxc-project#16320) (Dunqing)
- 36308b8 formatter: Fix indent for new expression with type cast
(oxc-project#16380) (leaysgur)

### ⚡ Performance

- 6f16a8f formatter: Avoid using an indent with a empty content (oxc-project#16474)
(Dunqing)
- 201c98f formatter: Early return when no comments need to be printed
(oxc-project#16432) (Dunqing)

Co-authored-by: Boshen <[email protected]>

crates_v0.101.0

Toggle crates_v0.101.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(crates): oxc v0.101.0 (oxc-project#16381)

oxlint_v1.31.0

Toggle oxlint_v1.31.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.31.0 && oxfmt v0.16.0 (oxc-project#16333)

# Oxlint

### 🚀 Features

- 5da1a63 linter/plugins: Introduce `RuleTester` (oxc-project#16206)
(overlookmotel)
- 41129ab linter/plugins: Implement `languageOptions.parser` (oxc-project#16292)
(overlookmotel)
- 4b24825 linter: Implement no-restricted-types rule (oxc-project#16276) (camc314)
- 7150209 linter/plugins: Implement `SourceCode#getNodeByRangeIndex`
(oxc-project#16256) (overlookmotel)
- 3226864 linter/plugins: Implement options merging (oxc-project#16217)
(overlookmotel)
- cbb108a linter/plugins: Support default options (oxc-project#16170)
(overlookmotel)
- 04a3a66 linter/plugins: Implement
`SourceCode#getTokenOrCommentAfter()` (oxc-project#16045) (Arsh)
- 68b63d9 linter/plugins: Implement
`SourceCode#getTokenOrCommentBefore()` (oxc-project#16044) (Arsh)
- 04d9454 linter/plugins: Implement `SourceCode#getTokenByRangeStart()`
(oxc-project#16043) (Arsh)
- 7b8d578 linter/plugins: Implement `SourceCode#getTokensBetween()`
(oxc-project#16034) (Arsh)
- 79c242f linter/plugins: Implement `SourceCode#getLastTokensBetween()`
(oxc-project#16033) (Arsh)
- 1772078 linter/plugins: Implement `SourceCode#getFirstTokenBetween()`
(oxc-project#16032) (Arsh)
- 21bb86d linter/plugins: Implement `SourceCode#getFirstTokensBetween()`
(oxc-project#16019) (Arsh)
- 78f74b1 linter/plugins: Implement `SourceCode#getLastTokenBetween()`
(oxc-project#16008) (Arsh)
- df0b948 linter/plugins: Implement `SourceCode#getLastToken()` (oxc-project#16003)
(Arsh)

### 🐛 Bug Fixes

- cf249f5 linter/plugins: Fix message interpolation (oxc-project#16300)
(overlookmotel)
- 9149a26 linter/plugins, napi/parser: Deep freeze visitor keys (oxc-project#16293)
(overlookmotel)
- 71271ee linter: Fix `typescript/no-empty-interface` config option
casing. (oxc-project#16282) (connorshea)
- 653fa6c oxlint/oxfmt/lsp: Tell client the real tool name & version
(oxc-project#16212) (Sysix)
- 385e13e linter: Support both prefer-inline and preferInline for
import/no-duplicates (oxc-project#16275) (copilot-swe-agent)
- efc08d3 linter: Fix config docs for no-return-assign and unicode-bom
rules. (oxc-project#16260) (connorshea)
- dc96d3f linter: Correct docs to use string option for import/first
rule. (oxc-project#16264) (connorshea)
- 15ce491 linter: Correct the default config options for the
switch-exhaustiveness-check rule. (oxc-project#16268) (connorshea)
- 13f985c linter: Fix casing for unicorn/explicit-length-check config
option. (oxc-project#16269) (connorshea)
- 0df1901 linter/plugins: Reset state after error during AST visitation
(oxc-project#16246) (overlookmotel)
- 42e9dcc linter: Fix docs for `consistent-type-specifier-style` and
`consistent-type-definitions` rules. (oxc-project#16253) (connorshea)
- 505ceb1 linter: Fix the radix rule docs to correctly render as a
string-only config option (oxc-project#16248) (connorshea)
- 135cee6 oxlint/lsp: Run diagnostics after delayed worker
initialization (oxc-project#16244) (Sysix)
- 78aa294 linter/plugins: Deep freeze options (oxc-project#16218) (overlookmotel)
- 123bffe linter/plugins: Handle zero-token files in
`SourceCode#getLastToken()` (oxc-project#16184) (Arsh)
- 55fcfba linter: Add considerDefaultExhaustiveForUnions option to
switch-exhaustiveness-check (oxc-project#16204) (camc314)
- 9cc20a1 minifier: Avoid merging side effectful expressions to next
assignment statement if the side effect may change the left hand side
reference (oxc-project#16165) (sapphi-red)
- 75249e0 linter/plugins: Handle non-UTF8 file paths (oxc-project#16157)
(overlookmotel)
- 86fa667 linter/plugins: Improve type def for `RuleMeta`
`defaultOptions` property (oxc-project#16159) (overlookmotel)
- d2b7dcb tsgolint: Improve lsp diagnostic when linting fails (oxc-project#16115)
(camc314)
- 8810bd5 linter: Prevent conflicting fixes between
prefer_number_properties and prefer_numeric_literals (oxc-project#16113) (camc314)
- 91eb3f2 ast/estree: Convert `TSImportType` `argument` field to
`Literal` (oxc-project#16109) (overlookmotel)
- 2da2fc1 linter: Fix prefer-string-raw fixer producing invalid JS for
non-ASCII strings (oxc-project#16102) (camc314)
- f5cb601 linter/plugins: Perform length checks before continuing loops
(oxc-project#16025) (Arsh)
- e1c21ca linter/jsx-key: Implement missing options (oxc-project#15731) (camc314)

### ⚡ Performance

- 02bdf90 linter/plugins, napi/parser: Reuse arrays in visitor keys
(oxc-project#16294) (overlookmotel)
- 714a91a linter/no-restricted-types: Skip running if config is empty
(oxc-project#16278) (camc314)
- d3a34f8 linter/plugins: Optimize `getTokens()` and other methods
(oxc-project#16188) (Arsh)
- c05db06 linter/plugins: Speed up `initTokensWithComments` (oxc-project#16117)
(overlookmotel)
- 4846886 linter/plugins: Optimize merging of `tokens` and `comments`
(oxc-project#16071) (Arsh)
- e232d35 linter/plugins: Recycle objects in token methods (oxc-project#16068)
(overlookmotel)

### 📚 Documentation

- e928732 linter/plugins: Fix JSDoc comment (oxc-project#16295) (overlookmotel)
- d4a1581 linter: Add a link to MDN for the no-proto rule. (oxc-project#16213)
(connorshea)
- be36e36 linter/plugins: Fix JSDoc comment for `loadPluginImpl`
(oxc-project#16211) (overlookmotel)
- 6d6e9c9 linter: Improve the docs for oxc/no-async-await rule. (oxc-project#16181)
(connorshea)
- 0e1d38a linter/plugins: Clarify JSDoc comment for `getTokensBetween`
(oxc-project#16070) (overlookmotel)
- 3ee22b2 linter/plugins: Fix JSDoc comments for tokens methods (oxc-project#16063)
(overlookmotel)
- f257b5c linter/plugins: Clarify JSDoc comments for tokens methods
(oxc-project#16062) (overlookmotel)

# Oxfmt

### 🚀 Features

- 116e0d1 website: Auto generate oxfmt docs (oxc-project#15985) (Boshen)
- 862bdf7 oxfmt: Detect unsupported experimental options (take2)
(oxc-project#16088) (leaysgur)

### 🐛 Bug Fixes

- 75ac90c formatter: Comments in call arguments should be printed as-is
(oxc-project#16327) (Dunqing)
- fd77568 formatter: Don't wrap parenthesis for yield expression if
there is no leading comment (oxc-project#16326) (Dunqing)
- 8ccfb06 formatter: Should indent class extends and interface heritage
when it is a member expression without type arguments (oxc-project#16323) (Dunqing)
- 0faa978 oxfmt: JsFormatEmbeddedCb types (oxc-project#16324) (Brooooooklyn)
- 2b8f982 formatter: JSX text wrapping incorrect (oxc-project#16318) (Dunqing)
- f3ffebe formatter: Should indent variable declarator if there is a
trailing comment (oxc-project#16243) (Dunqing)
- 31d3186 formatter: Incorrect handling of directives with comments
(oxc-project#16235) (Dunqing)
- ac8fcaf formatter: Add parens for new: private field expr (oxc-project#16312)
(leaysgur)
- 653fa6c oxlint/oxfmt/lsp: Tell client the real tool name & version
(oxc-project#16212) (Sysix)
- 380a0af formatter: Incorrect printing of class binding trailing
comments (oxc-project#16234) (Dunqing)
- 0ca8154 formatter: Incorrect printing of trailing comments of callee
when the call arguments are empty (oxc-project#16232) (Dunqing)
- ac3a92e formatter: Print comment in ternary jsx (oxc-project#16224) (leaysgur)
- e3a7388 formatter: Fix parens for static member chain (oxc-project#16229)
(leaysgur)
- 55334c3 formatter: Incorrect printing of dangling comments in the if
statement (oxc-project#16228) (Dunqing)
- 9096a63 formatter: Correct printing of trailing comments after the
semicolon for class properties (oxc-project#16225) (Dunqing)
- 75fd568 formatter: Inconsistent union type output between two runs
(oxc-project#16222) (Dunqing)
- cd70484 formatter: Should not add a hard space before function body
(oxc-project#16221) (Dunqing)
- 9097167 formatter: Incorrect printing of union types with comments
(oxc-project#16205) (Dunqing)
- 79b78b3 formatter: Template literal element should not be indented
(oxc-project#16189) (Dunqing)
- 48d6ed2 formatter: Nested assignment pattern should not expand outer
object pattern (oxc-project#16160) (Dunqing)
- 8f4137d formatter: Output is incorrect when using comments inside JSX
which is the right hand-side of `LogicalExpression` (oxc-project#16156) (Dunqing)
- 85c3a10 formatter/sort_imports: Handle internal prefixes correctly
(oxc-project#16128) (leaysgur)
- 38b7bc4 oxfmt: Make no-napi build work (oxc-project#16134) (leaysgur)
- 889d2e7 formatter: Handle poor layout for grouped call arguments
(oxc-project#16093) (Dunqing)
- 14b0a6a oxfmt: Fix JS-ish file detection (oxc-project#16092) (leaysgur)
- 9706a1a oxfmt: Ignore unsupported options (oxc-project#16085) (leaysgur)

oxfmt_v0.16.0

Toggle oxfmt_v0.16.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.31.0 && oxfmt v0.16.0 (oxc-project#16333)

# Oxlint

### 🚀 Features

- 5da1a63 linter/plugins: Introduce `RuleTester` (oxc-project#16206)
(overlookmotel)
- 41129ab linter/plugins: Implement `languageOptions.parser` (oxc-project#16292)
(overlookmotel)
- 4b24825 linter: Implement no-restricted-types rule (oxc-project#16276) (camc314)
- 7150209 linter/plugins: Implement `SourceCode#getNodeByRangeIndex`
(oxc-project#16256) (overlookmotel)
- 3226864 linter/plugins: Implement options merging (oxc-project#16217)
(overlookmotel)
- cbb108a linter/plugins: Support default options (oxc-project#16170)
(overlookmotel)
- 04a3a66 linter/plugins: Implement
`SourceCode#getTokenOrCommentAfter()` (oxc-project#16045) (Arsh)
- 68b63d9 linter/plugins: Implement
`SourceCode#getTokenOrCommentBefore()` (oxc-project#16044) (Arsh)
- 04d9454 linter/plugins: Implement `SourceCode#getTokenByRangeStart()`
(oxc-project#16043) (Arsh)
- 7b8d578 linter/plugins: Implement `SourceCode#getTokensBetween()`
(oxc-project#16034) (Arsh)
- 79c242f linter/plugins: Implement `SourceCode#getLastTokensBetween()`
(oxc-project#16033) (Arsh)
- 1772078 linter/plugins: Implement `SourceCode#getFirstTokenBetween()`
(oxc-project#16032) (Arsh)
- 21bb86d linter/plugins: Implement `SourceCode#getFirstTokensBetween()`
(oxc-project#16019) (Arsh)
- 78f74b1 linter/plugins: Implement `SourceCode#getLastTokenBetween()`
(oxc-project#16008) (Arsh)
- df0b948 linter/plugins: Implement `SourceCode#getLastToken()` (oxc-project#16003)
(Arsh)

### 🐛 Bug Fixes

- cf249f5 linter/plugins: Fix message interpolation (oxc-project#16300)
(overlookmotel)
- 9149a26 linter/plugins, napi/parser: Deep freeze visitor keys (oxc-project#16293)
(overlookmotel)
- 71271ee linter: Fix `typescript/no-empty-interface` config option
casing. (oxc-project#16282) (connorshea)
- 653fa6c oxlint/oxfmt/lsp: Tell client the real tool name & version
(oxc-project#16212) (Sysix)
- 385e13e linter: Support both prefer-inline and preferInline for
import/no-duplicates (oxc-project#16275) (copilot-swe-agent)
- efc08d3 linter: Fix config docs for no-return-assign and unicode-bom
rules. (oxc-project#16260) (connorshea)
- dc96d3f linter: Correct docs to use string option for import/first
rule. (oxc-project#16264) (connorshea)
- 15ce491 linter: Correct the default config options for the
switch-exhaustiveness-check rule. (oxc-project#16268) (connorshea)
- 13f985c linter: Fix casing for unicorn/explicit-length-check config
option. (oxc-project#16269) (connorshea)
- 0df1901 linter/plugins: Reset state after error during AST visitation
(oxc-project#16246) (overlookmotel)
- 42e9dcc linter: Fix docs for `consistent-type-specifier-style` and
`consistent-type-definitions` rules. (oxc-project#16253) (connorshea)
- 505ceb1 linter: Fix the radix rule docs to correctly render as a
string-only config option (oxc-project#16248) (connorshea)
- 135cee6 oxlint/lsp: Run diagnostics after delayed worker
initialization (oxc-project#16244) (Sysix)
- 78aa294 linter/plugins: Deep freeze options (oxc-project#16218) (overlookmotel)
- 123bffe linter/plugins: Handle zero-token files in
`SourceCode#getLastToken()` (oxc-project#16184) (Arsh)
- 55fcfba linter: Add considerDefaultExhaustiveForUnions option to
switch-exhaustiveness-check (oxc-project#16204) (camc314)
- 9cc20a1 minifier: Avoid merging side effectful expressions to next
assignment statement if the side effect may change the left hand side
reference (oxc-project#16165) (sapphi-red)
- 75249e0 linter/plugins: Handle non-UTF8 file paths (oxc-project#16157)
(overlookmotel)
- 86fa667 linter/plugins: Improve type def for `RuleMeta`
`defaultOptions` property (oxc-project#16159) (overlookmotel)
- d2b7dcb tsgolint: Improve lsp diagnostic when linting fails (oxc-project#16115)
(camc314)
- 8810bd5 linter: Prevent conflicting fixes between
prefer_number_properties and prefer_numeric_literals (oxc-project#16113) (camc314)
- 91eb3f2 ast/estree: Convert `TSImportType` `argument` field to
`Literal` (oxc-project#16109) (overlookmotel)
- 2da2fc1 linter: Fix prefer-string-raw fixer producing invalid JS for
non-ASCII strings (oxc-project#16102) (camc314)
- f5cb601 linter/plugins: Perform length checks before continuing loops
(oxc-project#16025) (Arsh)
- e1c21ca linter/jsx-key: Implement missing options (oxc-project#15731) (camc314)

### ⚡ Performance

- 02bdf90 linter/plugins, napi/parser: Reuse arrays in visitor keys
(oxc-project#16294) (overlookmotel)
- 714a91a linter/no-restricted-types: Skip running if config is empty
(oxc-project#16278) (camc314)
- d3a34f8 linter/plugins: Optimize `getTokens()` and other methods
(oxc-project#16188) (Arsh)
- c05db06 linter/plugins: Speed up `initTokensWithComments` (oxc-project#16117)
(overlookmotel)
- 4846886 linter/plugins: Optimize merging of `tokens` and `comments`
(oxc-project#16071) (Arsh)
- e232d35 linter/plugins: Recycle objects in token methods (oxc-project#16068)
(overlookmotel)

### 📚 Documentation

- e928732 linter/plugins: Fix JSDoc comment (oxc-project#16295) (overlookmotel)
- d4a1581 linter: Add a link to MDN for the no-proto rule. (oxc-project#16213)
(connorshea)
- be36e36 linter/plugins: Fix JSDoc comment for `loadPluginImpl`
(oxc-project#16211) (overlookmotel)
- 6d6e9c9 linter: Improve the docs for oxc/no-async-await rule. (oxc-project#16181)
(connorshea)
- 0e1d38a linter/plugins: Clarify JSDoc comment for `getTokensBetween`
(oxc-project#16070) (overlookmotel)
- 3ee22b2 linter/plugins: Fix JSDoc comments for tokens methods (oxc-project#16063)
(overlookmotel)
- f257b5c linter/plugins: Clarify JSDoc comments for tokens methods
(oxc-project#16062) (overlookmotel)

# Oxfmt

### 🚀 Features

- 116e0d1 website: Auto generate oxfmt docs (oxc-project#15985) (Boshen)
- 862bdf7 oxfmt: Detect unsupported experimental options (take2)
(oxc-project#16088) (leaysgur)

### 🐛 Bug Fixes

- 75ac90c formatter: Comments in call arguments should be printed as-is
(oxc-project#16327) (Dunqing)
- fd77568 formatter: Don't wrap parenthesis for yield expression if
there is no leading comment (oxc-project#16326) (Dunqing)
- 8ccfb06 formatter: Should indent class extends and interface heritage
when it is a member expression without type arguments (oxc-project#16323) (Dunqing)
- 0faa978 oxfmt: JsFormatEmbeddedCb types (oxc-project#16324) (Brooooooklyn)
- 2b8f982 formatter: JSX text wrapping incorrect (oxc-project#16318) (Dunqing)
- f3ffebe formatter: Should indent variable declarator if there is a
trailing comment (oxc-project#16243) (Dunqing)
- 31d3186 formatter: Incorrect handling of directives with comments
(oxc-project#16235) (Dunqing)
- ac8fcaf formatter: Add parens for new: private field expr (oxc-project#16312)
(leaysgur)
- 653fa6c oxlint/oxfmt/lsp: Tell client the real tool name & version
(oxc-project#16212) (Sysix)
- 380a0af formatter: Incorrect printing of class binding trailing
comments (oxc-project#16234) (Dunqing)
- 0ca8154 formatter: Incorrect printing of trailing comments of callee
when the call arguments are empty (oxc-project#16232) (Dunqing)
- ac3a92e formatter: Print comment in ternary jsx (oxc-project#16224) (leaysgur)
- e3a7388 formatter: Fix parens for static member chain (oxc-project#16229)
(leaysgur)
- 55334c3 formatter: Incorrect printing of dangling comments in the if
statement (oxc-project#16228) (Dunqing)
- 9096a63 formatter: Correct printing of trailing comments after the
semicolon for class properties (oxc-project#16225) (Dunqing)
- 75fd568 formatter: Inconsistent union type output between two runs
(oxc-project#16222) (Dunqing)
- cd70484 formatter: Should not add a hard space before function body
(oxc-project#16221) (Dunqing)
- 9097167 formatter: Incorrect printing of union types with comments
(oxc-project#16205) (Dunqing)
- 79b78b3 formatter: Template literal element should not be indented
(oxc-project#16189) (Dunqing)
- 48d6ed2 formatter: Nested assignment pattern should not expand outer
object pattern (oxc-project#16160) (Dunqing)
- 8f4137d formatter: Output is incorrect when using comments inside JSX
which is the right hand-side of `LogicalExpression` (oxc-project#16156) (Dunqing)
- 85c3a10 formatter/sort_imports: Handle internal prefixes correctly
(oxc-project#16128) (leaysgur)
- 38b7bc4 oxfmt: Make no-napi build work (oxc-project#16134) (leaysgur)
- 889d2e7 formatter: Handle poor layout for grouped call arguments
(oxc-project#16093) (Dunqing)
- 14b0a6a oxfmt: Fix JS-ish file detection (oxc-project#16092) (leaysgur)
- 9706a1a oxfmt: Ignore unsupported options (oxc-project#16085) (leaysgur)

crates_v0.100.0

Toggle crates_v0.100.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(crates): oxc v0.100.0 (oxc-project#16331)

### 💥 BREAKING CHANGES

- 74cf572 ast: [**BREAKING**] Make `source` field of `TSImportType` a
`StringLiteral` (oxc-project#16114) (copilot-swe-agent)
- 43156ae ast: [**BREAKING**] Rename `TSImportType` `argument` field to
`source` (oxc-project#16110) (overlookmotel)
- 934d873 napi: [**BREAKING**] Drop `armv7-unknown-linux-musleabihf`
support (oxc-project#16105) (Boshen)

### 🚀 Features

- 669afe0 ast: Add `Expression::is_jsx` method (oxc-project#16154) (Dunqing)
- 17a8caa parser: Add diagnostic for JSX identifiers with hyphens
(oxc-project#16133) (camchenry)
- 0549ae5 parser: Add diagnostic for expected ident after optional chain
(oxc-project#16132) (camchenry)
- db839ae parser: Improve diagnostic for unexpected optional
declarations (oxc-project#16131) (camchenry)
- bab4bc8 napi/parser: Add type annotations to parse-raw-worker test
(oxc-project#15998) (camc314)

### 🐛 Bug Fixes

- 35ed36c traverse: Fix panic when truncating non-ASCII variable names
(oxc-project#16265) (peter)
- 9149a26 linter/plugins, napi/parser: Deep freeze visitor keys (oxc-project#16293)
(overlookmotel)
- 6b54dab minifier: Incorrect non-null object condition simplification
with `&&` and `||` (oxc-project#16161) (sapphi-red)
- 9cc20a1 minifier: Avoid merging side effectful expressions to next
assignment statement if the side effect may change the left hand side
reference (oxc-project#16165) (sapphi-red)
- 91eb3f2 ast/estree: Convert `TSImportType` `argument` field to
`Literal` (oxc-project#16109) (overlookmotel)
- 1199cee parser: Reject invalid modifiers on parameter properties with
binding patterns (oxc-project#16083) (camc314)
- f376325 traverse: Remove `console.log` from build script (oxc-project#16049)
(overlookmotel)

### ⚡ Performance

- 82d784f lexer: Reduce bounds checks in `Lexer::get_string` (oxc-project#16317)
(overlookmotel)
- cc2f352 span: Add `#[inline]` to `Atom` methods (oxc-project#16311)
(overlookmotel)
- ffca070 span: Add `#[repr(transparent)]` to `Atom` (oxc-project#16310)
(overlookmotel)
- 02bdf90 linter/plugins, napi/parser: Reuse arrays in visitor keys
(oxc-project#16294) (overlookmotel)

### 📚 Documentation

- 891e0b4 parser: Add note about falling back to parse TSType in
TSImportType (oxc-project#16119) (camc314)

Co-authored-by: Boshen <[email protected]>

apps_v1.31.0

Toggle apps_v1.31.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.31.0 && oxfmt v0.16.0 (oxc-project#16333)

# Oxlint

### 🚀 Features

- 5da1a63 linter/plugins: Introduce `RuleTester` (oxc-project#16206)
(overlookmotel)
- 41129ab linter/plugins: Implement `languageOptions.parser` (oxc-project#16292)
(overlookmotel)
- 4b24825 linter: Implement no-restricted-types rule (oxc-project#16276) (camc314)
- 7150209 linter/plugins: Implement `SourceCode#getNodeByRangeIndex`
(oxc-project#16256) (overlookmotel)
- 3226864 linter/plugins: Implement options merging (oxc-project#16217)
(overlookmotel)
- cbb108a linter/plugins: Support default options (oxc-project#16170)
(overlookmotel)
- 04a3a66 linter/plugins: Implement
`SourceCode#getTokenOrCommentAfter()` (oxc-project#16045) (Arsh)
- 68b63d9 linter/plugins: Implement
`SourceCode#getTokenOrCommentBefore()` (oxc-project#16044) (Arsh)
- 04d9454 linter/plugins: Implement `SourceCode#getTokenByRangeStart()`
(oxc-project#16043) (Arsh)
- 7b8d578 linter/plugins: Implement `SourceCode#getTokensBetween()`
(oxc-project#16034) (Arsh)
- 79c242f linter/plugins: Implement `SourceCode#getLastTokensBetween()`
(oxc-project#16033) (Arsh)
- 1772078 linter/plugins: Implement `SourceCode#getFirstTokenBetween()`
(oxc-project#16032) (Arsh)
- 21bb86d linter/plugins: Implement `SourceCode#getFirstTokensBetween()`
(oxc-project#16019) (Arsh)
- 78f74b1 linter/plugins: Implement `SourceCode#getLastTokenBetween()`
(oxc-project#16008) (Arsh)
- df0b948 linter/plugins: Implement `SourceCode#getLastToken()` (oxc-project#16003)
(Arsh)

### 🐛 Bug Fixes

- cf249f5 linter/plugins: Fix message interpolation (oxc-project#16300)
(overlookmotel)
- 9149a26 linter/plugins, napi/parser: Deep freeze visitor keys (oxc-project#16293)
(overlookmotel)
- 71271ee linter: Fix `typescript/no-empty-interface` config option
casing. (oxc-project#16282) (connorshea)
- 653fa6c oxlint/oxfmt/lsp: Tell client the real tool name & version
(oxc-project#16212) (Sysix)
- 385e13e linter: Support both prefer-inline and preferInline for
import/no-duplicates (oxc-project#16275) (copilot-swe-agent)
- efc08d3 linter: Fix config docs for no-return-assign and unicode-bom
rules. (oxc-project#16260) (connorshea)
- dc96d3f linter: Correct docs to use string option for import/first
rule. (oxc-project#16264) (connorshea)
- 15ce491 linter: Correct the default config options for the
switch-exhaustiveness-check rule. (oxc-project#16268) (connorshea)
- 13f985c linter: Fix casing for unicorn/explicit-length-check config
option. (oxc-project#16269) (connorshea)
- 0df1901 linter/plugins: Reset state after error during AST visitation
(oxc-project#16246) (overlookmotel)
- 42e9dcc linter: Fix docs for `consistent-type-specifier-style` and
`consistent-type-definitions` rules. (oxc-project#16253) (connorshea)
- 505ceb1 linter: Fix the radix rule docs to correctly render as a
string-only config option (oxc-project#16248) (connorshea)
- 135cee6 oxlint/lsp: Run diagnostics after delayed worker
initialization (oxc-project#16244) (Sysix)
- 78aa294 linter/plugins: Deep freeze options (oxc-project#16218) (overlookmotel)
- 123bffe linter/plugins: Handle zero-token files in
`SourceCode#getLastToken()` (oxc-project#16184) (Arsh)
- 55fcfba linter: Add considerDefaultExhaustiveForUnions option to
switch-exhaustiveness-check (oxc-project#16204) (camc314)
- 9cc20a1 minifier: Avoid merging side effectful expressions to next
assignment statement if the side effect may change the left hand side
reference (oxc-project#16165) (sapphi-red)
- 75249e0 linter/plugins: Handle non-UTF8 file paths (oxc-project#16157)
(overlookmotel)
- 86fa667 linter/plugins: Improve type def for `RuleMeta`
`defaultOptions` property (oxc-project#16159) (overlookmotel)
- d2b7dcb tsgolint: Improve lsp diagnostic when linting fails (oxc-project#16115)
(camc314)
- 8810bd5 linter: Prevent conflicting fixes between
prefer_number_properties and prefer_numeric_literals (oxc-project#16113) (camc314)
- 91eb3f2 ast/estree: Convert `TSImportType` `argument` field to
`Literal` (oxc-project#16109) (overlookmotel)
- 2da2fc1 linter: Fix prefer-string-raw fixer producing invalid JS for
non-ASCII strings (oxc-project#16102) (camc314)
- f5cb601 linter/plugins: Perform length checks before continuing loops
(oxc-project#16025) (Arsh)
- e1c21ca linter/jsx-key: Implement missing options (oxc-project#15731) (camc314)

### ⚡ Performance

- 02bdf90 linter/plugins, napi/parser: Reuse arrays in visitor keys
(oxc-project#16294) (overlookmotel)
- 714a91a linter/no-restricted-types: Skip running if config is empty
(oxc-project#16278) (camc314)
- d3a34f8 linter/plugins: Optimize `getTokens()` and other methods
(oxc-project#16188) (Arsh)
- c05db06 linter/plugins: Speed up `initTokensWithComments` (oxc-project#16117)
(overlookmotel)
- 4846886 linter/plugins: Optimize merging of `tokens` and `comments`
(oxc-project#16071) (Arsh)
- e232d35 linter/plugins: Recycle objects in token methods (oxc-project#16068)
(overlookmotel)

### 📚 Documentation

- e928732 linter/plugins: Fix JSDoc comment (oxc-project#16295) (overlookmotel)
- d4a1581 linter: Add a link to MDN for the no-proto rule. (oxc-project#16213)
(connorshea)
- be36e36 linter/plugins: Fix JSDoc comment for `loadPluginImpl`
(oxc-project#16211) (overlookmotel)
- 6d6e9c9 linter: Improve the docs for oxc/no-async-await rule. (oxc-project#16181)
(connorshea)
- 0e1d38a linter/plugins: Clarify JSDoc comment for `getTokensBetween`
(oxc-project#16070) (overlookmotel)
- 3ee22b2 linter/plugins: Fix JSDoc comments for tokens methods (oxc-project#16063)
(overlookmotel)
- f257b5c linter/plugins: Clarify JSDoc comments for tokens methods
(oxc-project#16062) (overlookmotel)

# Oxfmt

### 🚀 Features

- 116e0d1 website: Auto generate oxfmt docs (oxc-project#15985) (Boshen)
- 862bdf7 oxfmt: Detect unsupported experimental options (take2)
(oxc-project#16088) (leaysgur)

### 🐛 Bug Fixes

- 75ac90c formatter: Comments in call arguments should be printed as-is
(oxc-project#16327) (Dunqing)
- fd77568 formatter: Don't wrap parenthesis for yield expression if
there is no leading comment (oxc-project#16326) (Dunqing)
- 8ccfb06 formatter: Should indent class extends and interface heritage
when it is a member expression without type arguments (oxc-project#16323) (Dunqing)
- 0faa978 oxfmt: JsFormatEmbeddedCb types (oxc-project#16324) (Brooooooklyn)
- 2b8f982 formatter: JSX text wrapping incorrect (oxc-project#16318) (Dunqing)
- f3ffebe formatter: Should indent variable declarator if there is a
trailing comment (oxc-project#16243) (Dunqing)
- 31d3186 formatter: Incorrect handling of directives with comments
(oxc-project#16235) (Dunqing)
- ac8fcaf formatter: Add parens for new: private field expr (oxc-project#16312)
(leaysgur)
- 653fa6c oxlint/oxfmt/lsp: Tell client the real tool name & version
(oxc-project#16212) (Sysix)
- 380a0af formatter: Incorrect printing of class binding trailing
comments (oxc-project#16234) (Dunqing)
- 0ca8154 formatter: Incorrect printing of trailing comments of callee
when the call arguments are empty (oxc-project#16232) (Dunqing)
- ac3a92e formatter: Print comment in ternary jsx (oxc-project#16224) (leaysgur)
- e3a7388 formatter: Fix parens for static member chain (oxc-project#16229)
(leaysgur)
- 55334c3 formatter: Incorrect printing of dangling comments in the if
statement (oxc-project#16228) (Dunqing)
- 9096a63 formatter: Correct printing of trailing comments after the
semicolon for class properties (oxc-project#16225) (Dunqing)
- 75fd568 formatter: Inconsistent union type output between two runs
(oxc-project#16222) (Dunqing)
- cd70484 formatter: Should not add a hard space before function body
(oxc-project#16221) (Dunqing)
- 9097167 formatter: Incorrect printing of union types with comments
(oxc-project#16205) (Dunqing)
- 79b78b3 formatter: Template literal element should not be indented
(oxc-project#16189) (Dunqing)
- 48d6ed2 formatter: Nested assignment pattern should not expand outer
object pattern (oxc-project#16160) (Dunqing)
- 8f4137d formatter: Output is incorrect when using comments inside JSX
which is the right hand-side of `LogicalExpression` (oxc-project#16156) (Dunqing)
- 85c3a10 formatter/sort_imports: Handle internal prefixes correctly
(oxc-project#16128) (leaysgur)
- 38b7bc4 oxfmt: Make no-napi build work (oxc-project#16134) (leaysgur)
- 889d2e7 formatter: Handle poor layout for grouped call arguments
(oxc-project#16093) (Dunqing)
- 14b0a6a oxfmt: Fix JS-ish file detection (oxc-project#16092) (leaysgur)
- 9706a1a oxfmt: Ignore unsupported options (oxc-project#16085) (leaysgur)

oxlint_v1.30.0

Toggle oxlint_v1.30.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release(apps): oxlint v1.30.0 && oxfmt v0.15.0 (oxc-project#16047)

# Oxlint
### 💥 BREAKING CHANGES

- cbb27fd ast: [**BREAKING**] Add `TSGlobalDeclaration` type (oxc-project#15712)
(overlookmotel)

### 🚀 Features

- 72660f7 linter: Support auto generate config document for tuple lint
option (oxc-project#15904) (Duc Nghiem Xuan)
- 0c1f82b linter/plugins: Add `tokens` property to `Program` (oxc-project#16020)
(overlookmotel)
- 9e61beb linter/plugins: Implement `SourceCode#getFirstToken()`
(oxc-project#16002) (Arsh)
- 9a548dd linter/plugins: Implement `SourceCode#getLastTokens()`
(oxc-project#16000) (Arsh)
- 0b6cb11 linter/plugins: Implement `SourceCode#getFirstTokens()`
(oxc-project#15976) (Arsh)
- 166781e linter/plugins: Implement `SourceCode#getTokenAfter()`
(oxc-project#15973) (Arsh)
- 6ae232b linter: Expose type errors via tsgolint (oxc-project#15917) (camc314)
- 2bfdd26 linter/plugins: Implement `SourceCode#getTokensAfter()`
(oxc-project#15971) (Arsh)
- 45fffc1 linter/plugins: Implement `SourceCode#getTokenBefore()`
(oxc-project#15956) (Arsh)
- 776e473 linter/plugins: Implement `SourceCode#getTokensBefore()`
(oxc-project#15955) (Arsh)
- 595867a oxlint: Generate markdownDescription fields for oxlint JSON
schema. (oxc-project#15959) (connorshea)
- 5569317 vscode: Add quick actions to status bar tooltip (oxc-project#15962)
(Sysix)
- 986cac1 linter/plugins: Token-related `SourceCode` APIs (TS ESLint
implementation) (oxc-project#15861) (Arsh)
- a21f9e4 linter: Implement unicorn/prefer-bigint-literals rule (oxc-project#15923)
(Michiel Vrins)
- 4b9d8d2 linter/type-aware: Include range with tsconfig diagnostics
(oxc-project#15916) (camc314)
- 220d01e editor: Improve the status bar item for the VS Code extension
by adding a tooltip. (oxc-project#15819) (connorshea)

### 🐛 Bug Fixes

- 2bd3cb6 apps, editors, napi: Fix `oxlint-disable` comments (oxc-project#16014)
(overlookmotel)
- 81f5360 linter/prefer-number-properties: Get fixer to replace entire
call expr (oxc-project#15979) (camc314)
- e4ba07f language_server: Always write to memory file system (oxc-project#15975)
(Sysix)
- a8a2032 linter: Support missing `range` for internal diagnostics
(oxc-project#15964) (camc314)
- 619a226 oxlint/lsp: Don't register `textDocument/formatting`
capability (oxc-project#15882) (Sysix)
- 6ab1a20 linter: Fix no_useless_spread producing invalid syntax when
removing empty object spreads (oxc-project#15905) (camc314)
- be4b6df linter: Unicorn/prefer-string-replace-all incorrectly escapes
backslashes (oxc-project#15901) (camc314)
- 9fa9ef2 linter: Gracefully fail when using import plugin, large file
counf and JS plugins (oxc-project#15864) (camc314)
- c027398 linter/plugins: Correct bindings package names glob in TSDown
config (oxc-project#15871) (overlookmotel)
- b622ef8 linter: Fix `oxc/bad_array_method_on_arguments` rule behavior.
(oxc-project#15854) (connorshea)
- aa06c3f linter: Recognize NewExpression as value context in
no-unused-private-class-members (oxc-project#15843) (camc314)
- e89c5ba typescript/prefer-namespace-keyword: Skip nested
`TSModuleDeclaration`s (oxc-project#15806) (overlookmotel)
- 646d020 linter/exhaustive-dependencies: Prevent is_callee_of_call_expr
flag from leaking into nested expressions (oxc-project#15832) (camc314)
- 46bd6bd linter/plugins: Pin `@typescript-eslint/scope-manager`
dependency (oxc-project#15807) (overlookmotel)
- fba31fa linter: Patch `@typescript-eslint/scope manager` (oxc-project#15214)
(Arsh)
- 50307c1 linter/jest: Ignore `expect` identifier in argument position
(oxc-project#15785) (camc314)

### ⚡ Performance

- 024b48a linter/plugins: Lazy-load tokens parsing code (oxc-project#16011)
(overlookmotel)
- 15365c9 linter/plugins: Reduce var assignments (oxc-project#15953)
(overlookmotel)
- 84d1f4f linter/plugins: Downgrade some checks to debug-only (oxc-project#15922)
(overlookmotel)
- a49f704 linter/typescript: Avoid searching source text unless required
(oxc-project#15805) (overlookmotel)

### 📚 Documentation

- ceffa5a linter: Add config option docs for various rules. (oxc-project#16024)
(connorshea)
- 9a0ed13 linter: Fix config option docs for eslint/operator-assignment
rule. (oxc-project#16030) (connorshea)
- 0b18005 linter: Add config docs generation for rules with Regex
arguments (oxc-project#15978) (connorshea)
- 48d18e0 linter: Improve diagnostic message for promise/catch-or-return
rule (oxc-project#15980) (connorshea)
- 6c72e84 linter: Use backticks for code elements across more rule
diagnostics (oxc-project#15958) (connorshea)
- a63dad7 linter/plugins: Add comment (oxc-project#15952) (overlookmotel)
- 81ea642 vscode: Use markdownDescription for better formatting in
VSCode Settings (oxc-project#15889) (connorshea)
- db6a110 linter/plugins: Fix JSDoc comment (oxc-project#15884) (overlookmotel)
- 1487271 linter: Add config option docs for `jsdoc/require-param` and
`jsdoc/require-returns` rules (oxc-project#15857) (connorshea)
- fbf0fd4 linter/plugins: Add JSDoc comments to `Plugin` and `Rule`
types (oxc-project#15815) (overlookmotel)
- ac5e4b5 linter/plugins: Add JSDoc comments and improve comments
(oxc-project#15814) (overlookmotel)
- 9b7b083 linter: Fix error in `curly` `"all"` example (oxc-project#15801)
(camc314)
- 65a3520 linter: Improve diagnostic for consistent-type-definitions
rule. (oxc-project#15752) (connorshea)

### 🛡️ Security

- f9b9276 deps: Update dependency rolldown to v1.0.0-beta.51 (oxc-project#15856)
(renovate[bot])
# Oxfmt
### 💥 BREAKING CHANGES

- a937890 formatter: [**BREAKING**] Default to `lineWidth: 100` (oxc-project#15933)
(leaysgur)
- 03d5f5a formatter/sort-imports: [**BREAKING**] Change default order to
`natural` with `natord` crate (oxc-project#15828) (leaysgur)
- cbb27fd ast: [**BREAKING**] Add `TSGlobalDeclaration` type (oxc-project#15712)
(overlookmotel)

### 🚀 Features

- 7818e22 formatter/sort-imports: Support `options.groups` (oxc-project#15831)
(leaysgur)
- f9a502c oxfmt: `oxfmt --lsp` support (oxc-project#15765) (leaysgur)

### 🐛 Bug Fixes

- 4817486 formatter: Revert `FormatElement::BestFitting` printing logic
(oxc-project#16028) (Dunqing)
- 5562dd6 formatter: Incorrect formatting method chain with trailing
comments (oxc-project#16027) (Dunqing)
- 6d14c8b formatter: Comments in export class decorators are printing
incorrectly (oxc-project#15897) (Dunqing)
- 683c764 formatter: Correct a few minor mismatched typescript tests
(oxc-project#15894) (Dunqing)
- c11cc07 formatter: Improve formatting for default type on type
parameters (oxc-project#15893) (Dunqing)
- 0bff596 formatter: Handle JSX expresssion dangling comment (oxc-project#15890)
(leaysgur)
- 16a9dc8 formatter: Inconsistent printing of class extends and
interface extends (oxc-project#15892) (Dunqing)
- 300b496 formatter: Inconsistent CallExpression and NewExpression
around member chain and logical expression (oxc-project#15858) (Dunqing)

### ⚡ Performance

- 65174cc formatter: Reduce the size of `TextWidth` to 4 byte (oxc-project#15827)
(Dunqing)
- 4fe3aac formatter: Use `ArenaVec` and `ArenaBox` (oxc-project#15420) (Dunqing)

Co-authored-by: overlookmotel <[email protected]>