Alat untuk mensurvei paket DART.
Penafian: Ini bukan produk Google yang didukung secara resmi.
Alat -alat ini paling baik dijalankan dari sumber. Untuk mendapatkan sumber, klon repo surveyor seperti ini:
$ git clone https://github.com/pq/surveyor.git
Dari sana Anda dapat menjalankan examples .
dart run example/api_surveyor.dart <path_to_project>
akan menganalisis proyek di jalur yang diberikan dan mengidentifikasi penggunaan beberapa API spesifik.
async dart run example/async_surveyor.dart <path_to_project>
Akan menganalisis proyek di jalur yang diberikan dan mengidentifikasi tempat -tempat di mana "async" digunakan sebagai pengidentifikasi sederhana. Tempat -tempat ini akan menghasilkan kesalahan jika async menjadi kata kunci yang dipesan.
Perhatikan bahwa ini menghasilkan banyak output. Untuk memastikan tidak ada yang hilang, pertimbangkan untuk mengarahkan ke file. Misalnya:
dart run example/async_surveyor.dart <path> 2>&1 | tee survey_out.txt
dart run example/error_surveyor.dart <path_to_project>
akan menganalisis proyek di jalur yang diberikan, penyaringan untuk kesalahan.
dart run example/lint_surveyor.dart <path_to_project>
akan menganalisis proyek di jalur yang diberikan dan mengidentifikasi pelanggaran aturan serat (aturan khusus atau yang ditentukan oleh package:linter ).
dart run example/doc_surveyor/lib/main.dart <path_to_project>
akan menganalisis proyek di jalur yang diberikan menandai anggota publik yang kehilangan dokumen API.
Sampel menjalankan menghasilkan output seperti ini:
122 public members
Members without docs:
Void • <path-to-provider-repo>/packages/provider/lib/src/proxy_provider.dart • 107:1
NumericProxyProvider • <path-to-provider-repo>/packages/provider/lib/src/proxy_provider.dart • 177:1
Score: 0.98
dart run example/widget_surveyor/lib/widget_surveyor.dart <path_to_project>
akan menganalisis proyek di jalur yang diberikan dan menyajikan daftar Widget anak-anak 2-gram yang ditemukan.
Sampel menjalankan menghasilkan file CSV dengan konten seperti ini:
AppBar -> Text, 1
Center -> Column, 1
Column -> Text, 3
FloatingActionButton -> Icon, 1
MaterialApp -> MyHomePage, 1
Scaffold -> AppBar, 1
Scaffold -> Center, 1
Scaffold -> FloatingActionButton, 1
null -> MaterialApp, 1
null -> MyApp, 1
null -> Scaffold, 1
.packages --force-install
Lihat juga package:pub_crawl , yang dapat digunakan untuk mengambil sumber paket untuk analisis dari pub.
Ini sangat banyak pekerjaan yang sedang berlangsung. Harap ajukan permintaan fitur, bug, dan umpan balik apa pun di pelacak masalah.
Terima kasih!