- Das Rust-basierte JavaScript/TypeScript-Linting-Tool Oxlint wurde offiziell in Version 1.0 veröffentlicht
- 50- bis 100-mal schneller als ESLint, Unterstützung für mehr als 500 ESLint-Regeln und reale Einsätze bei Großunternehmen wie Shopify, Airbnb und Mercedes-Benz
- Sofort ohne Konfiguration einsatzbereit und unterstützt zudem Portabilität sowie den parallelen Einsatz mit bestehenden ESLint-Konfigurationen
- Integration in wichtige Editoren (VSCode, IntelliJ, Zed usw.) sowie LSP, mit konkreten und visualisierten Fehlermeldungen
- Auch die zukünftige Roadmap wurde veröffentlicht, darunter Custom Rules, Performance-Optimierungen und fein granularere Konfigurationen
Die wichtigsten Inhalte von Oxlint 1.0
Performance und Einsatz in großem Maßstab
- In Rust implementiert und in der Lage, beim parallelen Ausführen Zehntausende Dateien extrem schnell zu linten
- Beispiel: 126.000 Dateien bei Airbnb in 7 Sekunden gelintet, bei Mercedes-Benz 71–97 % Geschwindigkeitssteigerung
- Im größten Repository wurden 265.000 Dateien und 101 Regeln in nur 22,5 Sekunden analysiert
Sofort einsatzbereit & einfache Einführung
- Nach der Installation sofort ohne Konfiguration ausführbar
- Direkt nutzbar mit
npx oxlint@latest oder pnpm/yarn/bun/deno
- Unterstützung für benutzerdefinierte Konfigurationen per
.oxlintrc.json für große Projekte und Team-Umgebungen
- Basierend auf dem Flat-Config-Format von ESLint v8, also ein vertrauter Ansatz
- Mit
oxlint-migrate kann eine bestehende ESLint-Konfiguration migriert werden, mit eslint-plugin-oxlint lassen sich doppelte Regeln deaktivieren
- Empfohlene Vorgehensweise: Oxlint und ESLint gemeinsam ausführen, um schnelleres Feedback zu erhalten
Umfassende Regelunterstützung
- Unterstützung für alle ESLint-Regeln sowie viele Regeln aus den Plugins typescript-eslint, unicorn, jsdoc, react, jest und import
- Enthält auch eigene Regeln wie bad comparison sequence, const comparisons usw.
Flexible Konfiguration
- Unterstützung für verschachtelte Konfigurationen pro Ordner, Overrides pro Glob und Erweiterung gemeinsamer Konfigurationen
- So lassen sich konsistente Standards für Codequalität teamübergreifend aufrechterhalten
Editor-Integration
- Erweiterungen für VSCode, IntelliJ/WebStorm, Zed usw. sowie Unterstützung für LSP
- Sofortige Fehlerdiagnosen und Korrekturvorschläge in verschiedenen IDEs
Diagnosemeldungen
- Gehen über einfache Fehlerbeschreibungen hinaus und bieten visualisierte Ursachenanalysen sowie Hinweise zur Behebung
Benchmarks
| Tool |
Laufzeit |
| oxlint (Multithread) |
615ms |
| oxlint (Single-Thread) |
1,8 Sekunden |
| eslint |
33,5 Sekunden |
Roadmap
- Unterstützung für JavaScript-basierte Custom Rules geplant
- Weitere Performance-Optimierungen sowie zusätzliche Optionen wie fein abgestufte glob-basierte Konfigurationen im Stil von ESLint v9 geplant
4 Kommentare
Ist Rust der Cheatcode für Performance-Verbesserungen?
Anscheinend werden Vue und NestJS noch nicht vollständig unterstützt.
https://github.com/oxc-project/oxc/issues/481
Oxlint – ein 50- bis 100-mal schnellerer JS-Linter als ESLint