• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 [&lt;package-spec&gt; ...]
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>