Search

Romua1d.ru
Категории: Без категории

Npm-Check-Updates обновление ваших JS пакетов

npm-check-updates обновляет ваши зависимости package.json до последних версий, игнорируя указанные версии.

  • поддерживает существующие семантические политики управления версиями, то есть от "express": "^4.0.0" до "express": "^5.0.0".
  • изменяет только файл package.json. Запустите npm install для обновления установленных пакетов и package-lock.json.
npm-check-updates
  • Красный = значительное обновление
  • Голубой = незначительное обновление
  • Зеленый = обновление патча

Вы также можете рассмотреть npm-check. Схожие цели, разные функции.

к содержанию ↑

Установка

npm install -g npm-check-updates

Использование

Показать все новые зависимости для проекта в текущем каталоге:

$ ncu
Checking package.json
[====================] 5/5 100%

 express           4.12.x  →   4.13.x
 multer            ^0.1.8  →   ^1.0.1
 react-bootstrap  ^0.22.6  →  ^0.24.0
 react-a11y        ^0.1.1  →   ^0.2.6
 webpack          ~1.9.10  →  ~1.10.5

Run ncu -u to upgrade package.json

Обновится файл пакета проекта:

Убедитесь, что файл вашего пакета находится под контролем версий и все изменения были зафиксированы. Команда перезапишет файл вашего пакета.

$ ncu -u
Upgrading package.json
[====================] 1/1 100%

 express           4.12.x  →   4.13.x

Run npm install to install new versions.

$ npm install      # Обновить установленные пакеты и файл package-lock.json

Проверить глобальные пакеты:

$ ncu -g           # Добавьте -u чтобы получить однострочную команду для обновления

Вы можете включать или исключать определенные пакеты, используя опции --filter и --reject. Они принимают строки, разделенные запятыми или пробелами списки или регулярные выражения:

$ ncu mocha             # сокращенная -f mocha (or --filter)
$ ncu one, two, three

# exclude packages
$ ncu -x nodemon        # короткая команда для ncu --reject nodemon

# пакеты начинающиеся с "gulp-"
$ ncu "/^gulp-.*$/"

# Пакеты не начинающиеся на  "gulp-"
$ ncu '/^(?!gulp-).*$/' # mac/linux
$ ncu "/^(?!gulp-).*$/" # windows
к содержанию ↑

Опции

--concurrency            максимальное количество одновременных HTTP-запросов к реестру npm 
                         (default: 8)
--configFilePath         путь к файлу конфигурации rc (по умолчанию: каталог `packageFile` или ./ в противном случае)
--configFileName         Имя файла конфигурации rc (по умолчанию: .ncurc. {json, yml, js}) --cwd Используется в качестве текущего рабочего каталога для `spawn` в npm 

--dep                    проверить только определенный раздел (ы) зависимостей:
                         prod|dev|peer|optional|bundle (разделены запятой)
