Memperkenalkan eslint-plugin-sort-properties, pengurutan key yang lebih cepat daripada plugin yang sudah ada
(npmjs.com)Karena sort-keys rule milik eslint tidak mendukung auto-fix, plugin-plugin di npm yang menambahkan kemampuan auto-fix seperti eslint-plugin-sort-keys-fix dan eslint-plugin-sort-destructure-keys sangat populer, masing-masing dengan lebih dari 330 ribu dan 190 ribu unduhan mingguan. Namun, kedua plugin tersebut memiliki beberapa masalah.
Dalam kasus sort-keys-fix, karena ia merupakan hasil fork dan modifikasi dari eslint, perbaikannya dilakukan dengan menukar node property satu per satu (kode), sehingga memiliki kompleksitas waktu O(N^2) dan membutuhkan waktu lama untuk memperbaiki. Sementara itu, sort-destructure-keys juga memiliki bagian yang lambat karena banyak perhitungan berulang dalam proses perbandingan (kode).
Karena itu, dibuatlah eslint-plugin-sort-properties untuk mengatasi masalah-masalah ini, dengan fitur utama sebagai berikut.
- Untuk fix, menggunakan
Array.prototype.sortsehingga kompleksitas waktu menjadi lebih baik. Sekitar 10 kali lebih cepat daripadasort-keys-fix - Waktu penerapan rule lebih dari 50 kali lebih cepat dibandingkan sort-destructure-keys
- Bisa mengurutkan type literal dan interface TypeScript juga (perlu menyebutkan parser tseslint)
- Mengadopsi fitur dari rule jsx-sort-props milik eslint-plugin-react yang memindahkan callback ke belakang
- Komentar juga dapat diperlakukan sebagai bagian dari property dan dipindahkan bersama posisinya, sehingga bisa dikonfigurasi untuk mencegah kerusakan
Untuk metode pengukuran kecepatan, ada referensinya di benchmark.
Belum ada komentar.