Sebelum mengajukan masalah, harap periksa poin-poin berikut terlebih dahulu:
Kami menggunakan handlebars 4.7.3
, tetapi kami melihat bahwa salah satu dependensi optimist
tidak digunakan lagi. Ada tiket untuk beralih ke yargs
sebagai gantinya (https://github.com/wycats/handbars.js/issues/1179) dan ditutup dengan PR gabungan (https://github.com/ wycats/handbars.js/pull/1180). Namun, PR yang digabungkan belum ada dalam rilis 4.x. Harap perbaiki ini dalam rilis 4.x.
Saya pikir itu mungkin merusak cli, jadi saya lebih suka tidak memperbarui di cabang 4.x.
Saya kadang-kadang mengerjakan 5.0 di master, tetapi karena ini semua adalah pekerjaan sukarela dan saya memiliki banyak tugas lain, saya tidak dapat mengatakan kapan itu akan siap.
Berpindah dari optimist
ke minimist
atau yargs
juga akan memudahkan mitigasi kerentanan keamanan SNYK-JS-MINIMIST-559764 (yang memerlukan [email protected]
, yang tidak sesuai dengan kisaran semver optimist
dari minimist@~0.0.1
).
Ini akan menjadi sesuatu yang saya bayangkan bahwa Handlebars ingin melakukan backport ke cabang 4.x.
Alternatif yang saya usulkan adalah untuk melonggarkan dependensi di optimist
, tetapi karena sudah usang, saya pikir ada kemungkinan besar itu tidak akan menerima perbaikan lagi:
https://github.com/substack/node-optimist/pull/150
Sunting: Solusi di bawah ini, menggunakan Benang: https://github.com/wycats/handbars.js/issues/1658#issuecomment -603768912
Oke, saya pikir kita bisa mencobanya. Yargs API tampaknya benar-benar seperti API yang optimis. Apakah ada yang ingin membuat PR untuk 4.x?
Saya benar-benar akan merasa lebih baik jika ada beberapa tes lagi yang memverifikasi bahwa CLI masih berfungsi sama setelah migrasi.
Saat ini hanya ada satu di sini . Akan lebih keren untuk melakukan beberapa pengujian menggunakan parameter yang berbeda.
Buat beberapa pengujian, periksa apakah berfungsi dengan optimis, lalu migrasi ke yarg dan lihat apakah masih berfungsi.
Adakah yang bisa melakukan itu?
Jika Anda menggunakan Benang, berikut ini solusi untuk saat ini hingga masalah ini diperbaiki (mungkin dengan #1662):
Tambahkan resolusi berikut ke package.json
dan jalankan yarn
.
"resolutions": {
"**/optimist/minimist": "0.2.1"
}
Ini akan memaksa semua versi optimist
untuk menggunakan [email protected]
, terlepas dari paket mana yang bergantung pada optimist
.
Versi optimist
terbaru (0.6.1, dirilis 6 tahun lalu) bergantung pada rentang versi rentan minimist
yang menyebabkan kesalahan npm audit
dalam proyek yang bergantung pada handlebars
secara langsung atau tidak langsung. Penghapusan optimist
akan sangat dihargai, terima kasih!
Lihat #1661
Dirilis dalam 4.7.4
Komentar yang paling membantu
Oke, saya pikir kita bisa mencobanya. Yargs API tampaknya benar-benar seperti API yang optimis. Apakah ada yang ingin membuat PR untuk 4.x?
Saya benar-benar akan merasa lebih baik jika ada beberapa tes lagi yang memverifikasi bahwa CLI masih berfungsi sama setelah migrasi.
Saat ini hanya ada satu di sini . Akan lebih keren untuk melakukan beberapa pengujian menggunakan parameter yang berbeda.
Buat beberapa pengujian, periksa apakah berfungsi dengan optimis, lalu migrasi ke yarg dan lihat apakah masih berfungsi.
Adakah yang bisa melakukan itu?