- Rust tabanlı olarak geliştirilen JavaScript/TypeScript lint aracı Oxlint, 1.0 sürümüyle resmen kullanıma sunuldu
- ESLint'e kıyasla 50 ila 100 kat daha hızlı performans, 500'den fazla ESLint kuralı desteği ve büyük şirketlerde (Shopify, Airbnb, Mercedes-Benz vb.) gerçek kullanım örnekleri sunuyor
- Yapılandırma gerektirmeden hemen kullanılabiliyor; mevcut ESLint ayarlarıyla taşınabilirlik ve birlikte kullanım da destekleniyor
- Başlıca editör entegrasyonları (VSCode, IntelliJ, Zed vb.) ve LSP sunuyor; ayrıntılı ve görselleştirilmiş hata tanılama mesajları sağlıyor
- Özel kurallar, performans optimizasyonu, daha ayrıntılı yapılandırma vb. için gelecek yol haritası da paylaşıldı
Oxlint 1.0'ın öne çıkanları
Performans ve büyük ölçekli kullanım
- Rust ile geliştirildiği için eşzamanlı çalıştırmada on binlerce dosyayı çok yüksek hızda lint edebiliyor
- Örnek: Airbnb'de 126 bin dosyanın lint edilmesi 7 saniye sürdü; Mercedes-Benz tarafında ise %71 ila %97 hız artışı görüldü
- En büyük ölçekli depolarda 22,5 saniyede 265 bin dosya / 101 kural analizi yapabiliyor
Hemen kullanım ve kolay geçiş
- Kurulumdan sonra yapılandırma gerektirmeden anında çalıştırılabiliyor
npx oxlint@latest veya pnpm/yarn/bun/deno ile doğrudan kullanılabiliyor
- Büyük projeler ve ekip ortamları için
.oxlintrc.json özel yapılandırması destekleniyor
- ESLint v8 flat config formatını temel alıyor; bu da tanıdık bir kullanım sağlıyor
oxlint-migrate ile mevcut ESLint ayarları taşınabiliyor, eslint-plugin-oxlint ile yinelenen kurallar devre dışı bırakılabiliyor
- Önerilen yaklaşım: daha hızlı geri bildirim için oxlint ve eslint'i birlikte çalıştırmak
Geniş kural desteği
- ESLint'in tüm kuralları ile typescript-eslint, unicorn, jsdoc, react, jest, import eklentilerinin çok sayıda kuralını destekliyor
- bad comparison sequence, const comparisons gibi kendine özgü kurallar da içeriyor
Esnek yapılandırma
- Klasör bazlı iç içe yapılandırma, glob bazlı override, paylaşılan yapılandırma genişletme desteği sunuyor
- Ekipler arasında tutarlı kod kalitesi standartlarının korunmasına yardımcı oluyor
Editör entegrasyonu
- VSCode, IntelliJ/WebStorm, Zed vb. için eklentiler ve LSP desteği sunuyor
- Farklı IDE'lerde anında hata tanılama ve düzeltme önerileri sağlıyor
Tanılama mesajları
- Sadece basit hata açıklamalarıyla sınırlı kalmayıp nedenleri görselleştirerek çözüm yollarını da gösteriyor
Karşılaştırma ölçümleri
| Araç |
Çalışma süresi |
| oxlint(çok iş parçacıklı) |
615ms |
| oxlint(tek iş parçacıklı) |
1.8 saniye |
| eslint |
33.5 saniye |
Yol haritası
- JavaScript tabanlı özel kurallar desteği planlanıyor
- Sürekli performans optimizasyonu ve ESLint v9 tarzı ayrıntılı glob bazlı yapılandırmalar gibi eklemeler yolda
4 yorum
Rust, performans iyileştirmesi için bir hile kodu mu?
Görünüşe göre vue ya da nestjs hâlâ tam olarak desteklenmiyor.
https://github.com/oxc-project/oxc/issues/481
Oxlint - ESLint'ten 50~100 kat daha hızlı bir JS linter'ı