Antes de presentar problemas, compruebe primero los siguientes puntos:
Estamos usando el último handlebars 4.7.3
, pero notamos que una de las dependencias optimist
está obsoleta. Hay un boleto para cambiar a yargs
lugar (https://github.com/wycats/handlebars.js/issues/1179) y se cerró con el PR combinado (https://github.com/ wycats / handlebars.js / pull / 1180). Sin embargo, el RP combinado aún no está en la versión 4.x. Solucione este problema en la versión 4.x.
Creo que puede romper el cli, por lo que prefiero no actualizar en la rama 4.x.
A veces estoy trabajando en 5.0 en el máster, pero como todo esto es trabajo voluntario y tengo muchas otras tareas, no puedo decir cuándo estará listo.
Pasar de optimist
a minimist
o yargs
también permitiría mitigar más fácilmente la vulnerabilidad de seguridad [email protected]
, que no se ajusta a optimist
's gama de semver minimist@~0.0.1
).
Esto sería algo que me imagino que Handlebars querría trasladar a la rama 4.x.
Una alternativa que he propuesto es relajar las dependencias en optimist
, pero dado que está obsoleto, creo que hay una alta probabilidad de que ya no reciba ninguna corrección:
https://github.com/substack/node-optimist/pull/150
Editar: Solución alternativa a continuación, usando Yarn: https://github.com/wycats/handlebars.js/issues/1658#issuecomment -603768912
Bien, creo que podemos intentarlo. La API yargs realmente parece ser como la API optimista. ¿Alguien quiere crear un PR para 4.x?
Realmente me sentiría mejor si hubiera más pruebas que verificaran que la CLI sigue funcionando igual después de la migración.
Actualmente solo hay uno aquí . Sería genial tener algunas pruebas usando diferentes parámetros.
Cree algunas pruebas, verifique que funcionen con optimist, luego migre a yargs y vea si todavía funcionan.
¿Alguien podría hacer eso?
Si usa Yarn, aquí hay una solución alternativa por ahora hasta que se solucione (tal vez con # 1662):
Agregue la siguiente resolución a su package.json
y ejecute yarn
.
"resolutions": {
"**/optimist/minimist": "0.2.1"
}
Esto obligará a todas las versiones de optimist
a usar [email protected]
, independientemente del paquete que dependa de optimist
.
La última versión optimist
(0.6.1, lanzada hace 6 años) depende de un rango de versión vulnerable de minimist
que causa errores npm audit
en proyectos que dependen de handlebars
directa o indirectamente. Una eliminación de optimist
sería muy apreciada, ¡gracias!
Ver # 1661
Publicado en 4.7.4
Comentario más útil
Bien, creo que podemos intentarlo. La API yargs realmente parece ser como la API optimista. ¿Alguien quiere crear un PR para 4.x?
Realmente me sentiría mejor si hubiera más pruebas que verificaran que la CLI sigue funcionando igual después de la migración.
Actualmente solo hay uno aquí . Sería genial tener algunas pruebas usando diferentes parámetros.
Cree algunas pruebas, verifique que funcionen con optimist, luego migre a yargs y vea si todavía funcionan.
¿Alguien podría hacer eso?