Handlebars.js: Используйте yargs вместо устаревшего optimist в выпуске 4.x

Созданный на 6 мар. 2020  ·  7Комментарии  ·  Источник: handlebars-lang/handlebars.js

Перед тем как подавать вопросы, пожалуйста, сначала проверьте следующие моменты:

Мы используем последнюю версию 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.

Самый полезный комментарий

Хорошо, я думаю, мы можем попробовать. API yargs действительно выглядит как API оптимистов. Кто-нибудь хочет создать PR для 4.x?

Я бы действительно почувствовал себя лучше, если бы было еще несколько тестов, подтверждающих, что CLI по-прежнему работает так же после миграции.

В настоящее время здесь только один. Было бы здорово провести тест с разными параметрами.

Создайте несколько тестов, убедитесь, что они работают с optimist, затем перейдите на yargs и посмотрите, работают ли они по-прежнему.

Кто-нибудь мог это сделать?

Все 7 Комментарий

Я думаю, что это может сломать 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

Была ли эта страница полезной?
0 / 5 - 0 рейтинги