Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to suppress npm WARN deprecated messages in bash

I have several version of node.js installed in Linux Mint 18.0. I manage them using nvm. Because of a project dependency, I need to have version 0.10 as the default version (nvm use 0.10). As a result of this, every time I start my terminal, I get the following output:

npm WARN deprecated This version of npm lacks support for important features,
npm WARN deprecated such as scoped packages, offered by the primary npm
npm WARN deprecated registry. Consider upgrading to at least npm@2, if not the
npm WARN deprecated latest stable version. To upgrade to npm@2, run:
npm WARN deprecated 
npm WARN deprecated   npm -g install npm@latest-2
npm WARN deprecated 
npm WARN deprecated To upgrade to the latest stable version, run:
npm WARN deprecated 
npm WARN deprecated   npm -g install npm@latest
npm WARN deprecated 
npm WARN deprecated (Depending on how Node.js was installed on your system, you
npm WARN deprecated may need to prefix the preceding commands with `sudo`, or if
npm WARN deprecated on Windows, run them from an Administrator prompt.)
npm WARN deprecated 
npm WARN deprecated If you're running the version of npm bundled with
npm WARN deprecated Node.js 0.10 LTS, be aware that the next version of 0.10 LTS
npm WARN deprecated will be bundled with a version of npm@2, which has some small
npm WARN deprecated backwards-incompatible changes made to `npm run-script` and
npm WARN deprecated semver behavior.

How do I suppress these messages?

like image 869
Alexander Popov Avatar asked Jul 09 '16 12:07

Alexander Popov


People also ask

How do I resolve npm deprecated warn?

For deprecated files you should use the "npm i [package]" syntax, in this case you should use: npm i X and it will fetch all necessary packages, including deprecated ones, but which are required for your installation.

Can I ignore npm warn deprecated?

“ NPM deprecation warnings are displayed without any classification with respect to the dependency where they originate. If the code of the deprecated package was not used at all (fake dependency), then we could safely ignore the deprecation warning.


2 Answers

You can suppress or quieten NPM via an environment variable:

npm_config_loglevel=silent npm version

This should work in your .bashrc (or wherever you invoke nvm):

npm_config_loglevel=silent nvm use 0.10

Or you can set the environment variable globally

export npm_config_loglevel=silent

Different loglevels can be found here - they are:

"silent", "error", "warn", "http", "info", "verbose", "silly"

like image 154
Andy Avatar answered Oct 05 '22 06:10

Andy


You can also add .npmrc file in your project, user directory or globally. The four relevant files are:

  • per-project config file (/path/to/my/project/.npmrc)
  • per-user config file (~/.npmrc)
  • global config file ($PREFIX/etc/npmrc)
  • npm builtin config file (/path/to/npm/npmrc)

Example:

prefix=~/.npm-global
loglevel=error

More information here

like image 27
Sergei Sergeev Avatar answered Oct 05 '22 06:10

Sergei Sergeev