Open
Conversation
d2fb7da to
3b810f2
Compare
3b810f2 to
9981141
Compare
9981141 to
25a0904
Compare
25a0904 to
d7b5a89
Compare
d7b5a89 to
dc19407
Compare
dc19407 to
92f87d4
Compare
92f87d4 to
5ef8672
Compare
5ef8672 to
8e78793
Compare
8e78793 to
9bb0d4e
Compare
9bb0d4e to
2543d43
Compare
2543d43 to
ef42c04
Compare
ef42c04 to
fb334cf
Compare
fb334cf to
e612a5f
Compare
e612a5f to
6e1a0ac
Compare
6e1a0ac to
531e7cb
Compare
531e7cb to
0497b7b
Compare
0497b7b to
02a92b3
Compare
02a92b3 to
bda6ac9
Compare
bda6ac9 to
f46ec8f
Compare
f46ec8f to
9a1caac
Compare
9a1caac to
62b071a
Compare
62b071a to
9417460
Compare
9417460 to
65590e2
Compare
65590e2 to
7b57b36
Compare
7b57b36 to
2f8ccd7
Compare
2f8ccd7 to
66f9b41
Compare
66f9b41 to
3cbbae1
Compare
3cbbae1 to
2723fe1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^1.16.0→^1.47.0Release Notes
oxc-project/oxc (oxlint)
v1.47.0Compare Source
v1.45.0🐛 Bug Fixes
1b2f354ci: Add missing riscv64/s390x napi targets for oxfmt and oxlint (#19217) (Cameron)v1.43.0Compare Source
v1.42.0Compare Source
🚀 Features
15d69dclinter: Implement react/display-name rule (#18426) (camchenry)📚 Documentation
8ccd853npm: Update package homepage URLs and add keywords (#18509) (Boshen)v1.41.0Compare Source
📚 Documentation
8a294d5oxfmt, oxlint: Update logo (#18242) (Dunqing)v1.40.0Compare Source
v1.39.0Compare Source
v1.38.0Compare Source
v1.37.0Compare Source
💥 BREAKING CHANGES
f7da875oxlint: [BREAKING] Remove oxc_language_server binary (#17457) (Boshen)📚 Documentation
7e5fc90linter: Update list of plugins that are reserved. (#17516) (connorshea)v1.36.0Compare Source
v1.35.0Compare Source
🚀 Features
9e624c9linter/react: AddversiontoReactPluginSettings(#17169) (camc314)v1.34.0Compare Source
🚀 Features
a0f74a0linter/config: Allow aliasing plugin names to allow names the same as builtin plugins (#15569) (Cameron)🐛 Bug Fixes
005ec25linter: Permit$schema.oxlintrc.jsonstruct (#17060) (Copilot)d446c43linter: Prevent extra fields from being present on oxlint config file (#16874) (connorshea)v1.33.0Compare Source
v1.32.0Compare Source
v1.31.0Compare Source
v1.30.0Compare Source
🚀 Features
595867aoxlint: Generate markdownDescription fields for oxlint JSON schema. (#15959) (connorshea)v1.29.0Compare Source
🚀 Features
84de1caoxlint,oxfmt: Allow comments and also commas for vscode-json-ls (#15612) (leaysgur)v1.28.0Compare Source
v1.27.0: oxlint v1.27.0 && oxfmt v0.12.0Compare Source
Oxlint v1.27.0
🚀 Features
222a8f0linter/plugins: ImplementSourceCode#isSpaceBetween(#15498) (overlookmotel)2f9735dlinter/plugins: Implementcontext.languageOptions(#15486) (overlookmotel)bc731fflinter/plugins: Stub out allContextAPIs (#15479) (overlookmotel)5822cb4linter/plugins: Addextendmethod toFILE_CONTEXT(#15477) (overlookmotel)7b1e6f3apps: Add pure rust binaries and release to github (#15469) (Boshen)2a89b43linter: Introduce debug assertions after fixes to assert validity (#15389) (camc314)ad3c45aeditor: Addoxc.path.nodeoption (#15040) (Sysix)🐛 Bug Fixes
6f3cd77linter/no-var: Incorrect warning for blocks (#15504) (Hamir Mahal)6957fb9linter/plugins: Do not allow access toContext#idincreateOnce(#15489) (overlookmotel)7409630linter/plugins: Allow access tocwdincreateOncein ESLint interop mode (#15488) (overlookmotel)732205eparser: Rejectusing/await usingin a switchcase/defaultclause (#15225) (sapphi-red)a17ca32linter/plugins: ReplaceContextclass (#15448) (overlookmotel)ecf2f7blanguage_server: Fail gracefully when tsgolint executable not found (#15436) (camc314)3c8d3a7lang-server: Improve logging in failure case for tsgolint (#15299) (camc314)ef71410linter: Use jsx if source type is JS in fix debug assertion (#15434) (camc314)e32bbf6linter/no-var: Handle TypeScript declare keyword in fixer (#15426) (camc314)6565dbelinter/switch-case-braces: Skip comments when searching for:token (#15425) (camc314)85bd19alinter/prefer-class-fields: Insert value after type annotation in fixer (#15423) (camc314)fde753elinter/plugins: Block access tocontext.settingsincreateOnce(#15394) (overlookmotel)ddd9f9flinter/forward-ref-uses-ref: Dont suggest removing wrapper in invalid positions (#15388) (camc314)dac2a9clinter/no-template-curly-in-string: Remove fixer (#15387) (camc314)989b8e3linter/no-var: Only fix toconstif the var has an initializer (#15385) (camc314)cc403f5linter/plugins: Return empty object for unimplemented parserServices (#15364) (magic-akari)⚡ Performance
25d577elanguage_server: Start tools in parallel (#15500) (Sysix)3c57291linter/plugins: Optimize loops (#15449) (overlookmotel)3166233linter/plugins: RemoveArcs (#15431) (overlookmotel)9de1322linter/plugins: Lazily deserialize settings JSON (#15395) (overlookmotel)3049ec2linter/plugins: OptimizedeepFreezeSettings(#15392) (overlookmotel)444ebfdlinter/plugins: Use single object forparserServices(#15378) (overlookmotel)📚 Documentation
97d2104linter: Update comment in lint.rs about default value for tsconfig path (#15530) (Connor Shea)2c6bd9elinter: Always refer as "ES2015" instead of "ES6" (#15411) (sapphi-red)a0c5203linter/import/named: Update "ES7" comment in examples (#15410) (sapphi-red)3dc24b5linter,minifier: Always refer as "ES Modules" instead of "ES6 Modules" (#15409) (sapphi-red)2ad77fblinter/no-this-before-super: Correct "Why is this bad?" section (#15408) (sapphi-red)57f0ce1linter: Add backquotes where appropriate (#15407) (sapphi-red)Oxfmt v0.12.0
🚀 Features
3251000oxfmt: Useprettierdirectly and bundleprettier(#15544) (Dunqing)7b1e6f3apps: Add pure rust binaries and release to github (#15469) (Boshen)33ad374oxfmt: Disable embedded formatting by default for alpha (#15402) (leaysgur)5708126formatter/sort_imports: Addoptions.newlinesBetween(#15369) (leaysgur)2dfc3bdformatter: RemoveTag::StartVerbatimandTag::EndVerbatim(#15370) (Dunqing)88c7530formatter: RemoveFormatElement::LocatedTokenText(#15367) (Dunqing)🐛 Bug Fixes
d32d22eformatter: CorrectFormatElementsize check (#15461) (Dunqing)b0f43f9formatter: Test call difference (#15356) (Dunqing)01f20f3formatter: Incorrect comment checking logic for grouping argument (#15354) (Dunqing)⚡ Performance
f4b75b6formatter: Pre-allocate enough space for the FormatElement buffer (#15422) (Dunqing)5a61189formatter: Avoid unnecessary allocation forBinaryLikeExpression(#15467) (Dunqing)064f835formatter: Optimize printing call arguments (#15464) (Dunqing)29f35b2formatter: Reuse previous indent stack inFitsMeasurer(#15416) (Dunqing)a6808a0oxfmt: UseAllocatorPoolto reuse allocator between threads (#15412) (leaysgur)2515045formatter: Use CodeBuffer's built-in print_indent to print indentation (#15406) (Dunqing)681607bformatter: Check theTextto see whether it has multiple lines based on its width (#15405) (Dunqing)b92deb4formatter: Replace String buffer with byte-oriented CodeBuffer (#14752) (Boshen)963b87fformatter: Addtext_without_whitespacefor text that can never have whitespace (#15403) (Dunqing)f30ce4bformatter: Optimize formatting literal string (#15380) (Dunqing)8f25a0eformatter: Memorize text width forFormatElement::Text(#15372) (Dunqing)f913543formatter: Avoid allocation forSyntaxTokenCowSlice(#15366) (Dunqing)98c9234formatter: OptimizeFormatElement::Tokenprinting (#15365) (Dunqing)v1.26.0Compare Source
🚀 Features
26f24d5linter: Permit comments in.oxlintrc.jsonvia json schema file (#15249) (Martin Leduc)🐛 Bug Fixes
d6996d0linter: Fix JSON schema to deny additional properties for categories enum. (#15257) (Connor Shea)9304f9flinter: Fix JSON schema to deny additional properties for plugins enum. (#15259) (Connor Shea)📚 Documentation
84ef5ablinter: Avoid linebreaks for markdown links and update plugins docs in the configuration schema. (#15246) (Connor Shea)v1.25.0Compare Source
🚀 Features
bd74603linter: Add support for vitest/valid-title rule (#12085) (Tyler Earls)v1.24.0Compare Source
🐛 Bug Fixes
28e76ecoxlint: Resolving JS plugin failing whenextendsis used (#14556) (camc314)v1.23.0: oxlint v1.23.0Compare Source
[1.23.0] - 2025-10-13
🚀 Features
452d128linter: Node/no_process_env (#14536) (Kenneth Skovhus)a9e1261linter: Implement react-refresh/only-export-components (#14122) (Rintaro Itokawa)a8d542blinter/no-duplicate-imports: SupportallowSeparateTypeImportsoption (#14527) (camc314)75a529clinter: Add run info about what functions rules implement (#13839) (camchenry)4fbdef2language_server: Supportfmt.configPathconfiguration (#14502) (Sysix)4d3ce2elanguage_server: Autodetect root.oxfmtrc.json(#14466) (Sysix)🐛 Bug Fixes
fb4a20dlanguage_server: Add whitespace for// oxlint-disable-next-linefix (#14356) (Sysix)6fce7f4oxlint/changelog: Remove duplicate changelog entries (#14528) (camc314)74e52f3linter/plugins: Resolve JS plugins with ESM condition names (#14541) (magic-akari)9965676linter/exhaustive-deps: Ignore empty strings passed toadditionalHooksoption (#14464) (Redas)d0a8e3elinter:vue/no_required_prop_with_defaultcalledOption::unwrap()on aNonevalue (#14491) (Sysix)1192ea2linter: Correctnextjs/no-typospath handling (#14480) (shulaoda)2796b16tsgolint: Pipe tsgolints stderr (#14477) (camc314)🚜 Refactor
6440cdelinter: Remove lifetime ofMessage(#14481) (Sysix)f599beflanguage_server: MoveMessagetoDiagnosticReporttransformation to one place (#14447) (Sysix)4f301denapi/parser, linter/plugins: Improve formatting of generated code (#14554) (overlookmotel)68c0252napi/parser, linter/plugins: Shorten generated raw transfer deserializer code (#14553) (overlookmotel)20e884elinter: StoreLintServiceinLintRunner(#14471) (Sysix)9e9c5balinter: Simplify built-in lint plugin checks (#14518) (camchenry)1986e0flinter/no-ex-assign: Use let-else chain (#14526) (camc314)ce9bcf0linter/no-func-assign: Use let-else chain (#14525) (camc314)a9cea7clanguage_server: UseFxHashSetforServerLinter::extended_paths(#14517) (Sysix)ea5838elinter/no-import-assign: Use let-else chain (#14524) (camc314)f977700language_server: PassLintOptionstoWorker::refresh_server_linter(#14510) (Sysix)54b001flinter/no-new-require: Improve diagnostic message clarity (#14511) (shulaoda)650ea68linter: Improve nextjs/no-typos rule (#14476) (shulaoda)📚 Documentation
198f2e9linter: Fix code example forbranches-sharing-code(#14514) (camc314)d776a17linter: Improvenextjs/no-typosrule documentation (#14470) (shulaoda)⚡ Performance
b44a30elanguage_server: TransformMessagetoDiagnosticReportwith one call (#14448) (Sysix)31766fdlinter/plugins: Providelocvia prototype (#14552) (overlookmotel)aec0c08linter: Allow analyzing node types in match blocks with guards (#14459) (camchenry)9044187linter: Skip running node-specific rule if file contains no relevant nodes (#14457) (camchenry)422f54elinter: Only run rule run functions if implemented (#14454) (camchenry)2c228aeliner: Use top-level match forno_obj_calls(#14523) (camchenry)c49d891linter: Use match forno_negated_condition(#14522) (camchenry)e222fc2linter: Use match forno_multi_assign(#14521) (camchenry)4440516linter: Refactor rules to take advantage of node type skipping (#14519) (camchenry)78261d6linter: Refactorno-invalid-fetch-optionsto be more easily analyzed (#14458) (camchenry)🧪 Testing
8d8881dlinter/plugins: Expand tests for module resolution of plugins (#14559) (overlookmotel)33b6cdelanguage_server: Add basic tests forWorkspaceWorker::did_change_configuration(#14531) (Sysix)bfe1ecdlanguage_server: Add tests forWorkspaceWorker::init_watchers(#14516) (Sysix)💼 Other
0082cdaoxlint: V1.23.0 (#14560) (Boshen)v1.22.0: oxlint v1.22.0Compare Source
[1.22.0] - 2025-10-08
🚀 Features
9f9d25flinter/oxc: Implementbranches-sharing-code(#14440) (camc314)🐛 Bug Fixes
5c29bb6linter: Fix compile error with test target (#14449) (camc314)0dcdbd1oxlint: Bundle esquery (#14450) (camc314)💼 Other
b2af43aoxlint: V1.22.0 (#14451) (Boshen)v1.21.0Compare Source
🐛 Bug Fixes
6e8d2f6language_server: Ignore JS plugins (#14379) (overlookmotel)v1.20.0: oxlint v1.20.0Compare Source
[1.20.0] - 2025-10-06
🚀 Features
d16df93linter: Support disable directives for type aware rules (#14052) (camc314)f5c6acclinter: Addvue/no-export-in-script-setuprule (#14307) (Sysix)353b153linter: Implement eslint/no-param-reassign rule (#14341) (Matthew Davis)a2914felinter/plugins: Addlocfield getter to all AST nodes (#14355) (overlookmotel)07193c2linter/plugins: ImplementSourceCode#getAncestors(#14346) (overlookmotel)c8de6felinter/plugins: Addparentfield to AST nodes (#14345) (overlookmotel)5505a86linter/plugins: Includerangefield in AST (#14321) (overlookmotel)3656908rust: Oxc-index-vec v4.0 (#14254) (Boshen)1347de4linter/plugins: Accept diagnostics withloc(#14304) (overlookmotel)aefc8b3linter/plugins: ImplementSourceCode#getIndexFromLocandgetLocFromIndex(#14303) (overlookmotel)93807dblinter/plugins: ImplementSourceCode#linesproperty (#14290) (overlookmotel)2f8c985linter/plugins: ImplementSourceCode#visitorKeysproperty (#14289) (overlookmotel)b69028flinter/plugins: ImplementSourceCode#astproperty (#14287) (overlookmotel)d8d3d18linter: Addvue/prefer-import-from-vuerule (#14284) (Sysix)f0e760blinter: Addvue/define-props-destructuringrule (#14272) (Sysix)bdf9010linter/plugins: AddSourceCodeAPI (#14281) (overlookmotel)7f450fclinter/unicorn: Implement require-module-specifiers (#13089) (keita hino)a1e7154linter/unicorn: Implement prefer-classlist-toggle (#14262) (camc314)8217dcelinter/unicorn: Implement no-unnecessary-array-splice-count (#14255) (camc314)3d5db4alinter/unicorn: Implement no-useless-error-capture-stack-trace (#14222) (camc314)b3b482alinter/unicorn: Implement prefer-top-level-await (#14247) (camc314)7931be8linter/unicorn: Implement prefer-class-fields (#14245) (camc314)a39434alinter/unicorn: Implement prefer-at (#14232) (camc314)🐛 Bug Fixes
e605222linter/no-useless-undefined: Correctly respectcheckArgumentsoption (#14369) (camc314)f1bc608linter: Fix flaky import/no_cycle test (#14328) (Boshen)9a902c0linter/plugins: Makerangefield non-optional on AST types (#14354) (overlookmotel)0a42d7ftsgolint: Report errors if we fail to parse tsgolint diagnostic messages (#14301) (camc314)42f8d7elinter/react-hooks: Fix diagnostic message for literal in dependency array (#14266) (camc314)ece91c5linter/react-hooks: Fix diagnostic message for duplicate dependency in array (#14265) (camc314)864fa0elinter/no-unused-expression: False positive with satisfies expressions (#14259) (camc314)adff069language_server: Don't apply "ignore this rule" fixes for fixAll code action + command (#14243) (Sysix)46cceb8linter/rules-of-hooks: Correctly place primary span to fix disable directive (#14237) (camc314)🚜 Refactor
1489376napi/parser, linter/plugins: Minify walker code (#14376) (overlookmotel)c8eeeb5linter/plugins: Remove build-time dependency onnapi/parser(#14374) (overlookmotel)fb1a067linter/plugins: Bundle walker and AST types map (#14373) (overlookmotel)93d8164linter/plugins: Export AST types direct fromoxlintpackage (#14353) (overlookmotel)230d996linter/plugins:SourceCode#getTextuserange(#14352) (overlookmotel)6e52bbdlinter/plugins: Move location-related code into separate file (#14350) (overlookmotel)13f1003linter/plugins: Shareastbetween files (#14349) (overlookmotel)00dde41tsgolint: Make parsingTsGoLintMessageparsing errors an enum (#14300) (camc314)fc314f5tsgolint: MakeMessageTypeparsing more idomatic (#14299) (camc314)a24c36elanguage-server/tsgolint: Use an iterator for tsgolint message parsing (#14298) (camc314)8be432atsgolint: Use an iterator for tsgolint message parsing (#14297) (camc314)57daa54tsgolint: Remove alwaysSomeoption wrapper (#14296) (camc314)79eadf8linter: IntroduceLintRunner(#14051) (camc314)65873balinter/plugins: Add stubs for allSourceCodemethods (#14285) (overlookmotel)989ce2flinter/plugins: ConvertNodetype to interface (#14280) (overlookmotel)891fc47language_server: Share code for commandoxc.fixAlland code actionsource.fixAll.oxc(#14244) (Sysix)7fe930clanguage_server: Remove unused fixture files (#14246) (Sysix)2b2c345language-server: Movegenerate_inverted_diagnosticstoerror_with_position(#14118) (camc314)⚡ Performance
fa3712dlanguage_server: Create lessExternalPluginStores (#14378) (overlookmotel)e75d42dnapi/parser, linter/plugins: Remove runtimepreserveParensoption from raw transfer deserializers (#14338) (overlookmotel)2e57351linter/plugins: InitializelineStartOffsetsas[0](#14302) (overlookmotel)c27a393linter/plugins: Deserialize AST on demand (#14288) (overlookmotel)95a8cc4linter/plugins: Use singleton forSourceCode(#14286) (overlookmotel)🧪 Testing
0061ce7linter: Add more tests for disable directives in partial loadable files (#14371) (camc314)1387aaalinter/plugins: TestcreateOncereturning no visitor functions (#14279) (overlookmotel)55ebb8blinter: Add test fordisable_for_this_sectionfix (#14240) (Sysix)a7e8662linter: Port unicorn test cases to no-named-default (#14239) (camc314)💼 Other
4bf6f69oxlint: V1.20.0 (#14381) (Boshen)v1.19.0Compare Source
🚀 Features
b4d716flinter/plugins: Move custom JS plugin config tojsPlugins(#14133) (overlookmotel)🐛 Bug Fixes
8879b5alinter/plugins: Add types export tonpm/oxlint(#14219) (overlookmotel)v1.18.0: oxlint v1.18.0Compare Source
[1.18.0] - 2025-09-24
This release should fix a critical memory leak when import plugin is enabled in IDEs.
🚀 Features
2481964linter/exhaustive-deps: Add support foruseEffectEvent(#14041) (Cody Olsen)🐛 Bug Fixes
444fcf0linter: Fix false positive invue/no-required-prop-with-default(#14066) (yefan)2186b28linter: Fix Arc memory leak and lifecycle issues (#14049) (Boshen)314c27dlinter/plugins:definePluginapplydefineRuleto rules (#14065) (overlookmotel)7bd01edlinter/plugins:defineRulecallcreateOncelazily (#14062) (overlookmotel)fb3e7e3linter/plugins:defineRuleaccept visitor with nobefore/afterhooks (#14060) (overlookmotel)🚜 Refactor
56db8falinter: Move imports (#14085) (overlookmotel)a7dd0c7linter: Reduce scope of clippy attr (#14081) (overlookmotel)3a706a7linter: RenameLintRunnertoCliRunner(#14050) (camc314)⚡ Performance
ce538c7linter/plugins: Load methods of globals into local vars (#14073) (overlookmotel)c2f7459language_server: Avoid cloning on message conversion (#14058) (Sysix)🧪 Testing
2fd4b1elinter/plugins: Rename test (#14064) (overlookmotel)f2b3934linter/plugins: Test returningfalsefrombeforehook skips visitation in ESLint (#14061) (overlookmotel)b109419linter/plugins: Align ESLint plugin with Oxlint (#14059) (overlookmotel)v1.17.0Compare Source
🚀 Features
3e117c6linter/plugins: AdddefineRuleAPI (#13945) (overlookmotel)a14aa79npm/oxlint: Convert to ES modules (#13876) (Boshen)b52389anode: Bumpenginesfield to require Node.js 20.19.0+ for ESM support (#13879) (Copilot)53d04ddlinter: Convertoxlintto NAPI app (#13723) (overlookmotel)🚜 Refactor
bb040bcparser, linter: Replace.mjsfiles with.js(#14045) (overlookmotel)7e0d736linter/plugins: Rename--experimental-js-pluginsto--js-plugins(#13860) (overlookmotel)Configuration
📅 Schedule: Branch creation - Between 09:00 PM and 11:59 PM, only on Sunday ( * 21-23 * * 7 ), Between 12:00 AM and 04:59 PM, only on Monday ( * 0-16 * * 1 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.