--engines-node           включать только пакеты, которые удовлетворяют Engine.Node как указано в файле пакета
-e, --error-level        установить уровень ошибки. 1: выход с кодом ошибки 0, если ошибок нет. 2: выход с кодом ошибки 0, если пакеты не нуждаются в обновлении (полезно для непрерывной интеграции)
-f, --filter             включать только имена пакетов, соответствующие заданной строке, списку, разделенному запятыми или пробелами, или / regex /
-g, --global             проверять глобальные пакеты, а не в текущем проекте
-i, --interactive        Включить интерактивные подсказки для каждой зависимости; Подразумевает -u, если не установлен один из параметров json
-j, --jsonAll            вывести новый файл пакета вместо понятного человеку сообщения
--jsonDeps               возвращает вывод наподобие `jsonAll`, но содержит только списки` dependencies`, `devDependencies` и` optionDependencies` данных нового пакета.
--jsonUpgraded           выводить обновленные зависимости в json
-l, --loglevel           какой уровень журналов для отчета: молчание, ошибка, предупреждение, информация, подробный, глупый (по умолчанию: предупреждение)
-m, --minimal            не обновляйте до более новых версий, которые уже удовлетворены существующим диапазоном версий (поведение v2).
-n, --newest             найти новейшие опубликованные версии вместо последних стабильных версий
-p, --packageManager     npm или bower (default: npm)
--packageData            включить файл пакета в виде строки (используйте вместо него стандартный ввод)
--packageFile            расположение файла пакета (по умолчанию: ./package.json)
--pre                    включают -альфа, -бета, -rc. (по умолчанию: 0; по умолчанию
--prefix                 Используется как текущий рабочий каталог в бауэре и npm
-r, --registry           указать сторонний реестр NPM
--removeRange            удалить диапазоны версий из окончательной версии пакета
-s, --silent             ничего не выводить (--loglevel silent)
--semverLevel            найти самую высокую версию в «основных» или «малых»
-t, --greatest           найти самые высокие доступные версии вместо последних стабильных версий
--timeout               глобальное время ожидания в миллисекундах. (по умолчанию: без глобального тайм-аута и 30 секунд на npm-registry-fetch)
-u, --upgrade            перезаписать файл пакета
-v, --version            получить версию
-V                       получить версию
-x, --reject             исключить пакеты, соответствующие заданной строке, разделенному запятыми списку или регулярному выражению
к содержанию ↑

Как определяются обновления зависимостей

  • Прямые зависимости будут увеличены до последней стабильной версии:
    • 2.0.12.2.0
    • 1.21.3
    • 0.1.01.0.1
    • с --semverLevel major
      • 0.1.00.2.1
    • с --semverLevel minor
      • 0.1.00.1.2
  • Семантические политики управления версиями для уровней поддерживаются, в то же время удовлетворяя последней версии:
  • ^1.2.0^2.0.0
  • 1.x2.x
  • «Любая версия» поддерживается:
    • **
  • «Больше чем» поддерживается:
    • >0.2.0>0.3.0
  • Закрытые диапазоны заменяются подстановочными знаками:
    • 1.0.0 < 2.0.0^3.0.0
к содержанию ↑

Конфигурационные файлы

Используйте файл .ncurc. {json, yml, js} для указания информации о конфигурации. Вы можете указать имя файла и путь, используя параметры командной строки --configFileName и --configFilePath.

К примеру, .ncurc.json:

{
  "upgrade": true,
  "filter": "express",
  "reject": [
    "@types/estree",
    "ts-node"
  ]
}

Использование модуля

npm-check-updates может потребоваться:

const ncu = require('npm-check-updates');

ncu.run({
    // Здесь можно указать любую опцию командной строки.
    // Они установлены по умолчанию:
    jsonUpgraded: true,
    packageManager: 'npm',
    silent: true
}).then((upgraded) => {
    console.log('dependencies to upgrade:', upgraded);
});

Известные вопросы

  • Windows: Если npm-check-updates зависает, запустите ncu --loglevel verbose, чтобы увидеть, ожидает ли он stdin. Если это так, попробуйте явно установить файл пакета: ncu -g --packageFile package.json.

Скачать

npm-check-updates

Размер: 167kb
Скачано (раз): 1354
Версия: Latest
ФайлДействие
npm-check-updatesСкачать
Плагин рейтинга создан автором этого блога. Буду очень признателен, если вы сможете его поддержать (ссылка)

p.s. Если статья была полезной и вас переполняет чувство благодарности, можете поддержать меня долларом на патреоне

Romuald Shmidtelson

Web Developer. I have expirience in FrontEnd, Backend, Devops. PHP, Python, Javascript (Vue.js, React.js)

Недавние Посты

Как получить первый заказ на фрилансе

Получение первого заказа на фрилансе может быть вызовом, особенно для новичков, которые еще не имеют…

1 год назад

Топ 7 css фреймворков 2021 года

Разработка сайтов и веб-приложений стала в наше время неизбежной потребностью. Тем не менее, существует несколько способов…

2 года назад

Что такое семантическое ядро и как его использовать для продвижения сайта?

Компании и специалисты по маркетингу тратят много времени и денег на изучение языка поисковых систем,…

3 года назад

Что такое адаптивные изображения? Как правильно использовать srcset.

Адаптивные изображения - это набор методов, используемых для загрузки правильного изображения в зависимости от разрешения…

3 года назад

Что такое Политика конфиденциальности для сайта и для чего она нужна?

Политика конфиденциальности - это документ, в котором подробно описывается, как компания или организация обрабатывает любую…

3 года назад

Кто такой вебмастер?

В современном мире много специалистов занятых поддержанием работы сайтов, и довольно часто многих из них…

3 года назад