1<!DOCTYPE html><html><head> 2<meta charset="utf-8"> 3<title>npm-outdated</title> 4<style> 5body { 6 background-color: #ffffff; 7 color: #24292e; 8 9 margin: 0; 10 11 line-height: 1.5; 12 13 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; 14} 15#rainbar { 16 height: 10px; 17 background-image: linear-gradient(139deg, #fb8817, #ff4b01, #c12127, #e02aff); 18} 19 20a { 21 text-decoration: none; 22 color: #0366d6; 23} 24a:hover { 25 text-decoration: underline; 26} 27 28pre { 29 margin: 1em 0px; 30 padding: 1em; 31 border: solid 1px #e1e4e8; 32 border-radius: 6px; 33 34 display: block; 35 overflow: auto; 36 37 white-space: pre; 38 39 background-color: #f6f8fa; 40 color: #393a34; 41} 42code { 43 font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; 44 font-size: 85%; 45 padding: 0.2em 0.4em; 46 background-color: #f6f8fa; 47 color: #393a34; 48} 49pre > code { 50 padding: 0; 51 background-color: inherit; 52 color: inherit; 53} 54h1, h2, h3 { 55 font-weight: 600; 56} 57 58#logobar { 59 background-color: #333333; 60 margin: 0 auto; 61 padding: 1em 4em; 62} 63#logobar .logo { 64 float: left; 65} 66#logobar .title { 67 font-weight: 600; 68 color: #dddddd; 69 float: left; 70 margin: 5px 0 0 1em; 71} 72#logobar:after { 73 content: ""; 74 display: block; 75 clear: both; 76} 77 78#content { 79 margin: 0 auto; 80 padding: 0 4em; 81} 82 83#table_of_contents > h2 { 84 font-size: 1.17em; 85} 86#table_of_contents ul:first-child { 87 border: solid 1px #e1e4e8; 88 border-radius: 6px; 89 padding: 1em; 90 background-color: #f6f8fa; 91 color: #393a34; 92} 93#table_of_contents ul { 94 list-style-type: none; 95 padding-left: 1.5em; 96} 97#table_of_contents li { 98 font-size: 0.9em; 99} 100#table_of_contents li a { 101 color: #000000; 102} 103 104header.title { 105 border-bottom: solid 1px #e1e4e8; 106} 107header.title > h1 { 108 margin-bottom: 0.25em; 109} 110header.title > .description { 111 display: block; 112 margin-bottom: 0.5em; 113 line-height: 1; 114} 115 116footer#edit { 117 border-top: solid 1px #e1e4e8; 118 margin: 3em 0 4em 0; 119 padding-top: 2em; 120} 121</style> 122</head> 123<body> 124<div id="banner"> 125<div id="rainbar"></div> 126<div id="logobar"> 127<svg class="logo" role="img" height="32" width="32" viewBox="0 0 700 700"> 128<polygon fill="#cb0000" points="0,700 700,700 700,0 0,0"></polygon> 129<polygon fill="#ffffff" points="150,550 350,550 350,250 450,250 450,550 550,550 550,150 150,150"></polygon> 130</svg> 131<div class="title"> 132npm command-line interface 133</div> 134</div> 135</div> 136 137<section id="content"> 138<header class="title"> 139<h1 id="npm-outdated">npm-outdated</h1> 140<span class="description">Check for outdated packages</span> 141</header> 142 143<section id="table_of_contents"> 144<h2 id="table-of-contents">Table of contents</h2> 145<div id="_table_of_contents"><ul><li><a href="#synopsis">Synopsis</a></li><li><a href="#description">Description</a></li><li><a href="#an-example">An example</a></li><li><a href="#configuration">Configuration</a></li><ul><li><a href="#all"><code>all</code></a></li><li><a href="#json"><code>json</code></a></li><li><a href="#long"><code>long</code></a></li><li><a href="#parseable"><code>parseable</code></a></li><li><a href="#global"><code>global</code></a></li><li><a href="#workspace"><code>workspace</code></a></li></ul><li><a href="#see-also">See Also</a></li></ul></div> 146</section> 147 148<div id="_content"><h3 id="synopsis">Synopsis</h3> 149<pre><code class="language-bash">npm outdated [<package-spec> ...] 150</code></pre> 151<h3 id="description">Description</h3> 152<p>This command will check the registry to see if any (or, specific) installed 153packages are currently outdated.</p> 154<p>By default, only the direct dependencies of the root project and direct 155dependencies of your configured <em>workspaces</em> are shown. 156Use <code>--all</code> to find all outdated meta-dependencies as well.</p> 157<p>In the output:</p> 158<ul> 159<li><code>wanted</code> is the maximum version of the package that satisfies the semver 160range specified in <code>package.json</code>. If there's no available semver range 161(i.e. you're running <code>npm outdated --global</code>, or the package isn't 162included in <code>package.json</code>), then <code>wanted</code> shows the currently-installed 163version.</li> 164<li><code>latest</code> is the version of the package tagged as latest in the registry. 165Running <code>npm publish</code> with no special configuration will publish the 166package with a dist-tag of <code>latest</code>. This may or may not be the maximum 167version of the package, or the most-recently published version of the 168package, depending on how the package's developer manages the latest 169<a href="../commands/npm-dist-tag.html">dist-tag</a>.</li> 170<li><code>location</code> is where in the physical tree the package is located.</li> 171<li><code>depended by</code> shows which package depends on the displayed dependency</li> 172<li><code>package type</code> (when using <code>--long</code> / <code>-l</code>) tells you whether this 173package is a <code>dependency</code> or a dev/peer/optional dependency. Packages not 174included in <code>package.json</code> are always marked <code>dependencies</code>.</li> 175<li><code>homepage</code> (when using <code>--long</code> / <code>-l</code>) is the <code>homepage</code> value contained 176in the package's packument</li> 177<li>Red means there's a newer version matching your semver requirements, so 178you should update now.</li> 179<li>Yellow indicates that there's a newer version <em>above</em> your semver 180requirements (usually new major, or new 0.x minor) so proceed with 181caution.</li> 182</ul> 183<h3 id="an-example">An example</h3> 184<pre><code class="language-bash">$ npm outdated 185Package Current Wanted Latest Location Depended by 186glob 5.0.15 5.0.15 6.0.1 node_modules/glob dependent-package-name 187nothingness 0.0.3 git git node_modules/nothingness dependent-package-name 188npm 3.5.1 3.5.2 3.5.1 node_modules/npm dependent-package-name 189local-dev 0.0.3 linked linked local-dev dependent-package-name 190once 1.3.2 1.3.3 1.3.3 node_modules/once dependent-package-name 191</code></pre> 192<p>With these <code>dependencies</code>:</p> 193<pre><code class="language-json">{ 194 "glob": "^5.0.15", 195 "nothingness": "github:othiym23/nothingness#master", 196 "npm": "^3.5.1", 197 "once": "^1.3.1" 198} 199</code></pre> 200<p>A few things to note:</p> 201<ul> 202<li><code>glob</code> requires <code>^5</code>, which prevents npm from installing <code>glob@6</code>, which 203is outside the semver range.</li> 204<li>Git dependencies will always be reinstalled, because of how they're 205specified. The installed committish might satisfy the dependency 206specifier (if it's something immutable, like a commit SHA), or it might 207not, so <code>npm outdated</code> and <code>npm update</code> have to fetch Git repos to check. 208This is why currently doing a reinstall of a Git dependency always forces 209a new clone and install.</li> 210<li><code>npm@3.5.2</code> is marked as "wanted", but "latest" is <code>npm@3.5.1</code> because 211npm uses dist-tags to manage its <code>latest</code> and <code>next</code> release channels. 212<code>npm update</code> will install the <em>newest</em> version, but <code>npm install npm</code> 213(with no semver range) will install whatever's tagged as <code>latest</code>.</li> 214<li><code>once</code> is just plain out of date. Reinstalling <code>node_modules</code> from 215scratch or running <code>npm update</code> will bring it up to spec.</li> 216</ul> 217<h3 id="configuration">Configuration</h3> 218<h4 id="all"><code>all</code></h4> 219<ul> 220<li>Default: false</li> 221<li>Type: Boolean</li> 222</ul> 223<p>When running <code>npm outdated</code> and <code>npm ls</code>, setting <code>--all</code> will show all 224outdated or installed packages, rather than only those directly depended 225upon by the current project.</p> 226<h4 id="json"><code>json</code></h4> 227<ul> 228<li>Default: false</li> 229<li>Type: Boolean</li> 230</ul> 231<p>Whether or not to output JSON data, rather than the normal output.</p> 232<ul> 233<li>In <code>npm pkg set</code> it enables parsing set values with JSON.parse() before 234saving them to your <code>package.json</code>.</li> 235</ul> 236<p>Not supported by all npm commands.</p> 237<h4 id="long"><code>long</code></h4> 238<ul> 239<li>Default: false</li> 240<li>Type: Boolean</li> 241</ul> 242<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p> 243<h4 id="parseable"><code>parseable</code></h4> 244<ul> 245<li>Default: false</li> 246<li>Type: Boolean</li> 247</ul> 248<p>Output parseable results from commands that write to standard output. For 249<code>npm search</code>, this will be tab-separated table format.</p> 250<h4 id="global"><code>global</code></h4> 251<ul> 252<li>Default: false</li> 253<li>Type: Boolean</li> 254</ul> 255<p>Operates in "global" mode, so that packages are installed into the <code>prefix</code> 256folder instead of the current working directory. See 257<a href="../configuring-npm/folders.html">folders</a> for more on the differences in behavior.</p> 258<ul> 259<li>packages are installed into the <code>{prefix}/lib/node_modules</code> folder, instead 260of the current working directory.</li> 261<li>bin files are linked to <code>{prefix}/bin</code></li> 262<li>man pages are linked to <code>{prefix}/share/man</code></li> 263</ul> 264<h4 id="workspace"><code>workspace</code></h4> 265<ul> 266<li>Default:</li> 267<li>Type: String (can be set multiple times)</li> 268</ul> 269<p>Enable running a command in the context of the configured workspaces of the 270current project while filtering by running only the workspaces defined by 271this configuration option.</p> 272<p>Valid values for the <code>workspace</code> config are either:</p> 273<ul> 274<li>Workspace names</li> 275<li>Path to a workspace directory</li> 276<li>Path to a parent workspace directory (will result in selecting all 277workspaces within that folder)</li> 278</ul> 279<p>When set for the <code>npm init</code> command, this may be set to the folder of a 280workspace which does not yet exist, to create the folder and set it up as a 281brand new workspace within the project.</p> 282<p>This value is not exported to the environment for child processes.</p> 283<h3 id="see-also">See Also</h3> 284<ul> 285<li><a href="../using-npm/package-spec.html">package spec</a></li> 286<li><a href="../commands/npm-update.html">npm update</a></li> 287<li><a href="../commands/npm-dist-tag.html">npm dist-tag</a></li> 288<li><a href="../using-npm/registry.html">npm registry</a></li> 289<li><a href="../configuring-npm/folders.html">npm folders</a></li> 290<li><a href="../using-npm/workspaces.html">npm workspaces</a></li> 291</ul></div> 292 293<footer id="edit"> 294<a href="https://github.com/npm/cli/edit/latest/docs/content/commands/npm-outdated.md"> 295<svg role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentcolor" style="vertical-align: text-bottom; margin-right: 0.3em;"> 296<path fill-rule="evenodd" d="M11.013 1.427a1.75 1.75 0 012.474 0l1.086 1.086a1.75 1.75 0 010 2.474l-8.61 8.61c-.21.21-.47.364-.756.445l-3.251.93a.75.75 0 01-.927-.928l.929-3.25a1.75 1.75 0 01.445-.758l8.61-8.61zm1.414 1.06a.25.25 0 00-.354 0L10.811 3.75l1.439 1.44 1.263-1.263a.25.25 0 000-.354l-1.086-1.086zM11.189 6.25L9.75 4.81l-6.286 6.287a.25.25 0 00-.064.108l-.558 1.953 1.953-.558a.249.249 0 00.108-.064l6.286-6.286z"></path> 297</svg> 298Edit this page on GitHub 299</a> 300</footer> 301</section> 302 303 304 305</body></html>