Skip to content

Tags: veeceey/oxc

Tags

oxlint_v1.43.0

Toggle oxlint_v1.43.0's commit message

Verified

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

# Oxlint
### 💥 BREAKING CHANGES

- b34a155 linter/plugins: [**BREAKING**] `RuleTester` set
`context.filename` to absolute path (oxc-project#18702) (overlookmotel)

### 🚀 Features

- 1753209 linter/vscode: Run extension when JS configs are detected
(oxc-project#18832) (camc314)
- c962dd2 linter/lsp: Implement support for oxlint.config.ts (oxc-project#18826)
(camc314)
- da32203 linter: Auto generate oxlint.config.ts types (oxc-project#18597)
(camc314)
- 19b4df7 oxlint: Introduce `defineConfig` helper (oxc-project#18596) (camc314)
- ea97231 linter: Implement `oxlint.config.ts` support (oxc-project#17563)
(camc314)
- 17ca42d linter: Implement `react/no-multi-comp` rule. (oxc-project#18794)
(connorshea)
- 88f30e0 linter/plugins: Move eslint compatible plugin conversion to
`eslintCompatPlugin` function (oxc-project#18791) (overlookmotel)
- 2a72794 linter/plugins: `RuleTester` take `cwd` property (oxc-project#18756)
(overlookmotel)
- 9f533db linter: Add `find_prev_token_within` method for token search
(oxc-project#18769) (camc314)
- 772ea70 linter: Introduce `load_js_configs` napi callback (oxc-project#18767)
(camc314)
- e9690c1 linter: Introduce `DiscoveredConfig` in preparation for JS
configs (oxc-project#18674) (camc314)
- 558b588 linter/prefer-namespace-keyword: Move to correctness (oxc-project#18733)
(camc314)
- 7a5c268 oxlint/lsp: Support `jsPlugins` (oxc-project#17840) (Sysix)
- c07497c linter/prefer-modern-dom-apis: Implement suggestion (oxc-project#17965)
(Mikhail Baev)
- 8531bc9 linter: Implement `prefer-const` (oxc-project#18687) (camchenry)
- 8670b18 parser: Error on ambient class accessor implementations
(oxc-project#18592) (camc314)
- 6b8a5ae linter: Add `eslint-plugin-import/no-nodejs-modules` rule
(oxc-project#18006) (Mikhail Baev)
- 04f400d linter/no-duplicates: Add support for `considerQueryString`
option (oxc-project#18657) (camc314)
- 3b7f260 linter/consistent-generic-constructor: Implement fixer
(oxc-project#18616) (camc314)
- 794f9e4 linter/prefer-exponentation-operator: Implement suggestion
(oxc-project#18602) (camc314)
- 773d916 linter: `eslint/sort_keys` ignore leading and trailing spreads
in auto-fix (oxc-project#18485) (Lonami)
- 20d4ede linter: Implement `import/no-relative-parent-imports` rule
(oxc-project#18513) (Valentin Maerten)
- 0da45ef vscode: Fallback to globally installed oxlint/oxfmt packages
(oxc-project#18007) (Sysix)

### 🐛 Bug Fixes

- a3417b1 linter/plugins: Clear state when reloading workspace (oxc-project#18837)
(overlookmotel)
- c879992 linter: Error on arrays passed in as config (oxc-project#18822) (camc314)
- 5c80422 linter/tsdown: Ensure relative path for globals import starts
with `./` (oxc-project#18820) (camc314)
- 7419dfb linter: Remove invalid debug assersion, add test (oxc-project#18819)
(camc314)
- 0ca6269 ci: Fix the repo path normalization logic for tests on
Windows. (oxc-project#18815) (connorshea)
- c7b0a65 linter: Fix config option docs for `react/jsx-boolean-value`
rule. (oxc-project#18811) (connorshea)
- cce374e linter/prefer-const: Replace entire declaration over just the
`let` kw (oxc-project#18814) (camc314)
- 41f92d1 linter: Error when given config options for a lint rule that
has no config options defined. (oxc-project#18809) (connorshea)
- 0867a36 linter/consistent-index-object-style: False positive with
mapped + generic types (oxc-project#18801) (camc314)
- 1d34b42 linter: Fix 32 bit build (oxc-project#18783) (camc314)
- 95df577 linter/plugins: Handle error from `destroyWorkspace` (oxc-project#18763)
(overlookmotel)
- b3261dc linter: Fix the curly rule config to enforce the shape of the
config and emit correct docs (oxc-project#18743) (connorshea)
- d981978 linter/plugins: Use non-blocking mode when calling
`destroyWorkspace` (oxc-project#18762) (overlookmotel)
- 3f43d4c linter: Accept bools as valid values for `fixable` (oxc-project#18772)
(camc314)
- 005910a linter/plugins: Support plugins outside of workspace (oxc-project#18755)
(overlookmotel)
- fd92711 vscode: Use `fsPath` for workspace mapping (oxc-project#18728) (Sysix)
- 358b2c1 linter/consistent-generic-constructors: Check bounds when
searching for `:` token (oxc-project#18745) (connorshea)
- abd0c28 linter/capitalized-comments: Fix generated rule option docs
(oxc-project#18748) (connorshea)
- d90a9f6 linter: Add more tests for `prefer-const`'s fixer and fix its
invalid behavior. (oxc-project#18747) (connorshea)
- f82011b oxlint/lsp: Disable JS plugins support in LSP except in tests
(oxc-project#18727) (overlookmotel)
- 94505c8 linter/jest: Change `prefer-spy-on` autofix to suggestion
(oxc-project#18152) (Ben Lowery)
- 6ec1112 linter: Mark unused disable directive fix as suggestion
(oxc-project#18703) (ddmoney420)
- 49609ec linter/no-useless-constructor: Consider argument
transformation as used (oxc-project#18706) (ddmoney420)
- 40218de linter: Fix behavior of
jsx-a11y/no-static-element-interactions rule. (oxc-project#17817) (connorshea)
- db9751d linter/no-html-link-for-pages: Handle `target=_blank`
correctly (oxc-project#18693) (camc314)
- e440b78 linter/plugins: Pass all args to CFG event handlers when 2
rules use same handler (oxc-project#18683) (overlookmotel)
- b393430 linter/curly: Fix multi-or-nest and consistent conflict
(oxc-project#18660) (camc314)
- 2e1fbc2 linter/plugins: Implement `context.parserPath` (oxc-project#18644)
(overlookmotel)
- 34951ed linter/plugins: `filename` option takes precedence over
`parserOptions.lang` in `RuleTester` (oxc-project#18643) (overlookmotel)
- 28df160 linter/plugins: Allow line number passed to `report` to be 0
(oxc-project#18642) (overlookmotel)
- 14fabec vscode: Use built-in `getWorkspaceFolder` for detecting the
right workspace of a given uri (oxc-project#18583) (Sysix)
- 0ff4cea oxlint/cli: Report error when nested config could not be
parsed (oxc-project#18504) (Sysix)

### ⚡ Performance

- 9862224 linter/plugins: Reduce cost of workspaces (oxc-project#18758)
(overlookmotel)
- 6bc0bde linter: Remove string allocation (oxc-project#18725) (overlookmotel)
- 3a6b41e linter/plugins: Replace ESLint Traverser with lightweight
traverseNode (oxc-project#18529) (Rintaro Itokawa)

### 📚 Documentation

- dd1a653 linter: Fix doc comment for ignoreStateless config option.
(oxc-project#18808) (connorshea)
- 5909085 linter/plugins: Add doc comments (oxc-project#18753) (overlookmotel)
- ffe53a3 linter: Update lint function docs (oxc-project#18766) (camc314)
- b82faec linter: Glob for any css module for no-unassigned-import
(oxc-project#18713) (Ben Stickley)
- cd86347 linter: Mark some react rules as unsupported, misc docs
improvements (oxc-project#18617) (connorshea)
- 23401d8 linter: Update fixes and suggestions status for tsgolint rules
(oxc-project#18619) (camchenry)
# Oxfmt
### 🚀 Features

- ee30de9 oxfmt: Add config migration from biome (oxc-project#18638) (Luca Fischer)

### 🐛 Bug Fixes

- e754b18 oxfmt/migrate-prettier: Set `experimentalSortPackagejson:
false` by default (oxc-project#18831) (leaysgur)
- a83c266 formatter: Keep decorated function pattern hugged when params
break (oxc-project#18830) (Dunqing)
- 0c8efe1 formatter: Quote numeric property keys with `quoteProps:
consistent` (oxc-project#18803) (Dunqing)
- 9c14c3e formatter: Ignore comment does not work for sequence
expressions in arrow function body (oxc-project#18799) (Dunqing)
- 54984ae formatter: Handle leading comments in arrow function sequence
expressions (oxc-project#18798) (Dunqing)
- 61bb2b5 formatter: Correctly expand JSX returned from arrow callbacks
in JSX expression containers (oxc-project#18797) (Dunqing)
- 34ee194 formatter: Tailwindcss sorting doesn't work for object
property keys (oxc-project#18773) (Dunqing)
- 48f1e35 oxfmt: Prevent ThreadsafeFunction crash on Node.js exit
(oxc-project#18723) (Boshen)
- e96adca formatter: Follow Prettier's approach for for-in initializer
parentheses (oxc-project#18695) (Dunqing)
- 1215a6f formatter: Preserve quote for class property key in TypeScript
(oxc-project#18692) (Dunqing)
- 059acae formatter: Incorrect comments placement for union type in
`TSTypeIntersection` (oxc-project#18690) (Dunqing)
- c3d05c1 formatter,oxfmt: Handle CRLF with embedded formatting (oxc-project#18686)
(leaysgur)
- 7cb3085 formatter: Preserve comments on rest elements (oxc-project#18649)
(Dunqing)
- 21984dd formatter: Preserve type cast comments on rest parameters
(oxc-project#18648) (Dunqing)
- 2f70254 formatter: Don't add extra semicolon on suppressed class
properties (oxc-project#18631) (Dunqing)
- ac1ff4e oxfmt: Use `empty_line` IR for empty xxx-in-js line (oxc-project#18623)
(leaysgur)
- 8f76900 oxfmt: Dedent xxx-in-js templates before calling prettier
(oxc-project#18622) (leaysgur)
- 6b726ef oxfmt: Trim whitespace only xxx-in-js templates (oxc-project#18621)
(leaysgur)

Co-authored-by: camc314 <18101008+camc314@users.noreply.github.com>

oxfmt_v0.28.0

Toggle oxfmt_v0.28.0's commit message

Verified

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

# Oxlint
### 💥 BREAKING CHANGES

- b34a155 linter/plugins: [**BREAKING**] `RuleTester` set
`context.filename` to absolute path (oxc-project#18702) (overlookmotel)

### 🚀 Features

- 1753209 linter/vscode: Run extension when JS configs are detected
(oxc-project#18832) (camc314)
- c962dd2 linter/lsp: Implement support for oxlint.config.ts (oxc-project#18826)
(camc314)
- da32203 linter: Auto generate oxlint.config.ts types (oxc-project#18597)
(camc314)
- 19b4df7 oxlint: Introduce `defineConfig` helper (oxc-project#18596) (camc314)
- ea97231 linter: Implement `oxlint.config.ts` support (oxc-project#17563)
(camc314)
- 17ca42d linter: Implement `react/no-multi-comp` rule. (oxc-project#18794)
(connorshea)
- 88f30e0 linter/plugins: Move eslint compatible plugin conversion to
`eslintCompatPlugin` function (oxc-project#18791) (overlookmotel)
- 2a72794 linter/plugins: `RuleTester` take `cwd` property (oxc-project#18756)
(overlookmotel)
- 9f533db linter: Add `find_prev_token_within` method for token search
(oxc-project#18769) (camc314)
- 772ea70 linter: Introduce `load_js_configs` napi callback (oxc-project#18767)
(camc314)
- e9690c1 linter: Introduce `DiscoveredConfig` in preparation for JS
configs (oxc-project#18674) (camc314)
- 558b588 linter/prefer-namespace-keyword: Move to correctness (oxc-project#18733)
(camc314)
- 7a5c268 oxlint/lsp: Support `jsPlugins` (oxc-project#17840) (Sysix)
- c07497c linter/prefer-modern-dom-apis: Implement suggestion (oxc-project#17965)
(Mikhail Baev)
- 8531bc9 linter: Implement `prefer-const` (oxc-project#18687) (camchenry)
- 8670b18 parser: Error on ambient class accessor implementations
(oxc-project#18592) (camc314)
- 6b8a5ae linter: Add `eslint-plugin-import/no-nodejs-modules` rule
(oxc-project#18006) (Mikhail Baev)
- 04f400d linter/no-duplicates: Add support for `considerQueryString`
option (oxc-project#18657) (camc314)
- 3b7f260 linter/consistent-generic-constructor: Implement fixer
(oxc-project#18616) (camc314)
- 794f9e4 linter/prefer-exponentation-operator: Implement suggestion
(oxc-project#18602) (camc314)
- 773d916 linter: `eslint/sort_keys` ignore leading and trailing spreads
in auto-fix (oxc-project#18485) (Lonami)
- 20d4ede linter: Implement `import/no-relative-parent-imports` rule
(oxc-project#18513) (Valentin Maerten)
- 0da45ef vscode: Fallback to globally installed oxlint/oxfmt packages
(oxc-project#18007) (Sysix)

### 🐛 Bug Fixes

- a3417b1 linter/plugins: Clear state when reloading workspace (oxc-project#18837)
(overlookmotel)
- c879992 linter: Error on arrays passed in as config (oxc-project#18822) (camc314)
- 5c80422 linter/tsdown: Ensure relative path for globals import starts
with `./` (oxc-project#18820) (camc314)
- 7419dfb linter: Remove invalid debug assersion, add test (oxc-project#18819)
(camc314)
- 0ca6269 ci: Fix the repo path normalization logic for tests on
Windows. (oxc-project#18815) (connorshea)
- c7b0a65 linter: Fix config option docs for `react/jsx-boolean-value`
rule. (oxc-project#18811) (connorshea)
- cce374e linter/prefer-const: Replace entire declaration over just the
`let` kw (oxc-project#18814) (camc314)
- 41f92d1 linter: Error when given config options for a lint rule that
has no config options defined. (oxc-project#18809) (connorshea)
- 0867a36 linter/consistent-index-object-style: False positive with
mapped + generic types (oxc-project#18801) (camc314)
- 1d34b42 linter: Fix 32 bit build (oxc-project#18783) (camc314)
- 95df577 linter/plugins: Handle error from `destroyWorkspace` (oxc-project#18763)
(overlookmotel)
- b3261dc linter: Fix the curly rule config to enforce the shape of the
config and emit correct docs (oxc-project#18743) (connorshea)
- d981978 linter/plugins: Use non-blocking mode when calling
`destroyWorkspace` (oxc-project#18762) (overlookmotel)
- 3f43d4c linter: Accept bools as valid values for `fixable` (oxc-project#18772)
(camc314)
- 005910a linter/plugins: Support plugins outside of workspace (oxc-project#18755)
(overlookmotel)
- fd92711 vscode: Use `fsPath` for workspace mapping (oxc-project#18728) (Sysix)
- 358b2c1 linter/consistent-generic-constructors: Check bounds when
searching for `:` token (oxc-project#18745) (connorshea)
- abd0c28 linter/capitalized-comments: Fix generated rule option docs
(oxc-project#18748) (connorshea)
- d90a9f6 linter: Add more tests for `prefer-const`'s fixer and fix its
invalid behavior. (oxc-project#18747) (connorshea)
- f82011b oxlint/lsp: Disable JS plugins support in LSP except in tests
(oxc-project#18727) (overlookmotel)
- 94505c8 linter/jest: Change `prefer-spy-on` autofix to suggestion
(oxc-project#18152) (Ben Lowery)
- 6ec1112 linter: Mark unused disable directive fix as suggestion
(oxc-project#18703) (ddmoney420)
- 49609ec linter/no-useless-constructor: Consider argument
transformation as used (oxc-project#18706) (ddmoney420)
- 40218de linter: Fix behavior of
jsx-a11y/no-static-element-interactions rule. (oxc-project#17817) (connorshea)
- db9751d linter/no-html-link-for-pages: Handle `target=_blank`
correctly (oxc-project#18693) (camc314)
- e440b78 linter/plugins: Pass all args to CFG event handlers when 2
rules use same handler (oxc-project#18683) (overlookmotel)
- b393430 linter/curly: Fix multi-or-nest and consistent conflict
(oxc-project#18660) (camc314)
- 2e1fbc2 linter/plugins: Implement `context.parserPath` (oxc-project#18644)
(overlookmotel)
- 34951ed linter/plugins: `filename` option takes precedence over
`parserOptions.lang` in `RuleTester` (oxc-project#18643) (overlookmotel)
- 28df160 linter/plugins: Allow line number passed to `report` to be 0
(oxc-project#18642) (overlookmotel)
- 14fabec vscode: Use built-in `getWorkspaceFolder` for detecting the
right workspace of a given uri (oxc-project#18583) (Sysix)
- 0ff4cea oxlint/cli: Report error when nested config could not be
parsed (oxc-project#18504) (Sysix)

### ⚡ Performance

- 9862224 linter/plugins: Reduce cost of workspaces (oxc-project#18758)
(overlookmotel)
- 6bc0bde linter: Remove string allocation (oxc-project#18725) (overlookmotel)
- 3a6b41e linter/plugins: Replace ESLint Traverser with lightweight
traverseNode (oxc-project#18529) (Rintaro Itokawa)

### 📚 Documentation

- dd1a653 linter: Fix doc comment for ignoreStateless config option.
(oxc-project#18808) (connorshea)
- 5909085 linter/plugins: Add doc comments (oxc-project#18753) (overlookmotel)
- ffe53a3 linter: Update lint function docs (oxc-project#18766) (camc314)
- b82faec linter: Glob for any css module for no-unassigned-import
(oxc-project#18713) (Ben Stickley)
- cd86347 linter: Mark some react rules as unsupported, misc docs
improvements (oxc-project#18617) (connorshea)
- 23401d8 linter: Update fixes and suggestions status for tsgolint rules
(oxc-project#18619) (camchenry)
# Oxfmt
### 🚀 Features

- ee30de9 oxfmt: Add config migration from biome (oxc-project#18638) (Luca Fischer)

### 🐛 Bug Fixes

- e754b18 oxfmt/migrate-prettier: Set `experimentalSortPackagejson:
false` by default (oxc-project#18831) (leaysgur)
- a83c266 formatter: Keep decorated function pattern hugged when params
break (oxc-project#18830) (Dunqing)
- 0c8efe1 formatter: Quote numeric property keys with `quoteProps:
consistent` (oxc-project#18803) (Dunqing)
- 9c14c3e formatter: Ignore comment does not work for sequence
expressions in arrow function body (oxc-project#18799) (Dunqing)
- 54984ae formatter: Handle leading comments in arrow function sequence
expressions (oxc-project#18798) (Dunqing)
- 61bb2b5 formatter: Correctly expand JSX returned from arrow callbacks
in JSX expression containers (oxc-project#18797) (Dunqing)
- 34ee194 formatter: Tailwindcss sorting doesn't work for object
property keys (oxc-project#18773) (Dunqing)
- 48f1e35 oxfmt: Prevent ThreadsafeFunction crash on Node.js exit
(oxc-project#18723) (Boshen)
- e96adca formatter: Follow Prettier's approach for for-in initializer
parentheses (oxc-project#18695) (Dunqing)
- 1215a6f formatter: Preserve quote for class property key in TypeScript
(oxc-project#18692) (Dunqing)
- 059acae formatter: Incorrect comments placement for union type in
`TSTypeIntersection` (oxc-project#18690) (Dunqing)
- c3d05c1 formatter,oxfmt: Handle CRLF with embedded formatting (oxc-project#18686)
(leaysgur)
- 7cb3085 formatter: Preserve comments on rest elements (oxc-project#18649)
(Dunqing)
- 21984dd formatter: Preserve type cast comments on rest parameters
(oxc-project#18648) (Dunqing)
- 2f70254 formatter: Don't add extra semicolon on suppressed class
properties (oxc-project#18631) (Dunqing)
- ac1ff4e oxfmt: Use `empty_line` IR for empty xxx-in-js line (oxc-project#18623)
(leaysgur)
- 8f76900 oxfmt: Dedent xxx-in-js templates before calling prettier
(oxc-project#18622) (leaysgur)
- 6b726ef oxfmt: Trim whitespace only xxx-in-js templates (oxc-project#18621)
(leaysgur)

Co-authored-by: camc314 <18101008+camc314@users.noreply.github.com>

crates_v0.112.0

Toggle crates_v0.112.0's commit message

Verified

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

### 💥 BREAKING CHANGES

- 445cb1a oxc_allocator: [**BREAKING**] Remove dangerous `Allocator`
methods (oxc-project#18715) (overlookmotel)

### 🚀 Features

- 8670b18 parser: Error on ambient class accessor implementations
(oxc-project#18592) (camc314)

### 🐛 Bug Fixes

- 2e34461 minifier: Prevent expression inlining into block-scoped for-in
declarations (oxc-project#18651) (copilot-swe-agent)

### 📚 Documentation

- 3d01fa1 transformer: Update links to use Oxc docs (oxc-project#18722)
(sapphi-red)

Co-authored-by: camc314 <18101008+camc314@users.noreply.github.com>

apps_v1.43.0

Toggle apps_v1.43.0's commit message

Verified

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

# Oxlint
### 💥 BREAKING CHANGES

- b34a155 linter/plugins: [**BREAKING**] `RuleTester` set
`context.filename` to absolute path (oxc-project#18702) (overlookmotel)

### 🚀 Features

- 1753209 linter/vscode: Run extension when JS configs are detected
(oxc-project#18832) (camc314)
- c962dd2 linter/lsp: Implement support for oxlint.config.ts (oxc-project#18826)
(camc314)
- da32203 linter: Auto generate oxlint.config.ts types (oxc-project#18597)
(camc314)
- 19b4df7 oxlint: Introduce `defineConfig` helper (oxc-project#18596) (camc314)
- ea97231 linter: Implement `oxlint.config.ts` support (oxc-project#17563)
(camc314)
- 17ca42d linter: Implement `react/no-multi-comp` rule. (oxc-project#18794)
(connorshea)
- 88f30e0 linter/plugins: Move eslint compatible plugin conversion to
`eslintCompatPlugin` function (oxc-project#18791) (overlookmotel)
- 2a72794 linter/plugins: `RuleTester` take `cwd` property (oxc-project#18756)
(overlookmotel)
- 9f533db linter: Add `find_prev_token_within` method for token search
(oxc-project#18769) (camc314)
- 772ea70 linter: Introduce `load_js_configs` napi callback (oxc-project#18767)
(camc314)
- e9690c1 linter: Introduce `DiscoveredConfig` in preparation for JS
configs (oxc-project#18674) (camc314)
- 558b588 linter/prefer-namespace-keyword: Move to correctness (oxc-project#18733)
(camc314)
- 7a5c268 oxlint/lsp: Support `jsPlugins` (oxc-project#17840) (Sysix)
- c07497c linter/prefer-modern-dom-apis: Implement suggestion (oxc-project#17965)
(Mikhail Baev)
- 8531bc9 linter: Implement `prefer-const` (oxc-project#18687) (camchenry)
- 8670b18 parser: Error on ambient class accessor implementations
(oxc-project#18592) (camc314)
- 6b8a5ae linter: Add `eslint-plugin-import/no-nodejs-modules` rule
(oxc-project#18006) (Mikhail Baev)
- 04f400d linter/no-duplicates: Add support for `considerQueryString`
option (oxc-project#18657) (camc314)
- 3b7f260 linter/consistent-generic-constructor: Implement fixer
(oxc-project#18616) (camc314)
- 794f9e4 linter/prefer-exponentation-operator: Implement suggestion
(oxc-project#18602) (camc314)
- 773d916 linter: `eslint/sort_keys` ignore leading and trailing spreads
in auto-fix (oxc-project#18485) (Lonami)
- 20d4ede linter: Implement `import/no-relative-parent-imports` rule
(oxc-project#18513) (Valentin Maerten)
- 0da45ef vscode: Fallback to globally installed oxlint/oxfmt packages
(oxc-project#18007) (Sysix)

### 🐛 Bug Fixes

- a3417b1 linter/plugins: Clear state when reloading workspace (oxc-project#18837)
(overlookmotel)
- c879992 linter: Error on arrays passed in as config (oxc-project#18822) (camc314)
- 5c80422 linter/tsdown: Ensure relative path for globals import starts
with `./` (oxc-project#18820) (camc314)
- 7419dfb linter: Remove invalid debug assersion, add test (oxc-project#18819)
(camc314)
- 0ca6269 ci: Fix the repo path normalization logic for tests on
Windows. (oxc-project#18815) (connorshea)
- c7b0a65 linter: Fix config option docs for `react/jsx-boolean-value`
rule. (oxc-project#18811) (connorshea)
- cce374e linter/prefer-const: Replace entire declaration over just the
`let` kw (oxc-project#18814) (camc314)
- 41f92d1 linter: Error when given config options for a lint rule that
has no config options defined. (oxc-project#18809) (connorshea)
- 0867a36 linter/consistent-index-object-style: False positive with
mapped + generic types (oxc-project#18801) (camc314)
- 1d34b42 linter: Fix 32 bit build (oxc-project#18783) (camc314)
- 95df577 linter/plugins: Handle error from `destroyWorkspace` (oxc-project#18763)
(overlookmotel)
- b3261dc linter: Fix the curly rule config to enforce the shape of the
config and emit correct docs (oxc-project#18743) (connorshea)
- d981978 linter/plugins: Use non-blocking mode when calling
`destroyWorkspace` (oxc-project#18762) (overlookmotel)
- 3f43d4c linter: Accept bools as valid values for `fixable` (oxc-project#18772)
(camc314)
- 005910a linter/plugins: Support plugins outside of workspace (oxc-project#18755)
(overlookmotel)
- fd92711 vscode: Use `fsPath` for workspace mapping (oxc-project#18728) (Sysix)
- 358b2c1 linter/consistent-generic-constructors: Check bounds when
searching for `:` token (oxc-project#18745) (connorshea)
- abd0c28 linter/capitalized-comments: Fix generated rule option docs
(oxc-project#18748) (connorshea)
- d90a9f6 linter: Add more tests for `prefer-const`'s fixer and fix its
invalid behavior. (oxc-project#18747) (connorshea)
- f82011b oxlint/lsp: Disable JS plugins support in LSP except in tests
(oxc-project#18727) (overlookmotel)
- 94505c8 linter/jest: Change `prefer-spy-on` autofix to suggestion
(oxc-project#18152) (Ben Lowery)
- 6ec1112 linter: Mark unused disable directive fix as suggestion
(oxc-project#18703) (ddmoney420)
- 49609ec linter/no-useless-constructor: Consider argument
transformation as used (oxc-project#18706) (ddmoney420)
- 40218de linter: Fix behavior of
jsx-a11y/no-static-element-interactions rule. (oxc-project#17817) (connorshea)
- db9751d linter/no-html-link-for-pages: Handle `target=_blank`
correctly (oxc-project#18693) (camc314)
- e440b78 linter/plugins: Pass all args to CFG event handlers when 2
rules use same handler (oxc-project#18683) (overlookmotel)
- b393430 linter/curly: Fix multi-or-nest and consistent conflict
(oxc-project#18660) (camc314)
- 2e1fbc2 linter/plugins: Implement `context.parserPath` (oxc-project#18644)
(overlookmotel)
- 34951ed linter/plugins: `filename` option takes precedence over
`parserOptions.lang` in `RuleTester` (oxc-project#18643) (overlookmotel)
- 28df160 linter/plugins: Allow line number passed to `report` to be 0
(oxc-project#18642) (overlookmotel)
- 14fabec vscode: Use built-in `getWorkspaceFolder` for detecting the
right workspace of a given uri (oxc-project#18583) (Sysix)
- 0ff4cea oxlint/cli: Report error when nested config could not be
parsed (oxc-project#18504) (Sysix)

### ⚡ Performance

- 9862224 linter/plugins: Reduce cost of workspaces (oxc-project#18758)
(overlookmotel)
- 6bc0bde linter: Remove string allocation (oxc-project#18725) (overlookmotel)
- 3a6b41e linter/plugins: Replace ESLint Traverser with lightweight
traverseNode (oxc-project#18529) (Rintaro Itokawa)

### 📚 Documentation

- dd1a653 linter: Fix doc comment for ignoreStateless config option.
(oxc-project#18808) (connorshea)
- 5909085 linter/plugins: Add doc comments (oxc-project#18753) (overlookmotel)
- ffe53a3 linter: Update lint function docs (oxc-project#18766) (camc314)
- b82faec linter: Glob for any css module for no-unassigned-import
(oxc-project#18713) (Ben Stickley)
- cd86347 linter: Mark some react rules as unsupported, misc docs
improvements (oxc-project#18617) (connorshea)
- 23401d8 linter: Update fixes and suggestions status for tsgolint rules
(oxc-project#18619) (camchenry)
# Oxfmt
### 🚀 Features

- ee30de9 oxfmt: Add config migration from biome (oxc-project#18638) (Luca Fischer)

### 🐛 Bug Fixes

- e754b18 oxfmt/migrate-prettier: Set `experimentalSortPackagejson:
false` by default (oxc-project#18831) (leaysgur)
- a83c266 formatter: Keep decorated function pattern hugged when params
break (oxc-project#18830) (Dunqing)
- 0c8efe1 formatter: Quote numeric property keys with `quoteProps:
consistent` (oxc-project#18803) (Dunqing)
- 9c14c3e formatter: Ignore comment does not work for sequence
expressions in arrow function body (oxc-project#18799) (Dunqing)
- 54984ae formatter: Handle leading comments in arrow function sequence
expressions (oxc-project#18798) (Dunqing)
- 61bb2b5 formatter: Correctly expand JSX returned from arrow callbacks
in JSX expression containers (oxc-project#18797) (Dunqing)
- 34ee194 formatter: Tailwindcss sorting doesn't work for object
property keys (oxc-project#18773) (Dunqing)
- 48f1e35 oxfmt: Prevent ThreadsafeFunction crash on Node.js exit
(oxc-project#18723) (Boshen)
- e96adca formatter: Follow Prettier's approach for for-in initializer
parentheses (oxc-project#18695) (Dunqing)
- 1215a6f formatter: Preserve quote for class property key in TypeScript
(oxc-project#18692) (Dunqing)
- 059acae formatter: Incorrect comments placement for union type in
`TSTypeIntersection` (oxc-project#18690) (Dunqing)
- c3d05c1 formatter,oxfmt: Handle CRLF with embedded formatting (oxc-project#18686)
(leaysgur)
- 7cb3085 formatter: Preserve comments on rest elements (oxc-project#18649)
(Dunqing)
- 21984dd formatter: Preserve type cast comments on rest parameters
(oxc-project#18648) (Dunqing)
- 2f70254 formatter: Don't add extra semicolon on suppressed class
properties (oxc-project#18631) (Dunqing)
- ac1ff4e oxfmt: Use `empty_line` IR for empty xxx-in-js line (oxc-project#18623)
(leaysgur)
- 8f76900 oxfmt: Dedent xxx-in-js templates before calling prettier
(oxc-project#18622) (leaysgur)
- 6b726ef oxfmt: Trim whitespace only xxx-in-js templates (oxc-project#18621)
(leaysgur)

Co-authored-by: camc314 <18101008+camc314@users.noreply.github.com>

oxlint_v1.42.0

Toggle oxlint_v1.42.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
perf(linter/plugins): use SoA pattern with 2 arrays for CFG steps (ox…

…c-project#18528)

Part 2 of oxc-project#17232, continuing after oxc-project#18527 - CFG walker optimization.

- Replace single `steps` array with 2 SoA (Struct of Arrays):
  - `stepTypeIds`: encoded type IDs
  - `stepData`: node or args array
- Encode step types using type ID offset:
  - Enter visits: typeId directly (0-164 for node types)
  - CFG events: typeId directly (165-171 for event types)
  - Exit visits: typeId + 256 (offset to distinguish from enter)
- Pre-compute type IDs during step preparation phase

Benefits:

- Reduces object creation overhead (no step objects needed).
- Halves the number of `NODE_TYPE_IDS_MAP` hash map lookups to convert
node types (strings) to type IDs.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: overlookmotel <theoverlookmotel@gmail.com>

oxfmt_v0.27.0

Toggle oxfmt_v0.27.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
perf(linter/plugins): use SoA pattern with 2 arrays for CFG steps (ox…

…c-project#18528)

Part 2 of oxc-project#17232, continuing after oxc-project#18527 - CFG walker optimization.

- Replace single `steps` array with 2 SoA (Struct of Arrays):
  - `stepTypeIds`: encoded type IDs
  - `stepData`: node or args array
- Encode step types using type ID offset:
  - Enter visits: typeId directly (0-164 for node types)
  - CFG events: typeId directly (165-171 for event types)
  - Exit visits: typeId + 256 (offset to distinguish from enter)
- Pre-compute type IDs during step preparation phase

Benefits:

- Reduces object creation overhead (no step objects needed).
- Halves the number of `NODE_TYPE_IDS_MAP` hash map lookups to convert
node types (strings) to type IDs.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: overlookmotel <theoverlookmotel@gmail.com>

crates_v0.111.0

Toggle crates_v0.111.0's commit message

Verified

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

### 💥 BREAKING CHANGES

- 22dec6a semantic: [**BREAKING**] Remove
`Scoping::scope_build_child_ids` and all related APIs (oxc-project#18362) (Dunqing)
- 30a4899 oxc: [**BREAKING**] Remove
`CompilerInterface::semantic_child_scope_ids` (oxc-project#18361) (Dunqing)
- 777fc40 ast: [**BREAKING**] Add `Ident` type (oxc-project#18354) (Boshen)
- af0ca46 span: [**BREAKING**] Use `ModuleKind::CommonJS` for
`SourceType::cjs()` (oxc-project#18276) (sapphi-red)

### 🚀 Features

- 0a02026 semantic: Add TS1499 code to diagnostic (oxc-project#18557) (camc314)
- 8b4618f parser: Add TS1500 code to diagnostic (oxc-project#18547) (camc314)
- 866b6b3 parser: Add TS1048 code to diagnostic (oxc-project#18546) (camc314)
- 1117c44 parser: Add TS1054 code to diagnostic (oxc-project#18541) (camc314)
- e4fcdde semantic: Add TS1053 code to diagnostic (oxc-project#18539) (camc314)
- bcbf396 semantic: Add TS1052 code to diagnostic (oxc-project#18538) (camc314)
- 8155edf semantic: Add TS1049 code to diagnostic (oxc-project#18535) (camc314)
- 51d3b3f parser: Add TS1502 code to diagnostic (oxc-project#18534) (camc314)
- 00854e8 semantic: Add TS2337 error code to super call diagnostic
(oxc-project#18531) (camc314)
- 993fd2b parser: Parse unambiguous await with better error messages
(oxc-project#18480) (Boshen)
- 8db0e78 linter/plugins: Handle BOMs (oxc-project#18376) (overlookmotel)
- 6ac09e2 linter/plugins: Support source text not being at start of
buffer (oxc-project#18375) (overlookmotel)
- 2ef5647 ast: Add escape_raw parameter to template_element builders
(oxc-project#18121) (Boshen)

### 🐛 Bug Fixes

- 74d0998 semantic: Update error msg for multiple `default` cases in
switch stmt (oxc-project#18526) (camc314)
- c205b0d ast: Remove `ThisExpression` from `TSModuleReference` (oxc-project#18489)
(Boshen)
- aed3669 parser: Parse HTML-like comments in unambiguous mode (oxc-project#18442)
(Boshen)
- c4132fb parser: Validate accessor parameters in interface method
signatures (oxc-project#18391) (Boshen)
- b0cd74d semantic: Allow `var` and `function` with same name in static
blocks (oxc-project#18358) (Boshen)
- 6037995 semantic: Allow `new.target` in class field initializers
(oxc-project#18349) (Boshen)
- 9a15c6a semantic: Do not rely on spans for node comparison in
`Function::bind` (oxc-project#18296) (overlookmotel)

### ⚡ Performance

- 6b600c4 semantic: Skip parent lookup for function declarations in
`Function::bind` (oxc-project#18293) (overlookmotel)
- c27ad2d semantic: Move check for function declaration out of
`is_function_part_of_if_statement` (oxc-project#18292) (overlookmotel)
- 63eb89e semantic: Skip checking redeclarations for function
expressions (oxc-project#18291) (overlookmotel)
- 7c12743 semantic: Skip checking unresolved exports in CommonJS files
(oxc-project#18250) (overlookmotel)
- 2349031 allocator: Increase initial chunk size from 512B to 16KB
(oxc-project#18234) (Boshen)

### 📚 Documentation

- 8ccd853 npm: Update package homepage URLs and add keywords (oxc-project#18509)
(Boshen)
- 9b3165f napi/parser: Clarify when to use `parseAsync` vs `parseSync`
(oxc-project#18486) (Boshen)
- 1b59f63 napi/parser: Correct typo in README (oxc-project#18251) (overlookmotel)
- 00ff75f mangler: Fix `top_level` option in example (oxc-project#18233)
(overlookmotel)
- 2ddc073 semantic: Fix typo in comment (oxc-project#18238) (overlookmotel)

Co-authored-by: Boshen <1430279+Boshen@users.noreply.github.com>

apps_v1.42.0

Toggle apps_v1.42.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
perf(linter/plugins): use SoA pattern with 2 arrays for CFG steps (ox…

…c-project#18528)

Part 2 of oxc-project#17232, continuing after oxc-project#18527 - CFG walker optimization.

- Replace single `steps` array with 2 SoA (Struct of Arrays):
  - `stepTypeIds`: encoded type IDs
  - `stepData`: node or args array
- Encode step types using type ID offset:
  - Enter visits: typeId directly (0-164 for node types)
  - CFG events: typeId directly (165-171 for event types)
  - Exit visits: typeId + 256 (offset to distinguish from enter)
- Pre-compute type IDs during step preparation phase

Benefits:

- Reduces object creation overhead (no step objects needed).
- Halves the number of `NODE_TYPE_IDS_MAP` hash map lookups to convert
node types (strings) to type IDs.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: overlookmotel <theoverlookmotel@gmail.com>

oxlint_v1.41.0

Toggle oxlint_v1.41.0's commit message

Verified

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

# Oxlint
### ⚡ Performance

- 1a247f1 linter/no-redeclare: Avoid repeated PHF hashmap lookups
(oxc-project#18248) (overlookmotel)

### 📚 Documentation

- 8a294d5 oxfmt, oxlint: Update logo (oxc-project#18242) (Dunqing)
# Oxfmt
### 🐛 Bug Fixes

- 864b4ab oxfmt: Use `format_config` for `external_options` override
(oxc-project#18252) (leaysgur)
- 90ce4b7 oxfmt: Restore `customGroups` handling lost (oxc-project#18243)
(leaysgur)

### 📚 Documentation

- 8a294d5 oxfmt, oxlint: Update logo (oxc-project#18242) (Dunqing)

Co-authored-by: overlookmotel <557937+overlookmotel@users.noreply.github.com>

oxlint_v1.40.0

Toggle oxlint_v1.40.0's commit message

Verified

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