npm-check-updates обновляет ваши зависимости package.json до последних версий, игнорируя указанные версии.
- поддерживает существующие семантические политики управления версиями, то есть от
"express": "^4.0.0"
до"express": "^5.0.0"
. - изменяет только файл package.json. Запустите npm install для обновления установленных пакетов и package-lock.json.
- Красный = значительное обновление
- Голубой = незначительное обновление
- Зеленый = обновление патча
Вы также можете рассмотреть 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.1
→2.2.0
1.2
→1.3
0.1.0
→1.0.1
- с
--semverLevel major
0.1.0
→0.2.1
- с
--semverLevel minor
0.1.0
→0.1.2
- Семантические политики управления версиями для уровней поддерживаются, в то же время удовлетворяя последней версии:
^1.2.0
→^2.0.0
1.x
→2.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 |
Скачано (раз): | 1604 |
Версия: | Latest |
Файл | Действие |
---|---|
npm-check-updates | Скачать |