Engine-version - paket npm yang memungkinkan Anda menyetel lingkungan pengembangan yang benar

Beberapa proyek sering kali memerlukan versi tertentu dari program yang diinstal secara lokal. Ini bisa berupa versi tertentu dari node.js atau npm (misalnya, npm @ 7 dengan dukungan ruang kerja), atau database tertentu, manajer paket, dan utilitas lain yang tidak dapat diinstal dari npm . Seringkali saya melakukan perintah ke obrolan, readme atau wiki.

npm memungkinkan Anda untuk mendeklarasikan versi node dan npm yang diperlukan dalam file package.json , tetapi tidak memeriksanya dengan cara apa pun. Untuk memperbaikinya dan memperluas daftar alat, versi mesin paket npm kecil telah ditulis . Paket bekerja sangat sederhana: pertama, ia membaca deskripsi perangkat lunak yang diperlukan dari package.json , dan kemudian melihat apakah program diinstal dan apakah versi yang diinstal cocok dengan yang dijelaskan. Dan jika pemeriksaan gagal, daftar kesalahan ditampilkan.

Untuk mulai menggunakan paket ini, Anda harus menginstal paket dari npm terlebih dahulu :

npm install --save-dev engine-version

Jelaskan daftar alat yang diperlukan di package.json ( format deskripsi ) :

{
  ...
  "engines": {
    "node": ">=16.0.0",
    "npm": "~7.0.0",
    "mysql": "*"
  },
  ...
}

Tambahkan skrip yang memicu check in package.json , misalnya, sebelum proses build paket:

{
  ...
  "scripts": {
    "prebuild": "engine-version",
    "build": "my_build_script"
  },
  ...
}
  

Selanjutnya direncanakan untuk dilakukan:

  • Buat kesalahan lebih informatif

  • Dapat dikonfigurasi dengan argumen (peringatan, bukan kesalahan)

  • Tambahkan tipe alternatif pemeriksaan versi untuk program populer yang tidak memahami argumen --version (sekarang versi yang diinstal diperiksa dengan memanggil program dengan opsi --version dalam proses anak)




All Articles