Перед тем как подавать вопросы, пожалуйста, сначала проверьте следующие моменты:
Мы используем последнюю версию handlebars 4.7.3
, но мы заметили, что одна из зависимостей optimist
устарела. Вместо этого есть билет для перехода на yargs
(https://github.com/wycats/handlebars.js/issues/1179), и он был закрыт объединенным PR (https://github.com/ wycats / handlebars.js / pull / 1180). Однако объединенного PR еще нет в версии 4.x. Исправьте это в версии 4.x.
Я думаю, что это может сломать cli, поэтому я бы предпочел не обновлять в ветке 4.x.
Иногда я работаю над 5.0 в мастере, но поскольку это все добровольные работы и у меня много других обязанностей, я не могу сказать, когда это будет готово.
Переход от optimist
к minimist
или yargs
также позволит упростить устранение уязвимости безопасности SNYK-JS-MINIMIST-559764 (для чего требуется [email protected]
, что не соответствует диапазону семвер optimist
minimist@~0.0.1
).
Это было бы чем-то, что я мог бы представить, что Handlebars захочет вернуться к ветке 4.x.
Альтернатива, которую я предложил, - ослабить зависимости в optimist
, но, поскольку она устарела, я думаю, есть большая вероятность, что она больше не получит никаких исправлений:
https://github.com/substack/node-optimist/pull/150
Изменить: обходной путь ниже, используя Yarn: https://github.com/wycats/handlebars.js/issues/1658#issuecomment -603768912
Хорошо, я думаю, мы можем попробовать. API yargs действительно выглядит как API оптимистов. Кто-нибудь хочет создать PR для 4.x?
Я бы действительно почувствовал себя лучше, если бы было еще несколько тестов, подтверждающих, что CLI по-прежнему работает так же после миграции.
В настоящее время здесь только один. Было бы здорово провести тест с разными параметрами.
Создайте несколько тестов, убедитесь, что они работают с optimist, затем перейдите на yargs и посмотрите, работают ли они по-прежнему.
Кто-нибудь мог это сделать?
Если вы используете Yarn, вот временное решение, пока оно не будет исправлено (возможно, с # 1662):
Добавьте следующее разрешение в свой package.json
и запустите yarn
.
"resolutions": {
"**/optimist/minimist": "0.2.1"
}
Это заставит все версии optimist
использовать [email protected]
, независимо от того, какой пакет зависит от optimist
.
Последняя версия optimist
(0.6.1, выпущенная 6 лет назад) зависит от диапазона уязвимых версий minimist
что вызывает ошибки npm audit
в проектах, зависящих от handlebars
прямо или косвенно. Мы будем очень признательны за удаление optimist
, спасибо!
См. # 1661
Выпущено в 4.7.4
Самый полезный комментарий
Хорошо, я думаю, мы можем попробовать. API yargs действительно выглядит как API оптимистов. Кто-нибудь хочет создать PR для 4.x?
Я бы действительно почувствовал себя лучше, если бы было еще несколько тестов, подтверждающих, что CLI по-прежнему работает так же после миграции.
В настоящее время здесь только один. Было бы здорово провести тест с разными параметрами.
Создайте несколько тестов, убедитесь, что они работают с optimist, затем перейдите на yargs и посмотрите, работают ли они по-прежнему.
Кто-нибудь мог это сделать?