Repository navigation
chore: replace eslint with oxlint - #11938
Conversation
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
⛔ Files ignored due to path filters (1)
📒 Files selected for processing (201)
💤 Files with no reviewable changes (53)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 8 remain after this review. 📝 WalkthroughWalkthroughThe repository adds a shared Oxlint configuration and package-specific configurations. Nx and package scripts add Oxlint lint targets. ESLint configurations are removed or narrowed, and source and test lint directives are updated. One Vue test assertion also changes to use optional property access. ChangesOxlint migration
Priority: ⬇️ Low Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: ⚪ Minimal · up to No actionable issue remains from the inspected migration paths. The change is mergeable after normal lint checks. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Lint packages with oxlint (type-aware via oxlint-tsgolint), keeping the existing rule set. Rules oxlint lacks natively run as JS plugins (eslint-plugin-jsdoc, import-x/order, @Stylistic, cspell, @eslint-react, react-hooks, solid). no-restricted-syntax and the type parameter naming convention come from a local plugin. Svelte packages keep a slim ESLint config for the svelte/* rules, which need the component template. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ESLint no longer lints these files, so switch eslint-disable comments to oxlint-disable and the @typescript-eslint/ prefix to typescript/. Remove directives that oxlint reports as unused, and name the rule in the cspell oxlint-enable comments, which oxlint does not match to a rule-specific disable otherwise. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Oxlint's native vitest/valid-expect only checks `expect` calls, so load @vitest/eslint-plugin as a JS plugin for this rule to keep flagging `expectTypeOf` calls without a matcher, and restore the directives for the intentional ones. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46867dd to
23260ab
Compare
|
View your CI Pipeline Execution ↗ for commit 23260ab
☁️ Nx Cloud last updated this comment at |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
🚀 Changeset Version Preview2 package(s) bumped directly, 23 bumped as dependents. 🟩 Patch bumps
|
size-limit report 📦
|
🎯 Changes
Migrates to oxlint as the replacement linter for eslint.
Keeps the existing ruleset, runs js plugins for non-native oxlint rules and the local no-restricted-syntax plugin
Svelte packages keep a slim ESLint config for the svelte/* rules, which need the component template.
React examples that use the query eslint plugin also still use eslint for now.
✅ Checklist
pnpm run test:pr, or these tests do not apply to this pull request.🚀 Release Impact
Summary by CodeRabbit