Как обновить или удалить пакет в NPM
Обновляем пакет в NPM до определенной или последней версии, а так же разбираемся как его удалить из проекта.
Дата публикации
8 Марта 2021
Дата изменения
8 Марта 2021
Уникальных просмотров
Оглавление
- Обновление NPM-пакета до нужной версии
- Обновление NPM-пакета до последней версии
- Удаление NPM-пакета из проекта
Для начала необходимо проверить наличие обновлений для пакетов, сделать это можно с помощью команды:
Данная команда выведет вам список пакетов, которые прописаны в вашем package.json и укажет текущую версию и последнюю, до которой можно обновиться.
Пакеты в NPM обновляются с помощью системы семантического версионирования и имеют как правило 3 цифры разделенные точкой.
- Major — версия, когда сделаны обратно несовместимые изменения.
- Minor — версия, когда была добавлена новая функциональность, не нарушающая обратной совместимости.
- Patch — версия, когда были сделаны обратно совместимые исправления (зачастую небольшие исправления багов).
При обновлении major версии пакета, лучше сначала проверить его работоспособность на dev версии проекта. И только после успешных тестов, обновлять на prod версии.
Обновление NPM-пакета до нужной версии
Чтобы обновить пакет до нужной версии, нужно вновь прописать команду npm i myPackageName и после добавить @packageVersion . Например:
npm i myPackage@7.0.0
При этом, не нужно добавлять в команду —save-dev или -D . NPM умный, он просто обновит пакет который записан в devDependencies и не перезапишет его в dependencies или наоборот.
Обновление NPM-пакета до последней версии
Если же вам не нужна определенная версия пакета, то можете просто прописать следующую команду:
npm i myPackage@latest
Данная команда установит последнюю стабильную версию пакета. Однако вам опять стоит обратить внимание на работу пакета, если обновляете major версию.
Удаление NPM-пакета из проекта
Для того чтобы удалить NPM-пакет из проекта, нужно прописать следующую команду:
npm uninstall myPackage
Данная команда удалит как сам пакет, так и все зависимости необходимые для его работы. Пакет будет удален как из файла package.json (из dependencies и devDependencies соответственно), так и из директории node_modules будет удалено все связанное с этим пакетом.
Благодарность автору
Если по какой-либо причине вы хотите поблагодарить автора данного ресурса, вы можете это сделать одним из удобных для вас способов ниже.
Один из самых популярных способов поблагодарить автора, воспользоваться сервисом Яндекс.Деньги.
Полезные команды для работы с Node.js
Перед тем как рассматривать полезные команды при работе с Node.js, её необходимо установить.
Команды помогают узнать версию Node.js,
node -h — показывает список всех доступных команд Node.js.
node -v , node —version — показывает установленную версию Node.js.
npm -h — показывает список всех доступных команд пакетного менеджера npm .

npm -v , npm —version — показывает установленную версию npm .

Команда npm update npm -g позволяет обновить версию npm .

npm list —depth=0 показывает список установленных пакетов.

Команда npm outdated —depth=0 покажет список установленных пакетов, которые требуют обновления. Если все пакеты обновлены, список будет пустым.
npm install package — позволяет установить любой пакет по его имени. Если при этом к команде добавить префикс -g пакет будет установлен глобально на весь компьютер.

Команда npm i package является укороченной альтернативой предыдущей команды.
Если вы хотите установить конкретную версию пакета, воспользуйтесь префиксом @ с номером версии. Например, npm install package@1.0.1 .
npm uninstall package — удаляет установленный пакет по имени.

Команда npm list package — покажет версию установленного пакета, а команда npm view package version — последнюю версию пакета, которая существует.
Для работы с пакетным менеджером также пригодится файл package.json , который должен лежать в директории, с которой происходит работа в консоли.

Он содержит различные мета-данные, например, имя проекта, версия, описания и автор. Также он содержит список зависимостей, которые будут установлены, если вызвать из этой папки команду npm install .
Кроме этого он ещё имеет скрипты, которые вызывают другие команды консоли. Например, для этого файла вызов команды npm start вызовет запуск задачи Grunt с именем dev . А команда npm run build вызовет скрипт build , который запустит задачу в Grunt с именем build .
Во время работы часто возникает необходимость установить некоторые пакеты. Если установить пакет с префиксом —save , то он автоматически запишется в package.json в раздел dependencies . Такая же команда с префиксом —save-dev запишет пакет в раздел devDependencies .
nvm (илиNode Version Manager) — утилита, которая позволяет быстро менять версии Node.js.
Чтобы её установить, достаточно запустить скрипт
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
Теперь можно установить последнюю версию Node.js, например, 5.0 с помощью команды nvm install 5.0 . Чтобы начать использовать её, введите команду nvm use 5.0 . Таким образом, можно быстро переключаться между версиями, например, для тестирования.
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.
Как обновить опубликованный пакет npm
Предположим, мы успешно опубликовали npm пакет и можем посмотреть его по адресу:
https://npmjs.com/package/
Теперь предположим, что мы сделали обновление, но npm publish выдаёт ошибку You cannot publish over the previously published versions
Как правильно обновить пакет?
Семантическое управление версиями Node JS
Обновляя содержимое нашего пакета, мы обновляем версию пакета. Прежде чем указывать номер версии, обязательно ознакомьтесь с семантическим управлением версиями.
Итак, предположим, что у нас версия 1.0.0 (major/мажорная.minor/минорная.patch/патч):
Если обновление представляет собой выпуск исправлений (небольшие изменения), нам нужно увеличить последнюю часть номера версии (patch/патч).
npm version patch
Если обновление, это минорный релиз (новые возможности), нам нужно увеличить среднюю часть номера версии (minor/минорная).
npm version minor
Если это мажорный релиз (обновление основного функционала или исправление основных проблем), нам нужно увеличить первую часть номера версии (major/мажорная).
npm version major
Инструкция по обновлению
Во-первых, я предполагаю, что мы находимся в локальном корневом каталоге пакета, который хотим обновить.
Давайте войдём в npm .
npm login
Давайте изменим нашу версию. Мы можем указать конкретную версию или использовать patch , minor или major обновления.
npm version 1.0.2
npm version patch
Теперь мы можем опубликовать текущую версию.
npm publish
Наконец, мы можем проверить, правильно ли всё опубликовалось.
https://npmjs.com/package/
Как обновить npm и пакеты npm ?
Как всегда, есть нюанс. Update обновляет пакеты в соответствии с записями из package.json , поэтому надо учитавать знаки больше/меньше, тильды, крышки и равно. Если пакет задан как = 1.0.67, то npm update его не обновит.
Если нужно поставить версии пакетов, отличные от записей в package.json, то следует воспользоваться командой npm install
Пара примеров, обновим глабально Angular CLI и Storybook CLI
Обновим npm через npm в рамках минорной версии
Обновим npm через npm с переходом на последнюю мажорную версию
Обновление npm на windows 10
На windows есть определённые проблемы с обновлением, если npm установлен вместе с nodejs. В этом случае лучше воспользоваться npm-windows-upgrade. Правая кнопка мыши по меню «Пуск» -> запуск консоли от имени администратора.
Далее следует ввести 3 команды и следовать инструкциям
Дополнительная информация
Посмотреть версию установленного пакета
Посмотреть устаревшие пакеты
Посмотреть последнюю версию пакета в репозитарии npm (которая устанавливается по npm i )
version
Например, посмотреть версию последней альфы Storybook CLI
