Avant de signaler des problèmes, veuillez d'abord vérifier les points suivants :
Nous utilisons le dernier handlebars 4.7.3
, mais nous avons remarqué que l'une des dépendances optimist
est obsolète. Il existe un ticket pour passer à yargs
place (https://github.com/wycats/handlebars.js/issues/1179) et il a été fermé avec le PR fusionné (https://github.com/ wycats/handlebars.js/pull/1180). Cependant, le PR fusionné n'est pas encore dans la version 4.x. Veuillez corriger cela dans la version 4.x.
Je pense que cela peut casser le cli, donc je préfère ne pas mettre à jour dans la branche 4.x.
Je travaille parfois sur 5.0 dans le master, mais comme il s'agit d'un travail bénévole et que j'ai beaucoup d'autres tâches, je ne peux pas dire quand il sera prêt.
Le passage de optimist
à minimist
ou yargs
permettrait également d'atténuer plus facilement la vulnérabilité de sécurité SNYK-JS-MINIMIST-559764 (qui nécessite [email protected]
, qui ne correspond pas à optimist
gamme de semver de » de minimist@~0.0.1
).
Ce serait quelque chose que j'imagine que Handlebars voudrait rétroporter vers la branche 4.x.
Une alternative que j'ai proposée consiste à assouplir les dépendances dans optimist
, mais comme c'est obsolète, je pense qu'il y a de fortes chances qu'il ne reçoive plus de correctifs :
https://github.com/substack/node-optimist/pull/150
Modifier : solution de contournement ci-dessous, en utilisant Yarn : https://github.com/wycats/handlebars.js/issues/1658#issuecomment -603768912
OK, je pense que nous pouvons tenter le coup. L'API yargs semble vraiment être comme l'API optimiste. Est-ce que quelqu'un veut créer un PR pour 4.x ?
Je me sentirais vraiment mieux s'il y avait d'autres tests vérifiant que la CLI fonctionne toujours de la même manière après la migration.
Il n'y en a actuellement qu'un ici . Ce serait cool d'avoir des tests en utilisant différents paramètres.
Créez des tests, vérifiez qu'ils fonctionnent avec optimist, puis migrez vers yargs et voyez s'ils fonctionnent toujours.
Quelqu'un pourrait-il faire ça ?
Si vous utilisez Yarn, voici une solution de contournement pour l'instant jusqu'à ce que cela soit corrigé (peut-être avec #1662) :
Ajoutez la résolution suivante à votre package.json
et exécutez yarn
.
"resolutions": {
"**/optimist/minimist": "0.2.1"
}
Cela forcera toutes les versions de optimist
à utiliser [email protected]
, quel que soit le package qui dépend de optimist
.
La dernière version de optimist
(0.6.1, publiée il y a 6 ans) dépend d'une plage de versions vulnérables de minimist
qui provoque des erreurs npm audit
dans les projets qui dépendent de handlebars
directement ou indirectement. Un retrait de optimist
serait très apprécié, merci!
Voir #1661
Sorti en 4.7.4
Commentaire le plus utile
OK, je pense que nous pouvons tenter le coup. L'API yargs semble vraiment être comme l'API optimiste. Est-ce que quelqu'un veut créer un PR pour 4.x ?
Je me sentirais vraiment mieux s'il y avait d'autres tests vérifiant que la CLI fonctionne toujours de la même manière après la migration.
Il n'y en a actuellement qu'un ici . Ce serait cool d'avoir des tests en utilisant différents paramètres.
Créez des tests, vérifiez qu'ils fonctionnent avec optimist, puis migrez vers yargs et voyez s'ils fonctionnent toujours.
Quelqu'un pourrait-il faire ça ?