Как отключить сообщения npm fund
npm fund
— команда в npm, отображающая список пакетов, которые нуждаются в финансовой поддержке. Функциональность была добавлена в npm для содействия финансированию open-source проектов. Но кроме отдельного вызова команды сообщение так же выводится и при обычной установке пакетов:
$ npm i
up to date, audited 506 packages in 1s
228 packages are looking for funding
run `npm fund` for details
Цель таких сообщений вроде бы благая, но часто они скорее мешают:
- Шум в консоли: постоянные уведомления загромождают вывод в консоли, и более важные сообщения об ошибках могут затеряться;
- CI/CD: в автоматизациях дополнительные сообщения могут так же усложнить анализ логов;
- Повторяющаяся информация: вы можете уже и сами знать о возможности финансирования open-source пакетов или даже уже финансировать что-то. Повторные сообщения вам незачем.
Через опции npm
--no-fund
npm install --no-fund
Отключит fund-сообщения только при конкретном вызове команды.
.npmrc
npmrc
— файл конфигурации для npm (подробнее в документации npm).
Нас интересуют следующие варианты размещения конфига. Файл может быть:
- Локальным для проекта:
project/.npmrc
- Глобальным для пользователя:
~/.npmrc
npm config set fund false
Эта команда поместит fund=false
в пользовательский файл ~/.npmrc
. Так, вы перестанете видеть fund-сообщения при любом вызове npm i
в любых проектах.
Кроме того, вы можете создать файл конфигурации в проекте и поместить туда эту же опцию. Сообщения скроются только для конкретного проекта.
touch .npmrc
echo "fund=false" > .npmrc
Ещё вариант — опция --location
у npm config set
. Принимает значения global
, user
или project
. Следующий вызов аналогичен ручному созданию файла в корне проекта.
npm config set fund false --location project
.npmrc
в папке проекта будет работать не только локально, но и в CI/CD: GitHub Actions, Vercel и других системах автоматизации.
Через переменную окружения
Установка переменной NPM_CONFIG_FUND=false
перед вызовом команды установки пакетов так же скроет сообщение.
Здесь тоже несколько опций:
Один раз
NPM_CONFIG_FUND=false npm i
GitHub Actions
Добавьте переменную в шаг установки пакетов в вашем workflow файле.
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Install dependencies
run: npm ci
env:
NPM_CONFIG_FUND: false
Vercel
Добавьте переменную окружения NPM_CONFIG_FUND=false
в настройках проекта в нужные окружения. Можно добавить сразу во все, чтобы сообщение скрылось в любом deployment.