This PR contains the following updates:
Release Notes
oxc-project/eslint-plugin-oxlint (eslint-plugin-oxlint)
Compare Source
🚀 Features
Compare Source
No significant changes
Compare Source
No significant changes
Compare Source
No significant changes
Compare Source
No significant changes
Compare Source
No significant changes
Compare Source
No significant changes
Compare Source
No significant changes
Compare Source
No significant changes
oxc-project/oxc (oxlint)
Compare Source
Features
6a7018e linter: Generate stricter json schema for lint plugins (#11219) (camc314)
Bug Fixes
v0.16.11: oxlint v0.16.11
Compare Source
[0.16.11] - 2025年05月16日
Features
078bf0b language_server: Better fallback handling when passing invalid Options values (#10930) (Sysix)
be7f7e1 language_server/editor: Support multi workspace folders (#10875) (Sysix)
eef93b4 linter: Add import/no-unassigned-import (#10970) (yefan)
cc0112f linter: No-unused-vars add setting for reportVarsOnlyUsedAsTypes (#11009) (camc314)
17e49c3 linter: Implement configuration and checking loops for eslint/no_constant_condition (#10949) (Ulrich Stark)
21117ac linter: Implement react/forbid-elements (#10928) (Thomas BOCQUEZ)
466c24a linter: Add gitlab reporter output format (#10927) (Connor Pearson)
a064082 linter: Add import/consistent-type-specifier-style rule (#10858) (yefan)
4733b52 linter/no-extraneous-class: Add conditional fixer (#10798) (DonIsaac)
Bug Fixes
87bf2a8 editor: Send only workspace/didChangeConfiguration when some workspace configuration is effected (#11017) (Sysix)
ed5708d editor: Detect all workspaces config path changes (#11016) (Sysix)
89cc21b language_server: Normalize oxlintrc config path (#10982) (Sysix)
c52a9ba linter: Fix plugins inside overrides not being applied (#11057) (camc314)
b12bd48 linter: Fix rule config not being correctly applied (#11055) (camc314)
9a368be linter: False negative in no-restriced-imports with patterns and side effects (#11027) (camc314)
8c2cfbc linter: False negative in no-restricted-imports (#11026) (camc314)
8956870 linter: False positive in no-unused-vars (#11002) (camc314)
33a60d2 linter: Skip eslint/no-redeclare when running on modules (#11004) (camc314)
39063ce linter: Reword diagnostic message for no-control-regex (#10993) (camc314)
9eedb58 linter: False positive with negative matches in no-restricted-imports (#10976) (camc314)
10e77d7 linter: Improve diagnostics for no-control-regex (#10959) (camc314)
0961296 linter: Add gitlab to linter --help docs (#10932) (camc314)
82889ae linter/no-extraneous-class: Improve docs, reporting and code refactor (#10797) (DonIsaac)
11c34e7 linter/no-img-element: Improve diagnostic and docs (#10908) (DonIsaac)
584d8b9 napi: Enable mimalloc no_opt_arch feature on linux aarch64 (#11053) (Boshen)
126ae75 semantic: Distinguish class private elements (#11044) (magic-akari)
773d0de semantic: Correctly handle nested brackets in jsdoc parsing (#10922) (camc314)
b215b6c semantic: Dont parse @ as jsdoc tags inside [/] (#10919) (camc314)
Documentation
db6afb9 linter: Improve docs of no-debugger (#11033) (camc314)
16541de linter: Improve docs of default-param-last (#11032) (camc314)
2c2f3c4 linter: Improve docs of default-case-last (#11031) (camc314)
56bb9ce linter: Improve docs of array-callback-return (#11030) (camc314)
13dbcc6 linter: Correct docs for default config for no-redeclare (#10995) (camc314)
a86cbb3 linter: Fix incorrect backticks of fenced code blocks (#10947) (Ulrich Stark)
Refactor
3cc1466 language_server: New configuration structure for initialize and workspace/didChangeConfiguration (#10890) (Sysix)
bd2ef7d language_server: Use Arc for diagnostic_report_map (#10940) (Sysix)
bb999a3 language_server: Avoid cloning linter by taking reference in LintService (#10907) (Ulrich Stark)
d1b0c83 linter: Remove overrides index vec (#11058) (camc314)
7ad6cf8 linter: Store severity separately, remove RuleWithSeverity (#11051) (camchenry)
e31c361 linter: Remove nested match statements in no-restricted-imports (#10975) (camc314)
6ad9d4f linter: Tidy eslint/func-names (#10923) (camc314)
faf0a95 syntax: Rename NameSpaceModule to NamespaceModule (#10917) (Dunqing)
Testing
76b6b33 editor: Add tests for multi workspace folder setup (#10904) (Sysix)
v0.16.10: oxlint v0.16.10
Compare Source
[0.16.10] - 2025年05月09日
Features
e1bc037 language_server: Request for workspace configuration when client did not send them in initialize (#10789) (Sysix)
3bd339b language_server: Provide commands / code actions for unopened files (#10815) (Sysix)
4c62348 linter: Regex/no-useless-backreference (#10773) (camc314)
d7ebdd7 linter: Add unicorn/no-unnecessary-slice-end rule (#10826) (yefan)
Bug Fixes
f3cc3a2 language_server: Request client for configuration when no configuration is passed in workspace/didChangeConfiguration (#10871) (Sysix)
24fcb1e language_server: Return server version initialize response (#10810) (Sysix)
7d09973 linter: False positive with withResolvers in prefer-await-to-then (#10896) (camc314)
9b94300 linter: Mark fixer as dangerous for erasing-op (#10868) (camc314)
ae70cc1 linter: Add missing option to no-shadow-restricted-names (#10827) (camc314)
b2c287f linter/no-unused-vars: Fixer cannot delete usused for in/of iterators (#10824) (DonIsaac)
5ce0a68 linter/no-unused-vars: Recognize parameters used in await/yield expressions within comma expressions (#10808) (magic-akari)
Performance
00ffbc9 language_server: Do not request for configuration when all workers are ready (#10897) (Sysix)
96cca22 language_server: Use simdutf8 when reading files from file system (#10814) (Sysix)
Documentation
efaadd3 linter: Fix a few incorrect backticks in no_restricted_imports (#10914) (Boshen)
ccda8f0 linter: Improve no-plusplus docs (#10885) (Peter Cardenas)
5f15809 linter: Improve docs for jsdoc/require-property (#10705) (camc314)
Refactor
553ab5b language_server: Remove OnceCell from WorkspaceWorker.root_uri (#10898) (Sysix)
f43fd18 language_server: Move the initialization of ServerLinter into a separate call (#10776) (Sysix)
39e0463 language_server: Move nested_configs to ServerLinter (#10775) (Sysix)
9ec13f6 language_server: Move gitignore_glob to ServerLinter (#10762) (Sysix)
3d47159 language_server: Use IsolatedLintHandlerFileSystem (#10830) (Sysix)
3d794f6 language_server: Move functions related to ServerLinter to ServerLinter (#10761) (Sysix)
79819cc linter: Move around some config store logic (#10861) (camc314)
e132aba linter: Extract nested config searching to a fn (#10860) (camc314)
243c247 linter: Able to use custom file system in runtime (#10828) (Sysix)
efb4fb8 oxlint: Avoid result unwrap (#10836) (camc314)
Testing
47b946d linter: Use TesterFileSystem for Runtimes filesystem (#10829) (Sysix)
v0.16.9: oxlint v0.16.9
Compare Source
[0.16.9] - 2025年05月03日
Features
63f02a8 linter: Add react/forward_ref_uses_ref (#10506) (x6eull)
a3ada34 linter: Implement fixer for unicorn/prefer-number-properties (#10693) (camc314)
e97a4e0 linter: Add fixer to unicorn/prefer-spread (#10691) (camc314)
a69a0ee linter: Add eslint/block-scoped-var (#10237) (yefan)
387af3a linter: Report vars only used as types (#10664) (camc314)
eac205f linter: Add unicorn/consistent-assert rule (#10653) (Shota Kitahara)
0e6a727 linter: Add autofixer for eslint/radix (#10652) (yefan)
fb070c4 linter/no-extra-boolean-cast: Implement auto-fixer (#10682) (DonIsaac)
432cd77 linter/no-new-wrapper: Implement auto-fixer (#10680) (DonIsaac)
Bug Fixes
4ee95ec editor: Activate extension when astro files are opened too (#10725) (Sysix)
46665bd langage_server: Fix initialize nested configs (#10698) (Sysix)
eb3f37c language_server: On configuration change, send updated diagnostics to the client (#10764) (Sysix)
8c499c6 linter: Fix panic when doing code gen on regexp (#10769) (camc314)
8e99abf linter: Fix grammer in no unused vars diagnostic msg (#10770) (camc314)
b38338a linter: Make require post message target origin a fixer a suggestion (#10754) (camc314)
48c542d linter: Skip linting vue <script> where lang is not js / ts (#10740) (Boshen)
c9575f6 linter: Fix false positive in react/exhaustive deps (#10727) (camc314)
d8d8f64 linter: Shorten span of promise/prefer-await-to-then (#10717) (camc314)
a88e349 linter: Mark isNan and isFinite as dangerous fixes in unicorn/prefer-number-properties (#10706) (Sysix)
f4ab05f linter: Panic in unicorn/no-useless-spread (#10715) (camc314)
06f1717 linter: False positive in no unused vars when importing value used as type (#10690) (camc314)
746b318 linter: False positive in typescript/explicit-function-return-type with satisfies (#10668) (camc314)
cce1043 linter: False positive in typescript/explicit-function-return-type (#10667) (camc314)
c89da93 linter: False positive in eslint/curly on windows (#10671) (camc314)
374e19e linter: False positive in react/jsx-curly-brace-presence (#10663) (camc314)
e7c2b32 linter: Move consistent-assert to pedantic (#10665) (camc314)
344ef88 linter: False positive in eslint/no-unused-vars when calling inside sequence expression (#10646) (Ulrich Stark)
98bcd5f lsp: Incorrect quick fix offset in vue files (#10742) (camc314)
Documentation
Refactor
Testing
1c4f90f editor: Add test for nested config serverity (#10697) (Sysix)
9ebf3d4 language_server: Refactor tester to use WorkspaceWorker (#10730) (Sysix)
5a709ad language_server: Add test for init_nested_configs (#10728) (Sysix)
2615758 language_server: Fix slow test (#10659) (Alexander S.)
fd18aaa language_server: Skip slow test (#10658) (overlookmotel)
f6f1c5c lsp: Include fixed content in lsp snapshots (#10744) (camc314)
v0.16.8: oxlint v0.16.8
Compare Source
[0.16.8] - 2025年04月27日
Features
53394a7 linter: Add auto-fix for eslint/require-await (#10624) (yefan)
6908bc3 linter: Add autofix for react/self-closing-comp (#10512) (x6eull)
e228840 parser: Fast forward lexer to EOF if errors are encountered (#10579) (Boshen)
Bug Fixes
966fb03 editor: Fix memory leaks when server or watchers restarted (#10628) (Sysix)
f3eac51 language_server: Fix max integer values for range position (#10623) (Alexander S.)
d309e07 language_server: Fix panics when paths contains specials characters like [ or ] (#10622) (Alexander S.)
91ce77a language_server: Temporary ignore tests that panic on Windows (#10583) (Yuji Sugiura)
723b4c6 linter: Cross_module of LintService not being enabled despite enabled import plugin (#10597) (Ulrich Stark)
39adefe linter: Handle re-exporting of type correctly in import/no-cycle (#10606) (Ulrich Stark)
e67901b linter: Incorrect fix for prefer start ends with (#10533) (camc314)
7c85ae7 linter/no-empty-function: Support 'allow' option (#10605) (Don Isaac)
9a02066 oxlint: Current dir as arg (#9382) (Ben Jones)
a9785e3 parser,linter: Consider typescript declarations for named exports (#10532) (Ulrich Stark)
Performance
3c27d0d editor: Avoid sending workspace/didChangeConfiguration request when the server needs a restarts (#10550) (Sysix)
Refactor
e903ba2 editor: Split Config to VSCodeConfig and WorkspaceConfig (#10572) (Sysix)
f6c6969 language_server: Make linter independent of Backend (#10497) (Sysix)
db05a15 language_server: Do not request for worspace configuration when the client does not support it (#10507) (Sysix)
9f9e0e5 language_server: Move code actions into own file (#10479) (Sysix)
Testing
9f43a58 language_server: Fix broken tests in windows (#10600) (Sysix)
8a2b250 linter: Fix incorrect test fixture for prefer-each (#10587) (Boshen)
v0.16.7: oxlint v0.16.7
Compare Source
[0.16.7] - 2025年04月21日
Features
bb8a078 language_server: Use linter runtime / support import plugin (#10268) (Sysix)
c94e6b8 linter: Allow eqeqeq to always be dangerously fixable (#10499) (camchenry)
Bug Fixes
df488d4 language_server: Workspace edits as one batch when source.fixAll.oxc is the context (#10428) (Sysix)
2fc083c linter: Incorrect fix for prefer start ends with (#10525) (camc314)
020d8f8 linter: Fix auto-fix issue for eslint/no-else-return (#10494) (yefan)
f0c1eff linter: False positve in no-unused-vars (#10470) (camc314)
d690060 linter: Fix the auto-fix issue of the eslint/no-plusplus rule (#10469) (yefan)
72d5074 linter: False positive in eslint/no-redeclare (#10402) (shulaoda)
c1f5623 linter: Add check for plugin_name when applying LintFilterKind::Rule (#10339) (Ulrich Stark)
4e1f536 linter: Config path resolution when path contains '..' syntax (#10367) (Florian Bopp)
58ab8ff parser: Adjust class start position when decorators are involved (#10438) (Boshen)
Performance
21f3175 langage_server: Prebuild IsolatedLintHandler (#10406) (Sysix)
62178c2 linter: Replace phf_set with array for DOM_PROPERTIES_NAMES (#10501) (shulaoda)
9280707 linter: Replace phf_set with array for DOM_ATTRIBUTES_TO_CAMEL (#10500) (shulaoda)
0a4f9d9 linter: Replace phf_set with array for ATTRIBUTE_TAGS_MAP (#10498) (shulaoda)
09f7358 linter: Replace phf_set with array in jsdoc/check-tag-names (#10485) (shulaoda)
da87390 linter: Replace phf_set with array in jsx-a11y/autocomplete-valid (#10484) (shulaoda)
d4033bc linter: Replace phf_set with array in globals.rs (#10483) (shulaoda)
7e08618 linter: Replace phf_set with array in unicorn/prefer-add-event-listener (#10451) (dalaoshu)
e2af873 linter: Replace phf_set with array in unicorn/no-useless-undefined (#10450) (dalaoshu)
af635fb linter: Replace phf_set with array in nextjs/no-unwanted-polyfillio (#10452) (shulaoda)
c0f0369 linter: Replace phf_set with array in utils/vitest (#10427) (shulaoda)
17c7bda linter: Replace phf_set with array in unicorn/prefer-type-error (#10426) (shulaoda)
5cde29b linter: Replace phf_set with array in react/void-dom-elements-no-children (#10425) (shulaoda)
7ef1e0d linter: Replace phf_set with array in unicorn/new-for-builtins (#10424) (shulaoda)
50fd839 linter: Replace phf_set with array in utils/mod.rs (#10405) (shulaoda)
a7ac137 linter: Replace phf_set with array in unicorn/prefer-set-has (#10398) (shulaoda)
Documentation
5d1dfb5 linter: Fix wording in the eqeqeq docs (#10401) (Connor Pearson)
Refactor
8731f14 editor: Output error when custom server path is not accessible (#10518) (Sysix)
2935103 language_server: Report info as warning instead of error when falling back to default config (#10517) (Sysix)
5ab4d40 linter: Simplify error handling (#10404) (camchenry)
Testing
83baf8b editor: Correct test diagnostic for import plugin (#10453) (Sysix)
v0.16.6: oxlint v0.16.6
Compare Source
[0.16.6] - 2025年04月14日
Features
0370363 language_server: Switch tower-lsp to tower-lsp-server (#10298) (Boshen)
d48e886 linter: Add import/group-exports rule (#10330) (yefan)
Bug Fixes
664342b language_server: Diable nested configuration when config path is provided (#10385) (Sysix)
04e2fd4 linter: Fix false positives for no-control-regex (#10345) (Cam McHenry)
e000f60 linter: Make extended configs properly inherit plugins (#10174) (Sub)
81867c4 linter: Fix stack overflow in react/exhaustive deps (#10322) (camc314)
9aaba69 linter: Nested configuration directory resolution (#10157) (Sub)
Performance
e0057c3 language_server: Only restart internal linter once when multiple config changes detected (#10256) (Sysix)
1bb61c6 linter: Replace phf_set with array in unicorn/prefer-native-coercion-functions (#10384) (shulaoda)
e1e7a19 linter: Replace phf_set with array in unicorn/no-array-for-each (#10377) (dalaoshu)
5f0e66c linter: Replace phf_set with array in unicorn/prefer-spread (#10376) (dalaoshu)
8d9559d linter: Replace phf_set with array in react/jsx-key (#10375) (dalaoshu)
fbd4f92 linter: Replace phf_set with array in utils::jest (#10369) (shulaoda)
8d0eb33 linter: Replace phf_set with array in utils::express (#10370) (shulaoda)
ba538ff linter: Use binary_search for arrays with more than 7 elements (#10357) (shulaoda)
283e4c7 linter: Replace phf_set with array in react/exhaustive-deps (#10337) (shulaoda)
8b8d708 linter: Replace phf_set with array in nextjs/no-typos (#10336) (shulaoda)
0fd93d6 linter: Replace phf_set with array in utils::promise (#10335) (shulaoda)
485ba19 linter: Replace phf_set with array in jest/prefer-jest-mocked (#10302) (shulaoda)
83931ec linter: Replace phf_set with array in jsdoc/check-access (#10303) (shulaoda)
651b56f linter: Replace phf_set with array in jsdoc/empty-tags (#10304) (shulaoda)
7ffb7aa linter: Replace phf_set with array in jsdoc/require-returns (#10305) (shulaoda)
d7399c4 linter: Replace phf_set with array in jsx-a11y/no-noninteractive-tabindex (#10306) (shulaoda)
afe663b linter: Replace phf_set with array in jest/no-restricted-matchers (#10297) (shulaoda)
bd27959 linter: Replace phf_set with array in eslint/array-callback-return (#10296) (shulaoda)
1aa0d71 linter: Replace phf_set with array in react/no-array-index-key (#10294) (shulaoda)
d9c4891 linter: Replace phf_set with array in eslint/valid-typeof (#10293) (shulaoda)
Refactor
a95ba40 language_server: Make server more error resistance by falling back to default config (#10257) (Sysix)
2e1ef4c linter: Extract common logic from jsdoc/require-yields and jsdoc/require-returns (#10383) (shulaoda)
9533d09 linter: Remove duplicate ARIA property lists (#10326) (camchenry)
67bd7aa linter: Add AriaProperty enum (#10325) (camchenry)
52ea978 linter: Update comments, improve tests, add variant All to LintFilterKind (#10259) (Ulrich Stark)
Testing
62f7d76 editor: Refactor tests to use fixtures (#10381) (Sysix)
4a6bb21 language_server: Add test for import plugin integration (#10364) (Sysix)
aa6ccd2 oxlint: Add test for nested and extended configuration with import plugin (#10372) (Sysix)
v0.16.5: oxlint v0.16.5
Compare Source
[0.16.5] - 2025年04月07日
Reduced Oxlint binary size from 6.32 MB to 5.8 MB.
Features
2f6810a editor: Add named fixes for code actions (#10203) (camchenry)
32b9d1e language_server: Add fix_kind flag (#10226) (Sysix)
dab1bd8 language_server: Search for nested configurations by initialization (#10120) (Sysix)
794b180 linter: Add messages for complex fixes (#10279) (camchenry)
bde73b5 linter: Add unicorn/no-accessor-recursion rule (#9971) (yefan)
Bug Fixes
03ba760 linter: jsdoc/require-param: skip rule if any doc has @type tag (#10282) (Cam McHenry)
f2eff56 linter: Fix rule_id for some diagnostics formats (#10251) (Alexander S.)
7c54ea1 linter: Rule no-restricted-imports allow combination of paths and patterns (#10224) (Sysix)
6174129 linter: Run react/no-children-props only when react framework is found (#10225) (Sysix)
cc1267e linter: Fix Display impl for ConfigBuilderError (#10239) (overlookmotel)
Documentation
f115f71 editor: Add readme block for possible configurations (#10243) (Sysix)
3d4ed3e linter: Rule eslint/eqeqeq add "null" & "smart" options (#10258) (Jacob Smith)
ec34ef3 rules/react: Adding missing code block ending (#10218) (Cannonbark)
Testing
297d07f editor: Add e2e tests for creating oxlint configurations on the fly (#10138) (Sysix)
29be469 editor: Add test for code actions (#10168) (camchenry)
ba817a9 editor: Add E2E Diagnostics test (#10133) (Sysix)
72238fc linter: Ensure complex fixes have messages (#10280) (camchenry)
v0.16.4: oxlint v0.16.4
Compare Source
[0.16.4] - 2025年04月01日
da6336c language_server: [BREAKING] Remove enable configuration, the client should shutdown the server instead (#9990) (Sysix)
Features
06e3db9 linter: Support multipleFileExtensions option for unicorn/filename-case (#10118) (shulaoda)
dbe0e46 linter: Support ignore option for unicorn/filename-case (#10107) (shulaoda)
Bug Fixes
0a33e27 editor: Update initializationOptions for a possible restart (#10121) (Sysix)
ac780a2 editor: Repair filewatchers when no custom config provided (#10104) (Sysix)
4303ace editor: Dont send didChangeConfiguration request to the server when it is shutdown (#10084) (Sysix)
07f2a25 editor: Enable regex parsing in language server (#10035) (camchenry)
fcf7702 language_server: Start from a default oxlint configuration + SafeFix for nested configuration (#10043) (Sysix)
aba3654 linter: Span disable directive correctly on next line (#10141) (Ulrich Stark 🦀)
2c80858 linter: Enable multi-file analysis for nested configs (#10089) (camchenry)
Performance
566be59 linter: Replace phf_set with array in eslint/func-names (#10119) (shulaoda)
5e14fe9 linter: Inline PRE_DEFINE_VAR and use array format (#10079) (shulaoda)
Refactor
Configuration
📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.
Uh oh!
There was an error while loading. Please reload this page.
This PR contains the following updates:
^0.16.3->^0.16.12^0.16.3->^0.16.12Release Notes
oxc-project/eslint-plugin-oxlint (eslint-plugin-oxlint)
v0.16.12Compare Source
🚀 Features
View changes on GitHub
v0.16.11Compare Source
No significant changes
View changes on GitHub
v0.16.10Compare Source
No significant changes
View changes on GitHub
v0.16.9Compare Source
No significant changes
View changes on GitHub
v0.16.8Compare Source
No significant changes
View changes on GitHub
v0.16.7Compare Source
No significant changes
View changes on GitHub
v0.16.6Compare Source
No significant changes
View changes on GitHub
v0.16.5Compare Source
No significant changes
View changes on GitHub
v0.16.4Compare Source
No significant changes
View changes on GitHub
oxc-project/oxc (oxlint)
v0.16.12Compare Source
Features
6a7018elinter: Generate stricter json schema for lint plugins (#11219) (camc314)Bug Fixes
e8470d9linter: Delay merging of oxlintrc configs (#10835) (camc314)v0.16.11: oxlint v0.16.11Compare Source
[0.16.11] - 2025年05月16日
Features
078bf0blanguage_server: Better fallback handling when passing invalidOptionsvalues (#10930) (Sysix)be7f7e1language_server/editor: Support multi workspace folders (#10875) (Sysix)eef93b4linter: Add import/no-unassigned-import (#10970) (yefan)cc0112flinter: No-unused-vars add setting forreportVarsOnlyUsedAsTypes(#11009) (camc314)17e49c3linter: Implement configuration and checking loops foreslint/no_constant_condition(#10949) (Ulrich Stark)21117aclinter: Implement react/forbid-elements (#10928) (Thomas BOCQUEZ)466c24alinter: Add gitlab reporter output format (#10927) (Connor Pearson)a064082linter: Add import/consistent-type-specifier-style rule (#10858) (yefan)4733b52linter/no-extraneous-class: Add conditional fixer (#10798) (DonIsaac)Bug Fixes
87bf2a8editor: Send onlyworkspace/didChangeConfigurationwhen some workspace configuration is effected (#11017) (Sysix)ed5708deditor: Detect all workspaces config path changes (#11016) (Sysix)89cc21blanguage_server: Normalize oxlintrc config path (#10982) (Sysix)c52a9balinter: Fix plugins inside overrides not being applied (#11057) (camc314)b12bd48linter: Fix rule config not being correctly applied (#11055) (camc314)9a368belinter: False negative in no-restriced-imports withpatternsand side effects (#11027) (camc314)8c2cfbclinter: False negative in no-restricted-imports (#11026) (camc314)8956870linter: False positive in no-unused-vars (#11002) (camc314)33a60d2linter: Skip eslint/no-redeclare when running on modules (#11004) (camc314)39063celinter: Reword diagnostic message for no-control-regex (#10993) (camc314)9eedb58linter: False positive with negative matches in no-restricted-imports (#10976) (camc314)10e77d7linter: Improve diagnostics for no-control-regex (#10959) (camc314)0961296linter: Addgitlabto linter--helpdocs (#10932) (camc314)82889aelinter/no-extraneous-class: Improve docs, reporting and code refactor (#10797) (DonIsaac)11c34e7linter/no-img-element: Improve diagnostic and docs (#10908) (DonIsaac)584d8b9napi: Enable mimallocno_opt_archfeature on linux aarch64 (#11053) (Boshen)126ae75semantic: Distinguish class private elements (#11044) (magic-akari)773d0desemantic: Correctly handle nested brackets in jsdoc parsing (#10922) (camc314)b215b6csemantic: Dont parse@as jsdoc tags inside[/](#10919) (camc314)Documentation
db6afb9linter: Improve docs of no-debugger (#11033) (camc314)16541delinter: Improve docs of default-param-last (#11032) (camc314)2c2f3c4linter: Improve docs of default-case-last (#11031) (camc314)56bb9celinter: Improve docs of array-callback-return (#11030) (camc314)13dbcc6linter: Correct docs for default config for no-redeclare (#10995) (camc314)a86cbb3linter: Fix incorrect backticks of fenced code blocks (#10947) (Ulrich Stark)Refactor
3cc1466language_server: New configuration structure forinitializeandworkspace/didChangeConfiguration(#10890) (Sysix)bd2ef7dlanguage_server: UseArcfordiagnostic_report_map(#10940) (Sysix)bb999a3language_server: Avoid cloning linter by taking reference in LintService (#10907) (Ulrich Stark)d1b0c83linter: Remove overrides index vec (#11058) (camc314)7ad6cf8linter: Store severity separately, removeRuleWithSeverity(#11051) (camchenry)e31c361linter: Remove nested match statements in no-restricted-imports (#10975) (camc314)6ad9d4flinter: Tidyeslint/func-names(#10923) (camc314)faf0a95syntax: RenameNameSpaceModuletoNamespaceModule(#10917) (Dunqing)Testing
76b6b33editor: Add tests for multi workspace folder setup (#10904) (Sysix)v0.16.10: oxlint v0.16.10Compare Source
[0.16.10] - 2025年05月09日
Features
e1bc037language_server: Request for workspace configuration when client did not send them ininitialize(#10789) (Sysix)3bd339blanguage_server: Provide commands / code actions for unopened files (#10815) (Sysix)4c62348linter: Regex/no-useless-backreference (#10773) (camc314)d7ebdd7linter: Add unicorn/no-unnecessary-slice-end rule (#10826) (yefan)Bug Fixes
f3cc3a2language_server: Request client for configuration when no configuration is passed inworkspace/didChangeConfiguration(#10871) (Sysix)24fcb1elanguage_server: Return server versioninitializeresponse (#10810) (Sysix)7d09973linter: False positive withwithResolversin prefer-await-to-then (#10896) (camc314)9b94300linter: Mark fixer as dangerous for erasing-op (#10868) (camc314)ae70cc1linter: Add missing option tono-shadow-restricted-names(#10827) (camc314)b2c287flinter/no-unused-vars: Fixer cannot delete usused for in/of iterators (#10824) (DonIsaac)5ce0a68linter/no-unused-vars: Recognize parameters used in await/yield expressions within comma expressions (#10808) (magic-akari)Performance
00ffbc9language_server: Do not request for configuration when all workers are ready (#10897) (Sysix)96cca22language_server: Usesimdutf8when reading files from file system (#10814) (Sysix)Documentation
efaadd3linter: Fix a few incorrect backticks inno_restricted_imports(#10914) (Boshen)ccda8f0linter: Improve no-plusplus docs (#10885) (Peter Cardenas)5f15809linter: Improve docs for jsdoc/require-property (#10705) (camc314)Refactor
553ab5blanguage_server: RemoveOnceCellfromWorkspaceWorker.root_uri(#10898) (Sysix)f43fd18language_server: Move the initialization ofServerLinterinto a separate call (#10776) (Sysix)39e0463language_server: Movenested_configstoServerLinter(#10775) (Sysix)9ec13f6language_server: Movegitignore_globtoServerLinter(#10762) (Sysix)3d47159language_server: UseIsolatedLintHandlerFileSystem(#10830) (Sysix)3d794f6language_server: Move functions related toServerLintertoServerLinter(#10761) (Sysix)79819cclinter: Move around some config store logic (#10861) (camc314)e132abalinter: Extract nested config searching to a fn (#10860) (camc314)243c247linter: Able to use custom file system in runtime (#10828) (Sysix)efb4fb8oxlint: Avoid result unwrap (#10836) (camc314)Testing
47b946dlinter: UseTesterFileSystemforRuntimes filesystem (#10829) (Sysix)v0.16.9: oxlint v0.16.9Compare Source
[0.16.9] - 2025年05月03日
Features
63f02a8linter: Add react/forward_ref_uses_ref (#10506) (x6eull)a3ada34linter: Implement fixer for unicorn/prefer-number-properties (#10693) (camc314)e97a4e0linter: Add fixer to unicorn/prefer-spread (#10691) (camc314)a69a0eelinter: Add eslint/block-scoped-var (#10237) (yefan)387af3alinter: Report vars only used as types (#10664) (camc314)eac205flinter: Add unicorn/consistent-assert rule (#10653) (Shota Kitahara)0e6a727linter: Add autofixer for eslint/radix (#10652) (yefan)fb070c4linter/no-extra-boolean-cast: Implement auto-fixer (#10682) (DonIsaac)432cd77linter/no-new-wrapper: Implement auto-fixer (#10680) (DonIsaac)Bug Fixes
4ee95eceditor: Activate extension when astro files are opened too (#10725) (Sysix)46665bdlangage_server: Fix initialize nested configs (#10698) (Sysix)eb3f37clanguage_server: On configuration change, send updated diagnostics to the client (#10764) (Sysix)8c499c6linter: Fix panic when doing code gen on regexp (#10769) (camc314)8e99abflinter: Fix grammer in no unused vars diagnostic msg (#10770) (camc314)b38338alinter: Make require post message target origin a fixer a suggestion (#10754) (camc314)48c542dlinter: Skip linting vue <script> wherelangis not js / ts (#10740) (Boshen)c9575f6linter: Fix false positive in react/exhaustive deps (#10727) (camc314)d8d8f64linter: Shorten span of promise/prefer-await-to-then (#10717) (camc314)a88e349linter: MarkisNanandisFiniteas dangerous fixes inunicorn/prefer-number-properties(#10706) (Sysix)f4ab05flinter: Panic in unicorn/no-useless-spread (#10715) (camc314)06f1717linter: False positive in no unused vars when importing value used as type (#10690) (camc314)746b318linter: False positive in typescript/explicit-function-return-type withsatisfies(#10668) (camc314)cce1043linter: False positive in typescript/explicit-function-return-type (#10667) (camc314)c89da93linter: False positive in eslint/curly on windows (#10671) (camc314)374e19elinter: False positive in react/jsx-curly-brace-presence (#10663) (camc314)e7c2b32linter: Moveconsistent-asserttopedantic(#10665) (camc314)344ef88linter: False positive ineslint/no-unused-varswhen calling inside sequence expression (#10646) (Ulrich Stark)98bcd5flsp: Incorrect quick fix offset in vue files (#10742) (camc314)Documentation
275fe71editor:oxc.flagsare not related tooxlint(#10645) (Sysix)Refactor
2efe3f0linter: Move run on regex node to utils (#10772) (camc314)Testing
1c4f90feditor: Add test for nested config serverity (#10697) (Sysix)9ebf3d4language_server: Refactor tester to use WorkspaceWorker (#10730) (Sysix)5a709adlanguage_server: Add test forinit_nested_configs(#10728) (Sysix)2615758language_server: Fix slow test (#10659) (Alexander S.)fd18aaalanguage_server: Skip slow test (#10658) (overlookmotel)f6f1c5clsp: Include fixed content in lsp snapshots (#10744) (camc314)v0.16.8: oxlint v0.16.8Compare Source
[0.16.8] - 2025年04月27日
Features
53394a7linter: Add auto-fix for eslint/require-await (#10624) (yefan)6908bc3linter: Add autofix for react/self-closing-comp (#10512) (x6eull)e228840parser: Fast forward lexer to EOF if errors are encountered (#10579) (Boshen)Bug Fixes
966fb03editor: Fix memory leaks when server or watchers restarted (#10628) (Sysix)f3eac51language_server: Fix max integer values for range position (#10623) (Alexander S.)d309e07language_server: Fix panics when paths contains specials characters like[or](#10622) (Alexander S.)91ce77alanguage_server: Temporary ignore tests that panic on Windows (#10583) (Yuji Sugiura)723b4c6linter: Cross_module of LintService not being enabled despite enabled import plugin (#10597) (Ulrich Stark)39adefelinter: Handle re-exporting of type correctly inimport/no-cycle(#10606) (Ulrich Stark)e67901blinter: Incorrect fix for prefer start ends with (#10533) (camc314)7c85ae7linter/no-empty-function: Support 'allow' option (#10605) (Don Isaac)9a02066oxlint: Current dir as arg (#9382) (Ben Jones)a9785e3parser,linter: Consider typescript declarations for named exports (#10532) (Ulrich Stark)Performance
3c27d0deditor: Avoid sendingworkspace/didChangeConfigurationrequest when the server needs a restarts (#10550) (Sysix)Refactor
e903ba2editor: Split Config to VSCodeConfig and WorkspaceConfig (#10572) (Sysix)f6c6969language_server: Make linter independent ofBackend(#10497) (Sysix)db05a15language_server: Do not request for worspace configuration when the client does not support it (#10507) (Sysix)9f9e0e5language_server: Move code actions into own file (#10479) (Sysix)Testing
9f43a58language_server: Fix broken tests in windows (#10600) (Sysix)8a2b250linter: Fix incorrect test fixture for prefer-each (#10587) (Boshen)v0.16.7: oxlint v0.16.7Compare Source
[0.16.7] - 2025年04月21日
Features
bb8a078language_server: Use linter runtime / support import plugin (#10268) (Sysix)c94e6b8linter: Alloweqeqeqto always be dangerously fixable (#10499) (camchenry)Bug Fixes
df488d4language_server: Workspace edits as one batch whensource.fixAll.oxcis the context (#10428) (Sysix)2fc083clinter: Incorrect fix for prefer start ends with (#10525) (camc314)020d8f8linter: Fix auto-fix issue for eslint/no-else-return (#10494) (yefan)f0c1efflinter: False positve in no-unused-vars (#10470) (camc314)d690060linter: Fix the auto-fix issue of the eslint/no-plusplus rule (#10469) (yefan)72d5074linter: False positive ineslint/no-redeclare(#10402) (shulaoda)c1f5623linter: Add check for plugin_name when applying LintFilterKind::Rule (#10339) (Ulrich Stark)4e1f536linter: Config path resolution when path contains '..' syntax (#10367) (Florian Bopp)58ab8ffparser: Adjust class start position when decorators are involved (#10438) (Boshen)Performance
21f3175langage_server: PrebuildIsolatedLintHandler(#10406) (Sysix)62178c2linter: Replacephf_setwitharrayforDOM_PROPERTIES_NAMES(#10501) (shulaoda)9280707linter: Replacephf_setwitharrayforDOM_ATTRIBUTES_TO_CAMEL(#10500) (shulaoda)0a4f9d9linter: Replacephf_setwitharrayforATTRIBUTE_TAGS_MAP(#10498) (shulaoda)09f7358linter: Replacephf_setwitharrayinjsdoc/check-tag-names(#10485) (shulaoda)da87390linter: Replacephf_setwitharrayinjsx-a11y/autocomplete-valid(#10484) (shulaoda)d4033bclinter: Replacephf_setwitharrayinglobals.rs(#10483) (shulaoda)7e08618linter: Replacephf_setwitharrayinunicorn/prefer-add-event-listener(#10451) (dalaoshu)e2af873linter: Replacephf_setwitharrayinunicorn/no-useless-undefined(#10450) (dalaoshu)af635fblinter: Replacephf_setwitharrayinnextjs/no-unwanted-polyfillio(#10452) (shulaoda)c0f0369linter: Replacephf_setwitharrayinutils/vitest(#10427) (shulaoda)17c7bdalinter: Replacephf_setwitharrayinunicorn/prefer-type-error(#10426) (shulaoda)5cde29blinter: Replacephf_setwitharrayinreact/void-dom-elements-no-children(#10425) (shulaoda)7ef1e0dlinter: Replacephf_setwitharrayinunicorn/new-for-builtins(#10424) (shulaoda)50fd839linter: Replacephf_setwitharrayinutils/mod.rs(#10405) (shulaoda)a7ac137linter: Replacephf_setwitharrayinunicorn/prefer-set-has(#10398) (shulaoda)Documentation
5d1dfb5linter: Fix wording in the eqeqeq docs (#10401) (Connor Pearson)Refactor
8731f14editor: Output error when custom server path is not accessible (#10518) (Sysix)2935103language_server: Report info as warning instead of error when falling back to default config (#10517) (Sysix)5ab4d40linter: Simplify error handling (#10404) (camchenry)Testing
83baf8beditor: Correct test diagnostic for import plugin (#10453) (Sysix)v0.16.6: oxlint v0.16.6Compare Source
[0.16.6] - 2025年04月14日
Features
0370363language_server: Switchtower-lsptotower-lsp-server(#10298) (Boshen)d48e886linter: Addimport/group-exportsrule (#10330) (yefan)Bug Fixes
664342blanguage_server: Diable nested configuration when config path is provided (#10385) (Sysix)04e2fd4linter: Fix false positives forno-control-regex(#10345) (Cam McHenry)e000f60linter: Make extended configs properly inherit plugins (#10174) (Sub)81867c4linter: Fix stack overflow in react/exhaustive deps (#10322) (camc314)9aaba69linter: Nested configuration directory resolution (#10157) (Sub)Performance
e0057c3language_server: Only restart internal linter once when multiple config changes detected (#10256) (Sysix)1bb61c6linter: Replacephf_setwitharrayinunicorn/prefer-native-coercion-functions(#10384) (shulaoda)e1e7a19linter: Replacephf_setwitharrayinunicorn/no-array-for-each(#10377) (dalaoshu)5f0e66clinter: Replacephf_setwitharrayinunicorn/prefer-spread(#10376) (dalaoshu)8d9559dlinter: Replacephf_setwitharrayinreact/jsx-key(#10375) (dalaoshu)fbd4f92linter: Replacephf_setwitharrayinutils::jest(#10369) (shulaoda)8d0eb33linter: Replacephf_setwitharrayinutils::express(#10370) (shulaoda)ba538fflinter: Usebinary_searchfor arrays with more than7elements (#10357) (shulaoda)283e4c7linter: Replacephf_setwitharrayinreact/exhaustive-deps(#10337) (shulaoda)8b8d708linter: Replacephf_setwitharrayinnextjs/no-typos(#10336) (shulaoda)0fd93d6linter: Replacephf_setwitharrayinutils::promise(#10335) (shulaoda)485ba19linter: Replacephf_setwitharrayinjest/prefer-jest-mocked(#10302) (shulaoda)83931eclinter: Replacephf_setwitharrayinjsdoc/check-access(#10303) (shulaoda)651b56flinter: Replacephf_setwitharrayinjsdoc/empty-tags(#10304) (shulaoda)7ffb7aalinter: Replacephf_setwitharrayinjsdoc/require-returns(#10305) (shulaoda)d7399c4linter: Replacephf_setwitharrayinjsx-a11y/no-noninteractive-tabindex(#10306) (shulaoda)afe663blinter: Replacephf_setwitharrayinjest/no-restricted-matchers(#10297) (shulaoda)bd27959linter: Replacephf_setwitharrayineslint/array-callback-return(#10296) (shulaoda)1aa0d71linter: Replacephf_setwitharrayinreact/no-array-index-key(#10294) (shulaoda)d9c4891linter: Replacephf_setwitharrayineslint/valid-typeof(#10293) (shulaoda)Refactor
a95ba40language_server: Make server more error resistance by falling back to default config (#10257) (Sysix)2e1ef4clinter: Extract common logic fromjsdoc/require-yieldsandjsdoc/require-returns(#10383) (shulaoda)9533d09linter: Remove duplicate ARIA property lists (#10326) (camchenry)67bd7aalinter: AddAriaPropertyenum (#10325) (camchenry)52ea978linter: Update comments, improve tests, add variant All to LintFilterKind (#10259) (Ulrich Stark)Testing
62f7d76editor: Refactor tests to use fixtures (#10381) (Sysix)4a6bb21language_server: Add test forimportplugin integration (#10364) (Sysix)aa6ccd2oxlint: Add test for nested and extended configuration with import plugin (#10372) (Sysix)v0.16.5: oxlint v0.16.5Compare Source
[0.16.5] - 2025年04月07日
Reduced Oxlint binary size from 6.32 MB to 5.8 MB.
Features
2f6810aeditor: Add named fixes for code actions (#10203) (camchenry)32b9d1elanguage_server: Addfix_kindflag (#10226) (Sysix)dab1bd8language_server: Search for nested configurations by initialization (#10120) (Sysix)794b180linter: Add messages for complex fixes (#10279) (camchenry)bde73b5linter: Add unicorn/no-accessor-recursion rule (#9971) (yefan)Bug Fixes
03ba760linter:jsdoc/require-param: skip rule if any doc has@typetag (#10282) (Cam McHenry)f2eff56linter: Fixrule_idfor some diagnostics formats (#10251) (Alexander S.)7c54ea1linter: Ruleno-restricted-importsallow combination ofpathsandpatterns(#10224) (Sysix)6174129linter: Runreact/no-children-propsonly when react framework is found (#10225) (Sysix)cc1267elinter: FixDisplayimpl forConfigBuilderError(#10239) (overlookmotel)Documentation
f115f71editor: Add readme block for possible configurations (#10243) (Sysix)3d4ed3elinter: Ruleeslint/eqeqeqadd "null" & "smart" options (#10258) (Jacob Smith)ec34ef3rules/react: Adding missing code block ending (#10218) (Cannonbark)Testing
297d07feditor: Add e2e tests for creating oxlint configurations on the fly (#10138) (Sysix)29be469editor: Add test for code actions (#10168) (camchenry)ba817a9editor: Add E2E Diagnostics test (#10133) (Sysix)72238fclinter: Ensure complex fixes have messages (#10280) (camchenry)v0.16.4: oxlint v0.16.4Compare Source
[0.16.4] - 2025年04月01日
da6336clanguage_server: [BREAKING] Removeenableconfiguration, the client should shutdown the server instead (#9990) (Sysix)Features
06e3db9linter: SupportmultipleFileExtensionsoption forunicorn/filename-case(#10118) (shulaoda)dbe0e46linter: Supportignoreoption forunicorn/filename-case(#10107) (shulaoda)Bug Fixes
0a33e27editor: UpdateinitializationOptionsfor a possible restart (#10121) (Sysix)ac780a2editor: Repair filewatchers when no custom config provided (#10104) (Sysix)4303aceeditor: Dont senddidChangeConfigurationrequest to the server when it is shutdown (#10084) (Sysix)07f2a25editor: Enable regex parsing in language server (#10035) (camchenry)fcf7702language_server: Start from a default oxlint configuration + SafeFix for nested configuration (#10043) (Sysix)aba3654linter: Span disable directive correctly on next line (#10141) (Ulrich Stark 🦀)2c80858linter: Enable multi-file analysis for nested configs (#10089) (camchenry)Performance
566be59linter: Replacephf_setwitharrayineslint/func-names(#10119) (shulaoda)5e14fe9linter: InlinePRE_DEFINE_VARand usearrayformat (#10079) (shulaoda)Refactor
327be53editor:LanguageClientcan be undefined (#10112) (Sysix)5ec477ceditor: MakeonConfigChangeasync (#10110) (Sysix)a278d73editor: Use warning background when the plugin is deactived (#10085) (Sysix)c0e5251language_server: Setnullas a default value forconfigPath(#10047) (Sysix)09c0ac6linter: Improveunicorn/filename-case(#10117) (shulaoda)d8e49a1](https://redirect.github.com/oxc-project/oxcConfiguration
📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.