Releases: oxc-project/oxc
Releases · oxc-project/oxc
oxlint v1.2.0
[1.2.0] - 2025-06-19
🚀 Features
- 8c341a2 sema/check: Ts setters cannot have initializers (#11695) (Don Isaac)
- 38dc614 oxc_linter: Reuse allocators (#11736) (camc314)
- bf8263d playground: Allow specifying a JSON string as the linter config (#11710) (Nicholas Rayburn)
- 0b4261b vscode: Add
oxc.requireConfig
configuration (#11700) (Sysix) - 52ecc87 linter: Implement import/extensions (#11548) (Tyler Earls)
- 094b81c language_server: Add
unusedDisableDirectives
option (#11645) (Sysix)
🐛 Bug Fixes
- 3d88eeb linter/no-console: False negative when
console.*
methods are used as args to functions (#11790) (camc314) - c80e405 linter/no-new-wrappers: Fix panic in fixer with multi byte chars (#11773) (camc314)
- e58a0b0 linter: Panic in unicorn/consistent-function-scoping (#11772) (camc314)
- 80c87d4 linter: Typo in typescript/consistent-index-object-style (#11744) (camc314)
- ff775e9 linter/consistent-function-scoping: Descriptive diagnostic labels (#11682) (Don Isaac)
- 989634a linter/no-inner-declaration: False negative with for loops (#11692) (camc314)
- b272b91 linter/no-undef: False negative with unresolved ref after type ref (#11721) (camc314)
- 6252275 linter: Panic in import/extensions with empty file names (#11720) (camc314)
- f34e432 linter: Use fixer::noop in dangerous cases for eslint/no-var (#11693) (camc314)
- 6c2b41c linter/consistent-function-scoping: Allow functions in TS modules/namespaces (#11681) (Don Isaac)
- 2ca1c70 linter/exhaustive-deps: False positive with TS Non null assertion operator (#11690) (camc314)
- ee15f7d linter: False negative in typescript/prefer-function-type (#11674) (camc314)
- abd0441 linter: Add missing menuitemradio and menutitemcheckbox roles (#11651) (Daniel Flynn)
- 8776301 linter/no-inner-declarations: Flag
var
statement as body offor
loop (#11632) (overlookmotel)
🚜 Refactor
- 5ca3d04 ast: Add
TSArrayType
asAstKind
(#11745) (camchenry) - abdbaa9 language_server: Use rule name directly from OxcCode instead of parsing out of the stringified version of OxcCode (#11714) (Nicholas Rayburn)
- 219adcc ast: Don't generate AstKind for ArrayExpressionElement (#11684) (Ulrich Stark)
- c1be6b8 linter: Shorten Span construction (#11686) (Ulrich Stark)
- 4ca659c linter: Cleanup typescript/prefer-function-type (#11672) (Brad Dunbar)
- 8e30c5f ast: Don't generate AstKind for ForStatementInit (#11617) (Ulrich Stark)
📚 Documentation
- ea6ce9d linter: Fix typo in import/no-namespace (#11741) (camc314)
- 8b6076e linter: Document options for the
typescript/array-type
rule (#11665) (yefan)
⚡ Performance
- f539f64 allocator: Remove
Arc
fromAllocatorPool
(#11760) (overlookmotel) - cfdc518 linter/no-inner-declarations: Move work to cold path (#11746) (overlookmotel)
- 7c0fff7 linter: Skip running
consistent-function-scoping
on.d.ts
files (#11739) (camc314) - b34c6f6 parser,semantic: Improve handling of diagnostics (#11641) (Boshen)
- 2cd786b linter/no-inner-declarations: Remove unnecessary code and reduce branches (#11633) (overlookmotel)
🧪 Testing
oxlint v1.1.0
[1.1.0] - 2025-06-12
🚀 Features
- 1181018 linter: Add eslint/no-extra-bind rule (#11588) (yefan)
- 3b03fd3 parser: Produce correct syntax error for
interface I extends (typeof T)
(#11610) (Boshen) - 844a8a8 parser: Produce syntax error for
declare function foo() {}
(#11606) (Boshen)
🐛 Bug Fixes
- 0f24366 linter: Correct labels for redundant comparisons (#11620) (Wei Zhu)
- dd87f93 linter: Stack overflow in react/exhaustive-deps (#11613) (camc314)
- 4af58e0 linter: Add missing
additional_hooks
option to exhaustive-deps (#11602) (camc314) - a6adc0c linter/exhaustive-deps: Handle destructuring inside hooks (#11598) (Don Isaac)
- 779727f linter: Improve span diagnostic loc within react/rules-of-hooks (#11589) (camc314)
🚜 Refactor
oxlint v1.0.0
There no notable changes from v0.18.1.
oxlint v0.18.1
[0.18.1] - 2025-06-09
🐛 Bug Fixes
- 6d68568 linter: False negative in typescript/array-type (#11574) (camc314)
- 6a856a0 linter/no-magic-numbers: Fix typo in error message (#11560) (overlookmotel)
- 3952e01 linter: False negative in jsx-a11y/aria-role (#11547) (camc314)
- b0e3e08 linter: Misplaced quote in jsx-curly-brace-presence test case (#11546) (camc314)
- a833ed1 linter: Misplaced quote in anchor-is-valid test case (#11545) (camc314)
- 4e53b80 linter: Misplaced backtick in exhaustive-deps test case (#11544) (camc314)
- e8a04b6 linter: Misplaced backtick in no-object-constructor test case (#11543) (camc314)
- 65311d0 linter: Remove duplicate rule/scope from diagnostic (#11531) (camc314)
🚜 Refactor
- 7ab84c2 editor: Use pattern for textDocument filter (#11559) (Sysix)
- 9b475ad linter: Use one instance of rope per file (#11552) (Sysix)
📚 Documentation
- e13ed51 editor/vscode: Fix typo in README (#11572) (David)
- fa924ab linter: Cleanup docs for multiple linter rules (#11551) (Ulrich Stark)
⚡ Performance
oxlint v0.18.0
[0.18.0] - 2025-06-06
Features
- 825d40c linter: Fix casing in unicorn/no-useless-promise-resolve-reject (#11528) (camc314)
- 2faee3d linter: Fix grammer in react/exhaustive-deps (#11527) (camc314)
Bug Fixes
- 1a71d7c linter: Misplaced backtick in unicorn/no-array-for-each diagnostic (#11529) (camc314)
- 7430b14 linter: Grammer in jest/valid-expect diagnostic (#11522) (camc314)
- b92ac41 linter: Grammer in eslint/no-redeclare diagnostic (#11521) (camc314)
- 17883e3 linter: Improve eslint/no-unsafe-negation diagnostic (#11520) (camc314)
- 8c89937 linter: Improve eslint/no-shadow-restricted-names diagnostic (#11519) (camc314)
- 3f0d889 linter: Add missing article to oxc/bad-array-method-on-arguments diagnostic (#11518) (camc314)
- cf0c24c linter: Improve message in react/prefer-es6-class diagnostic (#11516) (camc314)
- 91855df linter: Fix message in react/rules-of-hooks diagnostic (#11515) (camc314)
- b272194 linter: Misplaced backtick in jest/no-conditional-expect diagnostic (#11514) (camc314)
- 3403303 linter: Misplaced backtick in unicorn/prefer-dom-node-dataset diagnostic (#11513) (camc314)
- d5ca872 linter: Misplaced backtick in eslint/radix diagnostic (#11512) (camc314)
- 2dcf8be linter: Improve diagnostic message when function name is referenced (#11509) (camc314)
- 0de0c9c linter: Improve diagnostic message for no-unsafe-declaration-merging (#11508) (camc314)
- 0946dac linter: Correctly inherit categories when plugins are enabled (#11353) (Cameron)
- 510c1c6 linter: Add missing
allowArrowFunctions
option for eslint/func-style (#11455) (yefan) - c77787c linter: Improve
eslint/no-loss-of-precision
(#11437) (magic-akari) - 11d4523 linter: False positive in react/exhaustive-deps (#11438) (camc314)
- 616b613 linter/switch-case-braces: Align the logic with
unicorn
(#11405) (shulaoda)
Refactor
- db0b099 language_server: Convert only once uri to path when creating
ServerLinter
(#11503) (Sysix) - ccceb52 language_server: Simplify
workspace/didChangeConfiguration
call (#11462) (Sysix) - 0fdc51e linter: Simplify
OxlintRules::override_rules
(#11510) (camc314)
Testing
oxlint v0.17.0
[0.17.0] - 2025-05-30
Features
- 2d25bd8 linter: Remove
unicorn/no-for-loop
overtypescript/prefer-for-of
(#11354) (camc314) - bbb7eb1 linter: Add auto-fix to react/forward-ref-uses-ref (#11342) (yefan)
- 590c27b linter: Add auto-fix to unicorn/no-await-expression-member (#11306) (yefan)
- 7824f01 linter: Implement suggestion for
jsx/no-useless-fragment
(#10800) (Cam McHenry) - 2083d33 linter/language_server: Add second editor suggestion for
react/forward-ref-uses-ref
(#11375) (Sysix)
Bug Fixes
- f6424dd linter: Reflect react plugin is disabled by default in cli (#11397) (camc314)
- 25ecbfe linter: Remove use of
FrameworkFlags::React
to decide whether rules should run (#11383) (camc314) - 0d240e4 linter: False positive in react/exhaustive-deps with default formal parameter (#11395) (camc314)
- c91697e linter: Fix panic in multi byte char in
TryFrom
aria (#11350) (camc314) - 9798ef1 linter: Stack overflow in no-async-endpoint-handlers (#11317) (camc314)
- 348ad97 linter: Skip no-unused-vars on astro files (#11303) (camc314)
- 183d7f0 linter: Make
jest/no-large-snapshots
error easier to comprehend (#11294) (Ulrich Stark) - 4e606a5 linter: Improve
jest/no-large-snapshots
(#11291) (Ulrich Stark) - 14f790f linter: Improve
jest/no-restricted-matchers
(#11292) (Ulrich Stark) - a2c82be linter/block-scoped-var: Better diagnostic messages (#11290) (DonIsaac)
- 19772e5 linter/no-unused-vars: Panic when variable is redeclared as function in same scope (#11280) (Dunqing)
- 7af5bb1 oxc_language_server: Include save option for text document sync capability (#11297) (Nicholas Rayburn)
Performance
- 0ed6c1a language_server: Use
Arc<RwLock>
instead ofMutex
for workspace workers (#11328) (Sysix) - a0ee946 linter: Reduce code size in
globals
(#11333) (shulaoda) - c90c5e9 linter/no-unused-vars: Simplify checking self call usage (#11281) (Dunqing)
Documentation
- eae51ca linter: Clarify jsdoc/check-tag-names configuration (#11394) (Rägnar O'ock)
- cd354d4 oxlint: Remove incorrect doc comment (#11326) (camc314)
Refactor
- 42738f0 linter: Shorten code of match arms (#11389) (Ulrich Stark)
- 8a34447 linter: Improve
unicorn/text-encoding-identifier-case
(#11386) (shulaoda) - eaa605e linter: Avoid some
Arc::clone
in linter runtime (#11388) (Boshen) - 1cd8b9c linter: Fixes in
react/forward-ref-uses-ref
are suggestions (#11376) (Sysix) - 50ef691 linter: Add
diagnostics_with_multiple_fixes
toLintContext
(#11357) (Sysix) - 606bb34 linter: Accept
PossibleFixes
instead ofFix
forMessages
(#11295) (Sysix) - 042a3f3 linter: Use
PossibleFixes
instead ofOption<Fix>
(#11284) (Sysix) - ffcfb46 linter: Improve
unicorn/throw-new-error
(#11364) (shulaoda) - 8fb55c3 linter: Cleanup docs and simplify code of
eslint/no-fallthrough
(#11331) (Ulrich Stark) - e2f0f0a linter: Improve docs and simplify code of
eslint/no-duplicate-imports
(#11320) (Ulrich Stark) - b53b053 linter: Simplify accessing span of NameSpan (#11305) (Ulrich Stark)
- 4bc2650 linter: Improve
eslint/no-void
(#11285) (shulaoda)
Styling
Testing
oxlint v0.16.12
[0.16.12] - 2025-05-25
Features
- 0c1f382 language_server: Watch for files inside
.oxlintrc.json
extends (#11226) (Sysix) - 1675b2c language_server: Tell clients to watch for .oxlintrc.json files (#11078) (Sysix)
- 691416a linter: Add auto-fix to unicorn/no-static-only-class (#11249) (yefan)
- 6a7018e linter: Generate stricter json schema for lint plugins (#11219) (camc314)
- 66e0b1f linter: Implement unicorn/prefer-global-this (#11197) (camc314)
- b26554b linter: Implement unicorn/no-instanceof-builtins (#11196) (camc314)
- 699ec64 linter: Add autofix to eslint/no-unneeded-ternary (#11184) (yefan)
- b3bbdda linter: Implement unicorn/prefer-object-from-entries (#11174) (camc314)
- 20f9458 linter: Implement unicorn/prefer-array-find (#11170) (camc314)
- f294c42 linter: Implement unicorn/no-array-method-this-argument (#11169) (camc314)
- 07dac71 linter: Implement unicorn/prefer-array-index-of (#11168) (camc314)
- cd920d3 linter: Implement unicorn/no-unnecessary-array-flat-depth (#11167) (camc314)
- 385b84d linter: Unicorn/no-for-loop (#11154) (camc314)
- a762038 linter: Add auto-fix to eslint/no-array-constructor (#11148) (yefan)
- 12b0917 linter: Auto-generate docs for rule configs (#10629) (DonIsaac)
Bug Fixes
- 0df5147 language_server: Correctly disable nested config search (#11173) (Sysix)
- e8470d9 linter: Delay merging of oxlintrc configs (#10835) (camc314)
- 6e9de84 linter: False positives in no-instanceof-builtins (#11210) (camc314)
- 8e7fe03 linter: Fix panic in eslint/require-await (#11211) (camc314)
- 4104b01 linter: Fix false positive on React in
consistent-type-imports
(#11171) (DonIsaac) - 25c6266 linter: Remove duplicate test case from no-useless-escape (#11146) (camc314)
- 6a5911a linter: Add
allow_regex_characters
option tono-useless-escape
(#11139) (camc314) - 7283f00 linter/prefer-todo: False fix for
test['skip']
(#11128) (shulaoda)
Performance
- 0c7aae4 linter: Speed up counting lines in
eslint/max-lines
andeslint/max-lines-per-function
(#11242) (Ulrich Stark) - 1846b03 linter: Avoid iterating lines twice if blank lines are skipped (#11235) (Ulrich Stark)
- e8479bf linter: Remove unnecessary
codegen
injest/no-untyped-mock-factory
(#11097) (shulaoda) - dd33e57 linter: Remove unnecessary
codegen
ineslint/prefer-numeric-literals
(#11099) (shulaoda) - 49d677c linter: Remove unnecessary
codegen
injest/prefer-to-have-length
(#11100) (shulaoda) - c294447 linter: Remove unnecessary
codegen
invitest/prefer-to-be-object
(#11086) (shulaoda) - 8faf518 linter: Remove unnecessary
codegen
inunicorn/require-number-to-fixed-digits-argument
(#11085) (shulaoda) - e1bbdab linter/prefer-expect-resolves: Remove unnecessary
codegen
(#11127) (shulaoda) - 6e3e37b unicorn/no-instanceof-array: Reduce memory allocations in fixer (#11109) (shulaoda)
Documentation
- f2e3e79 linter: Fix formatting inconsistencies in rule docs (#11227) (Ulrich Stark)
- df4cc8d linter: Update missing linter rule documentation (#11190) (Aman Desai)
- b70c51e linter: Google_font_preconnect: linter rules (#11189) (Aman Desai)
- 67c0b4d linter: Explanation for rule
nextjs/no_sync_script
(#11166) (Aman Desai) - c974f32 linter: Improve rule docs for
eslint/no-bitwise
(#11126) (Ulrich Stark) - cbb8e0b linter: Improve rule docs for
eslint/default-case
(#11125) (Ulrich Stark) - bcc923c linter: Normalize rule docs format (#11104) (Ulrich Stark)
- 69a14ab linter: Improve docs for
eslint/no-debugger
(#11103) (Ulrich Stark) - 2f7346b linter: Improve docs for
eslint/no-constructor-return
(#11102) (Ulrich Stark)
Refactor
- a28fe1e editor: Use always the provided language server (#11115) (Sysix)
- 0d192e8 language_server: Introduce
ServerLinter.extended_paths
property (#11223) (Sysix) - ff8f519 language_server: Restructure
initialized
function (#11077) (Sysix) - 6b68de0 language_server: Add intern capability for
didChangeWatchedFiles.dynamicRegistration
(#11075) (Sysix) - 35761ae language_server/editor: Refresh file watchers without restarting the server (didChangeConfiguration) (#11112) (Sysix)
- d5fdf17 language_server/editor: Refresh file watchers without restarting the server (didChangeWorkspaceFolders) (#11094) (Sysix)
- c64f800 linter: Introduce
ConfigStoreBuilder.extended_paths
property (#11222) (Sysix) - e4c7614 linter: Cleanup
eslint/no-useless-constructor
(#11221) (Ulrich Stark) - a695472 linter: Simplify finding ancestor of specific kind (#11224) (Ulrich Stark)
- b822ac8 linter: Simplify deserialization for
AllowWarnDeny
(#11195) (camc314) - 1210621 linter: Remove functions in favor of
Span::contains_inclusive
(#11133) (Ulrich Stark) - 73b3f42 linter: Better names for parameters of diagnostic functions (#11129) (Ulrich Stark)
- 24fe879 linter: Remove unnecessary span construction (#11131) (Ulrich Stark)
- f079338 linter: Remove unnecessary macro (#11114) (overlookmotel)
- 9f3a14a linter: Cleanup diagnostic and docs for
eslint/no-console
(#11101) (Ulrich Stark) - 18cdabf linter/prefer-todo: Remove unnecessary
codegen
(#11130) (shulaoda) - bb8bde3 various: Update macros to use
expr
fragment specifier (#11113) (overlookmotel)
oxlint v0.16.11
[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
andworkspace/didChangeConfiguration
(#10890) (Sysix) - bd2ef7d language_server: Use
Arc
fordiagnostic_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
toNamespaceModule
(#10917) (Dunqing)
Testing
- 76b6b33 editor: Add tests for multi workspace folder setup (#10904) (Sysix)
oxlint v0.16.10
[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
fromWorkspaceWorker.root_uri
(#10898) (Sysix) - f43fd18 language_server: Move the initialization of
ServerLinter
into a separate call (#10776) (Sysix) - 39e0463 language_server: Move
nested_configs
toServerLinter
(#10775) (Sysix) - 9ec13f6 language_server: Move
gitignore_glob
toServerLinter
(#10762) (Sysix) - 3d47159 language_server: Use
IsolatedLintHandlerFileSystem
(#10830) (Sysix) - 3d794f6 language_server: Move functions related to
ServerLinter
toServerLinter
(#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
oxlint v0.16.9
[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
andisFinite
as dangerous fixes inunicorn/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
topedantic
(#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
- 275fe71 editor:
oxc.flags
are not related tooxlint
(#10645) (Sysix)
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)