1### v1.4.29 (2015-10-29): 2 3#### THINGS ARE HAPPENING IN LTS LAND 4 5In a special one-off release as part of the [strategy to get a version of npm 6into Node LTS that works with the current 7registry](https://github.com/nodejs/LTS/issues/37), modify npm to print out 8this deprecation banner literally every time npm is invoked to do anything: 9 10``` 11npm WARN deprecated This version of npm lacks support for important features, 12npm WARN deprecated such as scoped packages, offered by the primary npm 13npm WARN deprecated registry. Consider upgrading to at least npm@2, if not the 14npm WARN deprecated latest stable version. To upgrade to npm@2, run: 15npm WARN deprecated 16npm WARN deprecated npm -g install npm@latest-2 17npm WARN deprecated 18npm WARN deprecated To upgrade to the latest stable version, run: 19npm WARN deprecated 20npm WARN deprecated npm -g install npm@latest 21npm WARN deprecated 22npm WARN deprecated (Depending on how Node.js was installed on your system, you 23npm WARN deprecated may need to prefix the preceding commands with `sudo`, or if 24npm WARN deprecated on Windows, run them from an Administrator prompt.) 25npm WARN deprecated 26npm WARN deprecated If you're running the version of npm bundled with 27npm WARN deprecated Node.js 0.10 LTS, be aware that the next version of 0.10 LTS 28npm WARN deprecated will be bundled with a version of npm@2, which has some small 29npm WARN deprecated backwards-incompatible changes made to `npm run-script` and 30npm WARN deprecated semver behavior. 31``` 32 33The message basically tells the tale: Node 0.10 will finally be getting 34`npm@2`, so those of you who haven't upgraded your build systems to deal with 35its (relatively small) breaking changes should do so now. 36 37Also, this version doesn't even pretend that it can deal with scoped packages, 38which, given the confusing behavior of older versions of `npm@1.4`, where it 39would sometimes try to install packages from GitHub, is a distinct improvement. 40 41There is no good reason for you as an end user to upgrade to this version of 42npm yourself. 43 44* [`709e9b4`](https://github.com/npm/npm/commit/709e9b44f5df9817a1c4babfbf26a2329bd265fb) 45 Print 20-line deprecation banner on all command invocations. 46 ([@othiym23](https://github.com/othiym23)) 47* [`0c29d09`](https://github.com/npm/npm/commit/0c29d0906608e8e174bd30a7a245e19795326051) 48 Crash out immediately with an exhortation to upgrade on attempts to use 49 scoped packages. ([@othiym23](https://github.com/othiym23)) 50 51### v1.5.0-alpha-4 (2014-07-18): 52 53* fall back to `_auth` config as default auth when using default registry 54 ([@isaacs](https://github.com/isaacs)) 55* support for 'init.version' for those who don't want to deal with semver 0.0.x 56 oddities ([@rvagg](https://github.com/rvagg)) 57* [`be06213`](https://github.com/npm/npm/commit/be06213415f2d51a50d2c792b4cd0d3412a9a7b1) 58 remove residual support for `win` log level 59 ([@aterris](https://github.com/aterris)) 60 61### v1.5.0-alpha-3 (2014-07-17): 62 63* [`a3a85dd`](https://github.com/npm/npm/commit/a3a85dd004c9245a71ad2f0213bd1a9a90d64cd6) 64 `--save` scoped packages correctly ([@othiym23](https://github.com/othiym23)) 65* [`18a3385`](https://github.com/npm/npm/commit/18a3385bcf8bfb8312239216afbffb7eec759150) 66 `npm-registry-client@3.0.2` ([@othiym23](https://github.com/othiym23)) 67* [`375988b`](https://github.com/npm/npm/commit/375988b9bf5aa5170f06a790d624d31b1eb32c6d) 68 invalid package names are an early error for optional deps 69 ([@othiym23](https://github.com/othiym23)) 70* consistently use `node-package-arg` instead of arbitrary package spec 71 splitting ([@othiym23](https://github.com/othiym23)) 72 73### v1.5.0-alpha-2 (2014-07-01): 74 75* [`54cf625`](https://github.com/npm/npm/commit/54cf62534e3331e3f454e609e44f0b944e819283) 76 fix handling for 301s in `npm-registry-client@3.0.1` 77 ([@Raynos](https://github.com/Raynos)) 78* [`e410861`](https://github.com/npm/npm/commit/e410861c69a3799c1874614cb5b87af8124ff98d) 79 don't crash if no username set on `whoami` 80 ([@isaacs](https://github.com/isaacs)) 81* [`0353dde`](https://github.com/npm/npm/commit/0353ddeaca8171aa7dbdd8102b7e2eb581a86406) 82 respect `--json` for output ([@isaacs](https://github.com/isaacs)) 83* [`b3d112a`](https://github.com/npm/npm/commit/b3d112ae190b984cc1779b9e6de92218f22380c6) 84 outdated: Don't show headings if there's nothing to output 85 ([@isaacs](https://github.com/isaacs)) 86* [`bb4b90c`](https://github.com/npm/npm/commit/bb4b90c80dbf906a1cb26d85bc0625dc2758acc3) 87 outdated: Default to `latest` rather than `*` for unspecified deps 88 ([@isaacs](https://github.com/isaacs)) 89 90### v1.5.0-alpha-1 (2014-07-01): 91 92* [`eef4884`](https://github.com/npm/npm/commit/eef4884d6487ee029813e60a5f9c54e67925d9fa) 93 use the correct piece of the spec for GitHub shortcuts 94 ([@othiym23](https://github.com/othiym23)) 95 96### v1.5.0-alpha-0 (2014-07-01): 97 98* [`7f55057`](https://github.com/npm/npm/commit/7f55057807cfdd9ceaf6331968e666424f48116c) 99 install scoped packages ([#5239](https://github.com/npm/npm/issues/5239)) 100 ([@othiym23](https://github.com/othiym23)) 101* [`0df7e16`](https://github.com/npm/npm/commit/0df7e16c0232d8f4d036ebf4ec3563215517caac) 102 publish scoped packages ([#5239](https://github.com/npm/npm/issues/5239)) 103 ([@othiym23](https://github.com/othiym23)) 104* [`0689ba2`](https://github.com/npm/npm/commit/0689ba249b92b4c6279a26804c96af6f92b3a501) 105 support (and save) --scope=@s config 106 ([@othiym23](https://github.com/othiym23)) 107* [`f34878f`](https://github.com/npm/npm/commit/f34878fc4cee29901e4daf7bace94be01e25cad7) 108 scope credentials to registry ([@othiym23](https://github.com/othiym23)) 109* [`0ac7ca2`](https://github.com/npm/npm/commit/0ac7ca233f7a69751fe4386af6c4daa3ee9fc0da) 110 capture and store bearer tokens when sent by registry 111 ([@othiym23](https://github.com/othiym23)) 112* [`63c3277`](https://github.com/npm/npm/commit/63c3277f089b2c4417e922826bdc313ac854cad6) 113 only delete files that are created by npm 114 ([@othiym23](https://github.com/othiym23)) 115* [`4f54043`](https://github.com/npm/npm/commit/4f540437091d1cbca3915cd20c2da83c2a88bb8e) 116 `npm-package-arg@2.0.0` ([@othiym23](https://github.com/othiym23)) 117* [`9e1460e`](https://github.com/npm/npm/commit/9e1460e6ac9433019758481ec031358f4af4cd44) 118 `read-package-json@1.2.3` ([@othiym23](https://github.com/othiym23)) 119* [`719d8ad`](https://github.com/npm/npm/commit/719d8adb9082401f905ff4207ede494661f8a554) 120 `fs-vacuum@1.2.1` ([@othiym23](https://github.com/othiym23)) 121* [`9ef8fe4`](https://github.com/npm/npm/commit/9ef8fe4d6ead3acb3e88c712000e2d3a9480ebec) 122 `async-some@1.0.0` ([@othiym23](https://github.com/othiym23)) 123* [`a964f65`](https://github.com/npm/npm/commit/a964f65ab662107b62a4ca58535ce817e8cca331) 124 `npmconf@2.0.1` ([@othiym23](https://github.com/othiym23)) 125* [`113765b`](https://github.com/npm/npm/commit/113765bfb7d3801917c1d9f124b8b3d942bec89a) 126 `npm-registry-client@3.0.0` ([@othiym23](https://github.com/othiym23)) 127 128### v1.4.28 (2014-09-12): 129 130* [`f4540b6`](https://github.com/npm/npm/commit/f4540b6537a87e653d7495a9ddcf72949fdd4d14) 131 [#6043](https://github.com/npm/npm/issues/6043) defer rollbacks until just 132 before the CLI exits ([@isaacs](https://github.com/isaacs)) 133* [`1eabfd5`](https://github.com/npm/npm/commit/1eabfd5c03f33c2bd28823714ff02059eeee3899) 134 [#6043](https://github.com/npm/npm/issues/6043) `slide@1.1.6`: wait until all 135 callbacks have finished before proceeding 136 ([@othiym23](https://github.com/othiym23)) 137 138### v1.4.27 (2014-09-04): 139 140* [`4cf3c8f`](https://github.com/npm/npm/commit/4cf3c8fd78c9e2693a5f899f50c28f4823c88e2e) 141 [#6007](https://github.com/npm/npm/issues/6007) request@2.42.0: properly set 142 headers on proxy requests ([@isaacs](https://github.com/isaacs)) 143* [`403cb52`](https://github.com/npm/npm/commit/403cb526be1472bb7545fa8e62d4976382cdbbe5) 144 [#6055](https://github.com/npm/npm/issues/6055) npmconf@1.1.8: restore 145 case-insensitivity of environmental config 146 ([@iarna](https://github.com/iarna)) 147 148### v1.4.26 (2014-08-28): 149 150* [`eceea95`](https://github.com/npm/npm/commit/eceea95c804fa15b18e91c52c0beb08d42a3e77d) 151 `github-url-from-git@1.4.0`: add support for git+https and git+ssh 152 ([@stefanbuck](https://github.com/stefanbuck)) 153* [`e561758`](https://github.com/npm/npm/commit/e5617587e7d7ab686192391ce55357dbc7fed0a3) 154 `columnify@1.2.1` ([@othiym23](https://github.com/othiym23)) 155* [`0c4fab3`](https://github.com/npm/npm/commit/0c4fab372ee76eab01dda83b6749429a8564902e) 156 `cmd-shim@2.0.0`: upgrade to graceful-fs 3 157 ([@ForbesLindesay](https://github.com/ForbesLindesay)) 158* [`2d69e4d`](https://github.com/npm/npm/commit/2d69e4d95777671958b5e08d3b2f5844109d73e4) 159 `github-url-from-username-repo@1.0.0`: accept slashes in branch names 160 ([@robertkowalski](https://github.com/robertkowalski)) 161* [`81f9b2b`](https://github.com/npm/npm/commit/81f9b2bac9d34c223ea093281ba3c495f23f10d1) 162 ensure lifecycle spawn errors caught properly 163 ([@isaacs](https://github.com/isaacs)) 164* [`bfaab8c`](https://github.com/npm/npm/commit/bfaab8c6e0942382a96b250634ded22454c36b5a) 165 `npm-registry-client@2.0.7`: properly encode % in passwords 166 ([@isaacs](https://github.com/isaacs)) 167* [`91cfb58`](https://github.com/npm/npm/commit/91cfb58dda851377ec604782263519f01fd96ad8) 168 doc: Fix 'npm help index' ([@isaacs](https://github.com/isaacs)) 169 170### v1.4.25 (2014-08-21): 171 172* [`64c0ec2`](https://github.com/npm/npm/commit/64c0ec241ef5d83761ca8de54acb3c41b079956e) 173 `npm-registry-client@2.0.6`: Print the notification header returned by the 174 registry, and make sure status codes are printed without gratuitous quotes 175 around them. 176 ([@othiym23](https://github.com/othiym23)) 177* [`a8ed12b`](https://github.com/npm/npm/commit/a8ed12b) `tar@1.0.1`: 178 Add test for removing an extract target immediately after unpacking. 179 ([@isaacs](https://github.com/isaacs)) 180* [`70fd11d`](https://github.com/npm/npm/commit/70fd11d) 181 `lockfile@1.0.0`: Fix incorrect interaction between `wait`, `stale`, 182 and `retries` options. Part 2 of race condition leading to `ENOENT` 183 errors. 184 ([@isaacs](https://github.com/isaacs)) 185* [`0072c4d`](https://github.com/npm/npm/commit/0072c4d) 186 `fstream@1.0.2`: Fix a double-finish call which can result in excess 187 FS operations after the `close` event. Part 2 of race condition 188 leading to `ENOENT` errors. 189 ([@isaacs](https://github.com/isaacs)) 190 191### v1.4.24 (2014-08-14): 192 193* [`9344bd9`](https://github.com/npm/npm/commit/9344bd9b2929b5c399a0e0e0b34d45bce7bc24bb) 194 doc: add new changelog ([@othiym23](https://github.com/othiym23)) 195* [`4be76fd`](https://github.com/npm/npm/commit/4be76fd65e895883c337a99f275ccc8c801adda3) 196 doc: update version doc to include `pre-*` increment args 197 ([@isaacs](https://github.com/isaacs)) 198* [`e4f2620`](https://github.com/npm/npm/commit/e4f262036080a282ad60e236a9aeebd39fde9fe4) 199 build: add `make tag` to tag current release as `latest` 200 ([@isaacs](https://github.com/isaacs)) 201* [`ec2596a`](https://github.com/npm/npm/commit/ec2596a7cb626772780b25b0a94a7e547a812bd5) 202 build: publish with `--tag=v1.4-next` ([@isaacs](https://github.com/isaacs)) 203* [`9ee55f8`](https://github.com/npm/npm/commit/9ee55f892b8b473032a43c59912c5684fd1b39e6) 204 build: add script to output `v1.4-next` publish tag 205 ([@isaacs](https://github.com/isaacs)) 206* [`aecb56f`](https://github.com/npm/npm/commit/aecb56f95a84687ea46920a0b98aaa587fee1568) 207 build: remove outdated `docpublish` make target 208 ([@isaacs](https://github.com/isaacs)) 209* [`b57a9b7`](https://github.com/npm/npm/commit/b57a9b7ccd13e6b38831ed63595c8ea5763da247) 210 build: remove unpublish step from `make publish` 211 ([@isaacs](https://github.com/isaacs)) 212* [`2c6acb9`](https://github.com/npm/npm/commit/2c6acb96c71c16106965d5cd829b67195dd673c7) 213 install: rename `.gitignore` when unpacking foreign tarballs 214 ([@isaacs](https://github.com/isaacs)) 215* [`22f3681`](https://github.com/npm/npm/commit/22f3681923e993a47fc1769ba735bfa3dd138082) 216 cache: detect non-gzipped tar files more reliably 217 ([@isaacs](https://github.com/isaacs)) 218 219### v1.4.23 (2014-07-31): 220 221* [`8dd11d1`](https://github.com/npm/npm/commit/8dd11d1) update several 222 dependencies to avoid using `semver`s starting with 0. 223 224### v1.4.22 (2014-07-31): 225 226* [`d9a9e84`](https://github.com/npm/npm/commit/d9a9e84) `read-package-json@1.2.4` 227 ([@isaacs](https://github.com/isaacs)) 228* [`86f0340`](https://github.com/npm/npm/commit/86f0340) 229 `github-url-from-git@1.2.0` ([@isaacs](https://github.com/isaacs)) 230* [`a94136a`](https://github.com/npm/npm/commit/a94136a) `fstream@0.1.29` 231 ([@isaacs](https://github.com/isaacs)) 232* [`bb82d18`](https://github.com/npm/npm/commit/bb82d18) `glob@4.0.5` 233 ([@isaacs](https://github.com/isaacs)) 234* [`5b6bcf4`](https://github.com/npm/npm/commit/5b6bcf4) `cmd-shim@1.1.2` 235 ([@isaacs](https://github.com/isaacs)) 236* [`c2aa8b3`](https://github.com/npm/npm/commit/c2aa8b3) license: Cleaned up 237 legalese with actual lawyer ([@isaacs](https://github.com/isaacs)) 238* [`63fe0ee`](https://github.com/npm/npm/commit/63fe0ee) `init-package-json@1.0.0` 239 ([@isaacs](https://github.com/isaacs)) 240 241### v1.4.21 (2014-07-14): 242 243* [`88f51aa`](https://github.com/npm/npm/commit/88f51aa27eb9a958d1fa7ec50fee5cfdedd05110) 244 fix handling for 301s in `npm-registry-client@2.0.3` 245 ([@Raynos](https://github.com/Raynos)) 246 247### v1.4.20 (2014-07-02): 248 249* [`0353dde`](https://github.com/npm/npm/commit/0353ddeaca8171aa7dbdd8102b7e2eb581a86406) 250 respect `--json` for output ([@isaacs](https://github.com/isaacs)) 251* [`b3d112a`](https://github.com/npm/npm/commit/b3d112ae190b984cc1779b9e6de92218f22380c6) 252 outdated: Don't show headings if there's nothing to output 253 ([@isaacs](https://github.com/isaacs)) 254* [`bb4b90c`](https://github.com/npm/npm/commit/bb4b90c80dbf906a1cb26d85bc0625dc2758acc3) 255 outdated: Default to `latest` rather than `*` for unspecified deps 256 ([@isaacs](https://github.com/isaacs)) 257 258### v1.4.19 (2014-07-01): 259 260* [`f687433`](https://github.com/npm/npm/commit/f687433) relative URLS for 261 working non-root registry URLS ([@othiym23](https://github.com/othiym23)) 262* [`bea190c`](https://github.com/npm/npm/commit/bea190c) 263 [#5591](https://github.com/npm/npm/issues/5591) bump nopt and npmconf 264 ([@isaacs](https://github.com/isaacs)) 265 266### v1.4.18 (2014-06-29): 267 268* Bump glob dependency from 4.0.2 to 4.0.3. It now uses graceful-fs when 269 available, increasing resilience to [various filesystem 270 errors](https://github.com/isaacs/node-graceful-fs#improvements-over-fs-module). 271 ([@isaacs](https://github.com/isaacs)) 272 273### v1.4.17 (2014-06-27): 274 275* replace escape codes with ansicolors 276 ([@othiym23](https://github.com/othiym23)) 277* Allow to build all the docs OOTB. ([@GeJ](https://github.com/GeJ)) 278* Use core.longpaths on win32 git - fixes 279 [#5525](https://github.com/npm/npm/issues/5525) ([@bmeck](https://github.com/bmeck)) 280* `npmconf@1.1.2` ([@isaacs](https://github.com/isaacs)) 281* Consolidate color sniffing in config/log loading process 282 ([@isaacs](https://github.com/isaacs)) 283* add verbose log when project config file is ignored 284 ([@isaacs](https://github.com/isaacs)) 285* npmconf: Float patch to remove 'scope' from config defs 286 ([@isaacs](https://github.com/isaacs)) 287* doc: npm-explore can't handle a version 288 ([@robertkowalski](https://github.com/robertkowalski)) 289* Add user-friendly errors for ENOSPC and EROFS. 290 ([@voodootikigod](https://github.com/voodootikigod)) 291* bump tar and fstream deps ([@isaacs](https://github.com/isaacs)) 292* Run the npm-registry-couchapp tests along with npm tests 293 ([@isaacs](https://github.com/isaacs)) 294 295### v1.2.8000 (2014-06-17): 296 297* Same as v1.4.16, but with the spinner disabled, and a version number that 298 starts with v1.2. 299 300### v1.4.16 (2014-06-17): 301 302* `npm-registry-client@2.0.2` ([@isaacs](https://github.com/isaacs)) 303* `fstream@0.1.27` ([@isaacs](https://github.com/isaacs)) 304* `sha@1.2.4` ([@isaacs](https://github.com/isaacs)) 305* `rimraf@2.2.8` ([@isaacs](https://github.com/isaacs)) 306* `npmlog@1.0.1` ([@isaacs](https://github.com/isaacs)) 307* `npm-registry-client@2.0.1` ([@isaacs](https://github.com/isaacs)) 308* removed redundant dependency ([@othiym23](https://github.com/othiym23)) 309* `npmconf@1.0.5` ([@isaacs](https://github.com/isaacs)) 310* Properly handle errors that can occur in the config-loading process 311 ([@isaacs](https://github.com/isaacs)) 312 313### v1.4.15 (2014-06-10): 314 315* cache: atomic de-race-ified package.json writing 316 ([@isaacs](https://github.com/isaacs)) 317* `fstream@0.1.26` ([@isaacs](https://github.com/isaacs)) 318* `graceful-fs@3.0.2` ([@isaacs](https://github.com/isaacs)) 319* `osenv@0.1.0` ([@isaacs](https://github.com/isaacs)) 320* Only spin the spinner when we're fetching stuff 321 ([@isaacs](https://github.com/isaacs)) 322* Update `osenv@0.1.0` which removes ~/tmp as possible tmp-folder 323 ([@robertkowalski](https://github.com/robertkowalski)) 324* `ini@1.2.1` ([@isaacs](https://github.com/isaacs)) 325* `graceful-fs@3` ([@isaacs](https://github.com/isaacs)) 326* Update glob and things depending on glob 327 ([@isaacs](https://github.com/isaacs)) 328* github-url-from-username-repo and read-package-json updates 329 ([@isaacs](https://github.com/isaacs)) 330* `editor@0.1.0` ([@isaacs](https://github.com/isaacs)) 331* `columnify@1.1.0` ([@isaacs](https://github.com/isaacs)) 332* bump ansi and associated deps ([@isaacs](https://github.com/isaacs)) 333 334### v1.4.14 (2014-06-05): 335 336* char-spinner: update to not bork windows 337 ([@isaacs](https://github.com/isaacs)) 338 339### v1.4.13 (2014-05-23): 340 341* Fix `npm install` on a tarball. 342 ([`ed3abf1`](https://github.com/npm/npm/commit/ed3abf1aa10000f0f687330e976d78d1955557f6), 343 [#5330](https://github.com/npm/npm/issues/5330), 344 [@othiym23](https://github.com/othiym23)) 345* Fix an issue with the spinner on Node 0.8. 346 ([`9f00306`](https://github.com/npm/npm/commit/9f003067909440390198c0b8f92560d84da37762), 347 [@isaacs](https://github.com/isaacs)) 348* Re-add `npm.commands.cache.clean` and `npm.commands.cache.read` APIs, and 349 document `npm.commands.cache.*` as npm-cache(3). 350 ([`e06799e`](https://github.com/npm/npm/commit/e06799e77e60c1fc51869619083a25e074d368b3), 351 [@isaacs](https://github.com/isaacs)) 352 353### v1.4.12 (2014-05-23): 354 355* remove normalize-package-data from top level, de-^-ify inflight dep 356 ([@isaacs](https://github.com/isaacs)) 357* Always sort saved bundleDependencies ([@isaacs](https://github.com/isaacs)) 358* add inflight to bundledDependencies 359 ([@othiym23](https://github.com/othiym23)) 360 361### v1.4.11 (2014-05-22): 362 363* fix `npm ls` labeling issue 364* `node-gyp@0.13.1` 365* default repository to https:// instead of git:// 366* addLocalTarball: Remove extraneous unpack 367 ([@isaacs](https://github.com/isaacs)) 368* Massive cache folder refactor ([@othiym23](https://github.com/othiym23) and 369 [@isaacs](https://github.com/isaacs)) 370* Busy Spinner, no http noise ([@isaacs](https://github.com/isaacs)) 371* Per-project .npmrc file support ([@isaacs](https://github.com/isaacs)) 372* `npmconf@1.0.0`, Refactor config/uid/prefix loading process 373 ([@isaacs](https://github.com/isaacs)) 374* Allow once-disallowed characters in passwords 375 ([@isaacs](https://github.com/isaacs)) 376* Send npm version as 'version' header ([@isaacs](https://github.com/isaacs)) 377* fix cygwin encoding issue (Karsten Tinnefeld) 378* Allow non-github repositories with `npm repo` 379 ([@evanlucas](https://github.com/evanlucas)) 380* Allow peer deps to be satisfied by grandparent 381* Stop optional deps moving into deps on `update --save` 382 ([@timoxley](https://github.com/timoxley)) 383* Ensure only matching deps update with `update --save*` 384 ([@timoxley](https://github.com/timoxley)) 385* Add support for `prerelease`, `preminor`, `prepatch` to `npm version` 386 387### v1.4.10 (2014-05-05): 388 389* Don't set referer if already set 390* fetch: Send referer and npm-session headers 391* `run-script`: Support `--parseable` and `--json` 392* list runnable scripts ([@evanlucas](https://github.com/evanlucas)) 393* Use marked instead of ronn for html docs 394 395### v1.4.9 (2014-05-01): 396 397* Send referer header (with any potentially private stuff redacted) 398* Fix critical typo bug in previous npm release 399 400### v1.4.8 (2014-05-01): 401 402* Check SHA before using files from cache 403* adduser: allow change of the saved password 404* Make `npm install` respect `config.unicode` 405* Fix lifecycle to pass `Infinity` for config env value 406* Don't return 0 exit code on invalid command 407* cache: Handle 404s and other HTTP errors as errors 408* Resolve ~ in path configs to env.HOME 409* Include npm version in default user-agent conf 410* npm init: Use ISC as default license, use save-prefix for deps 411* Many test and doc fixes 412 413### v1.4.7 (2014-04-15): 414 415* Add `--save-prefix` option that can be used to override the default of `^` 416 when using `npm install --save` and its counterparts. 417 ([`64eefdf`](https://github.com/npm/npm/commit/64eefdfe26bb27db8dc90e3ab5d27a5ef18a4470), 418 [@thlorenz](https://github.com/thlorenz)) 419* Allow `--silent` to silence the echoing of commands that occurs with `npm 420 run`. 421 ([`c95cf08`](https://github.com/npm/npm/commit/c95cf086e5b97dbb48ff95a72517b203a8f29eab), 422 [@Raynos](https://github.com/Raynos)) 423* Some speed improvements to the cache, which should improve install times. 424 ([`cb94310`](https://github.com/npm/npm/commit/cb94310a6adb18cb7b881eacb8d67171eda8b744), 425 [`3b0870f`](https://github.com/npm/npm/commit/3b0870fb2f40358b3051abdab6be4319d196b99d), 426 [`120f5a9`](https://github.com/npm/npm/commit/120f5a93437bbbea9249801574a2f33e44e81c33), 427 [@isaacs](https://github.com/isaacs)) 428* Improve ability to retry registry requests when a subset of the registry 429 servers are down. 430 ([`4a5257d`](https://github.com/npm/npm/commit/4a5257de3870ac3dafa39667379f19f6dcd6093e), 431 https://github.com/npm/npm-registry-client/commit/7686d02cb0b844626d6a401e58c0755ef3bc8432, 432 [@isaacs](https://github.com/isaacs)) 433* Fix marking of peer dependencies as extraneous. 434 ([`779b164`](https://github.com/npm/npm/commit/779b1649764607b062c031c7e5c972151b4a1754), 435 https://github.com/npm/read-installed/commit/6680ba6ef235b1ca3273a00b70869798ad662ddc, 436 [@isaacs](https://github.com/isaacs)) 437* Fix npm crashing when doing `npm shrinkwrap` in the presence of a 438 `package.json` with no dependencies. 439 ([`a9d9fa5`](https://github.com/npm/npm/commit/a9d9fa5ad3b8c925a589422b7be28d2735f320b0), 440 [@kislyuk](https://github.com/kislyuk)) 441* Fix error when using `npm view` on packages that have no versions or have 442 been unpublished. 443 ([`94df2f5`](https://github.com/npm/npm/commit/94df2f56d684b35d1df043660180fc321b743dc8), 444 [@juliangruber](https://github.com/juliangruber); 445 [`2241a09`](https://github.com/npm/npm/commit/2241a09c843669c70633c399ce698cec3add40b3), 446 [@isaacs](https://github.com/isaacs)) 447 448### v1.4.6 (2014-03-19): 449 450* Fix extraneous package detection to work in more cases. 451 ([`f671286`](https://github.com/npm/npm/commit/f671286), npm/read-installed#20, 452 [@LaurentVB](https://github.com/LaurentVB)) 453 454### v1.4.5 (2014-03-18): 455 456* Sort dependencies in `package.json` when doing `npm install --save` and all 457 its variants. 458 ([`6fd6ff7`](https://github.com/npm/npm/commit/6fd6ff7e536ea6acd33037b1878d4eca1f931985), 459 [@domenic](https://github.com/domenic)) 460* Add `--save-exact` option, usable alongside `--save` and its variants, which 461 will write the exact version number into `package.json` instead of the 462 appropriate semver-compatibility range. 463 ([`17f07df`](https://github.com/npm/npm/commit/17f07df8ad8e594304c2445bf7489cb53346f2c5), 464 [@timoxley](https://github.com/timoxley)) 465* Accept gzipped content from the registry to speed up downloads and save 466 bandwidth. 467 ([`a3762de`](https://github.com/npm/npm/commit/a3762de843b842be8fa0ab57cdcd6b164f145942), 468 npm/npm-registry-client#40, [@fengmk2](https://github.com/fengmk2)) 469* Fix `npm ls`'s `--depth` and `--log` options. 470 ([`1d29b17`](https://github.com/npm/npm/commit/1d29b17f5193d52a5c4faa412a95313dcf41ed91), 471 npm/read-installed#13, [@zertosh](https://github.com/zertosh)) 472* Fix "Adding a cache directory to the cache will make the world implode" in 473 certain cases. 474 ([`9a4b2c4`](https://github.com/npm/npm/commit/9a4b2c4667c2b1e0054e3d5611ab86acb1760834), 475 domenic/path-is-inside#1, [@pmarques](https://github.com/pmarques)) 476* Fix readmes not being uploaded in certain rare cases. 477 ([`527b72c`](https://github.com/npm/npm/commit/527b72cca6c55762b51e592c48a9f28cc7e2ff8b), 478 [@isaacs](https://github.com/isaacs)) 479 480### v1.4.4 (2014-02-20): 481 482* Add `npm t` as an alias for `npm test` (which is itself an alias for `npm run 483 test`, or even `npm run-script test`). We like making running your tests 484 easy. ([`14e650b`](https://github.com/npm/npm/commit/14e650bce0bfebba10094c961ac104a61417a5de), [@isaacs](https://github.com/isaacs)) 485 486### v1.4.3 (2014-02-16): 487 488* Add back `npm prune --production`, which was removed in 1.3.24. 489 ([`acc4d02`](https://github.com/npm/npm/commit/acc4d023c57d07704b20a0955e4bf10ee91bdc83), 490 [@davglass](https://github.com/davglass)) 491* Default `npm install --save` and its counterparts to use the `^` version 492 specifier, instead of `~`. 493 ([`0a3151c`](https://github.com/npm/npm/commit/0a3151c9cbeb50c1c65895685c2eabdc7e2608dc), 494 [@mikolalysenko](https://github.com/mikolalysenko)) 495* Make `npm shrinkwrap` output dependencies in a sorted order, so that diffs 496 between shrinkwrap files should be saner now. 497 ([`059b2bf`](https://github.com/npm/npm/commit/059b2bfd06ae775205a37257dca80142596a0113), 498 [@Raynos](https://github.com/Raynos)) 499* Fix `npm dedupe` not correctly respecting dependency constraints. 500 ([`86028e9`](https://github.com/npm/npm/commit/86028e9fd8524d5e520ce01ba2ebab5a030103fc), 501 [@rafeca](https://github.com/rafeca)) 502* Fix `npm ls` giving spurious warnings when you used `"latest"` as a version 503 specifier. 504 (https://github.com/npm/read-installed/commit/d2956400e0386931c926e0f30c334840e0938f14, 505 [@bajtos](https://github.com/bajtos)) 506* Fixed a bug where using `npm link` on packages without a `name` value could 507 cause npm to delete itself. 508 ([`401a642`](https://github.com/npm/npm/commit/401a64286aa6665a94d1d2f13604f7014c5fce87), 509 [@isaacs](https://github.com/isaacs)) 510* Fixed `npm install ./pkg@1.2.3` to actually install the directory at 511 `pkg@1.2.3`; before it would try to find version `1.2.3` of the package 512 `./pkg` in the npm registry. 513 ([`46d8768`](https://github.com/npm/npm/commit/46d876821d1dd94c050d5ebc86444bed12c56739), 514 [@rlidwka](https://github.com/rlidwka); see also 515 [`f851b79`](https://github.com/npm/npm/commit/f851b79a71d9a5f5125aa85877c94faaf91bea5f)) 516* Fix `npm outdated` to respect the `color` configuration option. 517 ([`d4f6f3f`](https://github.com/npm/npm/commit/d4f6f3ff83bd14fb60d3ac6392cb8eb6b1c55ce1), 518 [@timoxley](https://github.com/timoxley)) 519* Fix `npm outdated --parseable`. 520 ([`9575a23`](https://github.com/npm/npm/commit/9575a23f955ce3e75b509c89504ef0bd707c8cf6), 521 [@yhpark](https://github.com/yhpark)) 522* Fix a lockfile-related errors when using certain Git URLs. 523 ([`164b97e`](https://github.com/npm/npm/commit/164b97e6089f64e686db7a9a24016f245effc37f), 524 [@nigelzor](https://github.com/nigelzor)) 525 526### v1.4.2 (2014-02-13): 527 528* Fixed an issue related to mid-publish GET requests made against the registry. 529 (https://github.com/npm/npm-registry-client/commit/acbec48372bc1816c67c9e7cbf814cf50437ff93, 530 [@isaacs](https://github.com/isaacs)) 531 532### v1.4.1 (2014-02-13): 533 534* Fix `npm shrinkwrap` forgetting to shrinkwrap dependencies that were also 535 development dependencies. 536 ([`9c575c5`](https://github.com/npm/npm/commit/9c575c56efa9b0c8b0d4a17cb9c1de3833004bcd), 537 [@diwu1989](https://github.com/diwu1989)) 538* Fixed publishing of pre-existing packages with uppercase characters in their 539 name. 540 (https://github.com/npm/npm-registry-client/commit/9345d3b6c3d8510dd5c4418f27ee1fce59acebad, 541 [@isaacs](https://github.com/isaacs)) 542 543### v1.4.0 (2014-02-12): 544 545* Remove `npm publish --force`. See 546 https://github.com/npm/npmjs.org/issues/148. 547 ([@isaacs](https://github.com/isaacs), 548 npm/npm-registry-client@2c8dba990de6a59af6545b75cc00a6dc12777c2a) 549* Other changes to the registry client related to saved configs and couch 550 logins. ([@isaacs](https://github.com/isaacs); 551 npm/npm-registry-client@25e2b019a1588155e5f87d035c27e79963b75951, 552 npm/npm-registry-client@9e41e9101b68036e0f078398785f618575f3cdde, 553 npm/npm-registry-client@2c8dba990de6a59af6545b75cc00a6dc12777c2a) 554* Show an error to the user when doing `npm update` and the `package.json` 555 specifies a version that does not exist. 556 ([@evanlucas](https://github.com/evanlucas), 557 [`027a33a`](https://github.com/npm/npm/commit/027a33a5c594124cc1d82ddec5aee2c18bc8dc32)) 558* Fix some issues with cache ownership in certain installation configurations. 559 ([@outcoldman](https://github.com/outcoldman), 560 [`a132690`](https://github.com/npm/npm/commit/a132690a2876cda5dcd1e4ca751f21dfcb11cb9e)) 561* Fix issues where GitHub shorthand dependencies `user/repo` were not always 562 treated the same as full Git URLs. 563 ([@robertkowalski](https://github.com/robertkowalski), 564 https://github.com/meryn/normalize-package-data/commit/005d0b637aec1895117fcb4e3b49185eebf9e240) 565 566### v1.3.26 (2014-02-02): 567 568* Fixes and updates to publishing code 569 ([`735427a`](https://github.com/npm/npm/commit/735427a69ba4fe92aafa2d88f202aaa42920a9e2) 570 and 571 [`c0ac832`](https://github.com/npm/npm/commit/c0ac83224d49aa62e55577f8f27d53bbfd640dc5), 572 [@isaacs](https://github.com/isaacs)) 573* Fix `npm bugs` with no arguments. 574 ([`b99d465`](https://github.com/npm/npm/commit/b99d465221ac03bca30976cbf4d62ca80ab34091), 575 [@Hoops](https://github.com/Hoops)) 576 577### v1.3.25 (2014-01-25): 578 579* Remove gubblebum blocky font from documentation headers. 580 ([`6940c9a`](https://github.com/npm/npm/commit/6940c9a100160056dc6be8f54a7ad7fa8ceda7e2), 581 [@isaacs](https://github.com/isaacs)) 582 583### v1.3.24 (2014-01-19): 584 585* Make the search output prettier, with nice truncated columns, and a `--long` 586 option to create wrapping columns. 587 ([`20439b2`](https://github.com/npm/npm/commit/20439b2) and 588 [`3a6942d`](https://github.com/npm/npm/commit/3a6942d), 589 [@timoxley](https://github.com/timoxley)) 590* Support multiple packagenames in `npm docs`. 591 ([`823010b`](https://github.com/npm/npm/commit/823010b), 592 [@timoxley](https://github.com/timoxley)) 593* Fix the `npm adduser` bug regarding "Error: default value must be string or 594 number" again. ([`b9b4248`](https://github.com/npm/npm/commit/b9b4248), 595 [@isaacs](https://github.com/isaacs)) 596* Fix `scripts` entries containing whitespaces on Windows. 597 ([`80282ed`](https://github.com/npm/npm/commit/80282ed), 598 [@robertkowalski](https://github.com/robertkowalski)) 599* Fix `npm update` for Git URLs that have credentials in them 600 ([`93fc364`](https://github.com/npm/npm/commit/93fc364), 601 [@danielsantiago](https://github.com/danielsantiago)) 602* Fix `npm install` overwriting `npm link`-ed dependencies when they are tagged 603 Git dependencies. ([`af9bbd9`](https://github.com/npm/npm/commit/af9bbd9), 604 [@evanlucas](https://github.com/evanlucas)) 605* Remove `npm prune --production` since it buggily removed some dependencies 606 that were necessary for production; see 607 [#4509](https://github.com/npm/npm/issues/4509). Hopefully it can make its 608 triumphant return, one day. 609 ([`1101b6a`](https://github.com/npm/npm/commit/1101b6a), 610 [@isaacs](https://github.com/isaacs)) 611 612Dependency updates: 613* [`909cccf`](https://github.com/npm/npm/commit/909cccf) `read-package-json@1.1.6` 614* [`a3891b6`](https://github.com/npm/npm/commit/a3891b6) `rimraf@2.2.6` 615* [`ac6efbc`](https://github.com/npm/npm/commit/ac6efbc) `sha@1.2.3` 616* [`dd30038`](https://github.com/npm/npm/commit/dd30038) `node-gyp@0.12.2` 617* [`c8c3ebe`](https://github.com/npm/npm/commit/c8c3ebe) `npm-registry-client@0.3.3` 618* [`4315286`](https://github.com/npm/npm/commit/4315286) `npmconf@0.1.12` 619 620### v1.3.23 (2014-01-03): 621 622* Properly handle installations that contained a certain class of circular 623 dependencies. 624 ([`5dc93e8`](https://github.com/npm/npm/commit/5dc93e8c82604c45b6067b1acf1c768e0bfce754), 625 [@substack](https://github.com/substack)) 626 627### v1.3.22 (2013-12-25): 628 629* Fix a critical bug in `npm adduser` that would manifest in the error message 630 "Error: default value must be string or number." 631 ([`fba4bd2`](https://github.com/npm/npm/commit/fba4bd24bc2ab00ccfeda2043aa53af7d75ef7ce), 632 [@isaacs](https://github.com/isaacs)) 633* Allow `npm bugs` in the current directory to open the current package's bugs 634 URL. 635 ([`d04cf64`](https://github.com/npm/npm/commit/d04cf6483932c693452f3f778c2fa90f6153a4af), 636 [@evanlucas](https://github.com/evanlucas)) 637* Several fixes to various error messages to include more useful or updated 638 information. 639 ([`1e6f2a7`](https://github.com/npm/npm/commit/1e6f2a72ca058335f9f5e7ca22d01e1a8bb0f9f7), 640 [`ff46366`](https://github.com/npm/npm/commit/ff46366bd40ff0ef33c7bac8400bc912c56201d1), 641 [`8b4bb48`](https://github.com/npm/npm/commit/8b4bb4815d80a3612186dc5549d698e7b988eb03); 642 [@rlidwka](https://github.com/rlidwka), 643 [@evanlucas](https://github.com/evanlucas)) 644 645### v1.3.21 (2013-12-17): 646 647* Fix a critical bug that prevented publishing due to incorrect hash 648 calculation. 649 ([`4ca4a2c`](https://github.com/npm/npm-registry-client/commit/4ca4a2c6333144299428be6b572e2691aa59852e), 650 [@dominictarr](https://github.com/dominictarr)) 651 652### v1.3.20 (2013-12-17): 653 654* Fixes a critical bug in v1.3.19. Thankfully, due to that bug, no one could 655 install npm v1.3.19 :) 656 657### v1.3.19 (2013-12-16): 658 659* Adds atomic PUTs for publishing packages, which should result in far fewer 660 requests and less room for replication errors on the server-side. 661 662### v1.3.18 (2013-12-16): 663 664* Added an `--ignore-scripts` option, which will prevent `package.json` scripts 665 from being run. Most notably, this will work on `npm install`, so e.g. `npm 666 install --ignore-scripts` will not run preinstall and prepublish scripts. 667 ([`d7e67bf`](https://github.com/npm/npm/commit/d7e67bf0d94b085652ec1c87d595afa6f650a8f6), 668 [@sqs](https://github.com/sqs)) 669* Fixed a bug introduced in 1.3.16 that would manifest with certain cache 670 configurations, by causing spurious errors saying "Adding a cache directory 671 to the cache will make the world implode." 672 ([`966373f`](https://github.com/npm/npm/commit/966373fad8d741637f9744882bde9f6e94000865), 673 [@domenic](https://github.com/domenic)) 674* Re-fixed the multiple download of URL dependencies, whose fix was reverted in 675 1.3.17. 676 ([`a362c3f`](https://github.com/npm/npm/commit/a362c3f1919987419ed8a37c8defa19d2e6697b0), 677 [@spmason](https://github.com/spmason)) 678 679### v1.3.17 (2013-12-11): 680 681* This release reverts 682 [`644c2ff`](https://github.com/npm/npm/commit/644c2ff3e3d9c93764f7045762477f48864d64a7), 683 which avoided re-downloading URL and shinkwrap dependencies when doing `npm 684 install`. You can see the in-depth reasoning in 685 [`d8c907e`](https://github.com/npm/npm/commit/d8c907edc2019b75cff0f53467e34e0ffd7e5fba); 686 the problem was, that the patch changed the behavior of `npm install -f` to 687 reinstall all dependencies. 688* A new version of the no-re-downloading fix has been submitted as 689 [#4303](https://github.com/npm/npm/issues/4303) and will hopefully be 690 included in the next release. 691 692### v1.3.16 (2013-12-11): 693 694* Git URL dependencies are now updated on `npm install`, fixing a two-year old 695 bug 696 ([`5829ecf`](https://github.com/npm/npm/commit/5829ecf032b392d2133bd351f53d3c644961396b), 697 [@robertkowalski](https://github.com/robertkowalski)). Additional progress on 698 reducing the resulting Git-related I/O is tracked as 699 [#4191](https://github.com/npm/npm/issues/4191), but for now, this will be a 700 big improvement. 701* Added a `--json` mode to `npm outdated` to give a parseable output. 702 ([`0b6c9b7`](https://github.com/npm/npm/commit/0b6c9b7c8c5579f4d7d37a0c24d9b7a12ccbe5fe), 703 [@yyx990803](https://github.com/yyx990803)) 704* Made `npm outdated` much prettier and more useful. It now outputs a 705 color-coded and easy-to-read table. 706 ([`fd3017f`](https://github.com/npm/npm/commit/fd3017fc3e9d42acf6394a5285122edb4dc16106), 707 [@quimcalpe](https://github.com/quimcalpe)) 708* Added the `--depth` option to `npm outdated`, so that e.g. you can do `npm 709 outdated --depth=0` to show only top-level outdated dependencies. 710 ([`1d184ef`](https://github.com/npm/npm/commit/1d184ef3f4b4bc309d38e9128732e3e6fb46d49c), 711 [@yyx990803](https://github.com/yyx990803)) 712* Added a `--no-git-tag-version` option to `npm version`, for doing the usual 713 job of `npm version` minus the Git tagging. This could be useful if you need 714 to increase the version in other related files before actually adding the 715 tag. 716 ([`59ca984`](https://github.com/npm/npm/commit/59ca9841ba4f4b2f11b8e72533f385c77ae9f8bd), 717 [@evanlucas](https://github.com/evanlucas)) 718* Made `npm repo` and `npm docs` work without any arguments, adding them to the 719 list of npm commands that work on the package in the current directory when 720 invoked without arguments. 721 ([`bf9048e`](https://github.com/npm/npm/commit/bf9048e2fa16d43fbc4b328d162b0a194ca484e8), 722 [@robertkowalski](https://github.com/robertkowalski); 723 [`07600d0`](https://github.com/npm/npm/commit/07600d006c652507cb04ac0dae9780e35073dd67), 724 [@wilmoore](https://github.com/wilmoore)). There are a few other commands we 725 still want to implement this for; see 726 [#4204](https://github.com/npm/npm/issues/4204). 727* Pass through the `GIT_SSL_NO_VERIFY` environment variable to Git, if it is 728 set; we currently do this with a few other environment variables, but we 729 missed that one. 730 ([`c625de9`](https://github.com/npm/npm/commit/c625de91770df24c189c77d2e4bc821f2265efa8), 731 [@arikon](https://github.com/arikon)) 732* Fixed `npm dedupe` on Windows due to incorrect path separators being used 733 ([`7677de4`](https://github.com/npm/npm/commit/7677de4583100bc39407093ecc6bc13715bf8161), 734 [@mcolyer](https://github.com/mcolyer)). 735* Fixed the `npm help` command when multiple words were searched for; it 736 previously gave a `ReferenceError`. 737 ([`6a28dd1`](https://github.com/npm/npm/commit/6a28dd147c6957a93db12b1081c6e0da44fe5e3c), 738 [@dereckson](https://github.com/dereckson)) 739* Stopped re-downloading URL and shrinkwrap dependencies, as demonstrated in 740 [#3463](https://github.com/npm/npm/issues/3463) 741 ([`644c2ff`](https://github.com/isaacs/npm/commit/644c2ff3e3d9c93764f7045762477f48864d64a7), 742 [@spmason](https://github.com/spmason)). You can use the `--force` option to 743 force re-download and installation of all dependencies. 744