From 8f07bc4dbf8aaace537a023ae426f71deb2c0df0 Mon Sep 17 00:00:00 2001 From: Audrey Eschright Date: Mon, 18 Feb 2019 18:41:06 -0800 Subject: [PATCH] deps: upgrade npm to 6.8.0 --- deps/npm/.npmignore | 2 +- deps/npm/AUTHORS | 4 + deps/npm/CHANGELOG.md | 77 +++ deps/npm/bin/npm-cli.js | 3 +- deps/npm/doc/files/package.json.md | 9 + deps/npm/html/doc/README.html | 2 +- deps/npm/html/doc/cli/npm-access.html | 2 +- deps/npm/html/doc/cli/npm-adduser.html | 2 +- deps/npm/html/doc/cli/npm-audit.html | 2 +- deps/npm/html/doc/cli/npm-bin.html | 2 +- deps/npm/html/doc/cli/npm-bugs.html | 2 +- deps/npm/html/doc/cli/npm-build.html | 2 +- deps/npm/html/doc/cli/npm-bundle.html | 2 +- deps/npm/html/doc/cli/npm-cache.html | 2 +- deps/npm/html/doc/cli/npm-ci.html | 2 +- deps/npm/html/doc/cli/npm-completion.html | 2 +- deps/npm/html/doc/cli/npm-config.html | 2 +- deps/npm/html/doc/cli/npm-dedupe.html | 2 +- deps/npm/html/doc/cli/npm-deprecate.html | 2 +- deps/npm/html/doc/cli/npm-dist-tag.html | 2 +- deps/npm/html/doc/cli/npm-docs.html | 2 +- deps/npm/html/doc/cli/npm-doctor.html | 2 +- deps/npm/html/doc/cli/npm-edit.html | 2 +- deps/npm/html/doc/cli/npm-explore.html | 2 +- deps/npm/html/doc/cli/npm-help-search.html | 2 +- deps/npm/html/doc/cli/npm-help.html | 2 +- deps/npm/html/doc/cli/npm-hook.html | 2 +- deps/npm/html/doc/cli/npm-init.html | 2 +- .../npm/html/doc/cli/npm-install-ci-test.html | 2 +- deps/npm/html/doc/cli/npm-install-test.html | 2 +- deps/npm/html/doc/cli/npm-install.html | 2 +- deps/npm/html/doc/cli/npm-link.html | 2 +- deps/npm/html/doc/cli/npm-logout.html | 2 +- deps/npm/html/doc/cli/npm-ls.html | 4 +- deps/npm/html/doc/cli/npm-org.html | 2 +- deps/npm/html/doc/cli/npm-outdated.html | 2 +- deps/npm/html/doc/cli/npm-owner.html | 2 +- deps/npm/html/doc/cli/npm-pack.html | 2 +- deps/npm/html/doc/cli/npm-ping.html | 2 +- deps/npm/html/doc/cli/npm-prefix.html | 2 +- deps/npm/html/doc/cli/npm-profile.html | 2 +- deps/npm/html/doc/cli/npm-prune.html | 2 +- deps/npm/html/doc/cli/npm-publish.html | 2 +- deps/npm/html/doc/cli/npm-rebuild.html | 2 +- deps/npm/html/doc/cli/npm-repo.html | 2 +- deps/npm/html/doc/cli/npm-restart.html | 2 +- deps/npm/html/doc/cli/npm-root.html | 2 +- deps/npm/html/doc/cli/npm-run-script.html | 2 +- deps/npm/html/doc/cli/npm-search.html | 2 +- deps/npm/html/doc/cli/npm-shrinkwrap.html | 2 +- deps/npm/html/doc/cli/npm-star.html | 2 +- deps/npm/html/doc/cli/npm-stars.html | 2 +- deps/npm/html/doc/cli/npm-start.html | 2 +- deps/npm/html/doc/cli/npm-stop.html | 2 +- deps/npm/html/doc/cli/npm-team.html | 2 +- deps/npm/html/doc/cli/npm-test.html | 2 +- deps/npm/html/doc/cli/npm-token.html | 2 +- deps/npm/html/doc/cli/npm-uninstall.html | 2 +- deps/npm/html/doc/cli/npm-unpublish.html | 2 +- deps/npm/html/doc/cli/npm-update.html | 2 +- deps/npm/html/doc/cli/npm-version.html | 2 +- deps/npm/html/doc/cli/npm-view.html | 2 +- deps/npm/html/doc/cli/npm-whoami.html | 2 +- deps/npm/html/doc/cli/npm.html | 6 +- deps/npm/html/doc/files/npm-folders.html | 2 +- deps/npm/html/doc/files/npm-global.html | 2 +- deps/npm/html/doc/files/npm-json.html | 10 +- .../npm/html/doc/files/npm-package-locks.html | 2 +- .../html/doc/files/npm-shrinkwrap.json.html | 2 +- deps/npm/html/doc/files/npmrc.html | 2 +- .../npm/html/doc/files/package-lock.json.html | 2 +- deps/npm/html/doc/files/package.json.html | 10 +- deps/npm/html/doc/index.html | 2 +- deps/npm/html/doc/misc/npm-coding-style.html | 2 +- deps/npm/html/doc/misc/npm-config.html | 2 +- deps/npm/html/doc/misc/npm-developers.html | 2 +- deps/npm/html/doc/misc/npm-disputes.html | 12 +- deps/npm/html/doc/misc/npm-index.html | 2 +- deps/npm/html/doc/misc/npm-orgs.html | 2 +- deps/npm/html/doc/misc/npm-registry.html | 2 +- deps/npm/html/doc/misc/npm-scope.html | 2 +- deps/npm/html/doc/misc/npm-scripts.html | 2 +- deps/npm/html/doc/misc/removing-npm.html | 2 +- deps/npm/html/doc/misc/semver.html | 2 +- deps/npm/lib/access.js | 2 +- deps/npm/lib/fetch-package-metadata.md | 2 +- deps/npm/lib/install/inflate-shrinkwrap.js | 2 +- deps/npm/lib/ls.js | 2 +- deps/npm/lib/shrinkwrap.js | 7 +- deps/npm/lib/token.js | 46 +- deps/npm/man/man1/npm-README.1 | 2 +- deps/npm/man/man1/npm-access.1 | 2 +- deps/npm/man/man1/npm-adduser.1 | 2 +- deps/npm/man/man1/npm-audit.1 | 2 +- deps/npm/man/man1/npm-bin.1 | 2 +- deps/npm/man/man1/npm-bugs.1 | 2 +- deps/npm/man/man1/npm-build.1 | 2 +- deps/npm/man/man1/npm-bundle.1 | 2 +- deps/npm/man/man1/npm-cache.1 | 2 +- deps/npm/man/man1/npm-ci.1 | 2 +- deps/npm/man/man1/npm-completion.1 | 2 +- deps/npm/man/man1/npm-config.1 | 2 +- deps/npm/man/man1/npm-dedupe.1 | 2 +- deps/npm/man/man1/npm-deprecate.1 | 2 +- deps/npm/man/man1/npm-dist-tag.1 | 2 +- deps/npm/man/man1/npm-docs.1 | 2 +- deps/npm/man/man1/npm-doctor.1 | 2 +- deps/npm/man/man1/npm-edit.1 | 2 +- deps/npm/man/man1/npm-explore.1 | 2 +- deps/npm/man/man1/npm-help-search.1 | 2 +- deps/npm/man/man1/npm-help.1 | 2 +- deps/npm/man/man1/npm-hook.1 | 2 +- deps/npm/man/man1/npm-init.1 | 2 +- deps/npm/man/man1/npm-install-ci-test.1 | 2 +- deps/npm/man/man1/npm-install-test.1 | 2 +- deps/npm/man/man1/npm-install.1 | 2 +- deps/npm/man/man1/npm-link.1 | 2 +- deps/npm/man/man1/npm-logout.1 | 2 +- deps/npm/man/man1/npm-ls.1 | 4 +- deps/npm/man/man1/npm-org.1 | 2 +- deps/npm/man/man1/npm-outdated.1 | 2 +- deps/npm/man/man1/npm-owner.1 | 2 +- deps/npm/man/man1/npm-pack.1 | 2 +- deps/npm/man/man1/npm-ping.1 | 2 +- deps/npm/man/man1/npm-prefix.1 | 2 +- deps/npm/man/man1/npm-profile.1 | 2 +- deps/npm/man/man1/npm-prune.1 | 2 +- deps/npm/man/man1/npm-publish.1 | 2 +- deps/npm/man/man1/npm-rebuild.1 | 2 +- deps/npm/man/man1/npm-repo.1 | 2 +- deps/npm/man/man1/npm-restart.1 | 2 +- deps/npm/man/man1/npm-root.1 | 2 +- deps/npm/man/man1/npm-run-script.1 | 2 +- deps/npm/man/man1/npm-search.1 | 2 +- deps/npm/man/man1/npm-shrinkwrap.1 | 2 +- deps/npm/man/man1/npm-star.1 | 2 +- deps/npm/man/man1/npm-stars.1 | 2 +- deps/npm/man/man1/npm-start.1 | 2 +- deps/npm/man/man1/npm-stop.1 | 2 +- deps/npm/man/man1/npm-team.1 | 2 +- deps/npm/man/man1/npm-test.1 | 2 +- deps/npm/man/man1/npm-token.1 | 2 +- deps/npm/man/man1/npm-uninstall.1 | 2 +- deps/npm/man/man1/npm-unpublish.1 | 2 +- deps/npm/man/man1/npm-update.1 | 2 +- deps/npm/man/man1/npm-version.1 | 2 +- deps/npm/man/man1/npm-view.1 | 2 +- deps/npm/man/man1/npm-whoami.1 | 2 +- deps/npm/man/man1/npm.1 | 4 +- deps/npm/man/man5/npm-folders.5 | 2 +- deps/npm/man/man5/npm-global.5 | 2 +- deps/npm/man/man5/npm-json.5 | 15 +- deps/npm/man/man5/npm-package-locks.5 | 2 +- deps/npm/man/man5/npm-shrinkwrap.json.5 | 2 +- deps/npm/man/man5/npmrc.5 | 2 +- deps/npm/man/man5/package-lock.json.5 | 2 +- deps/npm/man/man5/package.json.5 | 15 +- deps/npm/man/man7/npm-coding-style.7 | 2 +- deps/npm/man/man7/npm-config.7 | 2 +- deps/npm/man/man7/npm-developers.7 | 2 +- deps/npm/man/man7/npm-disputes.7 | 2 +- deps/npm/man/man7/npm-index.7 | 2 +- deps/npm/man/man7/npm-orgs.7 | 2 +- deps/npm/man/man7/npm-registry.7 | 2 +- deps/npm/man/man7/npm-scope.7 | 2 +- deps/npm/man/man7/npm-scripts.7 | 2 +- deps/npm/man/man7/removing-npm.7 | 2 +- deps/npm/man/man7/semver.7 | 2 +- .../builtin-modules/builtin-modules.json | 35 - .../npm/node_modules/builtin-modules/index.js | 10 - deps/npm/node_modules/builtin-modules/license | 21 - .../node_modules/builtin-modules/package.json | 73 -- .../node_modules/builtin-modules/readme.md | 41 -- .../node_modules/builtin-modules/static.js | 2 - .../unique-filename/.nyc_output/54942.json | 1 + .../unique-filename/.nyc_output/54944.json | 1 + deps/npm/node_modules/debug/.eslintrc | 14 + deps/npm/node_modules/errno/.jshintrc | 59 ++ deps/npm/node_modules/extend/.eslintrc | 17 + deps/npm/node_modules/ip/.jshintrc | 89 +++ .../node_modules/is-builtin-module/index.js | 10 - .../is-builtin-module/package.json | 75 --- .../node_modules/is-builtin-module/readme.md | 33 - deps/npm/node_modules/isstream/.jshintrc | 59 ++ .../mute-stream/.nyc_output/33508.json | 1 + .../mute-stream/.nyc_output/33510.json | 1 + deps/npm/node_modules/node-gyp/.jshintrc | 7 + .../normalize-package-data/README.md | 2 +- .../normalize-package-data/lib/fixer.js | 5 +- .../node_modules/resolve/.editorconfig | 20 + .../node_modules/resolve/.eslintignore | 1 + .../node_modules/resolve/.eslintrc | 31 + .../node_modules/resolve/.travis.yml | 269 ++++++++ .../node_modules/resolve/CHANGELOG.md | 629 ++++++++++++++++++ .../node_modules/resolve/LICENSE | 18 + .../node_modules/resolve/appveyor.yml | 47 ++ .../node_modules/resolve/changelog.hbs | 36 + .../node_modules/resolve/example/async.js | 5 + .../node_modules/resolve/example/sync.js | 3 + .../node_modules/resolve/index.js | 8 + .../node_modules/resolve/lib/async.js | 229 +++++++ .../node_modules/resolve/lib/caller.js | 8 + .../node_modules/resolve/lib/core.js | 53 ++ .../node_modules/resolve/lib/core.json | 73 ++ .../resolve/lib/node-modules-paths.js | 42 ++ .../resolve/lib/normalize-options.js | 10 + .../node_modules/resolve/lib/sync.js | 154 +++++ .../node_modules/resolve/package.json | 71 ++ .../node_modules/resolve/readme.markdown | 179 +++++ .../node_modules/resolve/test/.eslintrc | 5 + .../node_modules/resolve/test/core.js | 82 +++ .../node_modules/resolve/test/dotdot.js | 29 + .../resolve/test/dotdot/abc/index.js | 2 + .../node_modules/resolve/test/dotdot/index.js | 1 + .../resolve/test/faulty_basedir.js | 29 + .../node_modules/resolve/test/filter.js | 34 + .../node_modules/resolve/test/filter_sync.js | 26 + .../node_modules/resolve/test/mock.js | 143 ++++ .../node_modules/resolve/test/mock_sync.js | 67 ++ .../node_modules/resolve/test/module_dir.js | 56 ++ .../test/module_dir/xmodules/aaa/index.js | 1 + .../test/module_dir/ymodules/aaa/index.js | 1 + .../test/module_dir/zmodules/bbb/main.js | 1 + .../test/module_dir/zmodules/bbb/package.json | 3 + .../resolve/test/node-modules-paths.js | 121 ++++ .../node_modules/resolve/test/node_path.js | 70 ++ .../resolve/test/node_path/x/aaa/index.js | 1 + .../resolve/test/node_path/x/ccc/index.js | 1 + .../resolve/test/node_path/y/bbb/index.js | 1 + .../resolve/test/node_path/y/ccc/index.js | 1 + .../node_modules/resolve/test/nonstring.js | 9 + .../node_modules/resolve/test/pathfilter.js | 75 +++ .../resolve/test/pathfilter/deep_ref/main.js | 0 .../node_modules/resolve/test/precedence.js | 23 + .../resolve/test/precedence/aaa.js | 1 + .../resolve/test/precedence/aaa/index.js | 1 + .../resolve/test/precedence/aaa/main.js | 1 + .../resolve/test/precedence/bbb.js | 1 + .../resolve/test/precedence/bbb/main.js | 1 + .../node_modules/resolve/test/resolver.js | 429 ++++++++++++ .../resolve/test/resolver/baz/doom.js | 0 .../resolve/test/resolver/baz/package.json | 3 + .../resolve/test/resolver/baz/quux.js | 1 + .../resolve/test/resolver/browser_field/a.js | 0 .../resolve/test/resolver/browser_field/b.js | 0 .../test/resolver/browser_field/package.json | 5 + .../resolve/test/resolver/cup.coffee | 0 .../resolve/test/resolver/dot_main/index.js | 1 + .../test/resolver/dot_main/package.json | 3 + .../test/resolver/dot_slash_main/index.js | 1 + .../test/resolver/dot_slash_main/package.json | 3 + .../node_modules/resolve/test/resolver/foo.js | 1 + .../test/resolver/incorrect_main/index.js | 2 + .../test/resolver/incorrect_main/package.json | 3 + .../test/resolver/invalid_main/package.json | 7 + .../resolve/test/resolver/mug.coffee | 0 .../node_modules/resolve/test/resolver/mug.js | 0 .../test/resolver/multirepo/lerna.json | 6 + .../test/resolver/multirepo/package.json | 20 + .../multirepo/packages/package-a/index.js | 35 + .../multirepo/packages/package-a/package.json | 14 + .../multirepo/packages/package-b/index.js | 0 .../multirepo/packages/package-b/package.json | 14 + .../test/resolver/other_path/lib/other-lib.js | 0 .../resolve/test/resolver/other_path/root.js | 0 .../resolve/test/resolver/quux/foo/index.js | 1 + .../resolve/test/resolver/same_names/foo.js | 1 + .../test/resolver/same_names/foo/index.js | 1 + .../resolver/symlinked/_/node_modules/foo.js | 0 .../symlinked/_/symlink_target/.gitkeep | 0 .../test/resolver/without_basedir/main.js | 5 + .../resolve/test/resolver_sync.js | 340 ++++++++++ .../node_modules/resolve/test/subdirs.js | 13 + .../node_modules/resolve/test/symlinks.js | 56 ++ .../normalize-package-data/package.json | 42 +- deps/npm/node_modules/npm-bundled/index.js | 14 +- .../npm/node_modules/npm-bundled/package.json | 12 +- deps/npm/node_modules/npm-packlist/index.js | 28 +- .../node_modules/npm-packlist/package.json | 22 +- .../npm-registry-fetch/CHANGELOG.md | 10 + .../node_modules/npm-registry-fetch/auth.js | 6 + .../npm-registry-fetch/package.json | 16 +- deps/npm/node_modules/pacote/CHANGELOG.md | 10 + .../pacote/lib/fetchers/directory.js | 5 +- .../pacote/lib/finalize-manifest.js | 3 +- .../node_modules/pacote/lib/util/read-json.js | 15 + deps/npm/node_modules/pacote/package.json | 22 +- deps/npm/node_modules/path-parse/.travis.yml | 9 + .../license => path-parse/LICENSE} | 10 +- deps/npm/node_modules/path-parse/README.md | 42 ++ deps/npm/node_modules/path-parse/index.js | 93 +++ deps/npm/node_modules/path-parse/package.json | 65 ++ deps/npm/node_modules/path-parse/test.js | 77 +++ deps/npm/node_modules/promise-retry/.jshintrc | 64 ++ deps/npm/node_modules/prr/.jshintrc | 61 ++ deps/npm/node_modules/psl/.eslintrc | 11 + deps/npm/node_modules/qs/.eslintrc | 19 + deps/npm/node_modules/qs/test/.eslintrc | 15 + .../node_modules/read-package-tree/README.md | 2 + .../read-package-tree/package.json | 37 +- .../npm/node_modules/read-package-tree/rpt.js | 11 +- .../node_modules/require-directory/.jshintrc | 67 ++ .../unique-filename/.nyc_output/54942.json | 1 + .../unique-filename/.nyc_output/54944.json | 1 + .../aa4ee25ac41a9c3c7ee37ce965e6d1ac.json | 1 + .../bb918173e62b9517f55b630902d07ef4.json | 1 + deps/npm/node_modules/xtend/.jshintrc | 30 + deps/npm/package.json | 12 +- deps/npm/scripts/maketest | 2 +- .../test/fixtures/config/userconfig-with-gc | 2 +- .../07/8db5f6377f6321fceaaedf497de124dc9465 | Bin 4025 -> 0 bytes .../eb/847a949e71eb9041fd6567a36c9acfcf2bed | Bin 55415 -> 0 bytes .../77/307e108bfb57107c4c334abb5ef5395dc68a | Bin 364 -> 0 bytes .../6a/192b7913b04c54574d18c28d46e6395428ab | 1 - .../c8/0b2b6f5432c60cddb81932ab56563b444f52 | Bin 6288 -> 0 bytes .../c8/a39b626c1f83f8b8f53007c2f60eb98eee9d | Bin 372 -> 0 bytes .../42/4826f3405f79f142e6fc3d9ae58d4dbb9200 | Bin 12142 -> 0 bytes .../f3/ccba11914dc88bcb185ee3b1b33b564272bc | Bin 220 -> 0 bytes .../bb/e0b0674b9d719708ca38de8c237cb526c3d1 | Bin 15772 -> 0 bytes .../96/69bb42ecb409f83d583cad52ca17eaa1643f | Bin 13772 -> 0 bytes .../7a/36bf00f3a7a3d24a8fbc7853f06fce4e9c86 | Bin 7954 -> 0 bytes .../43/09dadee6b54cc0b8d247e8d7c7a0975bdc9b | Bin 1519 -> 0 bytes .../bd/e817d176ffade894ab71458e682a14b86dc9 | Bin 22746 -> 0 bytes .../aa/327bcecf518f9106ac6b8f003fa3bcea8566 | Bin 5977 -> 0 bytes .../50/08f3ff82b34f17b1e972454a0ab70a269c7d | Bin 371 -> 0 bytes .../56/8a2b1efaeb95bec4d9e59e5301fc63339866 | Bin 4733 -> 0 bytes ...ff9a8695bdd5cae7ce03bbf1e94e93613a00f25f21 | 1 - ...316762e5ba4641764b2680945ba3f620d3cf798a05 | 1 - ...22c6b860203eb4853ce85f15f26b96c84b8d9e7320 | 1 - ...64c14922e8f0d1ed1c212ef3f15d00e9527b17b9b9 | Bin 15108 -> 0 bytes ...667274ee5fa714abdc1b158e5cfea5ca5401663425 | Bin 5787 -> 0 bytes ...f66d3a01cb2789b2cf614aeb292dbeb4afe0b206cc | Bin 4733 -> 0 bytes ...f84660380604b5ff338258ad46973218d864799b5e | 1 - ...b7ac3d238d1f036ef2e9adb898c386f0cda9b6861e | 1 - ...569b6a41a201781f6a39900082feaac81923a12e57 | 1 - ...dfae3a2421c939cafb586b9f1b6c492fdfe09aca86 | Bin 55415 -> 0 bytes ...99b2c2e140779cde81f69475d8d4591808103b964b | 1 - ...9c5be725e8ae6041e62c9e9e81de5585e900328b09 | 1 - ...9d260fd9b8236e434a3a55580b7aaba369e6f8ba87 | Bin 283 -> 0 bytes ...9122096191893f662db33d0569837305388bad35bf | 1 - ...57e55140d84489cacc140627e012824fa073f97568 | 1 - ...abe86b49a6b1bf5c733bdece3877d82bc8bc1a9a7d | 1 - ...1ed7b159470b382180d1f0a5c4098ac6092cda1a8f | 1 - ...cf10cd954968f3bfec136f0d3aa87009db05cf4666 | 1 - ...7928b5495d12d2f944867db1105e424d5fa9b1e015 | 1 - ...a22b4aaee58075e0c77fd00ddf656536bc543290be | 1 - ...a1d71dd9d7f46b6217ec8ef30ec4d83f4b9a43098d | 1 - ...4aada16bea028eb40106762b142b30d448cdc08593 | Bin 27629 -> 0 bytes ...812738a2324b7aae42d4feeac49a2b895c57b48168 | 1 - ...6158dc05f13ef88bcef32de3bc415a48cdc5500355 | 1 - ...17724c918013e03954f9729192cbdfa1d0bed6fd39 | 1 - ...d740cdc01f8f880836a00c66743565acd2e8352e7a | Bin 151 -> 0 bytes ...30e8be1a394c4c7c444c8b541f8e180b7f12506fe8 | 1 - ...1712b0803f9866e92c0cbc4549b4807435dcf7a767 | Bin 143 -> 0 bytes ...3d14b8064b5b04177c402e347770ddfbbbc7c906cb | Bin 184 -> 0 bytes ...50ee73c18ac7a25e763f2b9869612cdbf427195d4b | 1 - ...f31998c436f171d98a9a1740e3ac8eebb5c1103c53 | 1 - ...fc10f57749cff60aa970a1e38c7a6c354a9403554e | 1 - ...02ac14ba7cd64f3acd56e21b984630f823ad9c9663 | 1 - ...5e461ab41d220fd6f268ff889e405809108a7b8676 | 1 - ...ba2aeb475d5958a2ca31f48c6a1442f164e90a3a22 | 1 - ...6fd30ac4dea48773a610ca6ee1e09e31f6147e921d | 1 - ...1bb92884db886826bf8cd26634667a2d103a999438 | 1 - ...61a14edff79dd7bd610b27c57fea8aff535dbc519f | 1 - ...8f303e97746763b0642faf89a9b00425297dc78d6a | 1 - ...c12bef1930d35234d6556319315d5656391257472d | 1 - ...fbfeead5822d45a4e7089a414fbe6f1be007f6cd48 | 3 - ...1182e328ec6d451a459b384cac489f57771ed7e74a | 2 - ...218bb50c1c639e7a3600893f62fde6191d2563e6df | 5 - ...1dbdd82db862373a457bbab3fee9c0e305b4f83b37 | 2 - ...e8a3c3b46e111bc08921520f7b2cce032bf8862107 | 3 - ...1d6f7d04cf0b3871bdde88a368eed466901917d636 | 3 - ...d6afadda07bc566c24b4b589c6bbc5c3e996c7a3db | 3 - ...2a3d208c8b91325f3f8fe347347649e2e7cb8c10b2 | 3 - ...cddcc72c47c6fbcde4ff2cdbb76da7c1defd09d6d6 | 7 - ...b2d5c35a85f51736f1403d8fd3790ab0e354238f68 | 5 - ...7e0486d0c90745de8da2029e042c59f6197901f5fb | 13 - ...b4ef03e8a114c823d405df62054797ae8e510155d2 | 5 - ...f13d167389f0bdff113e4a85c2d0a34e8420953fb0 | 2 - ...d6fc97011bebe11fc8e308eaff2d4224c21477d1d5 | 2 - ...5a54c44c2c4ef172a4c3a0e7c91e0b8da7b9c418f8 | 3 - ...ade5b17475bf87d30ec77a66a68a3481fbcb2299ca | 3 - ...c20ec3ebdaa0e12382c5c6badfa30fb7b376f6a580 | 2 - ...b8d0095b14f1940fbdde0e7515bc19ccfcfbccec49 | 3 - ...bafb5672197db1ee77ca9aa734a3e77692efcf7716 | 2 - ...0583f72c91d67d20fa9f5f5604755719bc421195dd | 3 - ...136a104fc757d4d7719d47a6b5d71c1b3075cc1b69 | 3 - ...d63607a55048be00c0a16bcf8dc96b9aadb8511570 | 5 - ...cadd4897498d69b3141e0d72f1ccc1f3bd703a4c75 | 3 - ...a6d5770af0d18432dbca32e8a2a9958dd413e3b776 | 5 - ...fc4055ac06876c63165a517fc12011046fc2cc4a9f | 3 - ...03828e46b026559f16671fbad7c36d5e0a1bd28a7f | 13 - ...b18d4ff02085c52be8b7b4b739d0da243122208329 | 3 - ...ef4e411f13d971ff84939f5a96a1d5826244927399 | 3 - ...86dc89dd492bc0e1c9c57727fbf97333ab23450cc6 | 5 - ...56a2610deec22135ab5102d53f8dc5bb1359585a5c | 5 - ...f294331ca4785e2ef41b621d746ef1047eaf34e122 | 3 - ...bb2e41b34b7a019b657b6db6c972a30870f3318344 | 4 - ...3eda6968cde18196e800153a6162d5f73df18895fa | 3 - ...343ee79cb0ab6d1b2f500885d3a7d93bbb4b24e711 | 5 - ...4c98856ae075582e2842b381809c76ffd12d24c450 | 3 - ...60aedbfe40200d189691fae9d90c694f654422738c | 5 - ...e28c064e5182f98631dbc1156be71fa734471d1b31 | 2 - ...2d15a7754abc281ff227d3d4436045fc19bded3abb | 9 - ...2d4a7dbf1f5e94e01b700897b6a69b1700a9575905 | 5 - ...9322cfa6781845b7bac7c9830246b89d040ab35bfa | 5 - ...9eb38d07610e8ad7007ffc3f0f3b25da20b9af281d | 2 - ...40de9f1b4244b118714d5d156afca81319c4ed13be | 3 - ...cccff3c9a0701f54d94e18ea19ff39aeb0a235d833 | 4 - ...b7181092bc6213963acf08be267556eed18c1ffcca | 4 - ...affd08317ec59071d08bdedd169a5f40c3b1fbb486 | 11 - ...e39edbd34fc9713c6c020ca44a5a0b426ff048428d | 2 - ...d7117d088c8431300750cd1c934e227cfecffa01f5 | 3 - ...3ac4d6834e73ca79c301c7108c94b0ba23ca97b71c | 3 - ...dcbcdf1d48b9436619bf5b6fd10474ef86e41a8c6f | 3 - ...927a0d7d21e557756b443699e6929fe420d5aa82a2 | 2 - ...6f7e1fce3892c4e717a9379d4ad43a7111b5dc8cc2 | 3 - ...b000c96edea31a1e6d923f7f3daf1ff06e04899cbb | 3 - ...ceaad1d0ca321b8e5cc8080001efa90bd6e7cf2d10 | 3 - ...aeeb996d0c850341d8e832b38df45ce8b79f2d7f6a | 5 - ...d9e42f3ca7ad942331f73dd73c3e6f5549e910679b | 3 - ...418640b55c06029c2d36a3dc34ee91b90483a9973d | 3 - ...0a7bca660b3b4f409bea196a8cea3f3e66c5a8e84b | 5 - ...1cc7f9caf4f3e654df7abd1fc8279dde9f935c76aa | 5 - ...d9c34ba6cd492e2a0053b4aeea258df6763e8cd8a2 | 9 - ...0f134ecf35495d997ad1c67532fe520ac6709d28c5 | 4 - ...213f4cb7e73c072a15544da364e543df7bef989d9c | 3 - ...ecf2e6be6e66dac4d4feb5407eb6ecb26af41a4de8 | 12 - ...60f72129b8494625e3e6fd08f7fd5886f65bf82e0d | 2 - ...c68f3821cf6d7f49caba301e383b31143bd9670f28 | 5 - ...ceeaa57b4d135c5def8209619ca09751fdae5bd803 | 3 - ...2fd92adee9edf0f507c4ea02b2703d926b06947341 | 3 - ...e381384f50b395b52e2addd35285efab8ec8f5b303 | 3 - ...cffd992a45de09faf0f0fe2ad2c446353a58288f6b | 2 - ...54cec21589dfd82db09bd3c7016d436760a3e94f60 | 3 - ...baf5abf24d446c017f7bfba330c19d63fc24000277 | 2 - ...f5a05ce4803a44826a0112390460da66c8c3c5de69 | 5 - ...fc91be78e935c68f4608824732a06091fcf7cb550a | 3 - ...8a85aaef872bf4eca492fac6cab144fb2e45ffbd74 | 3 - ...51111ddb9fa636ef144ff9fad15784c1e9620b0dac | 2 - ...2f5a63b3d871adc66f517669450807aec3b62e71b2 | 2 - ...bc730827a0a2c453ffea82d07c7b1481a46f7b1194 | 4 - ...6ed2b2019e46a63cff8cbb76981a37eac2100c8e55 | 3 - ...124554206657c17eb6b2809df9f5ec1c10007a6465 | 3 - ...bcb0a155df04211a49d1fdb1b67e59ccb47e20c353 | 5 - ...c04be95e67db8ea33ce033a3fadf0ba1061c174d3e | 3 - ...4407f0d9cae19a4d56f253f7746786597a52daa76d | 2 - ...99901f9c56c3654221987030a0f86aac7f7caecccc | 3 - ...693c919a915102645335a143056a5f12cafef915c0 | 9 - ...9e83a59e80c3482dd62f626939323f2b6bf511b53d | 3 - ...193e883193e034208d95b6028728ef3902b78b694d | 5 - ...0fe8762eac5e3d3c2cd27e8bb1fbcdc22399c3d89e | 2 - ...19b515a4d107ae1cd16ef94cdbbbd34a1c5687e07d | 2 - ...11155392ad66e8ee2a352798e5fe782b98c941c2c6 | 3 - ...8afad16c456d1d0fbce7e14fc1c7a9dba42620f68a | 3 - ...e11169fc083be6367490e46bce28208b4f7b5cb2f8 | 2 - ...8e975217eae2e4816c2a8e9cdee330a1e2acfbd7a6 | 3 - ...62d37f6471e6bd96641b1670b43d01fca9e23884e3 | 2 - ...f1dbaa948bd898062da50bed98d5b04f317278fa48 | 13 - ...61c190df783256e332cab7782a7484078354ddbb0f | 3 - ...5934e3a7938145b60af92641734e54a8f50a418c03 | 2 - ...0c54baee7ae9bec37f513387665b57ac2bcd167b70 | 2 - ...e13f61bb768d7cbf82072f798d17071572ab3943f2 | 2 - .../_logs/2019-01-18T17_41_24_580Z-debug.log | 54 -- .../_logs/2019-01-18T17_41_26_268Z-debug.log | 56 -- .../_logs/2019-01-18T17_41_28_020Z-debug.log | 53 -- .../_logs/2019-01-18T17_41_39_719Z-debug.log | 27 - .../_logs/2019-01-18T17_41_40_242Z-debug.log | 34 - .../_logs/2019-01-18T17_41_47_912Z-debug.log | 21 - .../_logs/2019-01-18T17_41_48_220Z-debug.log | 21 - .../_logs/2019-01-18T17_41_57_730Z-debug.log | 26 - .../_logs/2019-01-18T17_42_14_004Z-debug.log | 111 ---- .../test/npm_cache/anonymous-cli-metrics.json | 1 - deps/npm/test/tap/access.js | 28 + .../test/tap/install-at-sub-path-locally.js | 69 ++ deps/npm/test/tap/ls-peer.js | 123 ++++ .../test/tap/shrinkwrap-local-dependency.js | 3 +- deps/npm/test/tap/spec-local-specifiers.js | 4 +- deps/npm/test/tap/unit-token-validate-cidr.js | 3 +- 479 files changed, 5193 insertions(+), 1415 deletions(-) delete mode 100644 deps/npm/node_modules/builtin-modules/builtin-modules.json delete mode 100644 deps/npm/node_modules/builtin-modules/index.js delete mode 100644 deps/npm/node_modules/builtin-modules/license delete mode 100644 deps/npm/node_modules/builtin-modules/package.json delete mode 100644 deps/npm/node_modules/builtin-modules/readme.md delete mode 100644 deps/npm/node_modules/builtin-modules/static.js create mode 100644 deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54942.json create mode 100644 deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54944.json create mode 100644 deps/npm/node_modules/debug/.eslintrc create mode 100644 deps/npm/node_modules/errno/.jshintrc create mode 100644 deps/npm/node_modules/extend/.eslintrc create mode 100644 deps/npm/node_modules/ip/.jshintrc delete mode 100644 deps/npm/node_modules/is-builtin-module/index.js delete mode 100644 deps/npm/node_modules/is-builtin-module/package.json delete mode 100644 deps/npm/node_modules/is-builtin-module/readme.md create mode 100644 deps/npm/node_modules/isstream/.jshintrc create mode 100644 deps/npm/node_modules/mute-stream/.nyc_output/33508.json create mode 100644 deps/npm/node_modules/mute-stream/.nyc_output/33510.json create mode 100644 deps/npm/node_modules/node-gyp/.jshintrc create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/.editorconfig create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintignore create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintrc create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/.travis.yml create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/CHANGELOG.md create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/LICENSE create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/appveyor.yml create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/changelog.hbs create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/async.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/sync.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/async.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/caller.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/node-modules-paths.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/normalize-options.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/sync.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/readme.markdown create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/.eslintrc create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/core.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/abc/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/faulty_basedir.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter_sync.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock_sync.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/xmodules/aaa/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/ymodules/aaa/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/main.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node-modules-paths.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/aaa/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/ccc/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/bbb/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/ccc/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/nonstring.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter/deep_ref/main.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/main.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb/main.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/doom.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/quux.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/a.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/b.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/cup.coffee create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/foo.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/invalid_main/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/mug.coffee create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/mug.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/lerna.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/other_path/lib/other-lib.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/other_path/root.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/quux/foo/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo/index.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/without_basedir/main.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver_sync.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/subdirs.js create mode 100644 deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/symlinks.js create mode 100644 deps/npm/node_modules/pacote/lib/util/read-json.js create mode 100644 deps/npm/node_modules/path-parse/.travis.yml rename deps/npm/node_modules/{is-builtin-module/license => path-parse/LICENSE} (85%) create mode 100644 deps/npm/node_modules/path-parse/README.md create mode 100644 deps/npm/node_modules/path-parse/index.js create mode 100644 deps/npm/node_modules/path-parse/package.json create mode 100644 deps/npm/node_modules/path-parse/test.js create mode 100644 deps/npm/node_modules/promise-retry/.jshintrc create mode 100644 deps/npm/node_modules/prr/.jshintrc create mode 100644 deps/npm/node_modules/psl/.eslintrc create mode 100644 deps/npm/node_modules/qs/.eslintrc create mode 100644 deps/npm/node_modules/qs/test/.eslintrc create mode 100644 deps/npm/node_modules/require-directory/.jshintrc create mode 100644 deps/npm/node_modules/unique-filename/.nyc_output/54942.json create mode 100644 deps/npm/node_modules/unique-filename/.nyc_output/54944.json create mode 100644 deps/npm/node_modules/validate-npm-package-name/.nyc_output/aa4ee25ac41a9c3c7ee37ce965e6d1ac.json create mode 100644 deps/npm/node_modules/validate-npm-package-name/.nyc_output/bb918173e62b9517f55b630902d07ef4.json create mode 100644 deps/npm/node_modules/xtend/.jshintrc delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/07/07/8db5f6377f6321fceaaedf497de124dc9465 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/28/eb/847a949e71eb9041fd6567a36c9acfcf2bed delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/2a/77/307e108bfb57107c4c334abb5ef5395dc68a delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/35/6a/192b7913b04c54574d18c28d46e6395428ab delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/41/c8/0b2b6f5432c60cddb81932ab56563b444f52 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/45/c8/a39b626c1f83f8b8f53007c2f60eb98eee9d delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/69/42/4826f3405f79f142e6fc3d9ae58d4dbb9200 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/82/f3/ccba11914dc88bcb185ee3b1b33b564272bc delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/b6/bb/e0b0674b9d719708ca38de8c237cb526c3d1 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/b7/96/69bb42ecb409f83d583cad52ca17eaa1643f delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/c2/7a/36bf00f3a7a3d24a8fbc7853f06fce4e9c86 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/ca/43/09dadee6b54cc0b8d247e8d7c7a0975bdc9b delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/d2/bd/e817d176ffade894ab71458e682a14b86dc9 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/d7/aa/327bcecf518f9106ac6b8f003fa3bcea8566 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/e0/50/08f3ff82b34f17b1e972454a0ab70a269c7d delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha1/ee/56/8a2b1efaeb95bec4d9e59e5301fc63339866 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/0b/61/241d7c17bcbb1baee7094d14b7c451efecc7ffcbd92598a0f13d313cc9ebc2a07e61f007baf58fbf94ff9a8695bdd5cae7ce03bbf1e94e93613a00f25f21 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/15/ad/34853f1149526d97f08b50c3aaa9ec84031a7ebfb7bb59e3f2317d5c306286528cb91bf53dc596802d316762e5ba4641764b2680945ba3f620d3cf798a05 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/21/82/eac4f83e50f3b6aa8bea561c5dfebdc1d66941e2da785af406e045de56a0fc422034ca7fa2ab5fa99022c6b860203eb4853ce85f15f26b96c84b8d9e7320 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/22/fe/eed42d3bab5ff699721346f9c5fa7a70ac2748ee0ced75bc0b8f6e8aba924f53a93404b30fa8d28e0d64c14922e8f0d1ed1c212ef3f15d00e9527b17b9b9 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/2c/ec/8afad096618ae60ad9cd1cf2d2d9d5597b68010cc087c9a78765ef0dacd25c13a0e36948949317f09f667274ee5fa714abdc1b158e5cfea5ca5401663425 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/2e/36/48f976830aeaba0724b382a09a6a6736dfd4c755963a4f462f963f9ecb211c2258f00766dc3aa68664f66d3a01cb2789b2cf614aeb292dbeb4afe0b206cc delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/32/c8/6992ba4671408a292bb3f2fae4cd10416dcedb6a214c169054af6bcc792b6ea56f7245333357cc59e4f84660380604b5ff338258ad46973218d864799b5e delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/39/721f705f621cffe30dbc828be387e253c50ed05fb0a8e3f418769996bdde1dd1cb8af2e47dfe9417aab7ac3d238d1f036ef2e9adb898c386f0cda9b6861e delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/aa/ea2b3a5902264c14606117b00e20425af14560c323e92859dd86f4cc552146fc06548a31ea59ba6edd569b6a41a201781f6a39900082feaac81923a12e57 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/37/27/2f58378ed591197373f46d3be148bfc82649dbb213be14a2b1ac47f50d7d4804cb105590935a7bcd02dfae3a2421c939cafb586b9f1b6c492fdfe09aca86 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/3a/f5/ac6e34332259d456779c882d9d0db472befe84fd8043ac328bf51e1bdcd47437b17eff4d92df4ad8e999b2c2e140779cde81f69475d8d4591808103b964b delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/52/3a/902538a5ebd3ce129087f262bf0a1663c2fdb6a636acd7660e386fbf2f8d097946cda07518bbd9b9fc9c5be725e8ae6041e62c9e9e81de5585e900328b09 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/54/95/fe840edbf5d18dfc27c5f4d9b359e8ab81a4741f62b0deb20979359843828ae50112bac4e25a3fc1089d260fd9b8236e434a3a55580b7aaba369e6f8ba87 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/5a/64/0274b5cfdc4e0635bdd262c5830de7faf9c02d3c5ef66a60ac58ed20fcb324f85d7ef7b6e85210d8209122096191893f662db33d0569837305388bad35bf delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/5d/29/d6e1add2536379abc1eba52f83824a6091a5af9ffba1479cf404f478f36f06504f6643db8631e0b6f057e55140d84489cacc140627e012824fa073f97568 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/6f/c7/3dd4508c2d9f17eeb1cfd288276948a1689ebdf6a8d3f4f7516d4c68be639063e7e5437ef7ff72547aabe86b49a6b1bf5c733bdece3877d82bc8bc1a9a7d delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/76/39/4b378512c68bf209b433e06b71df27a45f7e7be35f174a0f83bce7799628b74dbe993c18b1c12e899a1ed7b159470b382180d1f0a5c4098ac6092cda1a8f delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/79/ec/4625bec1a13aaefdcd4e7cf18f1c5575879d80e8bdba063cc962c959c48526a0c1c9e3766c95ec9ea1cf10cd954968f3bfec136f0d3aa87009db05cf4666 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/83/a4/d747b806caae7385778145bcf999fae69eeb6f14343f6801b79b6b7853538961694ac8b4791c7675c27928b5495d12d2f944867db1105e424d5fa9b1e015 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/87/44/66cb46d039cc912bd3ee29bfae97ac7f4dd4051cd240c1b25548747f9f1c6fdc3a2a9e65b058ab28f0a22b4aaee58075e0c77fd00ddf656536bc543290be delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/88/49/914fc692dc5441fec8231a33caec98409b6d522fa46bed4a673127876224b9cb8bc35e51e251c8a897a1d71dd9d7f46b6217ec8ef30ec4d83f4b9a43098d delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/9d/5b/15d0ad75fc513f4a327b5e441803dd220edeb4f9660e454fe9d263b543ba356c71330a5964f864d1c24aada16bea028eb40106762b142b30d448cdc08593 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/9d/b3/095447c9b53fe88bbf190fb6a324c7a42a84bf51d3c345fc88cdeea00f026167ad7329b42369d79a67812738a2324b7aae42d4feeac49a2b895c57b48168 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/a0/f8/5ae8b484bc71fb13ef636b9aee45f548ab6357488369ffb02f239f9473c6b94c5c2a5ef3b1b96e16ce6158dc05f13ef88bcef32de3bc415a48cdc5500355 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/a1/a1/072cae616c1f6479110e3e3ee54fa16978c081d8032999d62d207e5cd6c7643e463d73d3ff4b218ad717724c918013e03954f9729192cbdfa1d0bed6fd39 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/aa/86/730ec932cdb0f05db2f35e1e456fc986db19f83fb3f8140a5851411fbcf44966328479ab280cc80ae2d740cdc01f8f880836a00c66743565acd2e8352e7a delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/ad/a1/cd9122e6beb95de36bb8dc10c255a6a7d7b8bfbe21b72843ab6db402ee8cb8bde5fb2d050a7eb96ea330e8be1a394c4c7c444c8b541f8e180b7f12506fe8 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/b4/8a/454c55f95fa0351cca479761f5ff792f8f7ab4448f2b1399a3ac3778a60a293f71feeda29678ce15b71712b0803f9866e92c0cbc4549b4807435dcf7a767 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/c9/a2/065bb9746e574a541af061b7880948d30e47db1dc356c314bd934b0169894d696e833bd63b6c53cb973d14b8064b5b04177c402e347770ddfbbbc7c906cb delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/cd/eb/0f5065be03e89547a33e064d911969953c45eb05df664ca4d537b970dc9f768123463a6f75ce6b836d50ee73c18ac7a25e763f2b9869612cdbf427195d4b delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/d4/45/ed72e65ed0b9fec5a6a41794caadda951ba79a0541648e259c8021b3fc96487d2caedf869ac142b4b0f31998c436f171d98a9a1740e3ac8eebb5c1103c53 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/2a/a4df42cd435623f4c2c3e274fa081cc942ff45dcfa98cdf4a9324b6a21c3721c34bb97e6809ee28051fc10f57749cff60aa970a1e38c7a6c354a9403554e delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/68/8298544a3867cf399b04cc60c38c6519dae6096c5ba1917bb78a489baa9d6bad39649e16e00367e7cd02ac14ba7cd64f3acd56e21b984630f823ad9c9663 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/e7/06/de9d8e6ce16152be537cbccdf26321b3d678394ce42fb56aa4e69a37aba9d54df284700d066f7e6d005e461ab41d220fd6f268ff889e405809108a7b8676 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/e8/36/89a9c21ac93c2a0efc7e536925004e528bd3bfeba708cf5216db999c5efce0d7138a7e6ecedb125e43ba2aeb475d5958a2ca31f48c6a1442f164e90a3a22 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/ed/fc/2d79d0d55bf4ea02b74ecc3657ea833bc6d0578adb2e1f5ae0d733b09a484f8e7287901578c7bdaa5d6fd30ac4dea48773a610ca6ee1e09e31f6147e921d delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/f3/e8/2d6a0b75ad5cebd09177d93f572dbd8b877ee9f1505b2e84e03810fa0412e4904060be7d2a4df4221b1bb92884db886826bf8cd26634667a2d103a999438 delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/91/da7ce6e308dcaa672b8625ca0491cafed6726ceda16ffbcdd3f7661e5eb5b1aae2bd99960acb3a2fcc61a14edff79dd7bd610b27c57fea8aff535dbc519f delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/bd/a6b78fcf204b1ec0e6069045b44f6669e9aab878bfc891b946e4cecb843f4e87e428b6771ae7b4a2ce8f303e97746763b0642faf89a9b00425297dc78d6a delete mode 100644 deps/npm/test/npm_cache/_cacache/content-v2/sha512/fd/37/65c30143da9bd36758e4f19cce0984aac9f6a6a90a2a1ea79ab8acec84841b7b2af4b20e52051d585ac12bef1930d35234d6556319315d5656391257472d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/06/90/5e61e746e7d543d4bffbfeead5822d45a4e7089a414fbe6f1be007f6cd48 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/0b/5a/62ce62a24edca98b341182e328ec6d451a459b384cac489f57771ed7e74a delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/0e/d4/8aa7d55331a48f04b5218bb50c1c639e7a3600893f62fde6191d2563e6df delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/13/b5/0178cbb8a4a3e25b821dbdd82db862373a457bbab3fee9c0e305b4f83b37 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/14/7e/33640d7ecca75f94fce8a3c3b46e111bc08921520f7b2cce032bf8862107 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/15/bf/92c5cbc5f2b5bb51971d6f7d04cf0b3871bdde88a368eed466901917d636 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/18/1f/b15fb9d4fbd32e771ad6afadda07bc566c24b4b589c6bbc5c3e996c7a3db delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/19/db/491ce5fd3b8f5521f62a3d208c8b91325f3f8fe347347649e2e7cb8c10b2 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/1c/05/419d1e706cbe2c4b49cddcc72c47c6fbcde4ff2cdbb76da7c1defd09d6d6 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/1d/95/be47aca6f275eae3f3b2d5c35a85f51736f1403d8fd3790ab0e354238f68 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/1e/c1/c1f0fea37e015610f77e0486d0c90745de8da2029e042c59f6197901f5fb delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/1f/4c/7c6c652ccd8d9b32c0b4ef03e8a114c823d405df62054797ae8e510155d2 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/21/69/cf895689c136d0f667f13d167389f0bdff113e4a85c2d0a34e8420953fb0 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/21/90/97d7c2a8081808dcd3d6fc97011bebe11fc8e308eaff2d4224c21477d1d5 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/24/d3/c242b6ced69f0f27995a54c44c2c4ef172a4c3a0e7c91e0b8da7b9c418f8 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/29/89/d8ec4f471f8b2f7110ade5b17475bf87d30ec77a66a68a3481fbcb2299ca delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/2d/22/47328dfeb3a9f00c15c20ec3ebdaa0e12382c5c6badfa30fb7b376f6a580 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/2f/ee/99c47a7b4b5d997bbdb8d0095b14f1940fbdde0e7515bc19ccfcfbccec49 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/32/2d/90e41f3ad9eeece7d8bafb5672197db1ee77ca9aa734a3e77692efcf7716 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/34/f7/495a783848aed5199e0583f72c91d67d20fa9f5f5604755719bc421195dd delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/35/d4/4f8776a16f1d67cec7136a104fc757d4d7719d47a6b5d71c1b3075cc1b69 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/4b/fa/51a839f22632c42d66d63607a55048be00c0a16bcf8dc96b9aadb8511570 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/4c/94/5f2a94150990b1ee4ecadd4897498d69b3141e0d72f1ccc1f3bd703a4c75 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/4c/9f/92b75e7965b407ec25a6d5770af0d18432dbca32e8a2a9958dd413e3b776 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/4d/ed/ee7db809a7dfddfb87fc4055ac06876c63165a517fc12011046fc2cc4a9f delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/4e/ce/f2fe3deddf79eb0c8c03828e46b026559f16671fbad7c36d5e0a1bd28a7f delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/52/26/16d800e2651582fd96b18d4ff02085c52be8b7b4b739d0da243122208329 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/53/b9/a3f54151106c138d93ef4e411f13d971ff84939f5a96a1d5826244927399 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/54/c7/bd7b2edde99a50402386dc89dd492bc0e1c9c57727fbf97333ab23450cc6 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/55/94/6aae1bf2eae7384bbf56a2610deec22135ab5102d53f8dc5bb1359585a5c delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/56/a3/d63cf88aff86698120f294331ca4785e2ef41b621d746ef1047eaf34e122 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/58/cd/24c1bfea16737029dabb2e41b34b7a019b657b6db6c972a30870f3318344 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/58/fc/50f89b2f236774e4b33eda6968cde18196e800153a6162d5f73df18895fa delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/59/28/f3ffadce8db4fdb922343ee79cb0ab6d1b2f500885d3a7d93bbb4b24e711 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/59/5d/20f410f92d365ec2b34c98856ae075582e2842b381809c76ffd12d24c450 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/59/8d/bede4978235a53fade60aedbfe40200d189691fae9d90c694f654422738c delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/5e/04/1f94a3a706d4fc86a4e28c064e5182f98631dbc1156be71fa734471d1b31 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/5e/25/544dc931f40d3c9ec02d15a7754abc281ff227d3d4436045fc19bded3abb delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/5f/dc/61605b7783855ffa612d4a7dbf1f5e94e01b700897b6a69b1700a9575905 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/60/3b/12bd2d0346c46847789322cfa6781845b7bac7c9830246b89d040ab35bfa delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/61/41/453946604fdfa210a19eb38d07610e8ad7007ffc3f0f3b25da20b9af281d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/61/5a/c55f3eb9bc8031cdde40de9f1b4244b118714d5d156afca81319c4ed13be delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/64/32/09fccfaff76a1d99becccff3c9a0701f54d94e18ea19ff39aeb0a235d833 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/69/d2/6f1c982c4935f9c4a3b7181092bc6213963acf08be267556eed18c1ffcca delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/6b/27/515478d59b0ba28fcdaffd08317ec59071d08bdedd169a5f40c3b1fbb486 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/6f/d4/db68ad12df42b50094e39edbd34fc9713c6c020ca44a5a0b426ff048428d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/6f/ed/7f64617d06ba2145efd7117d088c8431300750cd1c934e227cfecffa01f5 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/77/52/b7394cb3a27a44448e3ac4d6834e73ca79c301c7108c94b0ba23ca97b71c delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/80/e4/0b59aa33a0f8b0f183dcbcdf1d48b9436619bf5b6fd10474ef86e41a8c6f delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/87/c9/f8b19f8ad4e5648c18927a0d7d21e557756b443699e6929fe420d5aa82a2 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/89/eb/a7a81ab3eeec3076546f7e1fce3892c4e717a9379d4ad43a7111b5dc8cc2 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/8b/2e/99af1be8f0aa3d6223b000c96edea31a1e6d923f7f3daf1ff06e04899cbb delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/8c/cf/08c44da29714d229eaceaad1d0ca321b8e5cc8080001efa90bd6e7cf2d10 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/8e/53/8602d3aab48229cac8aeeb996d0c850341d8e832b38df45ce8b79f2d7f6a delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/93/4e/425c049345ed549becd9e42f3ca7ad942331f73dd73c3e6f5549e910679b delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/96/66/5a9f2d90e8428d5b30418640b55c06029c2d36a3dc34ee91b90483a9973d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/9b/00/38d905a4cf8b1a291d0a7bca660b3b4f409bea196a8cea3f3e66c5a8e84b delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/9b/03/54636aae9cb55a079d1cc7f9caf4f3e654df7abd1fc8279dde9f935c76aa delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/9c/df/2bf910aa7cba3cae28d9c34ba6cd492e2a0053b4aeea258df6763e8cd8a2 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/9f/3f/3bc8b783702f297c0e0f134ecf35495d997ad1c67532fe520ac6709d28c5 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/9f/5f/7b93b3b7f757730e79213f4cb7e73c072a15544da364e543df7bef989d9c delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/a2/4a/41538002c219a054a1ecf2e6be6e66dac4d4feb5407eb6ecb26af41a4de8 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/a2/ff/2fbedd19724625ef6060f72129b8494625e3e6fd08f7fd5886f65bf82e0d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/a6/c9/dbe7acc04b7cea7b99c68f3821cf6d7f49caba301e383b31143bd9670f28 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/a8/15/13afeacd20fdb82b59ceeaa57b4d135c5def8209619ca09751fdae5bd803 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/a8/88/3a6a0c55cde913db472fd92adee9edf0f507c4ea02b2703d926b06947341 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ad/29/4a034c1908dcd263dce381384f50b395b52e2addd35285efab8ec8f5b303 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ad/e9/1d8533ddd67b495ca9cffd992a45de09faf0f0fe2ad2c446353a58288f6b delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b1/78/4ff2f1383234ce5feb54cec21589dfd82db09bd3c7016d436760a3e94f60 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b2/47/c8196ddf74a5111fedbaf5abf24d446c017f7bfba330c19d63fc24000277 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b3/36/c25c35e75c8973f821f5a05ce4803a44826a0112390460da66c8c3c5de69 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b4/2c/2aec38b0351146be02fc91be78e935c68f4608824732a06091fcf7cb550a delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b4/a9/95ce79090bb3e6ab5e8a85aaef872bf4eca492fac6cab144fb2e45ffbd74 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b7/1c/f06201305985169fc251111ddb9fa636ef144ff9fad15784c1e9620b0dac delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/b8/16/bf6e49afbd1323783f2f5a63b3d871adc66f517669450807aec3b62e71b2 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ba/41/d137c2778ea0d7167fbc730827a0a2c453ffea82d07c7b1481a46f7b1194 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/be/6a/458105f31e845d57376ed2b2019e46a63cff8cbb76981a37eac2100c8e55 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/c4/08/207afc5ca1803fa593124554206657c17eb6b2809df9f5ec1c10007a6465 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/c7/6a/1f6606232f53d41a78bcb0a155df04211a49d1fdb1b67e59ccb47e20c353 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ca/2f/42a626cb16aeb63c2dc04be95e67db8ea33ce033a3fadf0ba1061c174d3e delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/d0/a2/9b5933a9df317b031c4407f0d9cae19a4d56f253f7746786597a52daa76d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/d2/0a/0834f8c04d97b43d0f99901f9c56c3654221987030a0f86aac7f7caecccc delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/d8/8f/1bf51f3ab635ab46a8693c919a915102645335a143056a5f12cafef915c0 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/de/9f/35f1c704459881fb3c9e83a59e80c3482dd62f626939323f2b6bf511b53d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/df/88/3ff6bf48df44c29ce1193e883193e034208d95b6028728ef3902b78b694d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/e8/1b/a9b0963bde9d8cb31e0fe8762eac5e3d3c2cd27e8bb1fbcdc22399c3d89e delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ec/6e/39493289897b28d06119b515a4d107ae1cd16ef94cdbbbd34a1c5687e07d delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ed/27/eea30d253f59f5df5e11155392ad66e8ee2a352798e5fe782b98c941c2c6 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ed/4a/09a226827d40ba61648afad16c456d1d0fbce7e14fc1c7a9dba42620f68a delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ee/20/77825ded7fe59483cde11169fc083be6367490e46bce28208b4f7b5cb2f8 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/f2/8a/d9e34baa5c3e47b2bf8e975217eae2e4816c2a8e9cdee330a1e2acfbd7a6 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/f2/dd/746a6d5b6232e793f562d37f6471e6bd96641b1670b43d01fca9e23884e3 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/f6/6a/1afded1007145f766ff1dbaa948bd898062da50bed98d5b04f317278fa48 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/fc/88/41f0501b29bfe9117061c190df783256e332cab7782a7484078354ddbb0f delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/fd/a9/67911fbad568af62425934e3a7938145b60af92641734e54a8f50a418c03 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/fe/7e/e4d136986019ebc5360c54baee7ae9bec37f513387665b57ac2bcd167b70 delete mode 100644 deps/npm/test/npm_cache/_cacache/index-v5/ff/d3/eca629ba696cac5a91e13f61bb768d7cbf82072f798d17071572ab3943f2 delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_24_580Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_26_268Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_28_020Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_39_719Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_40_242Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_47_912Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_48_220Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_41_57_730Z-debug.log delete mode 100644 deps/npm/test/npm_cache/_logs/2019-01-18T17_42_14_004Z-debug.log delete mode 100644 deps/npm/test/npm_cache/anonymous-cli-metrics.json create mode 100644 deps/npm/test/tap/install-at-sub-path-locally.js create mode 100644 deps/npm/test/tap/ls-peer.js diff --git a/deps/npm/.npmignore b/deps/npm/.npmignore index 1b32b033e23a72..12efef27852da6 100644 --- a/deps/npm/.npmignore +++ b/deps/npm/.npmignore @@ -4,7 +4,7 @@ npm-debug.log /.github /test node_modules/marked -node_modules/ronn +node_modules/marked-man node_modules/tap node_modules/.bin node_modules/npm-registry-mock diff --git a/deps/npm/AUTHORS b/deps/npm/AUTHORS index a011b51d6a036e..48bed04a8a2392 100644 --- a/deps/npm/AUTHORS +++ b/deps/npm/AUTHORS @@ -619,3 +619,7 @@ Beni von Cheni Frédéric Harper Johannes Würbach ƇʘƁ̆ąƇ́ +Eli Doran +Tobias Koppers +Grey Baker +JT Turner diff --git a/deps/npm/CHANGELOG.md b/deps/npm/CHANGELOG.md index 794ae1060441e1..8fb37b1727c229 100644 --- a/deps/npm/CHANGELOG.md +++ b/deps/npm/CHANGELOG.md @@ -1,3 +1,80 @@ +## v6.8.0 (2019-02-07): + +This release includes an implementation of [RFC #10](https://github.com/npm/rfcs/blob/latest/accepted/0010-monorepo-subdirectory-declaration.md), documenting an optional field that can be used to specify +the directory path for a package within a monorepo. + +### NEW FEATURES + +* [`3663cdef2`](https://github.com/npm/cli/commit/3663cdef205fa9ba2c2830e5ef7ceeb31c30298c) + [#140](https://github.com/npm/cli/pull/140) + Update package.json docs to include repository.directory details. + ([@greysteil](https://github.com/greysteil)) + +### BUGFIXES + +* [`550bf703a`](https://github.com/npm/cli/commit/550bf703ae3e31ba6a300658ae95b6937f67b68f) + Add @types to ignore list to fix git clean -fd. + ([@zkat](https://github.com/zkat)) +* [`cdb059293`](https://github.com/npm/cli/commit/cdb0592939d6256c80f7ec5a2b6251131a512a2a) + [#144](https://github.com/npm/cli/pull/144) + Fix common.npm callback arguments. + ([@larsgw](https://github.com/larsgw)) +* [`25573e9b9`](https://github.com/npm/cli/commit/25573e9b9d5d26261c68d453f06db5b3b1cd6789) + [npm.community#4770](https://npm.community/t/https://npm.community/t/4770) + Show installed but unmet peer deps. + ([@larsgw](https://github.com/larsgw)) +* [`ce2c4bd1a`](https://github.com/npm/cli/commit/ce2c4bd1a2ce7ac1727a4ca9a350b743a2e27b2a) + [#149](https://github.com/npm/cli/pull/149) + Use figgy-config to make sure extra opts are there. + ([@zkat](https://github.com/zkat)) +* [`3c22d1a35`](https://github.com/npm/cli/commit/3c22d1a35878f73c0af8ea5968b962a85a1a9b84) + [npm.community#5101](https://npm.community/t/npm-6-6-0-breaks-access-to-ls-collaborators/5101) + Fix `ls-collaborators` access error for non-scoped case. + ([@zkat](https://github.com/zkat)) +* [`d5137091d`](https://github.com/npm/cli/commit/d5137091dd695a2980f7ade85fdc56b2421ff677) + [npm.community#754](https://npm.community/t/npm-install-for-package-with-local-dependency-fails/754) + Fix issue with sub-folder local references. + ([@iarna](https://github.com/iarna)) + ([@jhecking](https://github.com/jhecking)) + +### DEPENDENCY BUMPS + +* [`d72141080`](https://github.com/npm/cli/commit/d72141080ec8fcf35bcc5650245efbe649de053e) + `npm-registry-couchapp@2.7.1` + ([@zkat](https://github.com/zkat)) +* [`671cad1b1`](https://github.com/npm/cli/commit/671cad1b18239d540da246d6f78de45d9f784396) + `npm-registry-fetch@3.9.0`: + Make sure publishing with legacy username:password `_auth` works again. + ([@zkat](https://github.com/zkat)) +* [`95ca1aef4`](https://github.com/npm/cli/commit/95ca1aef4077c8e68d9f4dce37f6ba49b591c4ca) + `pacote@9.4.1` + ([@aeschright](https://github.com/aeschright)) +* [`322fef403`](https://github.com/npm/cli/commit/322fef40376e71cd100159dc914e7ca89faae327) + `normalize-package-data@2.5.0` + ([@aeschright](https://github.com/aeschright)) +* [`32d34c0da`](https://github.com/npm/cli/commit/32d34c0da4f393a74697297667eb9226155ecc6b) + `npm-packlist@1.3.0` + ([@aeschright](https://github.com/aeschright)) +* [`338571cf0`](https://github.com/npm/cli/commit/338571cf0bd3a1e2ea800464d57581932ff0fb11) + `read-package-tree@5.2.2` + ([@zkat](https://github.com/zkat)) + +### MISC + +* [`89b23a5f7`](https://github.com/npm/cli/commit/89b23a5f7b0ccdcdda1d7d4d3eafb6903156d186) + [#120](https://github.com/npm/cli/pull/120) + Use `const` in lib/fetch-package-metadata.md. + ([@watilde](https://github.com/watilde)) +* [`4970d553c`](https://github.com/npm/cli/commit/4970d553c0ea66128931d118469fd31c87cc7986) + [#126](https://github.com/npm/cli/pull/126) + Replace ronn with marked-man in `.npmignore`. + ([@watilde](https://github.com/watilde)) +* [`d9b6090dc`](https://github.com/npm/cli/commit/d9b6090dc26cd0fded18b4f80248cff3e51bb185) + [#138](https://github.com/npm/cli/pull/138) + Reduce work to test if executable ends with a 'g'. + ([@elidoran](https://github.com/elidoran)) + ([@larsgw](https://github.com/larsgw)) + ## v6.7.0 (2019-01-23): Hey y'all! This is a quick hotfix release that includes some important fixes to diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js index 6f76b23828531e..705aa472e7e550 100755 --- a/deps/npm/bin/npm-cli.js +++ b/deps/npm/bin/npm-cli.js @@ -25,7 +25,6 @@ unsupported.checkForUnsupportedNode() - var path = require('path') var npm = require('../lib/npm.js') var npmconf = require('../lib/config/core.js') var errorHandler = require('../lib/utils/error-handler.js') @@ -37,7 +36,7 @@ // if npm is called as "npmg" or "npm_g", then // run in global mode. - if (path.basename(process.argv[1]).slice(-1) === 'g') { + if (process.argv[1][process.argv[1].length - 1] === 'g') { process.argv.splice(1, 1, 'npm', '-g') } diff --git a/deps/npm/doc/files/package.json.md b/deps/npm/doc/files/package.json.md index dd6492af084303..95e77d34c5f9f4 100644 --- a/deps/npm/doc/files/package.json.md +++ b/deps/npm/doc/files/package.json.md @@ -393,6 +393,15 @@ shortcut syntax you use for `npm install`: "repository": "gitlab:user/repo" +If the `package.json` for your package is not in the root directory (for example +if it is part of a monorepo), you can specify the directory in which it lives: + + "repository": { + "type" : "git", + "url" : "https://github.com/facebook/react.git", + "directory": "packages/react-dom" + } + ## scripts The "scripts" property is a dictionary containing script commands that are run diff --git a/deps/npm/html/doc/README.html b/deps/npm/html/doc/README.html index a69fa3d7e455ee..8397271c8049a1 100644 --- a/deps/npm/html/doc/README.html +++ b/deps/npm/html/doc/README.html @@ -118,5 +118,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-access.html b/deps/npm/html/doc/cli/npm-access.html index 0904466dd0aa42..50055e4cf6eada 100644 --- a/deps/npm/html/doc/cli/npm-access.html +++ b/deps/npm/html/doc/cli/npm-access.html @@ -93,5 +93,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-adduser.html b/deps/npm/html/doc/cli/npm-adduser.html index abea1da85b3432..b5f4183bdb7c4c 100644 --- a/deps/npm/html/doc/cli/npm-adduser.html +++ b/deps/npm/html/doc/cli/npm-adduser.html @@ -78,5 +78,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-audit.html b/deps/npm/html/doc/cli/npm-audit.html index 311c2a68999a12..8dec30252122e2 100644 --- a/deps/npm/html/doc/cli/npm-audit.html +++ b/deps/npm/html/doc/cli/npm-audit.html @@ -81,4 +81,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-bin.html b/deps/npm/html/doc/cli/npm-bin.html index ff2ffde7657879..db09970cbd0234 100644 --- a/deps/npm/html/doc/cli/npm-bin.html +++ b/deps/npm/html/doc/cli/npm-bin.html @@ -34,5 +34,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-bugs.html b/deps/npm/html/doc/cli/npm-bugs.html index afcdffcfbd5fa2..d91694348e67f9 100644 --- a/deps/npm/html/doc/cli/npm-bugs.html +++ b/deps/npm/html/doc/cli/npm-bugs.html @@ -54,5 +54,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-build.html b/deps/npm/html/doc/cli/npm-build.html index 158edbc4e6bd2a..756d5da1341613 100644 --- a/deps/npm/html/doc/cli/npm-build.html +++ b/deps/npm/html/doc/cli/npm-build.html @@ -38,5 +38,5 @@

DESCRIPTION

       - + diff --git a/deps/npm/html/doc/cli/npm-bundle.html b/deps/npm/html/doc/cli/npm-bundle.html index 53420b0d342f9c..43ff59c8b3a270 100644 --- a/deps/npm/html/doc/cli/npm-bundle.html +++ b/deps/npm/html/doc/cli/npm-bundle.html @@ -31,5 +31,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-cache.html b/deps/npm/html/doc/cli/npm-cache.html index 0193feabd776ac..6470557775d8f3 100644 --- a/deps/npm/html/doc/cli/npm-cache.html +++ b/deps/npm/html/doc/cli/npm-cache.html @@ -88,5 +88,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-ci.html b/deps/npm/html/doc/cli/npm-ci.html index 54601d1dc3ec97..f79fc4716b1fa6 100644 --- a/deps/npm/html/doc/cli/npm-ci.html +++ b/deps/npm/html/doc/cli/npm-ci.html @@ -58,4 +58,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-completion.html b/deps/npm/html/doc/cli/npm-completion.html index 48adf8cd804e84..18623a4ee5271f 100644 --- a/deps/npm/html/doc/cli/npm-completion.html +++ b/deps/npm/html/doc/cli/npm-completion.html @@ -42,5 +42,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-config.html b/deps/npm/html/doc/cli/npm-config.html index 834ef101880249..ce7f403ad5dd82 100644 --- a/deps/npm/html/doc/cli/npm-config.html +++ b/deps/npm/html/doc/cli/npm-config.html @@ -62,5 +62,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-dedupe.html b/deps/npm/html/doc/cli/npm-dedupe.html index dc1c97d396f2e3..eebd23180ca014 100644 --- a/deps/npm/html/doc/cli/npm-dedupe.html +++ b/deps/npm/html/doc/cli/npm-dedupe.html @@ -58,5 +58,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-deprecate.html b/deps/npm/html/doc/cli/npm-deprecate.html index 590e70f845b4df..073489d550df5f 100644 --- a/deps/npm/html/doc/cli/npm-deprecate.html +++ b/deps/npm/html/doc/cli/npm-deprecate.html @@ -38,5 +38,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-dist-tag.html b/deps/npm/html/doc/cli/npm-dist-tag.html index 3bce07aede0728..c5bccf8d6b5034 100644 --- a/deps/npm/html/doc/cli/npm-dist-tag.html +++ b/deps/npm/html/doc/cli/npm-dist-tag.html @@ -86,5 +86,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-docs.html b/deps/npm/html/doc/cli/npm-docs.html index 993850bba96226..9dc8f1e9dfe566 100644 --- a/deps/npm/html/doc/cli/npm-docs.html +++ b/deps/npm/html/doc/cli/npm-docs.html @@ -55,5 +55,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-doctor.html b/deps/npm/html/doc/cli/npm-doctor.html index 567b320b186ea6..b62846361a8a4b 100644 --- a/deps/npm/html/doc/cli/npm-doctor.html +++ b/deps/npm/html/doc/cli/npm-doctor.html @@ -102,4 +102,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-edit.html b/deps/npm/html/doc/cli/npm-edit.html index 081f607ec59fb8..d0c610e3fbc9f3 100644 --- a/deps/npm/html/doc/cli/npm-edit.html +++ b/deps/npm/html/doc/cli/npm-edit.html @@ -50,5 +50,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-explore.html b/deps/npm/html/doc/cli/npm-explore.html index 79f53334ef2044..d2497c1a894d18 100644 --- a/deps/npm/html/doc/cli/npm-explore.html +++ b/deps/npm/html/doc/cli/npm-explore.html @@ -47,5 +47,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-help-search.html b/deps/npm/html/doc/cli/npm-help-search.html index 800e233ff46ab1..1713c5acaf8dfd 100644 --- a/deps/npm/html/doc/cli/npm-help-search.html +++ b/deps/npm/html/doc/cli/npm-help-search.html @@ -44,5 +44,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-help.html b/deps/npm/html/doc/cli/npm-help.html index 7d5a9734e8ef69..1fa45438c4b455 100644 --- a/deps/npm/html/doc/cli/npm-help.html +++ b/deps/npm/html/doc/cli/npm-help.html @@ -49,5 +49,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-hook.html b/deps/npm/html/doc/cli/npm-hook.html index 62a333cb7aede4..9e0f654c20879e 100644 --- a/deps/npm/html/doc/cli/npm-hook.html +++ b/deps/npm/html/doc/cli/npm-hook.html @@ -52,4 +52,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-init.html b/deps/npm/html/doc/cli/npm-init.html index 073263cbe216b4..27149f7d96ad3c 100644 --- a/deps/npm/html/doc/cli/npm-init.html +++ b/deps/npm/html/doc/cli/npm-init.html @@ -61,5 +61,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-install-ci-test.html b/deps/npm/html/doc/cli/npm-install-ci-test.html index 831bc4e21e11cd..dc486f645c101b 100644 --- a/deps/npm/html/doc/cli/npm-install-ci-test.html +++ b/deps/npm/html/doc/cli/npm-install-ci-test.html @@ -32,4 +32,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-install-test.html b/deps/npm/html/doc/cli/npm-install-test.html index 7ed9fee6dc59b3..73cea7504d1a29 100644 --- a/deps/npm/html/doc/cli/npm-install-test.html +++ b/deps/npm/html/doc/cli/npm-install-test.html @@ -41,5 +41,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-install.html b/deps/npm/html/doc/cli/npm-install.html index 973e0de79d96c5..8e5b375fd9edb5 100644 --- a/deps/npm/html/doc/cli/npm-install.html +++ b/deps/npm/html/doc/cli/npm-install.html @@ -370,5 +370,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-link.html b/deps/npm/html/doc/cli/npm-link.html index da9a12bd7f0365..79abe2ce97710a 100644 --- a/deps/npm/html/doc/cli/npm-link.html +++ b/deps/npm/html/doc/cli/npm-link.html @@ -71,5 +71,5 @@

SYNOPSIS

       - + diff --git a/deps/npm/html/doc/cli/npm-logout.html b/deps/npm/html/doc/cli/npm-logout.html index 011f638aff592a..3309a2287b7687 100644 --- a/deps/npm/html/doc/cli/npm-logout.html +++ b/deps/npm/html/doc/cli/npm-logout.html @@ -49,5 +49,5 @@

scope

       - + diff --git a/deps/npm/html/doc/cli/npm-ls.html b/deps/npm/html/doc/cli/npm-ls.html index bbdd3aea8d8468..ea9574ed233d17 100644 --- a/deps/npm/html/doc/cli/npm-ls.html +++ b/deps/npm/html/doc/cli/npm-ls.html @@ -20,7 +20,7 @@

SYNOPSIS

limit the results to only the paths to the packages named. Note that nested packages will also show the paths to the specified packages. For example, running npm ls promzard in npm's source tree will show:

-
npm@6.7.0 /path/to/npm
+
npm@6.8.0 /path/to/npm
 └─┬ init-package-json@0.0.4
   └── promzard@0.1.5

It will print out extraneous, missing, and invalid packages.

If a project specifies git urls for dependencies these are shown @@ -108,5 +108,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-org.html b/deps/npm/html/doc/cli/npm-org.html index 2132e290adefc3..f00af849c32ba4 100644 --- a/deps/npm/html/doc/cli/npm-org.html +++ b/deps/npm/html/doc/cli/npm-org.html @@ -40,4 +40,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-outdated.html b/deps/npm/html/doc/cli/npm-outdated.html index b39aaeac54de2f..ae428361b3fad2 100644 --- a/deps/npm/html/doc/cli/npm-outdated.html +++ b/deps/npm/html/doc/cli/npm-outdated.html @@ -116,5 +116,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-owner.html b/deps/npm/html/doc/cli/npm-owner.html index 42a1f852edfff8..6c888d4863a445 100644 --- a/deps/npm/html/doc/cli/npm-owner.html +++ b/deps/npm/html/doc/cli/npm-owner.html @@ -53,5 +53,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-pack.html b/deps/npm/html/doc/cli/npm-pack.html index c6494d46c0c7a8..9be7a6fc76a723 100644 --- a/deps/npm/html/doc/cli/npm-pack.html +++ b/deps/npm/html/doc/cli/npm-pack.html @@ -42,5 +42,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-ping.html b/deps/npm/html/doc/cli/npm-ping.html index e320419a0ef4f1..4e589430e8bf55 100644 --- a/deps/npm/html/doc/cli/npm-ping.html +++ b/deps/npm/html/doc/cli/npm-ping.html @@ -33,5 +33,5 @@

SYNOPSIS

       - + diff --git a/deps/npm/html/doc/cli/npm-prefix.html b/deps/npm/html/doc/cli/npm-prefix.html index af9969c0746d17..520f01f2175843 100644 --- a/deps/npm/html/doc/cli/npm-prefix.html +++ b/deps/npm/html/doc/cli/npm-prefix.html @@ -38,5 +38,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-profile.html b/deps/npm/html/doc/cli/npm-profile.html index e9e81d60f1b373..da60942a130e78 100644 --- a/deps/npm/html/doc/cli/npm-profile.html +++ b/deps/npm/html/doc/cli/npm-profile.html @@ -88,4 +88,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-prune.html b/deps/npm/html/doc/cli/npm-prune.html index aa4a4a9233fae0..cf55270bc23c67 100644 --- a/deps/npm/html/doc/cli/npm-prune.html +++ b/deps/npm/html/doc/cli/npm-prune.html @@ -47,5 +47,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-publish.html b/deps/npm/html/doc/cli/npm-publish.html index 622389b2e1763e..f87f6efe1de79e 100644 --- a/deps/npm/html/doc/cli/npm-publish.html +++ b/deps/npm/html/doc/cli/npm-publish.html @@ -87,5 +87,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-rebuild.html b/deps/npm/html/doc/cli/npm-rebuild.html index 793bbad2487420..5a297a3cae213c 100644 --- a/deps/npm/html/doc/cli/npm-rebuild.html +++ b/deps/npm/html/doc/cli/npm-rebuild.html @@ -34,5 +34,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-repo.html b/deps/npm/html/doc/cli/npm-repo.html index a62eccf9c0a192..451cbdb567cf1a 100644 --- a/deps/npm/html/doc/cli/npm-repo.html +++ b/deps/npm/html/doc/cli/npm-repo.html @@ -40,5 +40,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-restart.html b/deps/npm/html/doc/cli/npm-restart.html index 14c430e012f049..45e822cea8c839 100644 --- a/deps/npm/html/doc/cli/npm-restart.html +++ b/deps/npm/html/doc/cli/npm-restart.html @@ -52,5 +52,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-root.html b/deps/npm/html/doc/cli/npm-root.html index 13ec0912a8d125..89f00300abf8b7 100644 --- a/deps/npm/html/doc/cli/npm-root.html +++ b/deps/npm/html/doc/cli/npm-root.html @@ -34,5 +34,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-run-script.html b/deps/npm/html/doc/cli/npm-run-script.html index 862a9fb324fd45..3c37a04ca94b40 100644 --- a/deps/npm/html/doc/cli/npm-run-script.html +++ b/deps/npm/html/doc/cli/npm-run-script.html @@ -79,5 +79,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-search.html b/deps/npm/html/doc/cli/npm-search.html index 6818a07dd9df03..5356c0853e3397 100644 --- a/deps/npm/html/doc/cli/npm-search.html +++ b/deps/npm/html/doc/cli/npm-search.html @@ -108,5 +108,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-shrinkwrap.html b/deps/npm/html/doc/cli/npm-shrinkwrap.html index 2b07d44400901e..dc1572eccd0ece 100644 --- a/deps/npm/html/doc/cli/npm-shrinkwrap.html +++ b/deps/npm/html/doc/cli/npm-shrinkwrap.html @@ -40,5 +40,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-star.html b/deps/npm/html/doc/cli/npm-star.html index 282fe6058e9aa8..04856c5d00493a 100644 --- a/deps/npm/html/doc/cli/npm-star.html +++ b/deps/npm/html/doc/cli/npm-star.html @@ -35,5 +35,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-stars.html b/deps/npm/html/doc/cli/npm-stars.html index 48bbc461a81d6b..3bee122ec01664 100644 --- a/deps/npm/html/doc/cli/npm-stars.html +++ b/deps/npm/html/doc/cli/npm-stars.html @@ -35,5 +35,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-start.html b/deps/npm/html/doc/cli/npm-start.html index 063eed365633ae..8fcc064888eb3a 100644 --- a/deps/npm/html/doc/cli/npm-start.html +++ b/deps/npm/html/doc/cli/npm-start.html @@ -38,5 +38,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-stop.html b/deps/npm/html/doc/cli/npm-stop.html index 989210046d0d38..7f705bdf4798a2 100644 --- a/deps/npm/html/doc/cli/npm-stop.html +++ b/deps/npm/html/doc/cli/npm-stop.html @@ -33,5 +33,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-team.html b/deps/npm/html/doc/cli/npm-team.html index 5368ed6ed41df0..dc7b178c0c8973 100644 --- a/deps/npm/html/doc/cli/npm-team.html +++ b/deps/npm/html/doc/cli/npm-team.html @@ -69,5 +69,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-test.html b/deps/npm/html/doc/cli/npm-test.html index 0c5839262983e9..ef9cd4e0589456 100644 --- a/deps/npm/html/doc/cli/npm-test.html +++ b/deps/npm/html/doc/cli/npm-test.html @@ -35,5 +35,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-token.html b/deps/npm/html/doc/cli/npm-token.html index 33d11852c8a4a9..73c16a2a12d305 100644 --- a/deps/npm/html/doc/cli/npm-token.html +++ b/deps/npm/html/doc/cli/npm-token.html @@ -81,4 +81,4 @@

SYNOPSIS

       - + diff --git a/deps/npm/html/doc/cli/npm-uninstall.html b/deps/npm/html/doc/cli/npm-uninstall.html index f477d9f287e740..cee40fc882856f 100644 --- a/deps/npm/html/doc/cli/npm-uninstall.html +++ b/deps/npm/html/doc/cli/npm-uninstall.html @@ -60,5 +60,5 @@

SYNOPSIS

       - + diff --git a/deps/npm/html/doc/cli/npm-unpublish.html b/deps/npm/html/doc/cli/npm-unpublish.html index 61b565bb2fe659..12da84578fc1ad 100644 --- a/deps/npm/html/doc/cli/npm-unpublish.html +++ b/deps/npm/html/doc/cli/npm-unpublish.html @@ -52,5 +52,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-update.html b/deps/npm/html/doc/cli/npm-update.html index f03acc1b436186..83b38a701026ba 100644 --- a/deps/npm/html/doc/cli/npm-update.html +++ b/deps/npm/html/doc/cli/npm-update.html @@ -100,5 +100,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-version.html b/deps/npm/html/doc/cli/npm-version.html index 31bf550d7baee8..d1727eef9f5e95 100644 --- a/deps/npm/html/doc/cli/npm-version.html +++ b/deps/npm/html/doc/cli/npm-version.html @@ -116,5 +116,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-view.html b/deps/npm/html/doc/cli/npm-view.html index 9ec17116957985..17dbc2225c0273 100644 --- a/deps/npm/html/doc/cli/npm-view.html +++ b/deps/npm/html/doc/cli/npm-view.html @@ -75,5 +75,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm-whoami.html b/deps/npm/html/doc/cli/npm-whoami.html index df62dacb1a4c51..5d49c9dc50cb02 100644 --- a/deps/npm/html/doc/cli/npm-whoami.html +++ b/deps/npm/html/doc/cli/npm-whoami.html @@ -32,5 +32,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/cli/npm.html b/deps/npm/html/doc/cli/npm.html index 6864d44a472a76..cba0d3fb54c0ab 100644 --- a/deps/npm/html/doc/cli/npm.html +++ b/deps/npm/html/doc/cli/npm.html @@ -12,7 +12,7 @@

npm

javascript package manager

SYNOPSIS

npm <command> [args]

VERSION

-

6.7.0

+

6.8.0

DESCRIPTION

npm is the package manager for the Node JavaScript platform. It puts modules in place so that node can find them, and manages dependency @@ -130,7 +130,7 @@

AUTHOR

Isaac Z. Schlueter :: isaacs :: @izs :: -i@izs.me

+i@izs.me

SEE ALSO

  • npm-help(1)
  • @@ -154,5 +154,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/files/npm-folders.html b/deps/npm/html/doc/files/npm-folders.html index 5ad8e306134f0e..025ce0a8053379 100644 --- a/deps/npm/html/doc/files/npm-folders.html +++ b/deps/npm/html/doc/files/npm-folders.html @@ -179,5 +179,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/files/npm-global.html b/deps/npm/html/doc/files/npm-global.html index 5ad8e306134f0e..025ce0a8053379 100644 --- a/deps/npm/html/doc/files/npm-global.html +++ b/deps/npm/html/doc/files/npm-global.html @@ -179,5 +179,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/files/npm-json.html b/deps/npm/html/doc/files/npm-json.html index 751bbebde906d6..2b2513969183d1 100644 --- a/deps/npm/html/doc/files/npm-json.html +++ b/deps/npm/html/doc/files/npm-json.html @@ -277,7 +277,13 @@

    repository

    "repository": "bitbucket:user/repo" -"repository": "gitlab:user/repo"

scripts

+"repository": "gitlab:user/repo"

If the package.json for your package is not in the root directory (for example +if it is part of a monorepo), you can specify the directory in which it lives:

+
"repository": {
+  "type" : "git",
+  "url" : "https://github.com/facebook/react.git",
+  "directory": "packages/react-dom"
+}

scripts

The "scripts" property is a dictionary containing script commands that are run at various times in the lifecycle of your package. The key is the lifecycle event, and the value is the command to run at that point.

@@ -574,5 +580,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/files/npm-package-locks.html b/deps/npm/html/doc/files/npm-package-locks.html index 6e273ed342d717..67328f8fb45033 100644 --- a/deps/npm/html/doc/files/npm-package-locks.html +++ b/deps/npm/html/doc/files/npm-package-locks.html @@ -154,4 +154,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/files/npm-shrinkwrap.json.html b/deps/npm/html/doc/files/npm-shrinkwrap.json.html index 70316f153aa794..05383c56351aa6 100644 --- a/deps/npm/html/doc/files/npm-shrinkwrap.json.html +++ b/deps/npm/html/doc/files/npm-shrinkwrap.json.html @@ -42,4 +42,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/files/npmrc.html b/deps/npm/html/doc/files/npmrc.html index 9b34b7a13270c5..dad202d1ec0c81 100644 --- a/deps/npm/html/doc/files/npmrc.html +++ b/deps/npm/html/doc/files/npmrc.html @@ -82,5 +82,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/files/package-lock.json.html b/deps/npm/html/doc/files/package-lock.json.html index 1d6399445e7c39..7f752a0b1fb294 100644 --- a/deps/npm/html/doc/files/package-lock.json.html +++ b/deps/npm/html/doc/files/package-lock.json.html @@ -130,4 +130,4 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/files/package.json.html b/deps/npm/html/doc/files/package.json.html index 751bbebde906d6..2b2513969183d1 100644 --- a/deps/npm/html/doc/files/package.json.html +++ b/deps/npm/html/doc/files/package.json.html @@ -277,7 +277,13 @@

repository

"repository": "bitbucket:user/repo" -"repository": "gitlab:user/repo"

scripts

+"repository": "gitlab:user/repo"

If the package.json for your package is not in the root directory (for example +if it is part of a monorepo), you can specify the directory in which it lives:

+
"repository": {
+  "type" : "git",
+  "url" : "https://github.com/facebook/react.git",
+  "directory": "packages/react-dom"
+}

scripts

The "scripts" property is a dictionary containing script commands that are run at various times in the lifecycle of your package. The key is the lifecycle event, and the value is the command to run at that point.

@@ -574,5 +580,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/index.html b/deps/npm/html/doc/index.html index b372a629232be9..a68c1dcc49822b 100644 --- a/deps/npm/html/doc/index.html +++ b/deps/npm/html/doc/index.html @@ -182,5 +182,5 @@

semver(7)

       - + diff --git a/deps/npm/html/doc/misc/npm-coding-style.html b/deps/npm/html/doc/misc/npm-coding-style.html index 3e4632d6789390..e854a94e93794d 100644 --- a/deps/npm/html/doc/misc/npm-coding-style.html +++ b/deps/npm/html/doc/misc/npm-coding-style.html @@ -145,5 +145,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/misc/npm-config.html b/deps/npm/html/doc/misc/npm-config.html index d09706648f6df1..c26b9cce0ef010 100644 --- a/deps/npm/html/doc/misc/npm-config.html +++ b/deps/npm/html/doc/misc/npm-config.html @@ -1064,5 +1064,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/misc/npm-developers.html b/deps/npm/html/doc/misc/npm-developers.html index 04c4430a51f0a2..a3db917045e098 100644 --- a/deps/npm/html/doc/misc/npm-developers.html +++ b/deps/npm/html/doc/misc/npm-developers.html @@ -198,5 +198,5 @@

SEE ALSO

       - + diff --git a/deps/npm/html/doc/misc/npm-disputes.html b/deps/npm/html/doc/misc/npm-disputes.html index 1bc5deee22fed7..d7b979f1b112e5 100644 --- a/deps/npm/html/doc/misc/npm-disputes.html +++ b/deps/npm/html/doc/misc/npm-disputes.html @@ -20,7 +20,7 @@

npm-disputes

Handling Module

TL;DR

  1. Get the author email with npm owner ls <pkgname>
  2. -
  3. Email the author, CC support@npmjs.com
  4. +
  5. Email the author, CC support@npmjs.com
  6. After a few weeks, if there's no resolution, we'll sort it out.

Don't squat on package names. Publish code or move out of the way.

@@ -58,13 +58,13 @@

DESCRIPTION

  • Alice emails Yusuf, explaining the situation as respectfully as possible, and what she would like to do with the module name. She adds the npm support -staff support@npmjs.com to the CC list of the email. Mention in the email +staff support@npmjs.com to the CC list of the email. Mention in the email that Yusuf can run npm owner add alice foo to add Alice as an owner of the foo package.

  • After a reasonable amount of time, if Yusuf has not responded, or if Yusuf and Alice can't come to any sort of resolution, email support -support@npmjs.com and we'll sort it out. ("Reasonable" is usually at least +support@npmjs.com and we'll sort it out. ("Reasonable" is usually at least 4 weeks.)

  • @@ -101,12 +101,12 @@

    EXCEPTIONS

    Code of Conduct such as hateful language, pornographic content, or harassment. -

    If you see bad behavior like this, please report it to abuse@npmjs.com right +

    If you see bad behavior like this, please report it to abuse@npmjs.com right away. You are never expected to resolve abusive behavior on your own. We are here to help.

    TRADEMARKS

    If you think another npm publisher is infringing your trademark, such as by -using a confusingly similar package name, email abuse@npmjs.com with a link to +using a confusingly similar package name, email abuse@npmjs.com with a link to the package or user account on https://www.npmjs.com/. Attach a copy of your trademark registration certificate.

    If we see that the package's publisher is intentionally misleading others by @@ -139,5 +139,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/misc/npm-index.html b/deps/npm/html/doc/misc/npm-index.html index 5044c3044931a7..a9cdaa295a824e 100644 --- a/deps/npm/html/doc/misc/npm-index.html +++ b/deps/npm/html/doc/misc/npm-index.html @@ -182,5 +182,5 @@

    semver(7)

           - + diff --git a/deps/npm/html/doc/misc/npm-orgs.html b/deps/npm/html/doc/misc/npm-orgs.html index 75d23d6beadc8b..c371acb47a4f92 100644 --- a/deps/npm/html/doc/misc/npm-orgs.html +++ b/deps/npm/html/doc/misc/npm-orgs.html @@ -77,5 +77,5 @@

    Team Admins create teams

           - + diff --git a/deps/npm/html/doc/misc/npm-registry.html b/deps/npm/html/doc/misc/npm-registry.html index ca2352a7efd8e2..afe6fee2c988f2 100644 --- a/deps/npm/html/doc/misc/npm-registry.html +++ b/deps/npm/html/doc/misc/npm-registry.html @@ -96,5 +96,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/misc/npm-scope.html b/deps/npm/html/doc/misc/npm-scope.html index 329812894eaca2..9e5204831278f3 100644 --- a/deps/npm/html/doc/misc/npm-scope.html +++ b/deps/npm/html/doc/misc/npm-scope.html @@ -93,5 +93,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/misc/npm-scripts.html b/deps/npm/html/doc/misc/npm-scripts.html index 1533d13b63e56b..6facee442c4daa 100644 --- a/deps/npm/html/doc/misc/npm-scripts.html +++ b/deps/npm/html/doc/misc/npm-scripts.html @@ -234,5 +234,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/misc/removing-npm.html b/deps/npm/html/doc/misc/removing-npm.html index d31c293c9ddd3c..e76f1cf6b28300 100644 --- a/deps/npm/html/doc/misc/removing-npm.html +++ b/deps/npm/html/doc/misc/removing-npm.html @@ -52,5 +52,5 @@

    SEE ALSO

           - + diff --git a/deps/npm/html/doc/misc/semver.html b/deps/npm/html/doc/misc/semver.html index 28db44aa664ce8..6b1e2f29eed219 100644 --- a/deps/npm/html/doc/misc/semver.html +++ b/deps/npm/html/doc/misc/semver.html @@ -361,5 +361,5 @@

    Coercion

           - + diff --git a/deps/npm/lib/access.js b/deps/npm/lib/access.js index 4bb93fda1d0ee2..6657f4b0717a1f 100644 --- a/deps/npm/lib/access.js +++ b/deps/npm/lib/access.js @@ -154,7 +154,7 @@ access['ls-packages'] = access.lsPackages = ([owner], opts) => { } access['ls-collaborators'] = access.lsCollaborators = ([pkg, usr], opts) => { - return getPackage(pkg).then(pkgName => + return getPackage(pkg, false).then(pkgName => libaccess.lsCollaborators(pkgName, usr, opts) ).then(collabs => { // TODO - print these out nicely (breaking change) diff --git a/deps/npm/lib/fetch-package-metadata.md b/deps/npm/lib/fetch-package-metadata.md index 6fe4beac6eeed3..7b4562341b1cb4 100644 --- a/deps/npm/lib/fetch-package-metadata.md +++ b/deps/npm/lib/fetch-package-metadata.md @@ -1,7 +1,7 @@ fetch-package-metadata ---------------------- - var fetchPackageMetadata = require("npm/lib/fetch-package-metadata") + const fetchPackageMetadata = require("npm/lib/fetch-package-metadata") fetchPackageMetadata(spec, contextdir, callback) This will get package metadata (and if possible, ONLY package metadata) for diff --git a/deps/npm/lib/install/inflate-shrinkwrap.js b/deps/npm/lib/install/inflate-shrinkwrap.js index bf1ab7065724c8..395cc111913093 100644 --- a/deps/npm/lib/install/inflate-shrinkwrap.js +++ b/deps/npm/lib/install/inflate-shrinkwrap.js @@ -177,7 +177,7 @@ function makeFakeChild (name, topPath, tree, sw, requested) { realpath: requested.type === 'directory' ? requested.fetchSpec : childPath(tree.realpath, pkg), location: (tree.location === '/' ? '' : tree.location + '/') + pkg.name, isLink: requested.type === 'directory', - isInLink: tree.isLink, + isInLink: tree.isLink || tree.isInLink, swRequires: sw.requires }) tree.children.push(child) diff --git a/deps/npm/lib/ls.js b/deps/npm/lib/ls.js index bb5e433f78fdea..8653fc718ae4ad 100644 --- a/deps/npm/lib/ls.js +++ b/deps/npm/lib/ls.js @@ -305,7 +305,7 @@ function filterFound (root, args) { if (!markDeps) continue Object.keys(markDeps).forEach(function (depName) { var dep = markDeps[depName] - if (dep.peerMissing) return + if (dep.peerMissing && !dep._from) return dep._parent = markPkg for (var ii = 0; ii < args.length; ii++) { var argName = args[ii][0] diff --git a/deps/npm/lib/shrinkwrap.js b/deps/npm/lib/shrinkwrap.js index dbb12b5bd4fba4..b1f60ac7a9eea2 100644 --- a/deps/npm/lib/shrinkwrap.js +++ b/deps/npm/lib/shrinkwrap.js @@ -110,11 +110,13 @@ function shrinkwrapDeps (deps, top, tree, seen) { var childIsOnlyDev = isOnlyDev(child) var pkginfo = deps[moduleName(child)] = {} var requested = getRequested(child) || child.package._requested || {} + var linked = child.isLink || child.isInLink + var linkedFromHere = linked && path.relative(top.realpath, child.realpath)[0] !== '.' pkginfo.version = childVersion(top, child, requested) if (requested.type === 'git' && child.package._from) { pkginfo.from = child.package._from } - if (child.fromBundle || child.isInLink) { + if (child.fromBundle && !linked) { pkginfo.bundled = true } else { if (isRegistry(requested)) { @@ -139,7 +141,8 @@ function shrinkwrapDeps (deps, top, tree, seen) { pkginfo.requires[moduleName(required)] = childRequested(top, required, requested) }) } - if (child.children.length) { + // iterate into children on non-links and links contained within the top level package + if (child.children.length && (!child.isLink || linkedFromHere)) { pkginfo.dependencies = {} shrinkwrapDeps(pkginfo.dependencies, top, child, seen) } diff --git a/deps/npm/lib/token.js b/deps/npm/lib/token.js index cccbba2f9ad75e..326f98ec7ef877 100644 --- a/deps/npm/lib/token.js +++ b/deps/npm/lib/token.js @@ -1,6 +1,9 @@ 'use strict' + const profile = require('libnpm/profile') const npm = require('./npm.js') +const figgyPudding = require('figgy-pudding') +const npmConfig = require('./config/figgy-config.js') const output = require('./utils/output.js') const Table = require('cli-table3') const Bluebird = require('bluebird') @@ -76,22 +79,43 @@ function generateTokenIds (tokens, minLength) { return byId } +const TokenConfig = figgyPudding({ + registry: {}, + otp: {}, + cidr: {}, + 'read-only': {}, + json: {}, + parseable: {} +}) + function config () { - const conf = { - json: npm.config.get('json'), - parseable: npm.config.get('parseable'), - registry: npm.config.get('registry'), - otp: npm.config.get('otp') - } + let conf = TokenConfig(npmConfig()) const creds = npm.config.getCredentialsByURI(conf.registry) if (creds.token) { - conf.auth = {token: creds.token} + conf = conf.concat({ + auth: { token: creds.token } + }) } else if (creds.username) { - conf.auth = {basic: {username: creds.username, password: creds.password}} + conf = conf.concat({ + auth: { + basic: { + username: creds.username, + password: creds.password + } + } + }) } else if (creds.auth) { const auth = Buffer.from(creds.auth, 'base64').toString().split(':', 2) - conf.auth = {basic: {username: auth[0], password: auth[1]}} + conf = conf.concat({ + auth: { + basic: { + username: auth[0], + password: auth[1] + } + } + }) } else { + conf = conf.concat({ auth: {} }) conf.auth = {} } if (conf.otp) conf.auth.otp = conf.otp @@ -183,8 +207,8 @@ function rm (args) { function create (args) { const conf = config() - const cidr = npm.config.get('cidr') - const readonly = npm.config.get('read-only') + const cidr = conf.cidr + const readonly = conf['read-only'] const validCIDR = validateCIDRList(cidr) return readUserInfo.password().then((password) => { diff --git a/deps/npm/man/man1/npm-README.1 b/deps/npm/man/man1/npm-README.1 index d616e80ebb5319..4b091372722453 100644 --- a/deps/npm/man/man1/npm-README.1 +++ b/deps/npm/man/man1/npm-README.1 @@ -1,4 +1,4 @@ -.TH "NPM" "1" "January 2019" "" "" +.TH "NPM" "1" "February 2019" "" "" .SH "NAME" \fBnpm\fR \- a JavaScript package manager .P diff --git a/deps/npm/man/man1/npm-access.1 b/deps/npm/man/man1/npm-access.1 index db77a4092d972b..409f6f55ea5547 100644 --- a/deps/npm/man/man1/npm-access.1 +++ b/deps/npm/man/man1/npm-access.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ACCESS" "1" "January 2019" "" "" +.TH "NPM\-ACCESS" "1" "February 2019" "" "" .SH "NAME" \fBnpm-access\fR \- Set access level on published packages .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-adduser.1 b/deps/npm/man/man1/npm-adduser.1 index a2158576572409..6f1054c179bb2a 100644 --- a/deps/npm/man/man1/npm-adduser.1 +++ b/deps/npm/man/man1/npm-adduser.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ADDUSER" "1" "January 2019" "" "" +.TH "NPM\-ADDUSER" "1" "February 2019" "" "" .SH "NAME" \fBnpm-adduser\fR \- Add a registry user account .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-audit.1 b/deps/npm/man/man1/npm-audit.1 index dee3bb03e1e751..f008ac6d29e109 100644 --- a/deps/npm/man/man1/npm-audit.1 +++ b/deps/npm/man/man1/npm-audit.1 @@ -1,4 +1,4 @@ -.TH "NPM\-AUDIT" "1" "January 2019" "" "" +.TH "NPM\-AUDIT" "1" "February 2019" "" "" .SH "NAME" \fBnpm-audit\fR \- Run a security audit .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-bin.1 b/deps/npm/man/man1/npm-bin.1 index edec701bb2bc14..57648c3e5a73ac 100644 --- a/deps/npm/man/man1/npm-bin.1 +++ b/deps/npm/man/man1/npm-bin.1 @@ -1,4 +1,4 @@ -.TH "NPM\-BIN" "1" "January 2019" "" "" +.TH "NPM\-BIN" "1" "February 2019" "" "" .SH "NAME" \fBnpm-bin\fR \- Display npm bin folder .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-bugs.1 b/deps/npm/man/man1/npm-bugs.1 index d34e0987414369..f3491a97483ce6 100644 --- a/deps/npm/man/man1/npm-bugs.1 +++ b/deps/npm/man/man1/npm-bugs.1 @@ -1,4 +1,4 @@ -.TH "NPM\-BUGS" "1" "January 2019" "" "" +.TH "NPM\-BUGS" "1" "February 2019" "" "" .SH "NAME" \fBnpm-bugs\fR \- Bugs for a package in a web browser maybe .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-build.1 b/deps/npm/man/man1/npm-build.1 index b4247d95bdfb44..5b3198a8e79b2d 100644 --- a/deps/npm/man/man1/npm-build.1 +++ b/deps/npm/man/man1/npm-build.1 @@ -1,4 +1,4 @@ -.TH "NPM\-BUILD" "1" "January 2019" "" "" +.TH "NPM\-BUILD" "1" "February 2019" "" "" .SH "NAME" \fBnpm-build\fR \- Build a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-bundle.1 b/deps/npm/man/man1/npm-bundle.1 index 2b00e67c35c75d..76f15e358b3a97 100644 --- a/deps/npm/man/man1/npm-bundle.1 +++ b/deps/npm/man/man1/npm-bundle.1 @@ -1,4 +1,4 @@ -.TH "NPM\-BUNDLE" "1" "January 2019" "" "" +.TH "NPM\-BUNDLE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-bundle\fR \- REMOVED .SH DESCRIPTION diff --git a/deps/npm/man/man1/npm-cache.1 b/deps/npm/man/man1/npm-cache.1 index 2dc3481048a05f..e17f7a26b7c18c 100644 --- a/deps/npm/man/man1/npm-cache.1 +++ b/deps/npm/man/man1/npm-cache.1 @@ -1,4 +1,4 @@ -.TH "NPM\-CACHE" "1" "January 2019" "" "" +.TH "NPM\-CACHE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-cache\fR \- Manipulates packages cache .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-ci.1 b/deps/npm/man/man1/npm-ci.1 index b872c00415b249..228ebead5471fe 100644 --- a/deps/npm/man/man1/npm-ci.1 +++ b/deps/npm/man/man1/npm-ci.1 @@ -1,4 +1,4 @@ -.TH "NPM\-CI" "1" "January 2019" "" "" +.TH "NPM\-CI" "1" "February 2019" "" "" .SH "NAME" \fBnpm-ci\fR \- Install a project with a clean slate .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-completion.1 b/deps/npm/man/man1/npm-completion.1 index 9f424dc2e36b78..cbc15d781ccd2c 100644 --- a/deps/npm/man/man1/npm-completion.1 +++ b/deps/npm/man/man1/npm-completion.1 @@ -1,4 +1,4 @@ -.TH "NPM\-COMPLETION" "1" "January 2019" "" "" +.TH "NPM\-COMPLETION" "1" "February 2019" "" "" .SH "NAME" \fBnpm-completion\fR \- Tab Completion for npm .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-config.1 b/deps/npm/man/man1/npm-config.1 index cc9f9cff4e21e2..7fe38e145359a7 100644 --- a/deps/npm/man/man1/npm-config.1 +++ b/deps/npm/man/man1/npm-config.1 @@ -1,4 +1,4 @@ -.TH "NPM\-CONFIG" "1" "January 2019" "" "" +.TH "NPM\-CONFIG" "1" "February 2019" "" "" .SH "NAME" \fBnpm-config\fR \- Manage the npm configuration files .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-dedupe.1 b/deps/npm/man/man1/npm-dedupe.1 index 8f221481298c7a..0f67f41f9a2d00 100644 --- a/deps/npm/man/man1/npm-dedupe.1 +++ b/deps/npm/man/man1/npm-dedupe.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DEDUPE" "1" "January 2019" "" "" +.TH "NPM\-DEDUPE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-dedupe\fR \- Reduce duplication .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-deprecate.1 b/deps/npm/man/man1/npm-deprecate.1 index 1cf39ddb45152f..a8c4f18a52de48 100644 --- a/deps/npm/man/man1/npm-deprecate.1 +++ b/deps/npm/man/man1/npm-deprecate.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DEPRECATE" "1" "January 2019" "" "" +.TH "NPM\-DEPRECATE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-deprecate\fR \- Deprecate a version of a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-dist-tag.1 b/deps/npm/man/man1/npm-dist-tag.1 index b10e8ce3583d00..9050456e6fba06 100644 --- a/deps/npm/man/man1/npm-dist-tag.1 +++ b/deps/npm/man/man1/npm-dist-tag.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DIST\-TAG" "1" "January 2019" "" "" +.TH "NPM\-DIST\-TAG" "1" "February 2019" "" "" .SH "NAME" \fBnpm-dist-tag\fR \- Modify package distribution tags .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-docs.1 b/deps/npm/man/man1/npm-docs.1 index 6d7ac688b39528..633735b6997651 100644 --- a/deps/npm/man/man1/npm-docs.1 +++ b/deps/npm/man/man1/npm-docs.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DOCS" "1" "January 2019" "" "" +.TH "NPM\-DOCS" "1" "February 2019" "" "" .SH "NAME" \fBnpm-docs\fR \- Docs for a package in a web browser maybe .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-doctor.1 b/deps/npm/man/man1/npm-doctor.1 index aa55d1518ee371..0bd9d0ceb74125 100644 --- a/deps/npm/man/man1/npm-doctor.1 +++ b/deps/npm/man/man1/npm-doctor.1 @@ -1,4 +1,4 @@ -.TH "NPM\-DOCTOR" "1" "January 2019" "" "" +.TH "NPM\-DOCTOR" "1" "February 2019" "" "" .SH "NAME" \fBnpm-doctor\fR \- Check your environments .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-edit.1 b/deps/npm/man/man1/npm-edit.1 index 9146f3b76d428f..182cfb6486e681 100644 --- a/deps/npm/man/man1/npm-edit.1 +++ b/deps/npm/man/man1/npm-edit.1 @@ -1,4 +1,4 @@ -.TH "NPM\-EDIT" "1" "January 2019" "" "" +.TH "NPM\-EDIT" "1" "February 2019" "" "" .SH "NAME" \fBnpm-edit\fR \- Edit an installed package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-explore.1 b/deps/npm/man/man1/npm-explore.1 index 89df72517841d2..0fbc6bece21421 100644 --- a/deps/npm/man/man1/npm-explore.1 +++ b/deps/npm/man/man1/npm-explore.1 @@ -1,4 +1,4 @@ -.TH "NPM\-EXPLORE" "1" "January 2019" "" "" +.TH "NPM\-EXPLORE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-explore\fR \- Browse an installed package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-help-search.1 b/deps/npm/man/man1/npm-help-search.1 index e298e8d98142e8..d6f5af7fe7dc50 100644 --- a/deps/npm/man/man1/npm-help-search.1 +++ b/deps/npm/man/man1/npm-help-search.1 @@ -1,4 +1,4 @@ -.TH "NPM\-HELP\-SEARCH" "1" "January 2019" "" "" +.TH "NPM\-HELP\-SEARCH" "1" "February 2019" "" "" .SH "NAME" \fBnpm-help-search\fR \- Search npm help documentation .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-help.1 b/deps/npm/man/man1/npm-help.1 index c07f2859175f96..b6a3d88d7dcfc7 100644 --- a/deps/npm/man/man1/npm-help.1 +++ b/deps/npm/man/man1/npm-help.1 @@ -1,4 +1,4 @@ -.TH "NPM\-HELP" "1" "January 2019" "" "" +.TH "NPM\-HELP" "1" "February 2019" "" "" .SH "NAME" \fBnpm-help\fR \- Get help on npm .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-hook.1 b/deps/npm/man/man1/npm-hook.1 index 47b175167378c6..c996a09d9c3b32 100644 --- a/deps/npm/man/man1/npm-hook.1 +++ b/deps/npm/man/man1/npm-hook.1 @@ -1,4 +1,4 @@ -.TH "NPM\-HOOK" "1" "January 2019" "" "" +.TH "NPM\-HOOK" "1" "February 2019" "" "" .SH "NAME" \fBnpm-hook\fR \- Manage registry hooks .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-init.1 b/deps/npm/man/man1/npm-init.1 index 988126a399a5e9..f288a28abf513f 100644 --- a/deps/npm/man/man1/npm-init.1 +++ b/deps/npm/man/man1/npm-init.1 @@ -1,4 +1,4 @@ -.TH "NPM\-INIT" "1" "January 2019" "" "" +.TH "NPM\-INIT" "1" "February 2019" "" "" .SH "NAME" \fBnpm-init\fR \- create a package\.json file .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-install-ci-test.1 b/deps/npm/man/man1/npm-install-ci-test.1 index 6cdda35e2a2b83..63ab4c5f78301e 100644 --- a/deps/npm/man/man1/npm-install-ci-test.1 +++ b/deps/npm/man/man1/npm-install-ci-test.1 @@ -1,4 +1,4 @@ -.TH "NPM" "" "January 2019" "" "" +.TH "NPM" "" "February 2019" "" "" .SH "NAME" \fBnpm\fR .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-install-test.1 b/deps/npm/man/man1/npm-install-test.1 index ae8d5223f15d70..576b90a91159e2 100644 --- a/deps/npm/man/man1/npm-install-test.1 +++ b/deps/npm/man/man1/npm-install-test.1 @@ -1,4 +1,4 @@ -.TH "NPM" "" "January 2019" "" "" +.TH "NPM" "" "February 2019" "" "" .SH "NAME" \fBnpm\fR .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-install.1 b/deps/npm/man/man1/npm-install.1 index f2cdfeda49cf82..bdf0ee4e9d9c29 100644 --- a/deps/npm/man/man1/npm-install.1 +++ b/deps/npm/man/man1/npm-install.1 @@ -1,4 +1,4 @@ -.TH "NPM\-INSTALL" "1" "January 2019" "" "" +.TH "NPM\-INSTALL" "1" "February 2019" "" "" .SH "NAME" \fBnpm-install\fR \- Install a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-link.1 b/deps/npm/man/man1/npm-link.1 index 292b9e50a03850..7299e803f268cc 100644 --- a/deps/npm/man/man1/npm-link.1 +++ b/deps/npm/man/man1/npm-link.1 @@ -1,4 +1,4 @@ -.TH "NPM\-LINK" "1" "January 2019" "" "" +.TH "NPM\-LINK" "1" "February 2019" "" "" .SH "NAME" \fBnpm-link\fR \- Symlink a package folder .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-logout.1 b/deps/npm/man/man1/npm-logout.1 index df27d4b55b973c..3116c3e38f70a4 100644 --- a/deps/npm/man/man1/npm-logout.1 +++ b/deps/npm/man/man1/npm-logout.1 @@ -1,4 +1,4 @@ -.TH "NPM\-LOGOUT" "1" "January 2019" "" "" +.TH "NPM\-LOGOUT" "1" "February 2019" "" "" .SH "NAME" \fBnpm-logout\fR \- Log out of the registry .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1 index 59fa5878268686..9a7147f00d5962 100644 --- a/deps/npm/man/man1/npm-ls.1 +++ b/deps/npm/man/man1/npm-ls.1 @@ -1,4 +1,4 @@ -.TH "NPM\-LS" "1" "January 2019" "" "" +.TH "NPM\-LS" "1" "February 2019" "" "" .SH "NAME" \fBnpm-ls\fR \- List installed packages .SH SYNOPSIS @@ -22,7 +22,7 @@ For example, running \fBnpm ls promzard\fP in npm's source tree will show: .P .RS 2 .nf -npm@6.7.0 /path/to/npm +npm@6.8.0 /path/to/npm └─┬ init\-package\-json@0\.0\.4 └── promzard@0\.1\.5 .fi diff --git a/deps/npm/man/man1/npm-org.1 b/deps/npm/man/man1/npm-org.1 index 2cef7e05e62596..8195b21a4b37f3 100644 --- a/deps/npm/man/man1/npm-org.1 +++ b/deps/npm/man/man1/npm-org.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ORG" "1" "January 2019" "" "" +.TH "NPM\-ORG" "1" "February 2019" "" "" .SH "NAME" \fBnpm-org\fR \- Manage orgs .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-outdated.1 b/deps/npm/man/man1/npm-outdated.1 index 7e0a18bef9a007..449142f897051f 100644 --- a/deps/npm/man/man1/npm-outdated.1 +++ b/deps/npm/man/man1/npm-outdated.1 @@ -1,4 +1,4 @@ -.TH "NPM\-OUTDATED" "1" "January 2019" "" "" +.TH "NPM\-OUTDATED" "1" "February 2019" "" "" .SH "NAME" \fBnpm-outdated\fR \- Check for outdated packages .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-owner.1 b/deps/npm/man/man1/npm-owner.1 index c7209ddc9c4bb2..731b45c87e579f 100644 --- a/deps/npm/man/man1/npm-owner.1 +++ b/deps/npm/man/man1/npm-owner.1 @@ -1,4 +1,4 @@ -.TH "NPM\-OWNER" "1" "January 2019" "" "" +.TH "NPM\-OWNER" "1" "February 2019" "" "" .SH "NAME" \fBnpm-owner\fR \- Manage package owners .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-pack.1 b/deps/npm/man/man1/npm-pack.1 index 34af68565e2a75..dc7003364aa9f5 100644 --- a/deps/npm/man/man1/npm-pack.1 +++ b/deps/npm/man/man1/npm-pack.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PACK" "1" "January 2019" "" "" +.TH "NPM\-PACK" "1" "February 2019" "" "" .SH "NAME" \fBnpm-pack\fR \- Create a tarball from a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-ping.1 b/deps/npm/man/man1/npm-ping.1 index 200f51383dd4c4..7a0f4c5c8304f7 100644 --- a/deps/npm/man/man1/npm-ping.1 +++ b/deps/npm/man/man1/npm-ping.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PING" "1" "January 2019" "" "" +.TH "NPM\-PING" "1" "February 2019" "" "" .SH "NAME" \fBnpm-ping\fR \- Ping npm registry .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-prefix.1 b/deps/npm/man/man1/npm-prefix.1 index 372647ecaa04f8..ec6d02637309f0 100644 --- a/deps/npm/man/man1/npm-prefix.1 +++ b/deps/npm/man/man1/npm-prefix.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PREFIX" "1" "January 2019" "" "" +.TH "NPM\-PREFIX" "1" "February 2019" "" "" .SH "NAME" \fBnpm-prefix\fR \- Display prefix .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-profile.1 b/deps/npm/man/man1/npm-profile.1 index 1bd7dcc2e117a7..0ef9bc22a2090e 100644 --- a/deps/npm/man/man1/npm-profile.1 +++ b/deps/npm/man/man1/npm-profile.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PROFILE" "1" "January 2019" "" "" +.TH "NPM\-PROFILE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-profile\fR \- Change settings on your registry profile .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-prune.1 b/deps/npm/man/man1/npm-prune.1 index 6a3ed6d62f8a38..bad93e09061339 100644 --- a/deps/npm/man/man1/npm-prune.1 +++ b/deps/npm/man/man1/npm-prune.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PRUNE" "1" "January 2019" "" "" +.TH "NPM\-PRUNE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-prune\fR \- Remove extraneous packages .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-publish.1 b/deps/npm/man/man1/npm-publish.1 index 934a9ad810b98f..8f8190261f8b5a 100644 --- a/deps/npm/man/man1/npm-publish.1 +++ b/deps/npm/man/man1/npm-publish.1 @@ -1,4 +1,4 @@ -.TH "NPM\-PUBLISH" "1" "January 2019" "" "" +.TH "NPM\-PUBLISH" "1" "February 2019" "" "" .SH "NAME" \fBnpm-publish\fR \- Publish a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-rebuild.1 b/deps/npm/man/man1/npm-rebuild.1 index 8005c9513f2497..5e9dd63c4515d1 100644 --- a/deps/npm/man/man1/npm-rebuild.1 +++ b/deps/npm/man/man1/npm-rebuild.1 @@ -1,4 +1,4 @@ -.TH "NPM\-REBUILD" "1" "January 2019" "" "" +.TH "NPM\-REBUILD" "1" "February 2019" "" "" .SH "NAME" \fBnpm-rebuild\fR \- Rebuild a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-repo.1 b/deps/npm/man/man1/npm-repo.1 index 261d44a86087c1..87946182c5238f 100644 --- a/deps/npm/man/man1/npm-repo.1 +++ b/deps/npm/man/man1/npm-repo.1 @@ -1,4 +1,4 @@ -.TH "NPM\-REPO" "1" "January 2019" "" "" +.TH "NPM\-REPO" "1" "February 2019" "" "" .SH "NAME" \fBnpm-repo\fR \- Open package repository page in the browser .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-restart.1 b/deps/npm/man/man1/npm-restart.1 index 084f5690eda38e..d85ff537fbce98 100644 --- a/deps/npm/man/man1/npm-restart.1 +++ b/deps/npm/man/man1/npm-restart.1 @@ -1,4 +1,4 @@ -.TH "NPM\-RESTART" "1" "January 2019" "" "" +.TH "NPM\-RESTART" "1" "February 2019" "" "" .SH "NAME" \fBnpm-restart\fR \- Restart a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-root.1 b/deps/npm/man/man1/npm-root.1 index fd4246d8791f6a..0a2ef3e2a851eb 100644 --- a/deps/npm/man/man1/npm-root.1 +++ b/deps/npm/man/man1/npm-root.1 @@ -1,4 +1,4 @@ -.TH "NPM\-ROOT" "1" "January 2019" "" "" +.TH "NPM\-ROOT" "1" "February 2019" "" "" .SH "NAME" \fBnpm-root\fR \- Display npm root .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-run-script.1 b/deps/npm/man/man1/npm-run-script.1 index e349dab426526e..9d9a1d22c10fc1 100644 --- a/deps/npm/man/man1/npm-run-script.1 +++ b/deps/npm/man/man1/npm-run-script.1 @@ -1,4 +1,4 @@ -.TH "NPM\-RUN\-SCRIPT" "1" "January 2019" "" "" +.TH "NPM\-RUN\-SCRIPT" "1" "February 2019" "" "" .SH "NAME" \fBnpm-run-script\fR \- Run arbitrary package scripts .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-search.1 b/deps/npm/man/man1/npm-search.1 index 95a8d0966bc7df..98f1c8e26f230b 100644 --- a/deps/npm/man/man1/npm-search.1 +++ b/deps/npm/man/man1/npm-search.1 @@ -1,4 +1,4 @@ -.TH "NPM\-SEARCH" "1" "January 2019" "" "" +.TH "NPM\-SEARCH" "1" "February 2019" "" "" .SH "NAME" \fBnpm-search\fR \- Search for packages .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-shrinkwrap.1 b/deps/npm/man/man1/npm-shrinkwrap.1 index 3f9658febf76c8..0e94633f477cc9 100644 --- a/deps/npm/man/man1/npm-shrinkwrap.1 +++ b/deps/npm/man/man1/npm-shrinkwrap.1 @@ -1,4 +1,4 @@ -.TH "NPM\-SHRINKWRAP" "1" "January 2019" "" "" +.TH "NPM\-SHRINKWRAP" "1" "February 2019" "" "" .SH "NAME" \fBnpm-shrinkwrap\fR \- Lock down dependency versions for publication .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-star.1 b/deps/npm/man/man1/npm-star.1 index ae8c61667da3c5..8df56aa156b9a0 100644 --- a/deps/npm/man/man1/npm-star.1 +++ b/deps/npm/man/man1/npm-star.1 @@ -1,4 +1,4 @@ -.TH "NPM\-STAR" "1" "January 2019" "" "" +.TH "NPM\-STAR" "1" "February 2019" "" "" .SH "NAME" \fBnpm-star\fR \- Mark your favorite packages .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-stars.1 b/deps/npm/man/man1/npm-stars.1 index 2f6038cb5d2be2..f43bbb55061b7d 100644 --- a/deps/npm/man/man1/npm-stars.1 +++ b/deps/npm/man/man1/npm-stars.1 @@ -1,4 +1,4 @@ -.TH "NPM\-STARS" "1" "January 2019" "" "" +.TH "NPM\-STARS" "1" "February 2019" "" "" .SH "NAME" \fBnpm-stars\fR \- View packages marked as favorites .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-start.1 b/deps/npm/man/man1/npm-start.1 index 7ea6362bdc90f0..10dc8e99d4aa5d 100644 --- a/deps/npm/man/man1/npm-start.1 +++ b/deps/npm/man/man1/npm-start.1 @@ -1,4 +1,4 @@ -.TH "NPM\-START" "1" "January 2019" "" "" +.TH "NPM\-START" "1" "February 2019" "" "" .SH "NAME" \fBnpm-start\fR \- Start a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-stop.1 b/deps/npm/man/man1/npm-stop.1 index 2fa4d88ab3804b..c8533382b2404a 100644 --- a/deps/npm/man/man1/npm-stop.1 +++ b/deps/npm/man/man1/npm-stop.1 @@ -1,4 +1,4 @@ -.TH "NPM\-STOP" "1" "January 2019" "" "" +.TH "NPM\-STOP" "1" "February 2019" "" "" .SH "NAME" \fBnpm-stop\fR \- Stop a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-team.1 b/deps/npm/man/man1/npm-team.1 index 6ed65ab44f8de3..f9a6254e965ecc 100644 --- a/deps/npm/man/man1/npm-team.1 +++ b/deps/npm/man/man1/npm-team.1 @@ -1,4 +1,4 @@ -.TH "NPM\-TEAM" "1" "January 2019" "" "" +.TH "NPM\-TEAM" "1" "February 2019" "" "" .SH "NAME" \fBnpm-team\fR \- Manage organization teams and team memberships .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-test.1 b/deps/npm/man/man1/npm-test.1 index 0183a8e079968c..5c9b2ff70a0425 100644 --- a/deps/npm/man/man1/npm-test.1 +++ b/deps/npm/man/man1/npm-test.1 @@ -1,4 +1,4 @@ -.TH "NPM\-TEST" "1" "January 2019" "" "" +.TH "NPM\-TEST" "1" "February 2019" "" "" .SH "NAME" \fBnpm-test\fR \- Test a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-token.1 b/deps/npm/man/man1/npm-token.1 index d7ab2e18b7478a..4dc301b3698981 100644 --- a/deps/npm/man/man1/npm-token.1 +++ b/deps/npm/man/man1/npm-token.1 @@ -1,4 +1,4 @@ -.TH "NPM\-TOKEN" "1" "January 2019" "" "" +.TH "NPM\-TOKEN" "1" "February 2019" "" "" .SH "NAME" \fBnpm-token\fR \- Manage your authentication tokens .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-uninstall.1 b/deps/npm/man/man1/npm-uninstall.1 index 07c413e299beea..3ad051eda07198 100644 --- a/deps/npm/man/man1/npm-uninstall.1 +++ b/deps/npm/man/man1/npm-uninstall.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UNINSTALL" "1" "January 2019" "" "" +.TH "NPM\-UNINSTALL" "1" "February 2019" "" "" .SH "NAME" \fBnpm-uninstall\fR \- Remove a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-unpublish.1 b/deps/npm/man/man1/npm-unpublish.1 index 25eb7044acb32a..ad036da345db9d 100644 --- a/deps/npm/man/man1/npm-unpublish.1 +++ b/deps/npm/man/man1/npm-unpublish.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UNPUBLISH" "1" "January 2019" "" "" +.TH "NPM\-UNPUBLISH" "1" "February 2019" "" "" .SH "NAME" \fBnpm-unpublish\fR \- Remove a package from the registry .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-update.1 b/deps/npm/man/man1/npm-update.1 index 6486b8aef073b4..9f23fb2a40d52a 100644 --- a/deps/npm/man/man1/npm-update.1 +++ b/deps/npm/man/man1/npm-update.1 @@ -1,4 +1,4 @@ -.TH "NPM\-UPDATE" "1" "January 2019" "" "" +.TH "NPM\-UPDATE" "1" "February 2019" "" "" .SH "NAME" \fBnpm-update\fR \- Update a package .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-version.1 b/deps/npm/man/man1/npm-version.1 index bae79b58186a5f..ca1e80cef9e3bf 100644 --- a/deps/npm/man/man1/npm-version.1 +++ b/deps/npm/man/man1/npm-version.1 @@ -1,4 +1,4 @@ -.TH "NPM\-VERSION" "1" "January 2019" "" "" +.TH "NPM\-VERSION" "1" "February 2019" "" "" .SH "NAME" \fBnpm-version\fR \- Bump a package version .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-view.1 b/deps/npm/man/man1/npm-view.1 index 713de6e3cb22a8..6a9a39b0ba61bb 100644 --- a/deps/npm/man/man1/npm-view.1 +++ b/deps/npm/man/man1/npm-view.1 @@ -1,4 +1,4 @@ -.TH "NPM\-VIEW" "1" "January 2019" "" "" +.TH "NPM\-VIEW" "1" "February 2019" "" "" .SH "NAME" \fBnpm-view\fR \- View registry info .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm-whoami.1 b/deps/npm/man/man1/npm-whoami.1 index 08f23ddf0cbc23..f0610c01fae55a 100644 --- a/deps/npm/man/man1/npm-whoami.1 +++ b/deps/npm/man/man1/npm-whoami.1 @@ -1,4 +1,4 @@ -.TH "NPM\-WHOAMI" "1" "January 2019" "" "" +.TH "NPM\-WHOAMI" "1" "February 2019" "" "" .SH "NAME" \fBnpm-whoami\fR \- Display npm username .SH SYNOPSIS diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1 index 38cf7686a434b8..c22c5a51502bad 100644 --- a/deps/npm/man/man1/npm.1 +++ b/deps/npm/man/man1/npm.1 @@ -1,4 +1,4 @@ -.TH "NPM" "1" "January 2019" "" "" +.TH "NPM" "1" "February 2019" "" "" .SH "NAME" \fBnpm\fR \- javascript package manager .SH SYNOPSIS @@ -10,7 +10,7 @@ npm [args] .RE .SH VERSION .P -6.7.0 +6.8.0 .SH DESCRIPTION .P npm is the package manager for the Node JavaScript platform\. It puts diff --git a/deps/npm/man/man5/npm-folders.5 b/deps/npm/man/man5/npm-folders.5 index 0fa03d9715058f..5734ff90e0bac6 100644 --- a/deps/npm/man/man5/npm-folders.5 +++ b/deps/npm/man/man5/npm-folders.5 @@ -1,4 +1,4 @@ -.TH "NPM\-FOLDERS" "5" "January 2019" "" "" +.TH "NPM\-FOLDERS" "5" "February 2019" "" "" .SH "NAME" \fBnpm-folders\fR \- Folder Structures Used by npm .SH DESCRIPTION diff --git a/deps/npm/man/man5/npm-global.5 b/deps/npm/man/man5/npm-global.5 index 0fa03d9715058f..5734ff90e0bac6 100644 --- a/deps/npm/man/man5/npm-global.5 +++ b/deps/npm/man/man5/npm-global.5 @@ -1,4 +1,4 @@ -.TH "NPM\-FOLDERS" "5" "January 2019" "" "" +.TH "NPM\-FOLDERS" "5" "February 2019" "" "" .SH "NAME" \fBnpm-folders\fR \- Folder Structures Used by npm .SH DESCRIPTION diff --git a/deps/npm/man/man5/npm-json.5 b/deps/npm/man/man5/npm-json.5 index dd20f7cb5f3ca1..d674b4a8d63b87 100644 --- a/deps/npm/man/man5/npm-json.5 +++ b/deps/npm/man/man5/npm-json.5 @@ -1,4 +1,4 @@ -.TH "PACKAGE\.JSON" "5" "January 2019" "" "" +.TH "PACKAGE\.JSON" "5" "February 2019" "" "" .SH "NAME" \fBpackage.json\fR \- Specifics of npm's package\.json handling .SH DESCRIPTION @@ -479,6 +479,19 @@ shortcut syntax you use for \fBnpm install\fP: "repository": "gitlab:user/repo" .fi .RE +.P +If the \fBpackage\.json\fP for your package is not in the root directory (for example +if it is part of a monorepo), you can specify the directory in which it lives: +.P +.RS 2 +.nf +"repository": { + "type" : "git", + "url" : "https://github\.com/facebook/react\.git", + "directory": "packages/react\-dom" +} +.fi +.RE .SH scripts .P The "scripts" property is a dictionary containing script commands that are run diff --git a/deps/npm/man/man5/npm-package-locks.5 b/deps/npm/man/man5/npm-package-locks.5 index b3692cebb2e139..09ca47d8a687bd 100644 --- a/deps/npm/man/man5/npm-package-locks.5 +++ b/deps/npm/man/man5/npm-package-locks.5 @@ -1,4 +1,4 @@ -.TH "NPM\-PACKAGE\-LOCKS" "5" "January 2019" "" "" +.TH "NPM\-PACKAGE\-LOCKS" "5" "February 2019" "" "" .SH "NAME" \fBnpm-package-locks\fR \- An explanation of npm lockfiles .SH DESCRIPTION diff --git a/deps/npm/man/man5/npm-shrinkwrap.json.5 b/deps/npm/man/man5/npm-shrinkwrap.json.5 index c1d4db9af34b74..ab1ebbd27a3813 100644 --- a/deps/npm/man/man5/npm-shrinkwrap.json.5 +++ b/deps/npm/man/man5/npm-shrinkwrap.json.5 @@ -1,4 +1,4 @@ -.TH "NPM\-SHRINKWRAP\.JSON" "5" "January 2019" "" "" +.TH "NPM\-SHRINKWRAP\.JSON" "5" "February 2019" "" "" .SH "NAME" \fBnpm-shrinkwrap.json\fR \- A publishable lockfile .SH DESCRIPTION diff --git a/deps/npm/man/man5/npmrc.5 b/deps/npm/man/man5/npmrc.5 index 3d6bf7d568d132..d1b2c4938279b1 100644 --- a/deps/npm/man/man5/npmrc.5 +++ b/deps/npm/man/man5/npmrc.5 @@ -1,4 +1,4 @@ -.TH "NPMRC" "5" "January 2019" "" "" +.TH "NPMRC" "5" "February 2019" "" "" .SH "NAME" \fBnpmrc\fR \- The npm config files .SH DESCRIPTION diff --git a/deps/npm/man/man5/package-lock.json.5 b/deps/npm/man/man5/package-lock.json.5 index dcb215423d7303..bd421edef79472 100644 --- a/deps/npm/man/man5/package-lock.json.5 +++ b/deps/npm/man/man5/package-lock.json.5 @@ -1,4 +1,4 @@ -.TH "PACKAGE\-LOCK\.JSON" "5" "January 2019" "" "" +.TH "PACKAGE\-LOCK\.JSON" "5" "February 2019" "" "" .SH "NAME" \fBpackage-lock.json\fR \- A manifestation of the manifest .SH DESCRIPTION diff --git a/deps/npm/man/man5/package.json.5 b/deps/npm/man/man5/package.json.5 index dd20f7cb5f3ca1..d674b4a8d63b87 100644 --- a/deps/npm/man/man5/package.json.5 +++ b/deps/npm/man/man5/package.json.5 @@ -1,4 +1,4 @@ -.TH "PACKAGE\.JSON" "5" "January 2019" "" "" +.TH "PACKAGE\.JSON" "5" "February 2019" "" "" .SH "NAME" \fBpackage.json\fR \- Specifics of npm's package\.json handling .SH DESCRIPTION @@ -479,6 +479,19 @@ shortcut syntax you use for \fBnpm install\fP: "repository": "gitlab:user/repo" .fi .RE +.P +If the \fBpackage\.json\fP for your package is not in the root directory (for example +if it is part of a monorepo), you can specify the directory in which it lives: +.P +.RS 2 +.nf +"repository": { + "type" : "git", + "url" : "https://github\.com/facebook/react\.git", + "directory": "packages/react\-dom" +} +.fi +.RE .SH scripts .P The "scripts" property is a dictionary containing script commands that are run diff --git a/deps/npm/man/man7/npm-coding-style.7 b/deps/npm/man/man7/npm-coding-style.7 index 9268b14cf9f4b9..33ab9be4a99574 100644 --- a/deps/npm/man/man7/npm-coding-style.7 +++ b/deps/npm/man/man7/npm-coding-style.7 @@ -1,4 +1,4 @@ -.TH "NPM\-CODING\-STYLE" "7" "January 2019" "" "" +.TH "NPM\-CODING\-STYLE" "7" "February 2019" "" "" .SH "NAME" \fBnpm-coding-style\fR \- npm's "funny" coding style .SH DESCRIPTION diff --git a/deps/npm/man/man7/npm-config.7 b/deps/npm/man/man7/npm-config.7 index 9b05942bb0b28f..53986733251489 100644 --- a/deps/npm/man/man7/npm-config.7 +++ b/deps/npm/man/man7/npm-config.7 @@ -1,4 +1,4 @@ -.TH "NPM\-CONFIG" "7" "January 2019" "" "" +.TH "NPM\-CONFIG" "7" "February 2019" "" "" .SH "NAME" \fBnpm-config\fR \- More than you probably want to know about npm configuration .SH DESCRIPTION diff --git a/deps/npm/man/man7/npm-developers.7 b/deps/npm/man/man7/npm-developers.7 index bd36cbabb7991a..ab7efe88b932b9 100644 --- a/deps/npm/man/man7/npm-developers.7 +++ b/deps/npm/man/man7/npm-developers.7 @@ -1,4 +1,4 @@ -.TH "NPM\-DEVELOPERS" "7" "January 2019" "" "" +.TH "NPM\-DEVELOPERS" "7" "February 2019" "" "" .SH "NAME" \fBnpm-developers\fR \- Developer Guide .SH DESCRIPTION diff --git a/deps/npm/man/man7/npm-disputes.7 b/deps/npm/man/man7/npm-disputes.7 index 95716579e50527..dbfcf1ec8c26ce 100644 --- a/deps/npm/man/man7/npm-disputes.7 +++ b/deps/npm/man/man7/npm-disputes.7 @@ -1,4 +1,4 @@ -.TH "NPM\-DISPUTES" "7" "January 2019" "" "" +.TH "NPM\-DISPUTES" "7" "February 2019" "" "" .SH "NAME" \fBnpm-disputes\fR \- Handling Module Name Disputes .P diff --git a/deps/npm/man/man7/npm-index.7 b/deps/npm/man/man7/npm-index.7 index 1d7d5d0bf46cac..3c51a7cf48dd42 100644 --- a/deps/npm/man/man7/npm-index.7 +++ b/deps/npm/man/man7/npm-index.7 @@ -1,4 +1,4 @@ -.TH "NPM\-INDEX" "7" "January 2019" "" "" +.TH "NPM\-INDEX" "7" "February 2019" "" "" .SH "NAME" \fBnpm-index\fR \- Index of all npm documentation .SS npm help README diff --git a/deps/npm/man/man7/npm-orgs.7 b/deps/npm/man/man7/npm-orgs.7 index 9f34c3cb7940ef..9417576786c352 100644 --- a/deps/npm/man/man7/npm-orgs.7 +++ b/deps/npm/man/man7/npm-orgs.7 @@ -1,4 +1,4 @@ -.TH "NPM\-ORGS" "7" "January 2019" "" "" +.TH "NPM\-ORGS" "7" "February 2019" "" "" .SH "NAME" \fBnpm-orgs\fR \- Working with Teams & Orgs .SH DESCRIPTION diff --git a/deps/npm/man/man7/npm-registry.7 b/deps/npm/man/man7/npm-registry.7 index 4c454c81f0c313..14a8b0a84dc8de 100644 --- a/deps/npm/man/man7/npm-registry.7 +++ b/deps/npm/man/man7/npm-registry.7 @@ -1,4 +1,4 @@ -.TH "NPM\-REGISTRY" "7" "January 2019" "" "" +.TH "NPM\-REGISTRY" "7" "February 2019" "" "" .SH "NAME" \fBnpm-registry\fR \- The JavaScript Package Registry .SH DESCRIPTION diff --git a/deps/npm/man/man7/npm-scope.7 b/deps/npm/man/man7/npm-scope.7 index 6ba7c309224567..7072b1feb1f60b 100644 --- a/deps/npm/man/man7/npm-scope.7 +++ b/deps/npm/man/man7/npm-scope.7 @@ -1,4 +1,4 @@ -.TH "NPM\-SCOPE" "7" "January 2019" "" "" +.TH "NPM\-SCOPE" "7" "February 2019" "" "" .SH "NAME" \fBnpm-scope\fR \- Scoped packages .SH DESCRIPTION diff --git a/deps/npm/man/man7/npm-scripts.7 b/deps/npm/man/man7/npm-scripts.7 index 9f5462e8a876d0..e1d89428d10d52 100644 --- a/deps/npm/man/man7/npm-scripts.7 +++ b/deps/npm/man/man7/npm-scripts.7 @@ -1,4 +1,4 @@ -.TH "NPM\-SCRIPTS" "7" "January 2019" "" "" +.TH "NPM\-SCRIPTS" "7" "February 2019" "" "" .SH "NAME" \fBnpm-scripts\fR \- How npm handles the "scripts" field .SH DESCRIPTION diff --git a/deps/npm/man/man7/removing-npm.7 b/deps/npm/man/man7/removing-npm.7 index f7d0781055cea5..67e4bcae1e7bf5 100644 --- a/deps/npm/man/man7/removing-npm.7 +++ b/deps/npm/man/man7/removing-npm.7 @@ -1,4 +1,4 @@ -.TH "NPM\-REMOVAL" "1" "January 2019" "" "" +.TH "NPM\-REMOVAL" "1" "February 2019" "" "" .SH "NAME" \fBnpm-removal\fR \- Cleaning the Slate .SH SYNOPSIS diff --git a/deps/npm/man/man7/semver.7 b/deps/npm/man/man7/semver.7 index 60f62c7e23d013..2c0a8f4114cbfd 100644 --- a/deps/npm/man/man7/semver.7 +++ b/deps/npm/man/man7/semver.7 @@ -1,4 +1,4 @@ -.TH "SEMVER" "7" "January 2019" "" "" +.TH "SEMVER" "7" "February 2019" "" "" .SH "NAME" \fBsemver\fR \- The semantic versioner for npm .SH Install diff --git a/deps/npm/node_modules/builtin-modules/builtin-modules.json b/deps/npm/node_modules/builtin-modules/builtin-modules.json deleted file mode 100644 index 72670f6bf5cf54..00000000000000 --- a/deps/npm/node_modules/builtin-modules/builtin-modules.json +++ /dev/null @@ -1,35 +0,0 @@ -[ - "assert", - "buffer", - "child_process", - "cluster", - "console", - "constants", - "crypto", - "dgram", - "dns", - "domain", - "events", - "fs", - "http", - "https", - "module", - "net", - "os", - "path", - "process", - "punycode", - "querystring", - "readline", - "repl", - "stream", - "string_decoder", - "timers", - "tls", - "tty", - "url", - "util", - "v8", - "vm", - "zlib" -] diff --git a/deps/npm/node_modules/builtin-modules/index.js b/deps/npm/node_modules/builtin-modules/index.js deleted file mode 100644 index 9ef35ab0694e73..00000000000000 --- a/deps/npm/node_modules/builtin-modules/index.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -var blacklist = [ - 'freelist', - 'sys' -]; - -module.exports = Object.keys(process.binding('natives')).filter(function (el) { - return !/^_|^internal|\//.test(el) && blacklist.indexOf(el) === -1; -}).sort(); diff --git a/deps/npm/node_modules/builtin-modules/license b/deps/npm/node_modules/builtin-modules/license deleted file mode 100644 index 654d0bfe943437..00000000000000 --- a/deps/npm/node_modules/builtin-modules/license +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) Sindre Sorhus (sindresorhus.com) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/deps/npm/node_modules/builtin-modules/package.json b/deps/npm/node_modules/builtin-modules/package.json deleted file mode 100644 index f5a40cac567270..00000000000000 --- a/deps/npm/node_modules/builtin-modules/package.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "_from": "builtin-modules@^1.0.0", - "_id": "builtin-modules@1.1.1", - "_inBundle": false, - "_integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "_location": "/builtin-modules", - "_phantomChildren": {}, - "_requested": { - "type": "range", - "registry": true, - "raw": "builtin-modules@^1.0.0", - "name": "builtin-modules", - "escapedName": "builtin-modules", - "rawSpec": "^1.0.0", - "saveSpec": null, - "fetchSpec": "^1.0.0" - }, - "_requiredBy": [ - "/eslint-plugin-import", - "/is-builtin-module" - ], - "_resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "_shasum": "270f076c5a72c02f5b65a47df94c5fe3a278892f", - "_spec": "builtin-modules@^1.0.0", - "_where": "/Users/rebecca/code/npm/node_modules/is-builtin-module", - "author": { - "name": "Sindre Sorhus", - "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" - }, - "bugs": { - "url": "https://github.com/sindresorhus/builtin-modules/issues" - }, - "bundleDependencies": false, - "deprecated": false, - "description": "List of the Node.js builtin modules", - "devDependencies": { - "ava": "*", - "xo": "*" - }, - "engines": { - "node": ">=0.10.0" - }, - "files": [ - "index.js", - "static.js", - "builtin-modules.json" - ], - "homepage": "https://github.com/sindresorhus/builtin-modules#readme", - "keywords": [ - "builtin", - "built-in", - "builtins", - "node", - "modules", - "core", - "bundled", - "list", - "array", - "names" - ], - "license": "MIT", - "name": "builtin-modules", - "repository": { - "type": "git", - "url": "git+https://github.com/sindresorhus/builtin-modules.git" - }, - "scripts": { - "make": "node make.js", - "test": "xo && ava" - }, - "version": "1.1.1" -} diff --git a/deps/npm/node_modules/builtin-modules/readme.md b/deps/npm/node_modules/builtin-modules/readme.md deleted file mode 100644 index f1894b1896530b..00000000000000 --- a/deps/npm/node_modules/builtin-modules/readme.md +++ /dev/null @@ -1,41 +0,0 @@ -# builtin-modules [![Build Status](https://travis-ci.org/sindresorhus/builtin-modules.svg?branch=master)](https://travis-ci.org/sindresorhus/builtin-modules) - -> List of the Node.js builtin modules - -The list is just a [JSON file](builtin-modules.json) and can be used wherever. - - -## Install - -``` -$ npm install --save builtin-modules -``` - - -## Usage - -```js -var builtinModules = require('builtin-modules'); - -console.log(builinModules); -//=> ['assert', 'buffer', ...] -``` - - -## API - -Returns an array of builtin modules fetched from the running Node.js version. - -### Static list - -This module also comes bundled with a static array of builtin modules generated from the latest Node.js version. You can get it with `require('builtin-modules/static');` - - -## Related - -- [is-builtin-module](https://github.com/sindresorhus/is-builtin-module) - Check if a string matches the name of a Node.js builtin module - - -## License - -MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/deps/npm/node_modules/builtin-modules/static.js b/deps/npm/node_modules/builtin-modules/static.js deleted file mode 100644 index 9508f8f4ec4212..00000000000000 --- a/deps/npm/node_modules/builtin-modules/static.js +++ /dev/null @@ -1,2 +0,0 @@ -'use strict'; -module.exports = require('./builtin-modules.json'); diff --git a/deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54942.json b/deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54942.json new file mode 100644 index 00000000000000..9e26dfeeb6e641 --- /dev/null +++ b/deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54942.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54944.json b/deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54944.json new file mode 100644 index 00000000000000..3ce72e597b1cd3 --- /dev/null +++ b/deps/npm/node_modules/cacache/node_modules/unique-filename/.nyc_output/54944.json @@ -0,0 +1 @@ +{"./index.js":{"path":"./index.js","s":{"1":1,"2":1,"3":1,"4":6},"b":{"1":[4,2]},"f":{"1":6},"fnMap":{"1":{"name":"(anonymous_1)","line":6,"loc":{"start":{"line":6,"column":17},"end":{"line":6,"column":51}}}},"statementMap":{"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":26}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":39}},"3":{"start":{"line":6,"column":0},"end":{"line":8,"column":1}},"4":{"start":{"line":7,"column":2},"end":{"line":7,"column":77}}},"branchMap":{"1":{"line":7,"type":"cond-expr","locations":[{"start":{"line":7,"column":39},"end":{"line":7,"column":51}},{"start":{"line":7,"column":54},"end":{"line":7,"column":56}}]}}}} \ No newline at end of file diff --git a/deps/npm/node_modules/debug/.eslintrc b/deps/npm/node_modules/debug/.eslintrc new file mode 100644 index 00000000000000..146371edbe3251 --- /dev/null +++ b/deps/npm/node_modules/debug/.eslintrc @@ -0,0 +1,14 @@ +{ + "env": { + "browser": true, + "node": true + }, + "globals": { + "chrome": true + }, + "rules": { + "no-console": 0, + "no-empty": [1, { "allowEmptyCatch": true }] + }, + "extends": "eslint:recommended" +} diff --git a/deps/npm/node_modules/errno/.jshintrc b/deps/npm/node_modules/errno/.jshintrc new file mode 100644 index 00000000000000..c8ef3ca4097f82 --- /dev/null +++ b/deps/npm/node_modules/errno/.jshintrc @@ -0,0 +1,59 @@ +{ + "predef": [ ] + , "bitwise": false + , "camelcase": false + , "curly": false + , "eqeqeq": false + , "forin": false + , "immed": false + , "latedef": false + , "noarg": true + , "noempty": true + , "nonew": true + , "plusplus": false + , "quotmark": true + , "regexp": false + , "undef": true + , "unused": true + , "strict": false + , "trailing": true + , "maxlen": 120 + , "asi": true + , "boss": true + , "debug": true + , "eqnull": true + , "esnext": true + , "evil": true + , "expr": true + , "funcscope": false + , "globalstrict": false + , "iterator": false + , "lastsemic": true + , "laxbreak": true + , "laxcomma": true + , "loopfunc": true + , "multistr": false + , "onecase": false + , "proto": false + , "regexdash": false + , "scripturl": true + , "smarttabs": false + , "shadow": false + , "sub": true + , "supernew": false + , "validthis": true + , "browser": true + , "couch": false + , "devel": false + , "dojo": false + , "mootools": false + , "node": true + , "nonstandard": true + , "prototypejs": false + , "rhino": false + , "worker": true + , "wsh": false + , "nomen": false + , "onevar": false + , "passfail": false +} \ No newline at end of file diff --git a/deps/npm/node_modules/extend/.eslintrc b/deps/npm/node_modules/extend/.eslintrc new file mode 100644 index 00000000000000..a34cf2831b7c38 --- /dev/null +++ b/deps/npm/node_modules/extend/.eslintrc @@ -0,0 +1,17 @@ +{ + "root": true, + + "extends": "@ljharb", + + "rules": { + "complexity": [2, 20], + "eqeqeq": [2, "allow-null"], + "func-name-matching": [1], + "max-depth": [1, 4], + "max-statements": [2, 26], + "no-extra-parens": [1], + "no-magic-numbers": [0], + "no-restricted-syntax": [2, "BreakStatement", "ContinueStatement", "DebuggerStatement", "LabeledStatement", "WithStatement"], + "sort-keys": [0], + } +} diff --git a/deps/npm/node_modules/ip/.jshintrc b/deps/npm/node_modules/ip/.jshintrc new file mode 100644 index 00000000000000..7e973902952b91 --- /dev/null +++ b/deps/npm/node_modules/ip/.jshintrc @@ -0,0 +1,89 @@ +{ + // JSHint Default Configuration File (as on JSHint website) + // See http://jshint.com/docs/ for more details + + "maxerr" : 50, // {int} Maximum error before stopping + + // Enforcing + "bitwise" : false, // true: Prohibit bitwise operators (&, |, ^, etc.) + "camelcase" : false, // true: Identifiers must be in camelCase + "curly" : false, // true: Require {} for every new block or scope + "eqeqeq" : true, // true: Require triple equals (===) for comparison + "forin" : true, // true: Require filtering for..in loops with obj.hasOwnProperty() + "freeze" : true, // true: prohibits overwriting prototypes of native objects such as Array, Date etc. + "immed" : false, // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());` + "indent" : 2, // {int} Number of spaces to use for indentation + "latedef" : true, // true: Require variables/functions to be defined before being used + "newcap" : true, // true: Require capitalization of all constructor functions e.g. `new F()` + "noarg" : true, // true: Prohibit use of `arguments.caller` and `arguments.callee` + "noempty" : false, // true: Prohibit use of empty blocks + "nonbsp" : true, // true: Prohibit "non-breaking whitespace" characters. + "nonew" : false, // true: Prohibit use of constructors for side-effects (without assignment) + "plusplus" : false, // true: Prohibit use of `++` & `--` + "quotmark" : "single", // Quotation mark consistency: + // false : do nothing (default) + // true : ensure whatever is used is consistent + // "single" : require single quotes + // "double" : require double quotes + "undef" : true, // true: Require all non-global variables to be declared (prevents global leaks) + "unused" : true, // true: Require all defined variables be used + "strict" : true, // true: Requires all functions run in ES5 Strict Mode + "maxparams" : false, // {int} Max number of formal params allowed per function + "maxdepth" : 3, // {int} Max depth of nested blocks (within functions) + "maxstatements" : false, // {int} Max number statements per function + "maxcomplexity" : false, // {int} Max cyclomatic complexity per function + "maxlen" : false, // {int} Max number of characters per line + + // Relaxing + "asi" : false, // true: Tolerate Automatic Semicolon Insertion (no semicolons) + "boss" : false, // true: Tolerate assignments where comparisons would be expected + "debug" : false, // true: Allow debugger statements e.g. browser breakpoints. + "eqnull" : false, // true: Tolerate use of `== null` + "es5" : false, // true: Allow ES5 syntax (ex: getters and setters) + "esnext" : false, // true: Allow ES.next (ES6) syntax (ex: `const`) + "moz" : false, // true: Allow Mozilla specific syntax (extends and overrides esnext features) + // (ex: `for each`, multiple try/catch, function expression…) + "evil" : false, // true: Tolerate use of `eval` and `new Function()` + "expr" : false, // true: Tolerate `ExpressionStatement` as Programs + "funcscope" : false, // true: Tolerate defining variables inside control statements + "globalstrict" : false, // true: Allow global "use strict" (also enables 'strict') + "iterator" : false, // true: Tolerate using the `__iterator__` property + "lastsemic" : false, // true: Tolerate omitting a semicolon for the last statement of a 1-line block + "laxbreak" : false, // true: Tolerate possibly unsafe line breakings + "laxcomma" : false, // true: Tolerate comma-first style coding + "loopfunc" : false, // true: Tolerate functions being defined in loops + "multistr" : false, // true: Tolerate multi-line strings + "noyield" : false, // true: Tolerate generator functions with no yield statement in them. + "notypeof" : false, // true: Tolerate invalid typeof operator values + "proto" : false, // true: Tolerate using the `__proto__` property + "scripturl" : false, // true: Tolerate script-targeted URLs + "shadow" : true, // true: Allows re-define variables later in code e.g. `var x=1; x=2;` + "sub" : false, // true: Tolerate using `[]` notation when it can still be expressed in dot notation + "supernew" : false, // true: Tolerate `new function () { ... };` and `new Object;` + "validthis" : false, // true: Tolerate using this in a non-constructor function + + // Environments + "browser" : true, // Web Browser (window, document, etc) + "browserify" : true, // Browserify (node.js code in the browser) + "couch" : false, // CouchDB + "devel" : true, // Development/debugging (alert, confirm, etc) + "dojo" : false, // Dojo Toolkit + "jasmine" : false, // Jasmine + "jquery" : false, // jQuery + "mocha" : true, // Mocha + "mootools" : false, // MooTools + "node" : true, // Node.js + "nonstandard" : false, // Widely adopted globals (escape, unescape, etc) + "prototypejs" : false, // Prototype and Scriptaculous + "qunit" : false, // QUnit + "rhino" : false, // Rhino + "shelljs" : false, // ShellJS + "worker" : false, // Web Workers + "wsh" : false, // Windows Scripting Host + "yui" : false, // Yahoo User Interface + + // Custom Globals + "globals" : { + "module": true + } // additional predefined global variables +} diff --git a/deps/npm/node_modules/is-builtin-module/index.js b/deps/npm/node_modules/is-builtin-module/index.js deleted file mode 100644 index b6cfa616ae85cf..00000000000000 --- a/deps/npm/node_modules/is-builtin-module/index.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -var builtinModules = require('builtin-modules'); - -module.exports = function (str) { - if (typeof str !== 'string') { - throw new TypeError('Expected a string'); - } - - return builtinModules.indexOf(str) !== -1; -}; diff --git a/deps/npm/node_modules/is-builtin-module/package.json b/deps/npm/node_modules/is-builtin-module/package.json deleted file mode 100644 index d1cd899d9ad65d..00000000000000 --- a/deps/npm/node_modules/is-builtin-module/package.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "_from": "is-builtin-module@^1.0.0", - "_id": "is-builtin-module@1.0.0", - "_inBundle": false, - "_integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "_location": "/is-builtin-module", - "_phantomChildren": {}, - "_requested": { - "type": "range", - "registry": true, - "raw": "is-builtin-module@^1.0.0", - "name": "is-builtin-module", - "escapedName": "is-builtin-module", - "rawSpec": "^1.0.0", - "saveSpec": null, - "fetchSpec": "^1.0.0" - }, - "_requiredBy": [ - "/normalize-package-data" - ], - "_resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "_shasum": "540572d34f7ac3119f8f76c30cbc1b1e037affbe", - "_spec": "is-builtin-module@^1.0.0", - "_where": "/Users/rebecca/code/npm/node_modules/normalize-package-data", - "author": { - "name": "Sindre Sorhus", - "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" - }, - "bugs": { - "url": "https://github.com/sindresorhus/is-builtin-module/issues" - }, - "bundleDependencies": false, - "dependencies": { - "builtin-modules": "^1.0.0" - }, - "deprecated": false, - "description": "Check if a string matches the name of a Node.js builtin module", - "devDependencies": { - "ava": "0.0.4" - }, - "engines": { - "node": ">=0.10.0" - }, - "files": [ - "index.js" - ], - "homepage": "https://github.com/sindresorhus/is-builtin-module#readme", - "keywords": [ - "builtin", - "built-in", - "builtins", - "node", - "modules", - "core", - "bundled", - "list", - "array", - "names", - "is", - "detect", - "check", - "match" - ], - "license": "MIT", - "name": "is-builtin-module", - "repository": { - "type": "git", - "url": "git+https://github.com/sindresorhus/is-builtin-module.git" - }, - "scripts": { - "test": "node test.js" - }, - "version": "1.0.0" -} diff --git a/deps/npm/node_modules/is-builtin-module/readme.md b/deps/npm/node_modules/is-builtin-module/readme.md deleted file mode 100644 index 798dcf4371799b..00000000000000 --- a/deps/npm/node_modules/is-builtin-module/readme.md +++ /dev/null @@ -1,33 +0,0 @@ -# is-builtin-module [![Build Status](https://travis-ci.org/sindresorhus/is-builtin-module.svg?branch=master)](https://travis-ci.org/sindresorhus/is-builtin-module) - -> Check if a string matches the name of a Node.js builtin module - - -## Install - -``` -$ npm install --save is-builtin-module -``` - - -## Usage - -```js -var isBuiltinModule = require('is-builtin-module'); - -isBuiltinModule('fs'); -//=> true - -isBuiltinModule('unicorn'); -//=> false :( -``` - - -## Related - -- [builtin-modules](https://github.com/sindresorhus/builtin-modules) - List of the Node.js builtin modules - - -## License - -MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/deps/npm/node_modules/isstream/.jshintrc b/deps/npm/node_modules/isstream/.jshintrc new file mode 100644 index 00000000000000..c8ef3ca4097f82 --- /dev/null +++ b/deps/npm/node_modules/isstream/.jshintrc @@ -0,0 +1,59 @@ +{ + "predef": [ ] + , "bitwise": false + , "camelcase": false + , "curly": false + , "eqeqeq": false + , "forin": false + , "immed": false + , "latedef": false + , "noarg": true + , "noempty": true + , "nonew": true + , "plusplus": false + , "quotmark": true + , "regexp": false + , "undef": true + , "unused": true + , "strict": false + , "trailing": true + , "maxlen": 120 + , "asi": true + , "boss": true + , "debug": true + , "eqnull": true + , "esnext": true + , "evil": true + , "expr": true + , "funcscope": false + , "globalstrict": false + , "iterator": false + , "lastsemic": true + , "laxbreak": true + , "laxcomma": true + , "loopfunc": true + , "multistr": false + , "onecase": false + , "proto": false + , "regexdash": false + , "scripturl": true + , "smarttabs": false + , "shadow": false + , "sub": true + , "supernew": false + , "validthis": true + , "browser": true + , "couch": false + , "devel": false + , "dojo": false + , "mootools": false + , "node": true + , "nonstandard": true + , "prototypejs": false + , "rhino": false + , "worker": true + , "wsh": false + , "nomen": false + , "onevar": false + , "passfail": false +} \ No newline at end of file diff --git a/deps/npm/node_modules/mute-stream/.nyc_output/33508.json b/deps/npm/node_modules/mute-stream/.nyc_output/33508.json new file mode 100644 index 00000000000000..9e26dfeeb6e641 --- /dev/null +++ b/deps/npm/node_modules/mute-stream/.nyc_output/33508.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/deps/npm/node_modules/mute-stream/.nyc_output/33510.json b/deps/npm/node_modules/mute-stream/.nyc_output/33510.json new file mode 100644 index 00000000000000..1d04442328beff --- /dev/null +++ b/deps/npm/node_modules/mute-stream/.nyc_output/33510.json @@ -0,0 +1 @@ +{"./mute.js":{"path":"./mute.js","s":{"1":1,"2":1,"3":1,"4":7,"5":7,"6":7,"7":7,"8":7,"9":7,"10":7,"11":7,"12":1,"13":1,"14":1,"15":10,"16":1,"17":6,"18":1,"19":1,"20":5,"21":1,"22":1,"23":8,"24":1,"25":2,"26":1,"27":5,"28":1,"29":5,"30":1,"31":2,"32":2,"33":1,"34":2,"35":2,"36":1,"37":2,"38":2,"39":1,"40":25,"41":13,"42":5,"43":8,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":8,"51":0,"52":0,"53":0,"54":8,"55":20,"56":1,"57":2,"58":2,"59":0,"60":2,"61":2,"62":0,"63":2,"64":1,"65":3,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":1,"73":1,"74":1},"b":{"1":[7,5],"2":[7,7],"3":[3,5],"4":[3,2],"5":[4,1],"6":[0,1],"7":[4,1],"8":[0,1],"9":[2,0],"10":[2,0],"11":[13,12],"12":[5,8],"13":[0,8],"14":[0,0],"15":[0,8],"16":[8,0,0],"17":[2,0],"18":[0,2],"19":[2,1],"20":[0,2],"21":[0,0],"22":[0,0],"23":[0,0],"24":[0,0]},"f":{"1":7,"2":10,"3":6,"4":5,"5":8,"6":2,"7":5,"8":5,"9":2,"10":2,"11":2,"12":25,"13":2,"14":3,"15":0},"fnMap":{"1":{"name":"MuteStream","line":7,"loc":{"start":{"line":7,"column":0},"end":{"line":7,"column":27}}},"2":{"name":"(anonymous_2)","line":29,"loc":{"start":{"line":29,"column":28},"end":{"line":29,"column":40}}},"3":{"name":"(anonymous_3)","line":33,"loc":{"start":{"line":33,"column":30},"end":{"line":33,"column":42}}},"4":{"name":"onPipe","line":44,"loc":{"start":{"line":44,"column":0},"end":{"line":44,"column":22}}},"5":{"name":"getIsTTY","line":55,"loc":{"start":{"line":55,"column":0},"end":{"line":55,"column":21}}},"6":{"name":"setIsTTY","line":63,"loc":{"start":{"line":63,"column":0},"end":{"line":63,"column":26}}},"7":{"name":"(anonymous_7)","line":73,"loc":{"start":{"line":73,"column":7},"end":{"line":73,"column":19}}},"8":{"name":"(anonymous_8)","line":80,"loc":{"start":{"line":80,"column":7},"end":{"line":80,"column":19}}},"9":{"name":"(anonymous_9)","line":87,"loc":{"start":{"line":87,"column":28},"end":{"line":87,"column":53}}},"10":{"name":"(anonymous_10)","line":92,"loc":{"start":{"line":92,"column":29},"end":{"line":92,"column":41}}},"11":{"name":"(anonymous_11)","line":96,"loc":{"start":{"line":96,"column":30},"end":{"line":96,"column":42}}},"12":{"name":"(anonymous_12)","line":100,"loc":{"start":{"line":100,"column":29},"end":{"line":100,"column":42}}},"13":{"name":"(anonymous_13)","line":124,"loc":{"start":{"line":124,"column":27},"end":{"line":124,"column":40}}},"14":{"name":"proxy","line":136,"loc":{"start":{"line":136,"column":0},"end":{"line":136,"column":20}}},"15":{"name":"(anonymous_15)","line":136,"loc":{"start":{"line":136,"column":29},"end":{"line":136,"column":41}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":1,"column":30}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":27}},"3":{"start":{"line":7,"column":0},"end":{"line":20,"column":1}},"4":{"start":{"line":8,"column":2},"end":{"line":8,"column":20}},"5":{"start":{"line":9,"column":2},"end":{"line":9,"column":19}},"6":{"start":{"line":10,"column":2},"end":{"line":10,"column":38}},"7":{"start":{"line":11,"column":2},"end":{"line":11,"column":20}},"8":{"start":{"line":12,"column":2},"end":{"line":12,"column":31}},"9":{"start":{"line":13,"column":2},"end":{"line":13,"column":29}},"10":{"start":{"line":18,"column":2},"end":{"line":18,"column":36}},"11":{"start":{"line":19,"column":2},"end":{"line":19,"column":26}},"12":{"start":{"line":22,"column":0},"end":{"line":22,"column":54}},"13":{"start":{"line":24,"column":0},"end":{"line":27,"column":2}},"14":{"start":{"line":29,"column":0},"end":{"line":31,"column":1}},"15":{"start":{"line":30,"column":2},"end":{"line":30,"column":19}},"16":{"start":{"line":33,"column":0},"end":{"line":35,"column":1}},"17":{"start":{"line":34,"column":2},"end":{"line":34,"column":20}},"18":{"start":{"line":37,"column":0},"end":{"line":42,"column":2}},"19":{"start":{"line":44,"column":0},"end":{"line":46,"column":1}},"20":{"start":{"line":45,"column":2},"end":{"line":45,"column":17}},"21":{"start":{"line":48,"column":0},"end":{"line":53,"column":2}},"22":{"start":{"line":55,"column":0},"end":{"line":60,"column":1}},"23":{"start":{"line":56,"column":2},"end":{"line":59,"column":9}},"24":{"start":{"line":63,"column":0},"end":{"line":70,"column":1}},"25":{"start":{"line":64,"column":2},"end":{"line":69,"column":4}},"26":{"start":{"line":72,"column":0},"end":{"line":77,"column":44}},"27":{"start":{"line":74,"column":4},"end":{"line":76,"column":23}},"28":{"start":{"line":79,"column":0},"end":{"line":84,"column":44}},"29":{"start":{"line":81,"column":4},"end":{"line":83,"column":23}},"30":{"start":{"line":87,"column":0},"end":{"line":90,"column":1}},"31":{"start":{"line":88,"column":2},"end":{"line":88,"column":19}},"32":{"start":{"line":89,"column":2},"end":{"line":89,"column":56}},"33":{"start":{"line":92,"column":0},"end":{"line":94,"column":1}},"34":{"start":{"line":93,"column":2},"end":{"line":93,"column":41}},"35":{"start":{"line":93,"column":17},"end":{"line":93,"column":41}},"36":{"start":{"line":96,"column":0},"end":{"line":98,"column":1}},"37":{"start":{"line":97,"column":2},"end":{"line":97,"column":42}},"38":{"start":{"line":97,"column":17},"end":{"line":97,"column":42}},"39":{"start":{"line":100,"column":0},"end":{"line":122,"column":1}},"40":{"start":{"line":101,"column":2},"end":{"line":120,"column":3}},"41":{"start":{"line":102,"column":4},"end":{"line":102,"column":34}},"42":{"start":{"line":102,"column":23},"end":{"line":102,"column":34}},"43":{"start":{"line":103,"column":4},"end":{"line":119,"column":5}},"44":{"start":{"line":104,"column":6},"end":{"line":108,"column":7}},"45":{"start":{"line":105,"column":8},"end":{"line":105,"column":42}},"46":{"start":{"line":106,"column":8},"end":{"line":106,"column":42}},"47":{"start":{"line":107,"column":8},"end":{"line":107,"column":29}},"48":{"start":{"line":109,"column":6},"end":{"line":109,"column":29}},"49":{"start":{"line":110,"column":6},"end":{"line":110,"column":33}},"50":{"start":{"line":112,"column":6},"end":{"line":117,"column":7}},"51":{"start":{"line":114,"column":8},"end":{"line":114,"column":32}},"52":{"start":{"line":115,"column":8},"end":{"line":115,"column":39}},"53":{"start":{"line":116,"column":8},"end":{"line":116,"column":41}},"54":{"start":{"line":118,"column":6},"end":{"line":118,"column":50}},"55":{"start":{"line":121,"column":2},"end":{"line":121,"column":22}},"56":{"start":{"line":124,"column":0},"end":{"line":134,"column":1}},"57":{"start":{"line":125,"column":2},"end":{"line":131,"column":3}},"58":{"start":{"line":126,"column":4},"end":{"line":130,"column":5}},"59":{"start":{"line":127,"column":6},"end":{"line":127,"column":50}},"60":{"start":{"line":129,"column":6},"end":{"line":129,"column":14}},"61":{"start":{"line":132,"column":2},"end":{"line":132,"column":29}},"62":{"start":{"line":132,"column":9},"end":{"line":132,"column":29}},"63":{"start":{"line":133,"column":2},"end":{"line":133,"column":18}},"64":{"start":{"line":136,"column":0},"end":{"line":141,"column":2}},"65":{"start":{"line":136,"column":22},"end":{"line":141,"column":1}},"66":{"start":{"line":137,"column":2},"end":{"line":137,"column":20}},"67":{"start":{"line":138,"column":2},"end":{"line":138,"column":19}},"68":{"start":{"line":139,"column":2},"end":{"line":139,"column":43}},"69":{"start":{"line":139,"column":18},"end":{"line":139,"column":43}},"70":{"start":{"line":140,"column":2},"end":{"line":140,"column":43}},"71":{"start":{"line":140,"column":18},"end":{"line":140,"column":43}},"72":{"start":{"line":143,"column":0},"end":{"line":143,"column":47}},"73":{"start":{"line":144,"column":0},"end":{"line":144,"column":55}},"74":{"start":{"line":145,"column":0},"end":{"line":145,"column":43}}},"branchMap":{"1":{"line":9,"type":"binary-expr","locations":[{"start":{"line":9,"column":9},"end":{"line":9,"column":13}},{"start":{"line":9,"column":17},"end":{"line":9,"column":19}}]},"2":{"line":18,"type":"binary-expr","locations":[{"start":{"line":18,"column":17},"end":{"line":18,"column":28}},{"start":{"line":18,"column":32},"end":{"line":18,"column":36}}]},"3":{"line":56,"type":"cond-expr","locations":[{"start":{"line":56,"column":25},"end":{"line":56,"column":41}},{"start":{"line":57,"column":10},"end":{"line":58,"column":15}}]},"4":{"line":57,"type":"cond-expr","locations":[{"start":{"line":57,"column":24},"end":{"line":57,"column":39}},{"start":{"line":58,"column":10},"end":{"line":58,"column":15}}]},"5":{"line":74,"type":"cond-expr","locations":[{"start":{"line":74,"column":25},"end":{"line":74,"column":40}},{"start":{"line":75,"column":12},"end":{"line":76,"column":21}}]},"6":{"line":75,"type":"cond-expr","locations":[{"start":{"line":75,"column":24},"end":{"line":75,"column":38}},{"start":{"line":76,"column":12},"end":{"line":76,"column":21}}]},"7":{"line":81,"type":"cond-expr","locations":[{"start":{"line":81,"column":25},"end":{"line":81,"column":43}},{"start":{"line":82,"column":12},"end":{"line":83,"column":21}}]},"8":{"line":82,"type":"cond-expr","locations":[{"start":{"line":82,"column":24},"end":{"line":82,"column":41}},{"start":{"line":83,"column":12},"end":{"line":83,"column":21}}]},"9":{"line":93,"type":"if","locations":[{"start":{"line":93,"column":2},"end":{"line":93,"column":2}},{"start":{"line":93,"column":2},"end":{"line":93,"column":2}}]},"10":{"line":97,"type":"if","locations":[{"start":{"line":97,"column":2},"end":{"line":97,"column":2}},{"start":{"line":97,"column":2},"end":{"line":97,"column":2}}]},"11":{"line":101,"type":"if","locations":[{"start":{"line":101,"column":2},"end":{"line":101,"column":2}},{"start":{"line":101,"column":2},"end":{"line":101,"column":2}}]},"12":{"line":102,"type":"if","locations":[{"start":{"line":102,"column":4},"end":{"line":102,"column":4}},{"start":{"line":102,"column":4},"end":{"line":102,"column":4}}]},"13":{"line":103,"type":"if","locations":[{"start":{"line":103,"column":4},"end":{"line":103,"column":4}},{"start":{"line":103,"column":4},"end":{"line":103,"column":4}}]},"14":{"line":104,"type":"if","locations":[{"start":{"line":104,"column":6},"end":{"line":104,"column":6}},{"start":{"line":104,"column":6},"end":{"line":104,"column":6}}]},"15":{"line":112,"type":"if","locations":[{"start":{"line":112,"column":6},"end":{"line":112,"column":6}},{"start":{"line":112,"column":6},"end":{"line":112,"column":6}}]},"16":{"line":112,"type":"binary-expr","locations":[{"start":{"line":112,"column":10},"end":{"line":112,"column":22}},{"start":{"line":112,"column":26},"end":{"line":112,"column":42}},{"start":{"line":113,"column":10},"end":{"line":113,"column":39}}]},"17":{"line":125,"type":"if","locations":[{"start":{"line":125,"column":2},"end":{"line":125,"column":2}},{"start":{"line":125,"column":2},"end":{"line":125,"column":2}}]},"18":{"line":126,"type":"if","locations":[{"start":{"line":126,"column":4},"end":{"line":126,"column":4}},{"start":{"line":126,"column":4},"end":{"line":126,"column":4}}]},"19":{"line":126,"type":"binary-expr","locations":[{"start":{"line":126,"column":8},"end":{"line":126,"column":9}},{"start":{"line":126,"column":13},"end":{"line":126,"column":25}}]},"20":{"line":132,"type":"if","locations":[{"start":{"line":132,"column":2},"end":{"line":132,"column":2}},{"start":{"line":132,"column":2},"end":{"line":132,"column":2}}]},"21":{"line":139,"type":"if","locations":[{"start":{"line":139,"column":2},"end":{"line":139,"column":2}},{"start":{"line":139,"column":2},"end":{"line":139,"column":2}}]},"22":{"line":139,"type":"binary-expr","locations":[{"start":{"line":139,"column":6},"end":{"line":139,"column":7}},{"start":{"line":139,"column":11},"end":{"line":139,"column":16}}]},"23":{"line":140,"type":"if","locations":[{"start":{"line":140,"column":2},"end":{"line":140,"column":2}},{"start":{"line":140,"column":2},"end":{"line":140,"column":2}}]},"24":{"line":140,"type":"binary-expr","locations":[{"start":{"line":140,"column":6},"end":{"line":140,"column":7}},{"start":{"line":140,"column":11},"end":{"line":140,"column":16}}]}}}} \ No newline at end of file diff --git a/deps/npm/node_modules/node-gyp/.jshintrc b/deps/npm/node_modules/node-gyp/.jshintrc new file mode 100644 index 00000000000000..52475ba2e6c155 --- /dev/null +++ b/deps/npm/node_modules/node-gyp/.jshintrc @@ -0,0 +1,7 @@ +{ + "asi": true, + "laxcomma": true, + "es5": true, + "node": true, + "strict": false +} diff --git a/deps/npm/node_modules/normalize-package-data/README.md b/deps/npm/node_modules/normalize-package-data/README.md index 37727779739056..d2bd7bc7ff6062 100644 --- a/deps/npm/node_modules/normalize-package-data/README.md +++ b/deps/npm/node_modules/normalize-package-data/README.md @@ -94,7 +94,7 @@ If `version` field is given, the value of the version field must be a valid *sem ### Rules for license field -The `license` field should be a valid *SPDX license expression* or one of the special values allowed by [validate-npm-package-license](https://npmjs.com/packages/validate-npm-package-license). See [documentation for the license field in package.json](https://docs.npmjs.com/files/package.json#license). +The `license` field should be a valid *SPDX license expression* or one of the special values allowed by [validate-npm-package-license](https://npmjs.com/package/validate-npm-package-license). See [documentation for the license field in package.json](https://docs.npmjs.com/files/package.json#license). ## Credits diff --git a/deps/npm/node_modules/normalize-package-data/lib/fixer.js b/deps/npm/node_modules/normalize-package-data/lib/fixer.js index f070119674d2d3..27682e9611afd2 100644 --- a/deps/npm/node_modules/normalize-package-data/lib/fixer.js +++ b/deps/npm/node_modules/normalize-package-data/lib/fixer.js @@ -1,7 +1,7 @@ var semver = require("semver") var validateLicense = require('validate-npm-package-license'); var hostedGitInfo = require("hosted-git-info") -var isBuiltinModule = require("is-builtin-module") +var isBuiltinModule = require("resolve").isCore var depTypes = ["dependencies","devDependencies","optionalDependencies"] var extractDescription = require("./extract_description") var url = require("url") @@ -299,7 +299,8 @@ var fixer = module.exports = { } else{ if ( typeof(data.license) !== 'string' || - data.license.length < 1 + data.license.length < 1 || + data.license.trim() === '' ) { this.warn("invalidLicense") } else { diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.editorconfig b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.editorconfig new file mode 100644 index 00000000000000..bc228f8269443b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.editorconfig @@ -0,0 +1,20 @@ +root = true + +[*] +indent_style = tab +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 150 + +[CHANGELOG.md] +indent_style = space +indent_size = 2 + +[*.json] +max_line_length = off + +[Makefile] +max_line_length = off diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintignore b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintignore new file mode 100644 index 00000000000000..3c3629e647f5dd --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintignore @@ -0,0 +1 @@ +node_modules diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintrc b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintrc new file mode 100644 index 00000000000000..8b5748ab63b58d --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.eslintrc @@ -0,0 +1,31 @@ +{ + "extends": "@ljharb", + "root": true, + "rules": { + "array-bracket-newline": 0, + "array-element-newline": 0, + "indent": [2, 4], + "strict": 0, + "complexity": 0, + "consistent-return": 0, + "curly": 0, + "dot-notation": [2, { "allowKeywords": true }], + "func-name-matching": 0, + "func-style": 0, + "global-require": 0, + "id-length": [2, { "min": 1, "max": 30 }], + "max-lines-per-function": 0, + "max-nested-callbacks": 0, + "max-params": 0, + "max-statements-per-line": [2, { "max": 2 }], + "max-statements": 0, + "no-magic-numbers": 0, + "no-console": 0, + "no-shadow": 0, + "no-unused-vars": [2, { "vars": "all", "args": "none" }], + "no-use-before-define": 0, + "object-curly-newline": 0, + "operator-linebreak": [2, "before"], + "sort-keys": 0, + } +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.travis.yml b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.travis.yml new file mode 100644 index 00000000000000..768129d572eeb8 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/.travis.yml @@ -0,0 +1,269 @@ +language: node_js +os: + - linux +node_js: + - "11.6" + - "10.15" + - "9.11" + - "8.15" + - "7.10" + - "6.16" + - "5.12" + - "4.9" + - "iojs-v3.3" + - "iojs-v2.5" + - "iojs-v1.8" + - "0.12" + - "0.10" + - "0.8" + - "0.6" +before_install: + - 'case "${TRAVIS_NODE_VERSION}" in 0.*) export NPM_CONFIG_STRICT_SSL=false ;; esac' + - 'nvm install-latest-npm' +install: + - 'if [ "${TRAVIS_NODE_VERSION}" = "0.6" ] || [ "${TRAVIS_NODE_VERSION}" = "0.9" ]; then nvm install --latest-npm 0.8 && npm install && nvm use "${TRAVIS_NODE_VERSION}"; else npm install; fi;' +script: + - 'if [ -n "${PRETEST-}" ]; then npm run pretest ; fi' + - 'if [ -n "${POSTTEST-}" ]; then npm run posttest ; fi' + - 'if [ -n "${COVERAGE-}" ]; then npm run coverage ; fi' + - 'if [ -n "${TEST-}" ]; then npm run tests-only ; fi' +sudo: false +env: + - TEST=true +matrix: + fast_finish: true + include: + - node_js: "lts/*" + env: PRETEST=true + - node_js: "lts/*" + env: POSTTEST=true + - node_js: "11.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "11.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "11.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "11.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "11.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "11.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.14" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.13" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.12" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.11" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "10.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "9.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.14" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.13" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.12" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.11" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "8.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "7.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.15" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.14" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.13" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.12" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.11" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "6.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.11" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.10" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "5.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.8" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "4.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v3.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v3.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v3.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v2.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v2.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v2.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v2.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v2.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.7" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.6" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.5" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.4" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.3" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.2" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.1" + env: TEST=true ALLOW_FAILURE=true + - node_js: "iojs-v1.0" + env: TEST=true ALLOW_FAILURE=true + - node_js: "0.11" + env: TEST=true ALLOW_FAILURE=true + - node_js: "0.9" + env: TEST=true ALLOW_FAILURE=true + - node_js: "0.4" + env: TEST=true ALLOW_FAILURE=true + allow_failures: + - os: osx + - env: TEST=true ALLOW_FAILURE=true + - node_js: "0.6" diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/CHANGELOG.md b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/CHANGELOG.md new file mode 100644 index 00000000000000..832ee0272043e1 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/CHANGELOG.md @@ -0,0 +1,629 @@ +### Changelog + +All notable changes to this project will be documented in this file. Dates are displayed in UTC. + +#### [Unreleased](https://github.com/browserify/resolve/compare/v1.9.0...HEAD) + +- [Fix] `sync`/`async`: when package.json `main` is not a string, throw an error ([`#178`][]) +- [Tests] up to `v11.6`, `v10.15`, `v8.15`, `v6.16` (([`083e78c`][]) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` (([`29a4994`][]) +- [Tests] add an additional test (([`2c67936`][]) + +[`083e78c`]: https://github.com/browserify/resolve/commit/083e78c1ae5c1708b7d41c9ad7c608caffeddcbf +[`29a4994`]: https://github.com/browserify/resolve/commit/29a499418d54b5befe9deef1bc7c38a9174cfbd8 +[`2c67936`]: https://github.com/browserify/resolve/commit/2c679363e852f7a0d570593527ea7038f0cd2c19 + +#### [v1.9.0](https://github.com/browserify/resolve/compare/v1.8.1...v1.9.0) - 17 December 2018 + +- [Fix] `sync`/`async`: fix `preserveSymlinks` option ([`#177`][]) +- [Fix] `sync`/`async`: when package.json `main` is not a string, throw an error ([`#178`][]) +- [Refactor] `node-modules-paths`: Change `paths` function option to receive a thunk for node modules resolution paths (([`d652f01`][]) +- [Tests] up to `node` `v11.4`, `v10.14`, `v8.14`, `v6.15` (([`2b4f3a8`][]) +- [New] `async`/`sync`/`node-modules-paths`: Adds support for “paths” being a function (([`7112873`][]) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `object-keys`, `safe-publish-latest`, `tape` (([`5542700`][]) +- [New] Implements a "normalize-options" pseudo-hook (([`f3961df`][]) +- [Tests] better failure messages (([`f839d20`][]) +- [Deps] update `path-parse` (([`1018c0e`][]) + +[`d652f01`]: https://github.com/browserify/resolve/commit/d652f018b2561f4863ffcd0f3ecdb0dfe65ee223 +[`2b4f3a8`]: https://github.com/browserify/resolve/commit/2b4f3a898a3943e45cdff539b542c4ebee2b608a +[`7112873`]: https://github.com/browserify/resolve/commit/711287339aad544788a4b8b5335221cea645572c +[`5542700`]: https://github.com/browserify/resolve/commit/554270035e1997ae34865500c629888249baa304 +[`f3961df`]: https://github.com/browserify/resolve/commit/f3961dfcb7b2993d935c255e65309e7028a88b8d +[`f839d20`]: https://github.com/browserify/resolve/commit/f839d20ab16ef814214d80183452d02379cbbf15 +[`1018c0e`]: https://github.com/browserify/resolve/commit/1018c0e49851bfb62176d8adbc94125ae85cd158 + +#### [v1.8.1](https://github.com/browserify/resolve/compare/v1.8.0...v1.8.1) - 17 June 2018 + +- [Docs] clean up readme code (([`f5394d8`][]) +- [Fix] resolution when `filename` option is passed (([`9c370c9`][]) +- [Tests] up to `node` `v10.4` (([`3a64219`][]) +- [Tests] improve output of symlink tests that fail on Mac (([`6f771b2`][]) + +[`f5394d8`]: https://github.com/browserify/resolve/commit/f5394d801350ff32be08dfc5ca37bcb677b4c08b +[`9c370c9`]: https://github.com/browserify/resolve/commit/9c370c9848eaecb36fb8e0b004930e2dd49e1e71 +[`3a64219`]: https://github.com/browserify/resolve/commit/3a64219a7385d5d51f3d4ff7b3de0ce749d6cf09 +[`6f771b2`]: https://github.com/browserify/resolve/commit/6f771b215b4f40b0ba0009ef564bde85212e79eb + +#### [v1.8.0](https://github.com/browserify/resolve/compare/v1.7.1...v1.8.0) - 15 June 2018 + +- [New] include filename in error message ([`#162`][]) +- [Tests] up to `node` `v10.1`, `v9.11`, `v8.11`, `v6.14`, `4.9` (([`ad16af2`][]) +- Fix eslint problems and update count of tests (([`def5931`][]) +- [New] add fs/promises to the list of core modules (([`756419a`][]) +- [New] core: add `trace_events`, `v8/tools/arguments` (([`bae0338`][]) +- [Fix] core: `_tls_legacy` is removed in node 10 (([`4225ac5`][]) + +[`#162`]: https://github.com/browserify/resolve/pull/162 +[`ad16af2`]: https://github.com/browserify/resolve/commit/ad16af2f4f6eb1dc964f5b119f6d94bd64b2607a +[`def5931`]: https://github.com/browserify/resolve/commit/def59317704d787adcddc9695b923e65c6bf5232 +[`756419a`]: https://github.com/browserify/resolve/commit/756419a94432fd753a62f5a58b797776efb543f9 +[`bae0338`]: https://github.com/browserify/resolve/commit/bae033824c82153ccb4f32abdd0e70ca677968bc +[`4225ac5`]: https://github.com/browserify/resolve/commit/4225ac5f4b90d26db664ed32f5b08416fea69b86 + +#### [v1.7.1](https://github.com/browserify/resolve/compare/v1.7.0...v1.7.1) - 12 April 2018 + +- [Fix] revert proper but unintended breaking change in sync packageFilter ([`#157`][]) + +#### [v1.7.0](https://github.com/browserify/resolve/compare/v1.6.0...v1.7.0) - 7 April 2018 + +- [Fix] Make loadAsFileSync() work the same as async loadAsFile() ([`#146`][]) +- [Tests] add more pathfilter tests (([`c3621a3`][]) +- [Tests] add some tests for browser field (([`13fb572`][]) +- [Refactor] cache default isFile functions at module level (([`fa6e6f5`][]) +- [Docs] fix default “isFile” implementations (([`0f29c93`][]) +- [Tests] add some tests for a non-directory basedir (([`0c18e40`][]) +- [Refactor] use "basedir" instead of "y", because meaningful variable names (([`876b0b0`][]) +- [Docs] fix options formatting (([`23df5f5`][]) +- Minor cleanup (([`c449d48`][]) +- [Fix] support `opts.package` in non-relative lookups (([`c8a2052`][]) +- [Tests] work around npm SSL issue (([`04cb0bb`][]) +- [Tests] add node 8 and 9 to appveyor (([`7cbd17a`][]) +- [Tests] work around npm SSL issue (([`4b10996`][]) + +[`#146`]: https://github.com/browserify/resolve/pull/146 +[`c3621a3`]: https://github.com/browserify/resolve/commit/c3621a35675b275b2b241dd367459ed7afe1c22a +[`13fb572`]: https://github.com/browserify/resolve/commit/13fb572337623622d06450696af6c15b68be26c3 +[`fa6e6f5`]: https://github.com/browserify/resolve/commit/fa6e6f5a2d34377f6973701733177a280adf0511 +[`0f29c93`]: https://github.com/browserify/resolve/commit/0f29c93f0c74fc4e52ec6ed6678ce0fec6347e2d +[`0c18e40`]: https://github.com/browserify/resolve/commit/0c18e40e4929ba2c9426a77079c153c43e50a025 +[`876b0b0`]: https://github.com/browserify/resolve/commit/876b0b08da9fe44d81681d0c815900485536be9e +[`23df5f5`]: https://github.com/browserify/resolve/commit/23df5f526823e27e33b01333016b7f58b4f63b6f +[`c449d48`]: https://github.com/browserify/resolve/commit/c449d4809cf8461a3d54e458780902b95119a969 +[`c8a2052`]: https://github.com/browserify/resolve/commit/c8a20524c7d08671c22903e70b952575b0502f7b +[`04cb0bb`]: https://github.com/browserify/resolve/commit/04cb0bb94628e560bfa4163e73637d3803591714 +[`7cbd17a`]: https://github.com/browserify/resolve/commit/7cbd17ae270f9ec24ef05779c3a5e9da3e75c598 +[`4b10996`]: https://github.com/browserify/resolve/commit/4b1099668477e28117c34f9db3509ff096a49190 + +#### [v1.6.0](https://github.com/browserify/resolve/compare/v1.5.0...v1.6.0) - 20 March 2018 + +- [New] add `async_hooks` core module, added in node 8 ([`#144`][]) +- [New] add many missing core modules. (([`88c0778`][]) +- Made loadAsFileSync() work the same as async loadAsFile(). (([`dc23387`][]) +- [Tests] up to `v9.8`, `v8.10`, `v6.13` (([`315d729`][]) +- [Tests] up to `node` `v9.3`, `v8.8`, `v6.12`; pin included builds to LTS (([`5091aa2`][]) +- [Tests] add a failing test (([`90b1192`][]) +- [Dev Deps] update `eslint`, `tape` (([`2acf953`][]) +- [Tests] restore node 0.6 (([`2764758`][]) +- [Dev Deps] update `eslint` (([`699a54e`][]) +- [Dev Deps] update `eslint` (([`2674fad`][]) + +[`88c0778`]: https://github.com/browserify/resolve/commit/88c0778be359caaeb4ca74b24a7b5f7903bc39e8 +[`dc23387`]: https://github.com/browserify/resolve/commit/dc23387adb93f497d67def7ee99fae48e5958fb3 +[`315d729`]: https://github.com/browserify/resolve/commit/315d729afe7074ffae5d6ca6509a73d747985d45 +[`5091aa2`]: https://github.com/browserify/resolve/commit/5091aa2c076b67ff762937401e81da66ef7988ca +[`90b1192`]: https://github.com/browserify/resolve/commit/90b11921181c2783209e9aa31f1e20d98c11ed17 +[`2acf953`]: https://github.com/browserify/resolve/commit/2acf953ce2a94b38528372b5f8848ac95a2aabe5 +[`2764758`]: https://github.com/browserify/resolve/commit/2764758aae576aef98f41af5d46f76ada3523012 +[`699a54e`]: https://github.com/browserify/resolve/commit/699a54e91222dc8b3e1f0af8e9859c734d99d50a +[`2674fad`]: https://github.com/browserify/resolve/commit/2674fadcfcf2b253fdcf5e9d8564fd2b23b0b57c + +#### [v1.5.0](https://github.com/browserify/resolve/compare/v1.4.0...v1.5.0) - 24 October 2017 + +- [New] node v8.8+ supports `http2` ([`#139`][]) +- [Fix] fix broken core tests; change core.json to be an object instead of an array; fix results (([`b826f30`][]) +- [Tests] up to `v8.4`; node 0.6 is failing due to travis-ci changes; allow it to fail for now. (([`e9d3a24`][]) +- [Tests] up to `node` `8.7`; use `nvm install-latest-npm` so new npm doesn’t break old node (([`d0de222`][]) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` (([`76f28a3`][]) +- [Tests] on `node` `v8.8` (([`e0c5d51`][]) +- [Docs] update repo URL (([`3412f98`][]) +- [New] add `perf_hooks`, added in node v8.5 (([`e66117d`][]) +- [Dev Deps] update `eslint` (([`5bfb072`][]) + +[`b826f30`]: https://github.com/browserify/resolve/commit/b826f3007dc8903b95e39984f93c68bb5e4c85b9 +[`e9d3a24`]: https://github.com/browserify/resolve/commit/e9d3a24ae0a4d8e3eefc6431c918c23f7c8fc6d3 +[`d0de222`]: https://github.com/browserify/resolve/commit/d0de222e4b55b67224ddec0421ee66ce8cb5ee8d +[`76f28a3`]: https://github.com/browserify/resolve/commit/76f28a3d275a63b0511449d28900ab5749f27fa5 +[`e0c5d51`]: https://github.com/browserify/resolve/commit/e0c5d518abfaadc4107ca8f3f8c30caf46490444 +[`3412f98`]: https://github.com/browserify/resolve/commit/3412f984a03a345b9a5ef1f0642a0308d676a2c2 +[`e66117d`]: https://github.com/browserify/resolve/commit/e66117df49d9f967b46fde633770307c9d5a7066 +[`5bfb072`]: https://github.com/browserify/resolve/commit/5bfb072f152c77c8247f4c06c1efa9246bbdddb0 + +#### [v1.4.0](https://github.com/browserify/resolve/compare/v1.3.3...v1.4.0) - 26 July 2017 + +- [New]: add `preserveSymlinks` option ([`#130`][]) +- [Fix] `sync`: fix when package.json main = ‘.’ or main = ‘./‘ ([`#125`][]) +- [Tests] up to `node` `v8.2`, `v7.10`, `v6.11`; npm 4.6+ breaks on node < 4 (([`41a3604`][]) +- [Tests] fix 0.6 and linting (([`703517b`][]) +- Only apps should have lockfiles (([`11fb3d8`][]) +- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` (([`bc2f7bf`][]) + +[`41a3604`]: https://github.com/browserify/resolve/commit/41a3604f6408dbe9693febf895251db924c87a8f +[`703517b`]: https://github.com/browserify/resolve/commit/703517b78e7e0f8093a79c0a7a413a708ac82d06 +[`11fb3d8`]: https://github.com/browserify/resolve/commit/11fb3d85bb107a24476bd8d764ba25b3c60c184a +[`bc2f7bf`]: https://github.com/browserify/resolve/commit/bc2f7bf29d172fa54d66cf909fb47a858f7765aa + +#### [v1.3.3](https://github.com/browserify/resolve/compare/v1.3.2...v1.3.3) - 20 April 2017 + +- [Fix] error code MODULE_NOT_FOUND instead of ENOTDIR ([`#121`][]) +- [Tests] [eslint] add `npm run lint` (([`3677928`][]) +- [Tests] up to `node` `v7.7`, `v6.10`, `v4.8`; comment out OSX builds since they block linux builds. (([`1d3883c`][]) +- [Fix] correctly resolve dir paths when file with the same name exists (([`a983d38`][]) +- [Tests] up to `node` `v7.9` (([`0da055c`][]) +- [Tests] improve failure scenarios. (([`1de578f`][]) +- [Fix] `sync`: ensure that the path is a string, explicitly. (([`b7ba83d`][]) +- [Dev Deps] update `eslint` (([`452fdf9`][]) +- [Tests] node 0.6 can’t support an npm that understands scoped packages (([`26369cf`][]) + +[`3677928`]: https://github.com/browserify/resolve/commit/36779282881ec4abce32b2c9b7f7b10bcd09d953 +[`1d3883c`]: https://github.com/browserify/resolve/commit/1d3883c40d55242d7dfeafa43fa782dc6f4ab4a6 +[`a983d38`]: https://github.com/browserify/resolve/commit/a983d38c47ea26e57e0824f22929985ecb24faca +[`0da055c`]: https://github.com/browserify/resolve/commit/0da055cc75bebd7e0044cd4184e7c5386a7bd7de +[`1de578f`]: https://github.com/browserify/resolve/commit/1de578f2879f83ba94789041420fd3d3b929127e +[`b7ba83d`]: https://github.com/browserify/resolve/commit/b7ba83d43519c3c77af823ef1badd7f452d8b8e3 +[`452fdf9`]: https://github.com/browserify/resolve/commit/452fdf981330f96d7fef88805b24e40ea24a89e1 +[`26369cf`]: https://github.com/browserify/resolve/commit/26369cfe6ce4eae7404f3c003c88618f098d6814 + +#### [v1.3.2](https://github.com/browserify/resolve/compare/v1.2.1...v1.3.2) - 26 February 2017 + +- Fix prepublish script. (([`1aa1d9d`][]) + +[`1aa1d9d`]: https://github.com/browserify/resolve/commit/1aa1d9d9adc60691431efbde8d915c143cd54916 + +#### [v1.3.1](https://github.com/browserify/resolve/compare/v1.3.0...v1.3.1) - 24 February 2017 + +- Revert "[New] add searched extensions to error messages" (([`68a081d`][]) + +[`68a081d`]: https://github.com/browserify/resolve/commit/68a081d1c7ff6e0fb58aeff4b6ac06aada7812c4 + +#### [v1.3.0](https://github.com/browserify/resolve/compare/v1.2.0...v1.3.0) - 24 February 2017 + +#### [v1.2.1](https://github.com/browserify/resolve/compare/v1.3.1...v1.2.1) - 26 February 2017 + +- [Fix] for browserify compat, do not assume `process.versions.node` exists. ([`#120`][]) +- [Fix] for browserify compat, do not assume `process.versions.node` exists. ([`#120`][]) + +#### [v1.2.0](https://github.com/browserify/resolve/compare/v1.1.7...v1.2.0) - 13 December 2016 + +- [Fix] `resolve.sync` should re-throw non `ENOENT errors. ([`#79`][]) +- [New] add missing core modules, and determine them dynamically by node version. ([`#100`][][`#110`][][`#111`][][`#112`][]) +- [Tests] test on every minor version of node. ([`#109`][][`#75`][][`#74`][][`#70`][]) +- code style: tabs → spaces (([`0ab33b2`][]) +- [Dev Deps] add `safe-publish-latest` (([`83c25dd`][]) +- [Fix] Create error outside process.nextTick (([`3fa5f02`][]) +- readme: update API docs link for require.resolve() (([`7e98547`][]) +- [Dev Deps] update `tape` (([`764f3a2`][]) +- gitignore node_modules (([`3e8a8da`][]) + +[`0ab33b2`]: https://github.com/browserify/resolve/commit/0ab33b29b814e030021ff2df391e60a1c52dcc46 +[`83c25dd`]: https://github.com/browserify/resolve/commit/83c25dde8aa5a663bc3863d946fdc62fab5fd080 +[`3fa5f02`]: https://github.com/browserify/resolve/commit/3fa5f02f2ace0683fbd42196619c4e2bbd9eef60 +[`7e98547`]: https://github.com/browserify/resolve/commit/7e98547319f1dada4f26d7a24f3b92a08f85c56b +[`764f3a2`]: https://github.com/browserify/resolve/commit/764f3a231c26c370c4e6b94f0bb10166c20551b7 +[`3e8a8da`]: https://github.com/browserify/resolve/commit/3e8a8da3c9d545e00e15f5bed24623eb134b2221 + +#### [v1.1.7](https://github.com/browserify/resolve/compare/v1.1.6...v1.1.7) - 24 January 2016 + +- (typo) Change againt to against ([`#83`][]) +- Fix node_modules paths on Windows (([`35b2b64`][]) + +[`#83`]: https://github.com/browserify/resolve/pull/83 +[`35b2b64`]: https://github.com/browserify/resolve/commit/35b2b642d91e9b81e7cc26b6fd19912e18901d55 + +#### [v1.1.6](https://github.com/browserify/resolve/compare/v1.1.5...v1.1.6) - 15 March 2015 + +- Use path.dirname to walk up looking for a package.json ([`#76`][]) +- add back pkg assertions to pick up the root package (([`4c25e45`][]) + +[`4c25e45`]: https://github.com/browserify/resolve/commit/4c25e45625fea7980463fc107fc843aab7e0d993 + +#### [v1.1.5](https://github.com/browserify/resolve/compare/v1.1.4...v1.1.5) - 21 February 2015 + +- another test, not quite the failing case (([`612cac2`][]) +- fix for the failing case (([`503c746`][]) + +[`612cac2`]: https://github.com/browserify/resolve/commit/612cac2beac41fb13b7b12a9dfdb4207391260c1 +[`503c746`]: https://github.com/browserify/resolve/commit/503c746a6e64d50f2c9b18b4476ffcfed49947f2 + +#### [v1.1.4](https://github.com/browserify/resolve/compare/v1.1.3...v1.1.4) - 20 February 2015 + +- finally seems to fully handle browser field from outside foo/bar resolution (([`5b737d5`][]) +- flatter nodeModules function (([`5ebb39a`][]) + +[`5b737d5`]: https://github.com/browserify/resolve/commit/5b737d58b38ce891ef3f06d600d0562dbbc8539c +[`5ebb39a`]: https://github.com/browserify/resolve/commit/5ebb39a19b62c052ff6201600c3d2fffb3f5fdcb + +#### [v1.1.3](https://github.com/browserify/resolve/compare/v1.1.2...v1.1.3) - 17 February 2015 + +- re-implemented pathfilter feature nearly passes the test (([`60ff554`][]) +- another precedence test (([`98d22e0`][]) +- move pathfilter test to its own file (([`90826f5`][]) +- path logic fix that seems to handle all the cases across this package and browserify (([`70146a5`][]) +- tape everywhere (([`47bbfcd`][]) +- move pathfilter files into their own dir (([`7f0a3f1`][]) +- failing precedence test (([`73e958e`][]) +- nearly nearly working (([`e7bffbf`][]) +- packageFilter should have been giving the pkgfile as an argument, fixed (([`70b71e7`][]) +- this fixes the directory precedence problem (([`caca9f9`][]) +- disable faulty basedir test except on windows for now (([`3be4b79`][]) +- passes pathfilter test (([`644f814`][]) +- fix node_path test, was clearly wrong for some reason (([`9aa36e7`][]) + +[`60ff554`]: https://github.com/browserify/resolve/commit/60ff5545ec3cd15367c89c08cf3f139fa9c23796 +[`98d22e0`]: https://github.com/browserify/resolve/commit/98d22e0e21dd57fe1ab8d9573c1f63903c2b7321 +[`90826f5`]: https://github.com/browserify/resolve/commit/90826f575fe37cb3852de17e764b62e3754484b2 +[`70146a5`]: https://github.com/browserify/resolve/commit/70146a5ebc4d96438383ada02785d4e722c6f5d9 +[`47bbfcd`]: https://github.com/browserify/resolve/commit/47bbfcd9d9c8a68ce97fa37e0563930cee67093d +[`7f0a3f1`]: https://github.com/browserify/resolve/commit/7f0a3f1545f4b53f1bdd099b67561f9516693325 +[`73e958e`]: https://github.com/browserify/resolve/commit/73e958e905eed000787f0596f81c212ca2cdb3b3 +[`e7bffbf`]: https://github.com/browserify/resolve/commit/e7bffbf1b39b6239732c0e7fb01eeb9dad605d15 +[`70b71e7`]: https://github.com/browserify/resolve/commit/70b71e7980b3235018a0f5ac0bd52b8393548beb +[`caca9f9`]: https://github.com/browserify/resolve/commit/caca9f9c3576c85d8972d25012ea5d12aeaa50f4 +[`3be4b79`]: https://github.com/browserify/resolve/commit/3be4b796f1a9aadfb293b36c0c7f781ca9169f09 +[`644f814`]: https://github.com/browserify/resolve/commit/644f81478c892874f9829aa6cca36ca72474db00 +[`9aa36e7`]: https://github.com/browserify/resolve/commit/9aa36e77eca50e177498984fdef5d564903d3964 + +#### [v1.1.2](https://github.com/browserify/resolve/compare/v1.1.0...v1.1.2) - 16 February 2015 + +- Adding pathFilter docs ([`#67`][]) +- adding pathFilter docs (([`44480ff`][]) + +[`#67`]: https://github.com/browserify/resolve/pull/67 +[`44480ff`]: https://github.com/browserify/resolve/commit/44480ff041f791f32b80d212302180be210901a1 + +#### [v1.1.0](https://github.com/browserify/resolve/compare/v1.0.0...v1.1.0) - 27 January 2015 + +- Update docs re: input and cb args. ([`#65`][]) +- Update main README--change word order for clarity ([`#55`][]) +- attempts to find package.json data for deep references https://github.com/substack/node-resolve/issues/62 (([`caff2ba`][]) +- formatting (([`b8d09e3`][]) +- Add failing test for parent filename in error msg. (([`96d38c6`][]) +- split before computing the pivot to prevent abcnode_modulesxyz from matching (([`10380e1`][]) +- Utilize opts.filename when available to ID parent. (([`f6edcd9`][]) + +[`#65`]: https://github.com/browserify/resolve/pull/65 +[`#55`]: https://github.com/browserify/resolve/pull/55 +[`caff2ba`]: https://github.com/browserify/resolve/commit/caff2ba60dc5d85eaded388dc6025afd05ba183b +[`b8d09e3`]: https://github.com/browserify/resolve/commit/b8d09e3a2d679f6b61515d49eca3f6d8d0d2ac7f +[`96d38c6`]: https://github.com/browserify/resolve/commit/96d38c6aaa575d12781c28b34243b4939359a335 +[`10380e1`]: https://github.com/browserify/resolve/commit/10380e16d3cf03f25941c3f1545ef73ed11bc1e1 +[`f6edcd9`]: https://github.com/browserify/resolve/commit/f6edcd95ad5d27bfbdee0fa51951aa3d45d77cba + +### [v1.0.0](https://github.com/browserify/resolve/compare/v0.7.4...v1.0.0) - 11 August 2014 + +- reformat package.json (([`695bbc1`][]) + +[`695bbc1`]: https://github.com/browserify/resolve/commit/695bbc1d9eeb35339b4a01e141c6f6e1dff3a6e3 + +#### [v0.7.4](https://github.com/browserify/resolve/compare/v0.7.3...v0.7.4) - 25 July 2014 + +- merged (([`5cae82f`][]) + +[`5cae82f`]: https://github.com/browserify/resolve/commit/5cae82fb22cb64d5b72f703c787dc0fd418ed412 + +#### [v0.7.3](https://github.com/browserify/resolve/compare/v0.7.2...v0.7.3) - 25 July 2014 + +- cb(err) for non-string args (([`965c70b`][]) + +[`965c70b`]: https://github.com/browserify/resolve/commit/965c70b27ff796fc0ac3dba186d95b61d82446df + +#### [v0.7.2](https://github.com/browserify/resolve/compare/v0.7.1...v0.7.2) - 25 July 2014 + +- failing dotdot test (([`3ee0f0e`][]) +- fixes for dotdot tests (([`a67f230`][]) +- failing sync dotdot test (([`55515e7`][]) + +[`3ee0f0e`]: https://github.com/browserify/resolve/commit/3ee0f0eb97971d246a4a3f183374f60938f1ca8a +[`a67f230`]: https://github.com/browserify/resolve/commit/a67f230133050568ca14a04c0d36aaf6bf14fa89 +[`55515e7`]: https://github.com/browserify/resolve/commit/55515e7f816571fb9d71fdd6d0f012185b2eeefb + +#### [v0.7.1](https://github.com/browserify/resolve/compare/v0.7.0...v0.7.1) - 9 June 2014 + +- [Fix] `node-modules-paths`: `opts` should be optional, and `opts.paths` should not be concatenated when omitted. ([`#96`][]) +- [Refactor] consistent spacing and quotes; run some basic linting manually. (([`f63faaf`][]) +- [Tests] use `path.join` more often to normalize paths across OS’s. (([`8280c53`][]) +- [Tests] use `path` methods to make tests pass on both linux and Windows. (([`af9a885`][]) +- [Tests] make matrix more efficient (([`7f0ce87`][]) +- [Tests] fix indentation, manual linting. (([`6984dcb`][]) +- [Tests] [Refactor] refactor `node-modules-paths` and add tests. (([`58b99a3`][]) +- [Tests] add `appveyor` (([`caffe35`][]) +- [new] Add err.code = 'MODULE_NOT_FOUND' (([`c622aef`][]) +- [New] add searched extensions to error messages (([`1260d9d`][]) +- node-modules-paths: absolutize the `start` path (([`9d6b7af`][]) +- [Refactor] `async`: remove unnecessary slashes, since `path.join` adds them. (([`dd50615`][]) +- [Tests] ensure node_path test is independent of the `tap` module’s “main” (([`ddca9ed`][]) + +[`f63faaf`]: https://github.com/browserify/resolve/commit/f63faaf9df5dbd8da388c674de0b14e3286e5e91 +[`8280c53`]: https://github.com/browserify/resolve/commit/8280c53eae6b612f586e133052ed2b2a56ae6649 +[`af9a885`]: https://github.com/browserify/resolve/commit/af9a8858a618ab64dd4bb311ef1be37822ade2b7 +[`7f0ce87`]: https://github.com/browserify/resolve/commit/7f0ce871b6d2b5cb2082b04cd72ddd4055cb7a05 +[`6984dcb`]: https://github.com/browserify/resolve/commit/6984dcb1407fec6af46f744ad2c63f502645bdd6 +[`58b99a3`]: https://github.com/browserify/resolve/commit/58b99a36f882d7ee65df725224f204abd27379db +[`caffe35`]: https://github.com/browserify/resolve/commit/caffe358566bb3c2f9b4cbd8c0f910debfb6df3b +[`c622aef`]: https://github.com/browserify/resolve/commit/c622aefeb286e479d536601e30bb828e69f86ec3 +[`1260d9d`]: https://github.com/browserify/resolve/commit/1260d9d1e2f55efb514540db9aa1b3d679f9db10 +[`9d6b7af`]: https://github.com/browserify/resolve/commit/9d6b7af28c054676d6ea8a5037353ed750ea13bb +[`dd50615`]: https://github.com/browserify/resolve/commit/dd506158089f7d071d2a9f61cd4385365d177219 +[`ddca9ed`]: https://github.com/browserify/resolve/commit/ddca9ed7e1d980d5ec561450875cb09463effd5a + +#### [v0.7.0](https://github.com/browserify/resolve/compare/v0.6.3...v0.7.0) - 17 May 2014 + +- array opts.moduleDirectory tests (([`0f6d088`][]) +- opts.moduleDirectory string tests (([`a15ffd6`][]) +- Support more than one directory in opts.moduleDirectory. (([`4183463`][]) +- formatting (([`b89f089`][]) +- Remove variable leftover from 325584a685 (([`12fa78c`][]) + +[`0f6d088`]: https://github.com/browserify/resolve/commit/0f6d08801db6bc2044df8767226421172a2d9461 +[`a15ffd6`]: https://github.com/browserify/resolve/commit/a15ffd6c20772831c41146189c117ab0a0650e0b +[`4183463`]: https://github.com/browserify/resolve/commit/41834633e84d76d86297968ba34c375f26fe4f08 +[`b89f089`]: https://github.com/browserify/resolve/commit/b89f08902e8551e07d66e81a3dc33840e24266c5 +[`12fa78c`]: https://github.com/browserify/resolve/commit/12fa78ce43c4363e1c9600b635d18cd295c6949f + +#### [v0.6.3](https://github.com/browserify/resolve/compare/v0.6.2...v0.6.3) - 16 April 2014 + +- Fixed the case when main is specified as "." or "./" causing the resolve to infinite loop as documented at https://github.com/substack/node-browserify/issues/732. (([`b11f273`][]) + +[`b11f273`]: https://github.com/browserify/resolve/commit/b11f2739ad8c9730e1076271eff54850755e2ee1 + +#### [v0.6.2](https://github.com/browserify/resolve/compare/v0.6.1...v0.6.2) - 21 March 2014 + +- passing tests for paths (([`4f56bb6`][]) +- faulty basedir does not always produce error properly in windows, because when the dirs are sliced down the final path has improper prefix, causing it to load relative to cwd (([`110168a`][]) + +[`4f56bb6`]: https://github.com/browserify/resolve/commit/4f56bb67fa45d35adfa6a0022cc77afbf8117234 +[`110168a`]: https://github.com/browserify/resolve/commit/110168adae1dfbedcb9a12086cacf0ce68cc67f6 + +#### [v0.6.1](https://github.com/browserify/resolve/compare/v0.6.0...v0.6.1) - 27 November 2013 + +- merged the context error patches (([`8408e6e`][]) + +[`8408e6e`]: https://github.com/browserify/resolve/commit/8408e6e8902b4bec8c859d606f53366e42058378 + +#### [v0.6.0](https://github.com/browserify/resolve/compare/v0.5.1...v0.6.0) - 26 November 2013 + +- fixes #25: resolve modules with the same name as node stdlib modules ([`#25`][]) + +#### [v0.5.1](https://github.com/browserify/resolve/compare/v0.5.0...v0.5.1) - 22 September 2013 + +- Separate duplicated nodeModulesPaths function (([`325584a`][]) +- Fix prefix for windows azure (([`b5ba043`][]) + +[`325584a`]: https://github.com/browserify/resolve/commit/325584a685db8f42aae3d4876ffbe64069233601 +[`b5ba043`]: https://github.com/browserify/resolve/commit/b5ba0430b012d93367a4f87c304f1d4c8c22941c + +#### [v0.5.0](https://github.com/browserify/resolve/compare/v0.4.3...v0.5.0) - 2 September 2013 + +- opts.modules => opts.moduleDirectory, documented (([`c46593d`][]) +- modules folder name is configurable (([`d65a422`][]) + +[`c46593d`]: https://github.com/browserify/resolve/commit/c46593de74b256196d7ea12c85422698652cff10 +[`d65a422`]: https://github.com/browserify/resolve/commit/d65a42238101ea284ddafb788debdad0e5a59504 + +#### [v0.4.3](https://github.com/browserify/resolve/compare/v0.4.2...v0.4.3) - 7 August 2013 + +- Fix default basedir calculation (([`cd7169b`][]) +- use getCaller() in both async and sync versions (([`20f8945`][]) + +[`cd7169b`]: https://github.com/browserify/resolve/commit/cd7169b204b9f474b6a924adf47564f33a469f07 +[`20f8945`]: https://github.com/browserify/resolve/commit/20f89456f7fc1d8e51b95ec1ab38b1ac154d9fc4 + +#### [v0.4.2](https://github.com/browserify/resolve/compare/v0.4.1...v0.4.2) - 3 August 2013 + +- Failing test case for pkg.main pointing to a directory. (([`b57a75a`][]) +- Fix for failing test case where pkg.main points to directory. (([`8c4078c`][]) + +[`b57a75a`]: https://github.com/browserify/resolve/commit/b57a75aefc394ead20d54ed107741f1f7151b90f +[`8c4078c`]: https://github.com/browserify/resolve/commit/8c4078c9dd45c6a92f1f409d70aaccc95be3bfc6 + +#### [v0.4.1](https://github.com/browserify/resolve/compare/v0.4.0...v0.4.1) - 30 July 2013 + +- adding tests to reproduce the problem (([`ad3a477`][]) +- async resolve now falls back to 'index.js' if main field in package.json is incorrect (([`62a5726`][]) + +[`ad3a477`]: https://github.com/browserify/resolve/commit/ad3a4772ddd7187ff38cb56e00635b37a491e1fa +[`62a5726`]: https://github.com/browserify/resolve/commit/62a572635f21bf1c28360ea5c2238be62736429b + +#### [v0.4.0](https://github.com/browserify/resolve/compare/v0.3.1...v0.4.0) - 9 June 2013 + +- Implement async support for returning package a module was resolved from. (([`b7b2806`][]) +- Document package option. (([`7f84028`][]) + +[`b7b2806`]: https://github.com/browserify/resolve/commit/b7b28069acb7c749a2053dbb0c8d606515954694 +[`7f84028`]: https://github.com/browserify/resolve/commit/7f8402881b725938cfaf1d4835ec2fb6cee4862d + +#### [v0.3.1](https://github.com/browserify/resolve/compare/v0.3.0...v0.3.1) - 29 March 2013 + +- use isFIFO() instead to more narrowly target <() usage (([`790cdf5`][]) +- check !isDirectory() instead of isFile() so that <(echo "beep") inline bash fds work (([`c396065`][]) + +[`790cdf5`]: https://github.com/browserify/resolve/commit/790cdf5ab7c92bb146e8ace05ba0b26c5f51ffb3 +[`c396065`]: https://github.com/browserify/resolve/commit/c3960650f1a1417e52238011e08a6da2b0d9fee4 + +#### [v0.3.0](https://github.com/browserify/resolve/compare/v0.2.8...v0.3.0) - 19 February 2013 + +- failing translated async test with parameterized readFile on account of 3-arg form (([`7033bbb`][]) +- factor out .sync into lib/sync.js (([`ba7038a`][]) +- updated the docs for async (([`34a958e`][]) +- first async test passes (([`e427ca8`][]) +- sync parity with async tests (([`d1191a9`][]) +- stub out async (([`f4b02e3`][]) +- factor out core into lib/ (([`a800954`][]) +- synchronous example (([`3534992`][]) +- adapted async test (([`c9111d2`][]) +- async example (([`e1a9809`][]) +- fix for async parameterized readFile (([`2d4e80e`][]) +- drop 0.4, add 0.8 in travis (([`8a1ba59`][]) + +[`7033bbb`]: https://github.com/browserify/resolve/commit/7033bbb6e21ecfd13476ca8de247580aa2f97e7c +[`ba7038a`]: https://github.com/browserify/resolve/commit/ba7038a56d78212329b64287dfaf895b1a85cf2c +[`34a958e`]: https://github.com/browserify/resolve/commit/34a958e84b7fc4cdccd7b71f9a116027a6f3a123 +[`e427ca8`]: https://github.com/browserify/resolve/commit/e427ca85b7e3b1d01b05f94783b76516b8594a03 +[`d1191a9`]: https://github.com/browserify/resolve/commit/d1191a9958581a040f4f18b3aecdd50714bffc7a +[`f4b02e3`]: https://github.com/browserify/resolve/commit/f4b02e3bbf0c3b09f83cfb2b22b12b0f55afdf92 +[`a800954`]: https://github.com/browserify/resolve/commit/a80095482ef2d16425e6e12759c9735d89f7f50b +[`3534992`]: https://github.com/browserify/resolve/commit/3534992946294811d20aaf9857ee453078cbe828 +[`c9111d2`]: https://github.com/browserify/resolve/commit/c9111d293ab35fb611d9c65ea2f88ae8cf853f8e +[`e1a9809`]: https://github.com/browserify/resolve/commit/e1a98093094cded0a251ef36f4f2eb0adb280acb +[`2d4e80e`]: https://github.com/browserify/resolve/commit/2d4e80e139d01176bf70132bc80caed946cd6682 +[`8a1ba59`]: https://github.com/browserify/resolve/commit/8a1ba593ab924995a45099e164cc7b769c44e9a0 + +#### [v0.2.8](https://github.com/browserify/resolve/compare/v0.2.7...v0.2.8) - 18 February 2013 + +- add the domain module to .core (([`2979cde`][]) + +[`2979cde`]: https://github.com/browserify/resolve/commit/2979cdea615fe724de62d88cb221c1d1824d0f10 + +#### [v0.2.7](https://github.com/browserify/resolve/compare/v0.2.6...v0.2.7) - 18 February 2013 + +#### [v0.2.6](https://github.com/browserify/resolve/compare/v0.2.5...v0.2.6) - 18 February 2013 + +#### [v0.2.5](https://github.com/browserify/resolve/compare/v0.2.4...v0.2.5) - 18 February 2013 + +#### [v0.2.4](https://github.com/browserify/resolve/compare/v0.2.3...v0.2.4) - 18 February 2013 + +- resolve '../baz' correct (([`46fe923`][]) + +[`46fe923`]: https://github.com/browserify/resolve/commit/46fe923c20feeceac783e67cfa84d07222bc17fa + +#### [v0.2.3](https://github.com/browserify/resolve/compare/v0.2.2...v0.2.3) - 12 August 2012 + +- license file (([`a964396`][]) +- existsSync (([`d1c1012`][]) +- pass dir to packageFilter (([`3bea5b6`][]) +- pkg.main may be a directory (([`3521c2f`][]) +- Prioritize parent tree in nodeModulesPathsSync before fallback options.paths/ NODE_PATH equivalent, in accordance with http://nodejs.org/docs/latest/api/all.html#all_loading_from_the_global_folders (([`27fa227`][]) + +[`a964396`]: https://github.com/browserify/resolve/commit/a9643965438eb4fcb068a5876b317f516199879a +[`d1c1012`]: https://github.com/browserify/resolve/commit/d1c1012f14c50212ea49a9a1255c902f5ad6cb37 +[`3bea5b6`]: https://github.com/browserify/resolve/commit/3bea5b6475b39e7f4974d29c6fa1e8eb8b1589af +[`3521c2f`]: https://github.com/browserify/resolve/commit/3521c2f2b93234e5a50dc47598554a76589d6d8c +[`27fa227`]: https://github.com/browserify/resolve/commit/27fa22707e87738ddde61cb4ad90508cfe0d7755 + +#### [v0.2.2](https://github.com/browserify/resolve/compare/v0.2.1...v0.2.2) - 30 April 2012 + +- fix indentation (([`98fc4a5`][]) +- Updated to work with windows, tested on Windows 7 64-bit and OS X 10.6 (([`a6646cc`][]) +- bump for windows fixes (([`d67d595`][]) + +[`98fc4a5`]: https://github.com/browserify/resolve/commit/98fc4a50b68456d497a862b9c4e4e0a79570c770 +[`a6646cc`]: https://github.com/browserify/resolve/commit/a6646ccceb1a6c411d5b9dfdc97106c80d8a0a09 +[`d67d595`]: https://github.com/browserify/resolve/commit/d67d5959e1be31eb67d5b62e7050bff318572373 + +#### [v0.2.1](https://github.com/browserify/resolve/compare/v0.2.0...v0.2.1) - 12 April 2012 + +- now using tap (([`b625169`][]) +- using travis (([`30cc7b3`][]) +- split on multiple slashes (([`ebeafab`][]) +- fix splitting of paths to support windows as well (([`5e7e24b`][]) + +[`b625169`]: https://github.com/browserify/resolve/commit/b62516922eaaafe533806cd385017109ea057baa +[`30cc7b3`]: https://github.com/browserify/resolve/commit/30cc7b3af9299a0e08f34c314015a1395ef16ea3 +[`ebeafab`]: https://github.com/browserify/resolve/commit/ebeafab4a43c6ac4df7a8a7ee578629f81b7b9e7 +[`5e7e24b`]: https://github.com/browserify/resolve/commit/5e7e24bf11c48f14385886d7dd3661f786cc109b + +#### [v0.2.0](https://github.com/browserify/resolve/compare/v0.1.3...v0.2.0) - 25 February 2012 + +- updated the core list for 0.6.11 (([`12d4c16`][]) + +[`12d4c16`]: https://github.com/browserify/resolve/commit/12d4c164ef99bd35c13b0f566feaa70bc3560082 + +#### [v0.1.3](https://github.com/browserify/resolve/compare/v0.1.2...v0.1.3) - 14 December 2011 + +- bump (([`2dffd07`][]) +- Added readline to core modules (([`4ab55a2`][]) + +[`2dffd07`]: https://github.com/browserify/resolve/commit/2dffd072ce65b4aae4974e934ca5b58ec741f598 +[`4ab55a2`]: https://github.com/browserify/resolve/commit/4ab55a2d4eb95be2399fe94fd5d33879271b5a9f + +#### [v0.1.2](https://github.com/browserify/resolve/compare/v0.1.1...v0.1.2) - 31 October 2011 + +- Add opts.paths to list of node_modules directories (([`7bb6ef4`][]) +- bump (([`5e3fcc6`][]) + +[`7bb6ef4`]: https://github.com/browserify/resolve/commit/7bb6ef4a1805523169f30b6ea38776796a714c3a +[`5e3fcc6`]: https://github.com/browserify/resolve/commit/5e3fcc63cfec322779be5435820d3236e6d13dba + +#### [v0.1.1](https://github.com/browserify/resolve/compare/v0.1.0...v0.1.1) - 18 October 2011 + +- bump for windows paths (([`3fb86d0`][]) +- Added support for Windows-style paths. (([`638951e`][]) + +[`3fb86d0`]: https://github.com/browserify/resolve/commit/3fb86d07c77b09a7d6fa6d2a8b89432a070a6aa0 +[`638951e`]: https://github.com/browserify/resolve/commit/638951ed92fa4435d9752df30c3bcb9eb49573cd + +#### [v0.1.0](https://github.com/browserify/resolve/compare/v0.0.4...v0.1.0) - 3 October 2011 + +- passing mock test (([`030f0d3`][]) +- passing mock test with package.json (([`d2b19c8`][]) +- isFile and readFileSync as parameters (([`d30c22d`][]) +- doc updates and a minor bump for custom isFile and readFileSync params (([`b0af4c3`][]) + +[`030f0d3`]: https://github.com/browserify/resolve/commit/030f0d391e02558574bc673077fb1b4057f8358d +[`d2b19c8`]: https://github.com/browserify/resolve/commit/d2b19c893b7f8c63154c5b5ff2c419ffdc8baa0c +[`d30c22d`]: https://github.com/browserify/resolve/commit/d30c22d1e13b000016f2592d6d6f3489a2d29988 +[`b0af4c3`]: https://github.com/browserify/resolve/commit/b0af4c3ac1a51acf9995cb4e078bf5619f257952 + +#### [v0.0.4](https://github.com/browserify/resolve/compare/v0.0.3...v0.0.4) - 21 June 2011 + +- bump for packageFilter and a note in the docs (([`9fbb632`][]) +- new packageFilter option (([`c92c883`][]) + +[`9fbb632`]: https://github.com/browserify/resolve/commit/9fbb632a5c0c38641ed7c10399306a56651e0789 +[`c92c883`]: https://github.com/browserify/resolve/commit/c92c883bed3e50dd8ed9a2e1d4b9fefc9f3ced64 + +#### [v0.0.3](https://github.com/browserify/resolve/compare/v0.0.2...v0.0.3) - 20 June 2011 + +- custom extensions now work (([`502b6e9`][]) +- failing test for extensions (([`ce56f56`][]) +- bump and a note in the docs for extensions (([`2ad8287`][]) +- passing normalize test (([`055c7ce`][]) + +[`502b6e9`]: https://github.com/browserify/resolve/commit/502b6e9c8b9f258e5c943954467016e9c048fa0f +[`ce56f56`]: https://github.com/browserify/resolve/commit/ce56f56b4e1a5c1df495a7bf061fb0242103b4d8 +[`2ad8287`]: https://github.com/browserify/resolve/commit/2ad8287bc8b34929c2074a739410d08955ccdea7 +[`055c7ce`]: https://github.com/browserify/resolve/commit/055c7cea391ff0ce9cd8c585e8244f553b62f6e7 + +#### [v0.0.2](https://github.com/browserify/resolve/compare/v0.0.1...v0.0.2) - 19 June 2011 + +- failing biz test for going up and down the path directory (([`cf4f5a5`][]) +- don't stop on the first node_modules since that's going away in node anyhow, all tests pass again (([`9049abf`][]) + +[`cf4f5a5`]: https://github.com/browserify/resolve/commit/cf4f5a58d092124c517c55dd180559f5a444eb06 +[`9049abf`]: https://github.com/browserify/resolve/commit/9049abfb60cac49bb547b8ca02cc2617d406ff1a + +#### v0.0.1 + +- implementation seems to work but no tests yet (([`5218f01`][]) +- a package.json all up in this (([`4084043`][]) +- new resolve.{core,isCore} with tests and documentation, bump to 0.0.1 (([`a9ef081`][]) +- failing foo test (([`463b108`][]) +- readme before any code (([`7885443`][]) +- opts.path => opts.basedir, more descriptive I think (([`78010b1`][]) +- failing bar test (([`c40c5c1`][]) +- passing baz test to check package.json resolution (([`410635e`][]) +- a path.resolve() fixed the relative loads (([`dfef4b6`][]) +- passing the bar test after taking out the dirname() around y (([`eda2247`][]) +- trailing comma in the package.json (([`2032753`][]) + +[`5218f01`]: https://github.com/browserify/resolve/commit/5218f0106e78edce4cfb905d0ea4492ed3fd38af +[`4084043`]: https://github.com/browserify/resolve/commit/40840435a621120db78126c1792df7fdd0570703 +[`a9ef081`]: https://github.com/browserify/resolve/commit/a9ef081a4897e9882bf6bc6b31457c53b8d0fc0d +[`463b108`]: https://github.com/browserify/resolve/commit/463b108dd6e750196cba150348bd68397522c908 +[`7885443`]: https://github.com/browserify/resolve/commit/7885443d8a3dba7223b1bfca2d62cafc08a46436 +[`78010b1`]: https://github.com/browserify/resolve/commit/78010b1f91251447d1e74c6ac9cd0baebc6ddf60 +[`c40c5c1`]: https://github.com/browserify/resolve/commit/c40c5c14038acbe8bec91cf979d12382c2e6ddfe +[`410635e`]: https://github.com/browserify/resolve/commit/410635ef6226c030f74c4475e73724a01a102896 +[`dfef4b6`]: https://github.com/browserify/resolve/commit/dfef4b6185d02259c119a10c8a938e1ab148b140 +[`eda2247`]: https://github.com/browserify/resolve/commit/eda22479bd47c5d0b2e8a88851d9ffabbea2329c +[`2032753`]: https://github.com/browserify/resolve/commit/20327532053284676a269ec2441a87f16456fbf3 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/LICENSE b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/LICENSE new file mode 100644 index 00000000000000..ee27ba4b4412b0 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/LICENSE @@ -0,0 +1,18 @@ +This software is released under the MIT license: + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/appveyor.yml b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/appveyor.yml new file mode 100644 index 00000000000000..cc73cc18f084b2 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/appveyor.yml @@ -0,0 +1,47 @@ +version: 1.0.{build} +skip_branch_with_pr: true +build: off + +environment: + matrix: + - nodejs_version: "9" + - nodejs_version: "8" + - nodejs_version: "7" + - nodejs_version: "6" + - nodejs_version: "5" + - nodejs_version: "4" + - nodejs_version: "3" + - nodejs_version: "2" + - nodejs_version: "1" + - nodejs_version: "0.12" + - nodejs_version: "0.10" + - nodejs_version: "0.8" + - nodejs_version: "0.6" +matrix: + # fast_finish: true + allow_failures: + - nodejs_version: "0.8" + - nodejs_version: "0.6" + +platform: + - x86 + - x64 + +# Install scripts. (runs after repo cloning) +install: + # Get the latest stable version of Node.js or io.js + - ps: Install-Product node $env:nodejs_version $env:platform + - IF %nodejs_version% EQU 0.6 npm config set strict-ssl false && npm -g install npm@1.3 + - IF %nodejs_version% EQU 0.8 npm config set strict-ssl false && npm -g install npm@1.4.28 && npm install -g npm@4.5 + - set PATH=%APPDATA%\npm;%PATH% + #- IF %nodejs_version% NEQ 0.6 AND %nodejs_version% NEQ 0.8 npm -g install npm + # install modules + - npm install + +# Post-install test scripts. +test_script: + # Output useful info for debugging. + - node --version + - npm --version + # run tests + - npm run tests-only diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/changelog.hbs b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/changelog.hbs new file mode 100644 index 00000000000000..addd7816b3fdbd --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/changelog.hbs @@ -0,0 +1,36 @@ +### Changelog + +All notable changes to this project will be documented in this file. Dates are displayed in UTC. +{{#each releases}} + + {{#if href}} + ###{{#unless major}}#{{/unless}} [{{title}}]({{href}}){{#if tag}} - {{niceDate}}{{/if}} + {{else}} + #### {{title}} + {{/if}} + + {{#if summary}} + Summary: + {{summary}} + {{/if}} + + {{#each fixes}} + - {{{commit.subject}}} ({{#each fixes}}{{#if href}}[`#{{id}}`][]{{/if}}{{/each}}) + {{/each}} + {{#each merges}} + - {{{message}}}{{#if href}} ([`#{{id}}`][]){{/if}} + {{/each}} + {{#each commits}} + - {{#if breaking}}**Breaking change:** {{/if}}{{{subject}}}{{#if href}} (([`{{shorthash}}`][]){{/if}} + {{/each}} + + {{#each fixes}} +{{#if href}}[`#{{id}}`]: {{href}}{{/if}} + {{/each}} + {{#each merges}} +{{#if href}}[`#{{id}}`]: {{href}}{{/if}} + {{/each}} + {{#each commits}} +{{#if href}}[`{{shorthash}}`]: {{href}}{{/if}} + {{/each}} +{{/each}} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/async.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/async.js new file mode 100644 index 00000000000000..20e65dc281dbaa --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/async.js @@ -0,0 +1,5 @@ +var resolve = require('../'); +resolve('tap', { basedir: __dirname }, function (err, res) { + if (err) console.error(err); + else console.log(res); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/sync.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/sync.js new file mode 100644 index 00000000000000..54b2cc1004223d --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/example/sync.js @@ -0,0 +1,3 @@ +var resolve = require('../'); +var res = resolve.sync('tap', { basedir: __dirname }); +console.log(res); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/index.js new file mode 100644 index 00000000000000..eb6ba89e6c210c --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/index.js @@ -0,0 +1,8 @@ +var core = require('./lib/core'); +var async = require('./lib/async'); +async.core = core; +async.isCore = function isCore(x) { return core[x]; }; +async.sync = require('./lib/sync'); + +exports = async; +module.exports = async; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/async.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/async.js new file mode 100644 index 00000000000000..54211cc66e2d2d --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/async.js @@ -0,0 +1,229 @@ +var core = require('./core'); +var fs = require('fs'); +var path = require('path'); +var caller = require('./caller.js'); +var nodeModulesPaths = require('./node-modules-paths.js'); +var normalizeOptions = require('./normalize-options.js'); + +var defaultIsFile = function isFile(file, cb) { + fs.stat(file, function (err, stat) { + if (!err) { + return cb(null, stat.isFile() || stat.isFIFO()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); +}; + +module.exports = function resolve(x, options, callback) { + var cb = callback; + var opts = options; + if (typeof options === 'function') { + cb = opts; + opts = {}; + } + if (typeof x !== 'string') { + var err = new TypeError('Path must be a string.'); + return process.nextTick(function () { + cb(err); + }); + } + + opts = normalizeOptions(x, opts); + + var isFile = opts.isFile || defaultIsFile; + var readFile = opts.readFile || fs.readFile; + + var extensions = opts.extensions || ['.js']; + var basedir = opts.basedir || path.dirname(caller()); + var parent = opts.filename || basedir; + + opts.paths = opts.paths || []; + + // ensure that `basedir` is an absolute path at this point, resolving against the process' current working directory + var absoluteStart = path.resolve(basedir); + + if (opts.preserveSymlinks === false) { + fs.realpath(absoluteStart, function (realPathErr, realStart) { + if (realPathErr && realPathErr.code !== 'ENOENT') cb(err); + else init(realPathErr ? absoluteStart : realStart); + }); + } else { + init(absoluteStart); + } + + var res; + function init(basedir) { + if ((/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/).test(x)) { + res = path.resolve(basedir, x); + if (x === '..' || x.slice(-1) === '/') res += '/'; + if ((/\/$/).test(x) && res === basedir) { + loadAsDirectory(res, opts.package, onfile); + } else loadAsFile(res, opts.package, onfile); + } else loadNodeModules(x, basedir, function (err, n, pkg) { + if (err) cb(err); + else if (n) cb(null, n, pkg); + else if (core[x]) return cb(null, x); + else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = 'MODULE_NOT_FOUND'; + cb(moduleError); + } + }); + } + + function onfile(err, m, pkg) { + if (err) cb(err); + else if (m) cb(null, m, pkg); + else loadAsDirectory(res, function (err, d, pkg) { + if (err) cb(err); + else if (d) cb(null, d, pkg); + else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = 'MODULE_NOT_FOUND'; + cb(moduleError); + } + }); + } + + function loadAsFile(x, thePackage, callback) { + var loadAsFilePackage = thePackage; + var cb = callback; + if (typeof loadAsFilePackage === 'function') { + cb = loadAsFilePackage; + loadAsFilePackage = undefined; + } + + var exts = [''].concat(extensions); + load(exts, x, loadAsFilePackage); + + function load(exts, x, loadPackage) { + if (exts.length === 0) return cb(null, undefined, loadPackage); + var file = x + exts[0]; + + var pkg = loadPackage; + if (pkg) onpkg(null, pkg); + else loadpkg(path.dirname(file), onpkg); + + function onpkg(err, pkg_, dir) { + pkg = pkg_; + if (err) return cb(err); + if (dir && pkg && opts.pathFilter) { + var rfile = path.relative(dir, file); + var rel = rfile.slice(0, rfile.length - exts[0].length); + var r = opts.pathFilter(pkg, x, rel); + if (r) return load( + [''].concat(extensions.slice()), + path.resolve(dir, r), + pkg + ); + } + isFile(file, onex); + } + function onex(err, ex) { + if (err) return cb(err); + if (ex) return cb(null, file, pkg); + load(exts.slice(1), x, pkg); + } + } + } + + function loadpkg(dir, cb) { + if (dir === '' || dir === '/') return cb(null); + if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) { + return cb(null); + } + if ((/[/\\]node_modules[/\\]*$/).test(dir)) return cb(null); + + var pkgfile = path.join(dir, 'package.json'); + isFile(pkgfile, function (err, ex) { + // on err, ex is false + if (!ex) return loadpkg(path.dirname(dir), cb); + + readFile(pkgfile, function (err, body) { + if (err) cb(err); + try { var pkg = JSON.parse(body); } catch (jsonErr) {} + + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + cb(null, pkg, dir); + }); + }); + } + + function loadAsDirectory(x, loadAsDirectoryPackage, callback) { + var cb = callback; + var fpkg = loadAsDirectoryPackage; + if (typeof fpkg === 'function') { + cb = fpkg; + fpkg = opts.package; + } + + var pkgfile = path.join(x, 'package.json'); + isFile(pkgfile, function (err, ex) { + if (err) return cb(err); + if (!ex) return loadAsFile(path.join(x, 'index'), fpkg, cb); + + readFile(pkgfile, function (err, body) { + if (err) return cb(err); + try { + var pkg = JSON.parse(body); + } catch (jsonErr) {} + + if (opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + + if (pkg.main) { + if (typeof pkg.main !== 'string') { + var mainError = new TypeError('package “' + pkg.name + '” `main` must be a string'); + mainError.code = 'INVALID_PACKAGE_MAIN'; + return cb(mainError); + } + if (pkg.main === '.' || pkg.main === './') { + pkg.main = 'index'; + } + loadAsFile(path.resolve(x, pkg.main), pkg, function (err, m, pkg) { + if (err) return cb(err); + if (m) return cb(null, m, pkg); + if (!pkg) return loadAsFile(path.join(x, 'index'), pkg, cb); + + var dir = path.resolve(x, pkg.main); + loadAsDirectory(dir, pkg, function (err, n, pkg) { + if (err) return cb(err); + if (n) return cb(null, n, pkg); + loadAsFile(path.join(x, 'index'), pkg, cb); + }); + }); + return; + } + + loadAsFile(path.join(x, '/index'), pkg, cb); + }); + }); + } + + function processDirs(cb, dirs) { + if (dirs.length === 0) return cb(null, undefined); + var dir = dirs[0]; + + var file = path.join(dir, x); + loadAsFile(file, opts.package, onfile); + + function onfile(err, m, pkg) { + if (err) return cb(err); + if (m) return cb(null, m, pkg); + loadAsDirectory(path.join(dir, x), opts.package, ondir); + } + + function ondir(err, n, pkg) { + if (err) return cb(err); + if (n) return cb(null, n, pkg); + processDirs(cb, dirs.slice(1)); + } + } + function loadNodeModules(x, start, cb) { + processDirs(cb, nodeModulesPaths(start, opts, x)); + } +}; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/caller.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/caller.js new file mode 100644 index 00000000000000..b14a2804ae828a --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/caller.js @@ -0,0 +1,8 @@ +module.exports = function () { + // see https://code.google.com/p/v8/wiki/JavaScriptStackTraceApi + var origPrepareStackTrace = Error.prepareStackTrace; + Error.prepareStackTrace = function (_, stack) { return stack; }; + var stack = (new Error()).stack; + Error.prepareStackTrace = origPrepareStackTrace; + return stack[2].getFileName(); +}; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.js new file mode 100644 index 00000000000000..0877650ccad4e8 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.js @@ -0,0 +1,53 @@ +var current = (process.versions && process.versions.node && process.versions.node.split('.')) || []; + +function specifierIncluded(specifier) { + var parts = specifier.split(' '); + var op = parts.length > 1 ? parts[0] : '='; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split('.'); + + for (var i = 0; i < 3; ++i) { + var cur = Number(current[i] || 0); + var ver = Number(versionParts[i] || 0); + if (cur === ver) { + continue; // eslint-disable-line no-restricted-syntax, no-continue + } + if (op === '<') { + return cur < ver; + } else if (op === '>=') { + return cur >= ver; + } else { + return false; + } + } + return op === '>='; +} + +function matchesRange(range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { return false; } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(specifiers[i])) { return false; } + } + return true; +} + +function versionIncluded(specifierValue) { + if (typeof specifierValue === 'boolean') { return specifierValue; } + if (specifierValue && typeof specifierValue === 'object') { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(specifierValue[i])) { return true; } + } + return false; + } + return matchesRange(specifierValue); +} + +var data = require('./core.json'); + +var core = {}; +for (var mod in data) { // eslint-disable-line no-restricted-syntax + if (Object.prototype.hasOwnProperty.call(data, mod)) { + core[mod] = versionIncluded(data[mod]); + } +} +module.exports = core; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.json new file mode 100644 index 00000000000000..1575db31b0eb2f --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/core.json @@ -0,0 +1,73 @@ +{ + "assert": true, + "async_hooks": ">= 8", + "buffer_ieee754": "< 0.9.7", + "buffer": true, + "child_process": true, + "cluster": true, + "console": true, + "constants": true, + "crypto": true, + "_debugger": "< 8", + "dgram": true, + "dns": true, + "domain": true, + "events": true, + "freelist": "< 6", + "fs": true, + "fs/promises": ">= 10 && < 10.1", + "_http_agent": ">= 0.11.1", + "_http_client": ">= 0.11.1", + "_http_common": ">= 0.11.1", + "_http_incoming": ">= 0.11.1", + "_http_outgoing": ">= 0.11.1", + "_http_server": ">= 0.11.1", + "http": true, + "http2": ">= 8.8", + "https": true, + "inspector": ">= 8.0.0", + "_linklist": "< 8", + "module": true, + "net": true, + "node-inspect/lib/_inspect": ">= 7.6.0", + "node-inspect/lib/internal/inspect_client": ">= 7.6.0", + "node-inspect/lib/internal/inspect_repl": ">= 7.6.0", + "os": true, + "path": true, + "perf_hooks": ">= 8.5", + "process": ">= 1", + "punycode": true, + "querystring": true, + "readline": true, + "repl": true, + "smalloc": ">= 0.11.5 && < 3", + "_stream_duplex": ">= 0.9.4", + "_stream_transform": ">= 0.9.4", + "_stream_wrap": ">= 1.4.1", + "_stream_passthrough": ">= 0.9.4", + "_stream_readable": ">= 0.9.4", + "_stream_writable": ">= 0.9.4", + "stream": true, + "string_decoder": true, + "sys": true, + "timers": true, + "_tls_common": ">= 0.11.13", + "_tls_legacy": ">= 0.11.3 && < 10", + "_tls_wrap": ">= 0.11.3", + "tls": true, + "trace_events": ">= 10", + "tty": true, + "url": true, + "util": true, + "v8/tools/arguments": ">= 10", + "v8/tools/codemap": [">= 4.4.0 && < 5", ">= 5.2.0"], + "v8/tools/consarray": [">= 4.4.0 && < 5", ">= 5.2.0"], + "v8/tools/csvparser": [">= 4.4.0 && < 5", ">= 5.2.0"], + "v8/tools/logreader": [">= 4.4.0 && < 5", ">= 5.2.0"], + "v8/tools/profile_view": [">= 4.4.0 && < 5", ">= 5.2.0"], + "v8/tools/splaytree": [">= 4.4.0 && < 5", ">= 5.2.0"], + "v8": ">= 1", + "vm": true, + "worker_threads": ">= 11.7", + "zlib": true +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/node-modules-paths.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/node-modules-paths.js new file mode 100644 index 00000000000000..df50f48baf4304 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/node-modules-paths.js @@ -0,0 +1,42 @@ +var path = require('path'); +var parse = path.parse || require('path-parse'); + +var getNodeModulesDirs = function getNodeModulesDirs(absoluteStart, modules) { + var prefix = '/'; + if ((/^([A-Za-z]:)/).test(absoluteStart)) { + prefix = ''; + } else if ((/^\\\\/).test(absoluteStart)) { + prefix = '\\\\'; + } + + var paths = [absoluteStart]; + var parsed = parse(absoluteStart); + while (parsed.dir !== paths[paths.length - 1]) { + paths.push(parsed.dir); + parsed = parse(parsed.dir); + } + + return paths.reduce(function (dirs, aPath) { + return dirs.concat(modules.map(function (moduleDir) { + return path.join(prefix, aPath, moduleDir); + })); + }, []); +}; + +module.exports = function nodeModulesPaths(start, opts, request) { + var modules = opts && opts.moduleDirectory + ? [].concat(opts.moduleDirectory) + : ['node_modules']; + + if (opts && typeof opts.paths === 'function') { + return opts.paths( + request, + start, + function () { return getNodeModulesDirs(start, modules); }, + opts + ); + } + + var dirs = getNodeModulesDirs(start, modules); + return opts && opts.paths ? dirs.concat(opts.paths) : dirs; +}; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/normalize-options.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/normalize-options.js new file mode 100644 index 00000000000000..4b56904eaea72b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/normalize-options.js @@ -0,0 +1,10 @@ +module.exports = function (x, opts) { + /** + * This file is purposefully a passthrough. It's expected that third-party + * environments will override it at runtime in order to inject special logic + * into `resolve` (by manipulating the options). One such example is the PnP + * code path in Yarn. + */ + + return opts || {}; +}; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/sync.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/sync.js new file mode 100644 index 00000000000000..33ad5da2f69ac7 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/lib/sync.js @@ -0,0 +1,154 @@ +var core = require('./core'); +var fs = require('fs'); +var path = require('path'); +var caller = require('./caller.js'); +var nodeModulesPaths = require('./node-modules-paths.js'); +var normalizeOptions = require('./normalize-options.js'); + +var defaultIsFile = function isFile(file) { + try { + var stat = fs.statSync(file); + } catch (e) { + if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false; + throw e; + } + return stat.isFile() || stat.isFIFO(); +}; + +module.exports = function (x, options) { + if (typeof x !== 'string') { + throw new TypeError('Path must be a string.'); + } + var opts = normalizeOptions(x, options); + + var isFile = opts.isFile || defaultIsFile; + var readFileSync = opts.readFileSync || fs.readFileSync; + + var extensions = opts.extensions || ['.js']; + var basedir = opts.basedir || path.dirname(caller()); + var parent = opts.filename || basedir; + + opts.paths = opts.paths || []; + + // ensure that `basedir` is an absolute path at this point, resolving against the process' current working directory + var absoluteStart = path.resolve(basedir); + + if (opts.preserveSymlinks === false) { + try { + absoluteStart = fs.realpathSync(absoluteStart); + } catch (realPathErr) { + if (realPathErr.code !== 'ENOENT') { + throw realPathErr; + } + } + } + + if ((/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/).test(x)) { + var res = path.resolve(absoluteStart, x); + if (x === '..' || x.slice(-1) === '/') res += '/'; + var m = loadAsFileSync(res) || loadAsDirectorySync(res); + if (m) return m; + } else { + var n = loadNodeModulesSync(x, absoluteStart); + if (n) return n; + } + + if (core[x]) return x; + + var err = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + err.code = 'MODULE_NOT_FOUND'; + throw err; + + function loadAsFileSync(x) { + var pkg = loadpkg(path.dirname(x)); + + if (pkg && pkg.dir && pkg.pkg && opts.pathFilter) { + var rfile = path.relative(pkg.dir, x); + var r = opts.pathFilter(pkg.pkg, x, rfile); + if (r) { + x = path.resolve(pkg.dir, r); // eslint-disable-line no-param-reassign + } + } + + if (isFile(x)) { + return x; + } + + for (var i = 0; i < extensions.length; i++) { + var file = x + extensions[i]; + if (isFile(file)) { + return file; + } + } + } + + function loadpkg(dir) { + if (dir === '' || dir === '/') return; + if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) { + return; + } + if ((/[/\\]node_modules[/\\]*$/).test(dir)) return; + + var pkgfile = path.join(dir, 'package.json'); + + if (!isFile(pkgfile)) { + return loadpkg(path.dirname(dir)); + } + + var body = readFileSync(pkgfile); + + try { + var pkg = JSON.parse(body); + } catch (jsonErr) {} + + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, dir); + } + + return { pkg: pkg, dir: dir }; + } + + function loadAsDirectorySync(x) { + var pkgfile = path.join(x, '/package.json'); + if (isFile(pkgfile)) { + try { + var body = readFileSync(pkgfile, 'UTF8'); + var pkg = JSON.parse(body); + } catch (e) {} + + if (opts.packageFilter) { + pkg = opts.packageFilter(pkg, x); + } + + if (pkg.main) { + if (typeof pkg.main !== 'string') { + var mainError = new TypeError('package “' + pkg.name + '” `main` must be a string'); + mainError.code = 'INVALID_PACKAGE_MAIN'; + throw mainError; + } + if (pkg.main === '.' || pkg.main === './') { + pkg.main = 'index'; + } + try { + var m = loadAsFileSync(path.resolve(x, pkg.main)); + if (m) return m; + var n = loadAsDirectorySync(path.resolve(x, pkg.main)); + if (n) return n; + } catch (e) {} + } + } + + return loadAsFileSync(path.join(x, '/index')); + } + + function loadNodeModulesSync(x, start) { + var dirs = nodeModulesPaths(start, opts, x); + for (var i = 0; i < dirs.length; i++) { + var dir = dirs[i]; + var m = loadAsFileSync(path.join(dir, '/', x)); + if (m) return m; + var n = loadAsDirectorySync(path.join(dir, '/', x)); + if (n) return n; + } + } +}; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/package.json new file mode 100644 index 00000000000000..a736a535f19897 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/package.json @@ -0,0 +1,71 @@ +{ + "_from": "resolve@^1.10.0", + "_id": "resolve@1.10.0", + "_inBundle": false, + "_integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", + "_location": "/normalize-package-data/resolve", + "_phantomChildren": {}, + "_requested": { + "type": "range", + "registry": true, + "raw": "resolve@^1.10.0", + "name": "resolve", + "escapedName": "resolve", + "rawSpec": "^1.10.0", + "saveSpec": null, + "fetchSpec": "^1.10.0" + }, + "_requiredBy": [ + "/normalize-package-data" + ], + "_resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", + "_shasum": "3bdaaeaf45cc07f375656dfd2e54ed0810b101ba", + "_spec": "resolve@^1.10.0", + "_where": "/Users/aeschright/code/npm-release/node_modules/normalize-package-data", + "author": { + "name": "James Halliday", + "email": "mail@substack.net", + "url": "http://substack.net" + }, + "bugs": { + "url": "https://github.com/browserify/resolve/issues" + }, + "bundleDependencies": false, + "dependencies": { + "path-parse": "^1.0.6" + }, + "deprecated": false, + "description": "resolve like require.resolve() on behalf of files asynchronously and synchronously", + "devDependencies": { + "@ljharb/eslint-config": "^13.1.1", + "eslint": "^5.12.0", + "object-keys": "^1.0.12", + "safe-publish-latest": "^1.1.2", + "tap": "0.4.13", + "tape": "^4.9.2" + }, + "homepage": "https://github.com/browserify/resolve#readme", + "keywords": [ + "resolve", + "require", + "node", + "module" + ], + "license": "MIT", + "main": "index.js", + "name": "resolve", + "repository": { + "type": "git", + "url": "git://github.com/browserify/resolve.git" + }, + "scripts": { + "lint": "eslint .", + "posttest": "npm run test:multirepo", + "prepublish": "safe-publish-latest", + "pretest": "npm run lint", + "test": "npm run --silent tests-only", + "test:multirepo": "cd ./test/resolver/multirepo && npm install && npm test", + "tests-only": "tape test/*.js" + }, + "version": "1.10.0" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/readme.markdown b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/readme.markdown new file mode 100644 index 00000000000000..95be0f97a0f85c --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/readme.markdown @@ -0,0 +1,179 @@ +# resolve + +implements the [node `require.resolve()` +algorithm](https://nodejs.org/api/modules.html#modules_all_together) +such that you can `require.resolve()` on behalf of a file asynchronously and +synchronously + +[![build status](https://secure.travis-ci.org/browserify/node-resolve.png)](http://travis-ci.org/browserify/node-resolve) + +# example + +asynchronously resolve: + +```js +var resolve = require('resolve'); +resolve('tap', { basedir: __dirname }, function (err, res) { + if (err) console.error(err); + else console.log(res); +}); +``` + +``` +$ node example/async.js +/home/substack/projects/node-resolve/node_modules/tap/lib/main.js +``` + +synchronously resolve: + +```js +var resolve = require('resolve'); +var res = resolve.sync('tap', { basedir: __dirname }); +console.log(res); +``` + +``` +$ node example/sync.js +/home/substack/projects/node-resolve/node_modules/tap/lib/main.js +``` + +# methods + +```js +var resolve = require('resolve'); +``` + +## resolve(id, opts={}, cb) + +Asynchronously resolve the module path string `id` into `cb(err, res [, pkg])`, where `pkg` (if defined) is the data from `package.json`. + +options are: + +* opts.basedir - directory to begin resolving from + +* opts.package - `package.json` data applicable to the module being loaded + +* opts.extensions - array of file extensions to search in order + +* opts.readFile - how to read files asynchronously + +* opts.isFile - function to asynchronously test whether a file exists + +* `opts.packageFilter(pkg, pkgfile)` - transform the parsed package.json contents before looking at the "main" field + * pkg - package data + * pkgfile - path to package.json + +* `opts.pathFilter(pkg, path, relativePath)` - transform a path within a package + * pkg - package data + * path - the path being resolved + * relativePath - the path relative from the package.json location + * returns - a relative path that will be joined from the package.json location + +* opts.paths - require.paths array to use if nothing is found on the normal `node_modules` recursive walk (probably don't use this) + + For advanced users, `paths` can also be a `opts.paths(request, start, opts)` function + * request - the import specifier being resolved + * start - lookup path + * getNodeModulesDirs - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution + * opts - the resolution options + +* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"` + +* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving. +This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag. +**Note:** this property is currently `true` by default but it will be changed to +`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*. + +default `opts` values: + +```js +{ + paths: [], + basedir: __dirname, + extensions: ['.js'], + readFile: fs.readFile, + isFile: function isFile(file, cb) { + fs.stat(file, function (err, stat) { + if (!err) { + return cb(null, stat.isFile() || stat.isFIFO()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); + }, + moduleDirectory: 'node_modules', + preserveSymlinks: true +} +``` + +## resolve.sync(id, opts) + +Synchronously resolve the module path string `id`, returning the result and +throwing an error when `id` can't be resolved. + +options are: + +* opts.basedir - directory to begin resolving from + +* opts.extensions - array of file extensions to search in order + +* opts.readFile - how to read files synchronously + +* opts.isFile - function to synchronously test whether a file exists + +* `opts.packageFilter(pkg, dir)` - transform the parsed package.json contents before looking at the "main" field + * pkg - package data + * dir - directory for package.json (Note: the second argument will change to "pkgfile" in v2) + +* `opts.pathFilter(pkg, path, relativePath)` - transform a path within a package + * pkg - package data + * path - the path being resolved + * relativePath - the path relative from the package.json location + * returns - a relative path that will be joined from the package.json location + +* opts.paths - require.paths array to use if nothing is found on the normal `node_modules` recursive walk (probably don't use this) + +* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"` + +* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving. +This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag. +**Note:** this property is currently `true` by default but it will be changed to +`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*. + +default `opts` values: + +```js +{ + paths: [], + basedir: __dirname, + extensions: ['.js'], + readFileSync: fs.readFileSync, + isFile: function isFile(file) { + try { + var stat = fs.statSync(file); + } catch (e) { + if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false; + throw e; + } + return stat.isFile() || stat.isFIFO(); + }, + moduleDirectory: 'node_modules', + preserveSymlinks: true +} +``` + +## resolve.isCore(pkg) + +Return whether a package is in core. + +# install + +With [npm](https://npmjs.org) do: + +```sh +npm install resolve +``` + +# license + +MIT diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/.eslintrc b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/.eslintrc new file mode 100644 index 00000000000000..ddd262df503c72 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/.eslintrc @@ -0,0 +1,5 @@ +{ + "rules": { + "max-lines": 0 + } +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/core.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/core.js new file mode 100644 index 00000000000000..33d9f329499c61 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/core.js @@ -0,0 +1,82 @@ +var test = require('tape'); +var keys = require('object-keys'); +var resolve = require('../'); + +test('core modules', function (t) { + t.test('isCore()', function (st) { + st.ok(resolve.isCore('fs')); + st.ok(resolve.isCore('net')); + st.ok(resolve.isCore('http')); + + st.ok(!resolve.isCore('seq')); + st.ok(!resolve.isCore('../')); + st.end(); + }); + + t.test('core list', function (st) { + var cores = keys(resolve.core); + st.plan(cores.length); + + for (var i = 0; i < cores.length; ++i) { + var mod = cores[i]; + if (resolve.core[mod]) { + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + mod + ' supported; requiring does not throw' + ); + } else { + st.throws( + function () { require(mod); }, // eslint-disable-line no-loop-func + mod + ' not supported; requiring throws' + ); + } + } + + st.end(); + }); + + t.test('core via repl module', { skip: !resolve.core.repl }, function (st) { + var libs = require('repl')._builtinLibs; // eslint-disable-line no-underscore-dangle + if (!libs) { + st.skip('module.builtinModules does not exist'); + return st.end(); + } + for (var i = 0; i < libs.length; ++i) { + var mod = libs[i]; + st.ok(resolve.core[mod], mod + ' is a core module'); + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + 'requiring ' + mod + ' does not throw' + ); + } + st.end(); + }); + + t.test('core via builtinModules list', { skip: !resolve.core.module }, function (st) { + var libs = require('module').builtinModules; + if (!libs) { + st.skip('module.builtinModules does not exist'); + return st.end(); + } + var blacklist = [ + '_debug_agent', + 'v8/tools/tickprocessor-driver', + 'v8/tools/SourceMap', + 'v8/tools/tickprocessor', + 'v8/tools/profile' + ]; + for (var i = 0; i < libs.length; ++i) { + var mod = libs[i]; + if (blacklist.indexOf(mod) === -1) { + st.ok(resolve.core[mod], mod + ' is a core module'); + st.doesNotThrow( + function () { require(mod); }, // eslint-disable-line no-loop-func + 'requiring ' + mod + ' does not throw' + ); + } + } + st.end(); + }); + + t.end(); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot.js new file mode 100644 index 00000000000000..30806659be2ef2 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot.js @@ -0,0 +1,29 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('dotdot', function (t) { + t.plan(4); + var dir = path.join(__dirname, '/dotdot/abc'); + + resolve('..', { basedir: dir }, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(__dirname, 'dotdot/index.js')); + }); + + resolve('.', { basedir: dir }, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, 'index.js')); + }); +}); + +test('dotdot sync', function (t) { + t.plan(2); + var dir = path.join(__dirname, '/dotdot/abc'); + + var a = resolve.sync('..', { basedir: dir }); + t.equal(a, path.join(__dirname, 'dotdot/index.js')); + + var b = resolve.sync('.', { basedir: dir }); + t.equal(b, path.join(dir, 'index.js')); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/abc/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/abc/index.js new file mode 100644 index 00000000000000..67f2534ebf90dc --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/abc/index.js @@ -0,0 +1,2 @@ +var x = require('..'); +console.log(x); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/index.js new file mode 100644 index 00000000000000..643f9fcc6a6a7c --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/dotdot/index.js @@ -0,0 +1 @@ +module.exports = 'whatever'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/faulty_basedir.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/faulty_basedir.js new file mode 100644 index 00000000000000..5f2141a67267bc --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/faulty_basedir.js @@ -0,0 +1,29 @@ +var test = require('tape'); +var path = require('path'); +var resolve = require('../'); + +test('faulty basedir must produce error in windows', { skip: process.platform !== 'win32' }, function (t) { + t.plan(1); + + var resolverDir = 'C:\\a\\b\\c\\d'; + + resolve('tape/lib/test.js', { basedir: resolverDir }, function (err, res, pkg) { + t.equal(!!err, true); + }); +}); + +test('non-existent basedir should not throw when preserveSymlinks is false', function (t) { + t.plan(2); + + var opts = { + basedir: path.join(path.sep, 'unreal', 'path', 'that', 'does', 'not', 'exist'), + preserveSymlinks: false + }; + + var module = './dotdot/abc'; + + resolve(module, opts, function (err, res) { + t.equal(err.code, 'MODULE_NOT_FOUND'); + t.equal(res, undefined); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter.js new file mode 100644 index 00000000000000..dfc622a874e165 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter.js @@ -0,0 +1,34 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('filter', function (t) { + t.plan(4); + var dir = path.join(__dirname, 'resolver'); + var packageFilterArgs; + resolve('./baz', { + basedir: dir, + packageFilter: function (pkg, pkgfile) { + pkg.main = 'doom'; + packageFilterArgs = [pkg, pkgfile]; + return pkg; + } + }, function (err, res, pkg) { + if (err) t.fail(err); + + t.equal(res, path.join(dir, 'baz/doom.js'), 'changing the package "main" works'); + + var packageData = packageFilterArgs[0]; + t.equal(pkg, packageData, 'first packageFilter argument is "pkg"'); + t.equal(packageData.main, 'doom', 'package "main" was altered'); + + var packageFile = packageFilterArgs[1]; + t.equal( + packageFile, + path.join(dir, 'baz/package.json'), + 'second packageFilter argument is "pkgfile"' + ); + + t.end(); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter_sync.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter_sync.js new file mode 100644 index 00000000000000..064052e160ff17 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/filter_sync.js @@ -0,0 +1,26 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('filter', function (t) { + var dir = path.join(__dirname, 'resolver'); + var packageFilterArgs; + var res = resolve.sync('./baz', { + basedir: dir, + packageFilter: function (pkg, dir) { + pkg.main = 'doom'; + packageFilterArgs = [pkg, dir]; + return pkg; + } + }); + + t.equal(res, path.join(dir, 'baz/doom.js'), 'changing the package "main" works'); + + var packageData = packageFilterArgs[0]; + t.equal(packageData.main, 'doom', 'package "main" was altered'); + + var packageFile = packageFilterArgs[1]; + t.equal(packageFile, path.join(dir, 'baz'), 'second packageFilter argument is "dir"'); + + t.end(); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock.js new file mode 100644 index 00000000000000..a88059d4539197 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock.js @@ -0,0 +1,143 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('mock', function (t) { + t.plan(8); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + } + }; + } + + resolve('./baz', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg, undefined); + }); + + resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg, undefined); + }); + + resolve('baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + resolve('../baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('mock from package', function (t) { + t.plan(8); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, file)); + }, + 'package': { main: 'bar' }, + readFile: function (file, cb) { + cb(null, files[file]); + } + }; + } + + resolve('./baz', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg && pkg.main, 'bar'); + }); + + resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/bar/baz.js')); + t.equal(pkg && pkg.main, 'bar'); + }); + + resolve('baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + resolve('../baz', opts('/foo/bar'), function (err, res) { + t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('mock package', function (t) { + t.plan(2); + + var files = {}; + files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({ + main: './baz.js' + }); + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + } + }; + } + + resolve('bar', opts('/foo'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/node_modules/bar/baz.js')); + t.equal(pkg && pkg.main, './baz.js'); + }); +}); + +test('mock package from package', function (t) { + t.plan(2); + + var files = {}; + files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({ + main: './baz.js' + }); + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file, cb) { + cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file))); + }, + 'package': { main: 'bar' }, + readFile: function (file, cb) { + cb(null, files[path.resolve(file)]); + } + }; + } + + resolve('bar', opts('/foo'), function (err, res, pkg) { + if (err) return t.fail(err); + t.equal(res, path.resolve('/foo/node_modules/bar/baz.js')); + t.equal(pkg && pkg.main, './baz.js'); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock_sync.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock_sync.js new file mode 100644 index 00000000000000..43af10289fd22d --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/mock_sync.js @@ -0,0 +1,67 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('mock', function (t) { + t.plan(4); + + var files = {}; + files[path.resolve('/foo/bar/baz.js')] = 'beep'; + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file) { + return Object.prototype.hasOwnProperty.call(files, file); + }, + readFileSync: function (file) { + return files[file]; + } + }; + } + + t.equal( + resolve.sync('./baz', opts('/foo/bar')), + path.resolve('/foo/bar/baz.js') + ); + + t.equal( + resolve.sync('./baz.js', opts('/foo/bar')), + path.resolve('/foo/bar/baz.js') + ); + + t.throws(function () { + resolve.sync('baz', opts('/foo/bar')); + }); + + t.throws(function () { + resolve.sync('../baz', opts('/foo/bar')); + }); +}); + +test('mock package', function (t) { + t.plan(1); + + var files = {}; + files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep'; + files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({ + main: './baz.js' + }); + + function opts(basedir) { + return { + basedir: path.resolve(basedir), + isFile: function (file) { + return Object.prototype.hasOwnProperty.call(files, file); + }, + readFileSync: function (file) { + return files[file]; + } + }; + } + + t.equal( + resolve.sync('bar', opts('/foo')), + path.resolve('/foo/node_modules/bar/baz.js') + ); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir.js new file mode 100644 index 00000000000000..b50e5bb1751d69 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir.js @@ -0,0 +1,56 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('moduleDirectory strings', function (t) { + t.plan(4); + var dir = path.join(__dirname, 'module_dir'); + var xopts = { + basedir: dir, + moduleDirectory: 'xmodules' + }; + resolve('aaa', xopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/xmodules/aaa/index.js')); + }); + + var yopts = { + basedir: dir, + moduleDirectory: 'ymodules' + }; + resolve('aaa', yopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/ymodules/aaa/index.js')); + }); +}); + +test('moduleDirectory array', function (t) { + t.plan(6); + var dir = path.join(__dirname, 'module_dir'); + var aopts = { + basedir: dir, + moduleDirectory: ['xmodules', 'ymodules', 'zmodules'] + }; + resolve('aaa', aopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/xmodules/aaa/index.js')); + }); + + var bopts = { + basedir: dir, + moduleDirectory: ['zmodules', 'ymodules', 'xmodules'] + }; + resolve('aaa', bopts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/ymodules/aaa/index.js')); + }); + + var copts = { + basedir: dir, + moduleDirectory: ['xmodules', 'ymodules', 'zmodules'] + }; + resolve('bbb', copts, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, '/zmodules/bbb/main.js')); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/xmodules/aaa/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/xmodules/aaa/index.js new file mode 100644 index 00000000000000..dd7cf7b2d022da --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/xmodules/aaa/index.js @@ -0,0 +1 @@ +module.exports = function (x) { return x * 100; }; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/ymodules/aaa/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/ymodules/aaa/index.js new file mode 100644 index 00000000000000..ef2d4d4bf76e61 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/ymodules/aaa/index.js @@ -0,0 +1 @@ +module.exports = function (x) { return x + 100; }; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/main.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/main.js new file mode 100644 index 00000000000000..e8ba629936a7ad --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/main.js @@ -0,0 +1 @@ +module.exports = function (n) { return n * 111; }; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/package.json new file mode 100644 index 00000000000000..c13b8cf6acfd33 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/module_dir/zmodules/bbb/package.json @@ -0,0 +1,3 @@ +{ + "main": "main.js" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node-modules-paths.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node-modules-paths.js new file mode 100644 index 00000000000000..1500fb19998bc0 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node-modules-paths.js @@ -0,0 +1,121 @@ +var test = require('tape'); +var path = require('path'); +var parse = path.parse || require('path-parse'); +var keys = require('object-keys'); + +var nodeModulesPaths = require('../lib/node-modules-paths'); + +var verifyDirs = function verifyDirs(t, start, dirs, moduleDirectories, paths) { + var moduleDirs = [].concat(moduleDirectories || 'node_modules'); + if (paths) { + for (var k = 0; k < paths.length; ++k) { + moduleDirs.push(path.basename(paths[k])); + } + } + + var foundModuleDirs = {}; + var uniqueDirs = {}; + var parsedDirs = {}; + for (var i = 0; i < dirs.length; ++i) { + var parsed = parse(dirs[i]); + if (!foundModuleDirs[parsed.base]) { foundModuleDirs[parsed.base] = 0; } + foundModuleDirs[parsed.base] += 1; + parsedDirs[parsed.dir] = true; + uniqueDirs[dirs[i]] = true; + } + t.equal(keys(parsedDirs).length >= start.split(path.sep).length, true, 'there are >= dirs than "start" has'); + var foundModuleDirNames = keys(foundModuleDirs); + t.deepEqual(foundModuleDirNames, moduleDirs, 'all desired module dirs were found'); + t.equal(keys(uniqueDirs).length, dirs.length, 'all dirs provided were unique'); + + var counts = {}; + for (var j = 0; j < foundModuleDirNames.length; ++j) { + counts[foundModuleDirs[j]] = true; + } + t.equal(keys(counts).length, 1, 'all found module directories had the same count'); +}; + +test('node-modules-paths', function (t) { + t.test('no options', function (t) { + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start); + + verifyDirs(t, start, dirs); + + t.end(); + }); + + t.test('empty options', function (t) { + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start, {}); + + verifyDirs(t, start, dirs); + + t.end(); + }); + + t.test('with paths=array option', function (t) { + var start = path.join(__dirname, 'resolver'); + var paths = ['a', 'b']; + var dirs = nodeModulesPaths(start, { paths: paths }); + + verifyDirs(t, start, dirs, null, paths); + + t.end(); + }); + + t.test('with paths=function option', function (t) { + var paths = function paths(request, absoluteStart, getNodeModulesDirs, opts) { + return getNodeModulesDirs().concat(path.join(absoluteStart, 'not node modules', request)); + }; + + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start, { paths: paths }, 'pkg'); + + verifyDirs(t, start, dirs, null, [path.join(start, 'not node modules', 'pkg')]); + + t.end(); + }); + + t.test('with paths=function skipping node modules resolution', function (t) { + var paths = function paths(request, absoluteStart, getNodeModulesDirs, opts) { + return []; + }; + var start = path.join(__dirname, 'resolver'); + var dirs = nodeModulesPaths(start, { paths: paths }); + t.deepEqual(dirs, [], 'no node_modules was computed'); + t.end(); + }); + + t.test('with moduleDirectory option', function (t) { + var start = path.join(__dirname, 'resolver'); + var moduleDirectory = 'not node modules'; + var dirs = nodeModulesPaths(start, { moduleDirectory: moduleDirectory }); + + verifyDirs(t, start, dirs, moduleDirectory); + + t.end(); + }); + + t.test('with 1 moduleDirectory and paths options', function (t) { + var start = path.join(__dirname, 'resolver'); + var paths = ['a', 'b']; + var moduleDirectory = 'not node modules'; + var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectory }); + + verifyDirs(t, start, dirs, moduleDirectory, paths); + + t.end(); + }); + + t.test('with 1+ moduleDirectory and paths options', function (t) { + var start = path.join(__dirname, 'resolver'); + var paths = ['a', 'b']; + var moduleDirectories = ['not node modules', 'other modules']; + var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories }); + + verifyDirs(t, start, dirs, moduleDirectories, paths); + + t.end(); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path.js new file mode 100644 index 00000000000000..d06aa4eafe5b52 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path.js @@ -0,0 +1,70 @@ +var fs = require('fs'); +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('$NODE_PATH', function (t) { + t.plan(8); + + var isDir = function (dir, cb) { + if (dir === '/node_path' || dir === 'node_path/x') { + return cb(null, true); + } + fs.stat(dir, function (err, stat) { + if (!err) { + return cb(null, stat.isDirectory()); + } + if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false); + return cb(err); + }); + }; + + resolve('aaa', { + paths: [ + path.join(__dirname, '/node_path/x'), + path.join(__dirname, '/node_path/y') + ], + basedir: __dirname, + isDirectory: isDir + }, function (err, res) { + t.error(err); + t.equal(res, path.join(__dirname, '/node_path/x/aaa/index.js'), 'aaa resolves'); + }); + + resolve('bbb', { + paths: [ + path.join(__dirname, '/node_path/x'), + path.join(__dirname, '/node_path/y') + ], + basedir: __dirname, + isDirectory: isDir + }, function (err, res) { + t.error(err); + t.equal(res, path.join(__dirname, '/node_path/y/bbb/index.js'), 'bbb resolves'); + }); + + resolve('ccc', { + paths: [ + path.join(__dirname, '/node_path/x'), + path.join(__dirname, '/node_path/y') + ], + basedir: __dirname, + isDirectory: isDir + }, function (err, res) { + t.error(err); + t.equal(res, path.join(__dirname, '/node_path/x/ccc/index.js'), 'ccc resolves'); + }); + + // ensure that relative paths still resolve against the regular `node_modules` correctly + resolve('tap', { + paths: [ + 'node_path' + ], + basedir: path.join(__dirname, 'node_path/x'), + isDirectory: isDir + }, function (err, res) { + var root = require('tap/package.json').main; + t.error(err); + t.equal(res, path.resolve(__dirname, '..', 'node_modules/tap', root), 'tap resolves'); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/aaa/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/aaa/index.js new file mode 100644 index 00000000000000..ad70d0bb03f6f4 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/aaa/index.js @@ -0,0 +1 @@ +module.exports = 'A'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/ccc/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/ccc/index.js new file mode 100644 index 00000000000000..a64132e4c7e52c --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/x/ccc/index.js @@ -0,0 +1 @@ +module.exports = 'C'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/bbb/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/bbb/index.js new file mode 100644 index 00000000000000..4d0f32e2436818 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/bbb/index.js @@ -0,0 +1 @@ +module.exports = 'B'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/ccc/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/ccc/index.js new file mode 100644 index 00000000000000..793315e846687e --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/node_path/y/ccc/index.js @@ -0,0 +1 @@ +module.exports = 'CY'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/nonstring.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/nonstring.js new file mode 100644 index 00000000000000..ef63c40f9393dc --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/nonstring.js @@ -0,0 +1,9 @@ +var test = require('tape'); +var resolve = require('../'); + +test('nonstring', function (t) { + t.plan(1); + resolve(555, function (err, res, pkg) { + t.ok(err); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter.js new file mode 100644 index 00000000000000..16519aeae51c4f --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter.js @@ -0,0 +1,75 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +var resolverDir = path.join(__dirname, '/pathfilter/deep_ref'); + +var pathFilterFactory = function (t) { + return function (pkg, x, remainder) { + t.equal(pkg.version, '1.2.3'); + t.equal(x, path.join(resolverDir, 'node_modules/deep/ref')); + t.equal(remainder, 'ref'); + return 'alt'; + }; +}; + +test('#62: deep module references and the pathFilter', function (t) { + t.test('deep/ref.js', function (st) { + st.plan(3); + + resolve('deep/ref', { basedir: resolverDir }, function (err, res, pkg) { + if (err) st.fail(err); + + st.equal(pkg.version, '1.2.3'); + st.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js')); + }); + + var res = resolve.sync('deep/ref', { basedir: resolverDir }); + st.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js')); + }); + + t.test('deep/deeper/ref', function (st) { + st.plan(4); + + resolve( + 'deep/deeper/ref', + { basedir: resolverDir }, + function (err, res, pkg) { + if (err) t.fail(err); + st.notEqual(pkg, undefined); + st.equal(pkg.version, '1.2.3'); + st.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js')); + } + ); + + var res = resolve.sync( + 'deep/deeper/ref', + { basedir: resolverDir } + ); + st.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js')); + }); + + t.test('deep/ref alt', function (st) { + st.plan(8); + + var pathFilter = pathFilterFactory(st); + + var res = resolve.sync( + 'deep/ref', + { basedir: resolverDir, pathFilter: pathFilter } + ); + st.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js')); + + resolve( + 'deep/ref', + { basedir: resolverDir, pathFilter: pathFilter }, + function (err, res, pkg) { + if (err) st.fail(err); + st.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js')); + st.end(); + } + ); + }); + + t.end(); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter/deep_ref/main.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/pathfilter/deep_ref/main.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence.js new file mode 100644 index 00000000000000..2febb598fbc068 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence.js @@ -0,0 +1,23 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('precedence', function (t) { + t.plan(3); + var dir = path.join(__dirname, 'precedence/aaa'); + + resolve('./', { basedir: dir }, function (err, res, pkg) { + t.ifError(err); + t.equal(res, path.join(dir, 'index.js')); + t.equal(pkg.name, 'resolve'); + }); +}); + +test('./ should not load ${dir}.js', function (t) { // eslint-disable-line no-template-curly-in-string + t.plan(1); + var dir = path.join(__dirname, 'precedence/bbb'); + + resolve('./', { basedir: dir }, function (err, res, pkg) { + t.ok(err); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa.js new file mode 100644 index 00000000000000..b83a3e7ad98d17 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa.js @@ -0,0 +1 @@ +module.exports = 'wtf'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/index.js new file mode 100644 index 00000000000000..e0f8f6abf72f7f --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/index.js @@ -0,0 +1 @@ +module.exports = 'okok'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/main.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/main.js new file mode 100644 index 00000000000000..93542a965e0ea4 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/aaa/main.js @@ -0,0 +1 @@ +console.log(require('./')); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb.js new file mode 100644 index 00000000000000..2298f47fdd16dc --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb.js @@ -0,0 +1 @@ +module.exports = '>_<'; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb/main.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb/main.js new file mode 100644 index 00000000000000..716b81d4bd463f --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/precedence/bbb/main.js @@ -0,0 +1 @@ +console.log(require('./')); // should throw diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver.js new file mode 100644 index 00000000000000..f7fcd292bdff97 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver.js @@ -0,0 +1,429 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('async foo', function (t) { + t.plan(12); + var dir = path.join(__dirname, 'resolver'); + + resolve('./foo', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg && pkg.name, 'resolve'); + }); + + resolve('./foo.js', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg && pkg.name, 'resolve'); + }); + + resolve('./foo', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg && pkg.main, 'resolver'); + }); + + resolve('./foo.js', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + t.equal(pkg.main, 'resolver'); + }); + + resolve('./foo', { basedir: dir, filename: path.join(dir, 'baz.js') }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo.js')); + }); + + resolve('foo', { basedir: dir }, function (err) { + t.equal(err.message, "Cannot find module 'foo' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + // Test that filename is reported as the "from" value when passed. + resolve('foo', { basedir: dir, filename: path.join(dir, 'baz.js') }, function (err) { + t.equal(err.message, "Cannot find module 'foo' from '" + path.join(dir, 'baz.js') + "'"); + }); +}); + +test('bar', function (t) { + t.plan(6); + var dir = path.join(__dirname, 'resolver'); + + resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js')); + t.equal(pkg, undefined); + }); + + resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js')); + t.equal(pkg, undefined); + }); + + resolve('foo', { basedir: dir + '/bar', 'package': { main: 'bar' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js')); + t.equal(pkg.main, 'bar'); + }); +}); + +test('baz', function (t) { + t.plan(4); + var dir = path.join(__dirname, 'resolver'); + + resolve('./baz', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'baz/quux.js')); + t.equal(pkg.main, 'quux.js'); + }); + + resolve('./baz', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'baz/quux.js')); + t.equal(pkg.main, 'quux.js'); + }); +}); + +test('biz', function (t) { + t.plan(24); + var dir = path.join(__dirname, 'resolver/biz/node_modules'); + + resolve('./grux', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg, undefined); + }); + + resolve('./grux', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg.main, 'biz'); + }); + + resolve('./garply', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('./garply', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('tiv', { basedir: dir + '/grux' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg, undefined); + }); + + resolve('tiv', { basedir: dir + '/grux', 'package': { main: 'grux' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg.main, 'grux'); + }); + + resolve('tiv', { basedir: dir + '/garply' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg, undefined); + }); + + resolve('tiv', { basedir: dir + '/garply', 'package': { main: './lib' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'tiv/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('grux', { basedir: dir + '/tiv' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg, undefined); + }); + + resolve('grux', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'grux/index.js')); + t.equal(pkg.main, 'tiv'); + }); + + resolve('garply', { basedir: dir + '/tiv' }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); + + resolve('garply', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'garply/lib/index.js')); + t.equal(pkg.main, './lib'); + }); +}); + +test('quux', function (t) { + t.plan(2); + var dir = path.join(__dirname, 'resolver/quux'); + + resolve('./foo', { basedir: dir, 'package': { main: 'quux' } }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'foo/index.js')); + t.equal(pkg.main, 'quux'); + }); +}); + +test('normalize', function (t) { + t.plan(2); + var dir = path.join(__dirname, 'resolver/biz/node_modules/grux'); + + resolve('../grux', { basedir: dir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'index.js')); + t.equal(pkg, undefined); + }); +}); + +test('cup', function (t) { + t.plan(5); + var dir = path.join(__dirname, 'resolver'); + + resolve('./cup', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'cup.coffee')); + }); + + resolve('./cup.coffee', { basedir: dir }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'cup.coffee')); + }); + + resolve('./cup', { basedir: dir, extensions: ['.js'] }, function (err, res) { + t.equal(err.message, "Cannot find module './cup' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + // Test that filename is reported as the "from" value when passed. + resolve('./cup', { basedir: dir, extensions: ['.js'], filename: path.join(dir, 'cupboard.js') }, function (err, res) { + t.equal(err.message, "Cannot find module './cup' from '" + path.join(dir, 'cupboard.js') + "'"); + }); +}); + +test('mug', function (t) { + t.plan(3); + var dir = path.join(__dirname, 'resolver'); + + resolve('./mug', { basedir: dir }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'mug.js')); + }); + + resolve('./mug', { basedir: dir, extensions: ['.coffee', '.js'] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(dir, '/mug.coffee')); + }); + + resolve('./mug', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) { + t.equal(res, path.join(dir, '/mug.js')); + }); +}); + +test('other path', function (t) { + t.plan(6); + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'bar'); + var otherDir = path.join(resolverDir, 'other_path'); + + resolve('root', { basedir: dir, paths: [otherDir] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(resolverDir, 'other_path/root.js')); + }); + + resolve('lib/other-lib', { basedir: dir, paths: [otherDir] }, function (err, res) { + if (err) t.fail(err); + t.equal(res, path.join(resolverDir, 'other_path/lib/other-lib.js')); + }); + + resolve('root', { basedir: dir }, function (err, res) { + t.equal(err.message, "Cannot find module 'root' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); + + resolve('zzz', { basedir: dir, paths: [otherDir] }, function (err, res) { + t.equal(err.message, "Cannot find module 'zzz' from '" + path.resolve(dir) + "'"); + t.equal(err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('incorrect main', function (t) { + t.plan(1); + + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'incorrect_main'); + + resolve('./incorrect_main', { basedir: resolverDir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'index.js')); + }); +}); + +test('without basedir', function (t) { + t.plan(1); + + var dir = path.join(__dirname, 'resolver/without_basedir'); + var tester = require(path.join(dir, 'main.js')); + + tester(t, function (err, res, pkg) { + if (err) { + t.fail(err); + } else { + t.equal(res, path.join(dir, 'node_modules/mymodule.js')); + } + }); +}); + +test('#25: node modules with the same name as node stdlib modules', function (t) { + t.plan(1); + + var resolverDir = path.join(__dirname, 'resolver/punycode'); + + resolve('punycode', { basedir: resolverDir }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(resolverDir, 'node_modules/punycode/index.js')); + }); +}); + +test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) { + t.plan(2); + + var dir = path.join(__dirname, 'resolver'); + + resolve('./foo', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'same_names/foo.js')); + }); + + resolve('./foo/', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'same_names/foo/index.js')); + }); +}); + +test('async: #121 - treating an existing file as a dir when no basedir', function (t) { + var testFile = path.basename(__filename); + + t.test('sanity check', function (st) { + st.plan(1); + resolve('./' + testFile, function (err, res, pkg) { + if (err) t.fail(err); + st.equal(res, __filename, 'sanity check'); + }); + }); + + t.test('with a fake directory', function (st) { + st.plan(4); + + resolve('./' + testFile + '/blah', function (err, res, pkg) { + st.ok(err, 'there is an error'); + st.notOk(res, 'no result'); + + st.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve'); + st.equal( + err && err.message, + 'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'', + 'can not find nonexistent module' + ); + st.end(); + }); + }); + + t.end(); +}); + +test('async dot main', function (t) { + var start = new Date(); + t.plan(3); + resolve('./resolver/dot_main', function (err, ret) { + t.notOk(err); + t.equal(ret, path.join(__dirname, 'resolver/dot_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); + }); +}); + +test('async dot slash main', function (t) { + var start = new Date(); + t.plan(3); + resolve('./resolver/dot_slash_main', function (err, ret) { + t.notOk(err); + t.equal(ret, path.join(__dirname, 'resolver/dot_slash_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); + }); +}); + +test('not a directory', function (t) { + t.plan(6); + var path = './foo'; + resolve(path, { basedir: __filename }, function (err, res, pkg) { + t.ok(err, 'a non-directory errors'); + t.equal(arguments.length, 1); + t.equal(res, undefined); + t.equal(pkg, undefined); + + t.equal(err && err.message, 'Cannot find module \'' + path + '\' from \'' + __filename + '\''); + t.equal(err && err.code, 'MODULE_NOT_FOUND'); + }); +}); + +test('non-string "main" field in package.json', function (t) { + t.plan(5); + + var dir = path.join(__dirname, 'resolver'); + resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + t.equal(res, undefined, 'res is undefined'); + t.equal(pkg, undefined, 'pkg is undefined'); + }); +}); + +test('non-string "main" field in package.json', function (t) { + t.plan(5); + + var dir = path.join(__dirname, 'resolver'); + resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + t.equal(res, undefined, 'res is undefined'); + t.equal(pkg, undefined, 'pkg is undefined'); + }); +}); + +test('browser field in package.json', function (t) { + t.plan(3); + + var dir = path.join(__dirname, 'resolver'); + resolve( + './browser_field', + { + basedir: dir, + packageFilter: function packageFilter(pkg) { + if (pkg.browser) { + pkg.main = pkg.browser; + delete pkg.browser; + } + return pkg; + } + }, + function (err, res, pkg) { + if (err) t.fail(err); + t.equal(res, path.join(dir, 'browser_field', 'b.js')); + t.equal(pkg && pkg.main, 'b'); + t.equal(pkg && pkg.browser, undefined); + } + ); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/doom.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/doom.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/package.json new file mode 100644 index 00000000000000..c41e4dbf73d997 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/package.json @@ -0,0 +1,3 @@ +{ + "main": "quux.js" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/quux.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/quux.js new file mode 100644 index 00000000000000..bd816eaba4ca3b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/baz/quux.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/a.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/a.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/b.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/b.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/package.json new file mode 100644 index 00000000000000..bf406f0830f8aa --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/browser_field/package.json @@ -0,0 +1,5 @@ +{ + "name": "browser_field", + "main": "a", + "browser": "b" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/cup.coffee b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/cup.coffee new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/index.js new file mode 100644 index 00000000000000..bd816eaba4ca3b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/package.json new file mode 100644 index 00000000000000..d7f4fc8079f60a --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_main/package.json @@ -0,0 +1,3 @@ +{ + "main": "." +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/index.js new file mode 100644 index 00000000000000..bd816eaba4ca3b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/package.json new file mode 100644 index 00000000000000..f51287b9d1e739 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/dot_slash_main/package.json @@ -0,0 +1,3 @@ +{ + "main": "./" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/foo.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/foo.js new file mode 100644 index 00000000000000..bd816eaba4ca3b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/foo.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/index.js new file mode 100644 index 00000000000000..bc1fb0a6f4ede1 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/index.js @@ -0,0 +1,2 @@ +// this is the actual main file 'index.js', not 'wrong.js' like the package.json would indicate +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/package.json new file mode 100644 index 00000000000000..b7188041763f8a --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/incorrect_main/package.json @@ -0,0 +1,3 @@ +{ + "main": "wrong.js" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/invalid_main/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/invalid_main/package.json new file mode 100644 index 00000000000000..0cf8279950c380 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/invalid_main/package.json @@ -0,0 +1,7 @@ +{ + "name": "invalid main", + "main": [ + "why is this a thing", + "srsly omg wtf" + ] +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/mug.coffee b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/mug.coffee new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/mug.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/mug.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/lerna.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/lerna.json new file mode 100644 index 00000000000000..d6707ca0cd64d4 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/lerna.json @@ -0,0 +1,6 @@ +{ + "packages": [ + "packages/*" + ], + "version": "0.0.0" +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/package.json new file mode 100644 index 00000000000000..8508f9d2c4a2d7 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/package.json @@ -0,0 +1,20 @@ +{ + "name": "monorepo-symlink-test", + "private": true, + "version": "0.0.0", + "description": "", + "main": "index.js", + "scripts": { + "postinstall": "lerna bootstrap", + "test": "node packages/package-a" + }, + "author": "", + "license": "MIT", + "dependencies": { + "jquery": "^3.3.1", + "resolve": "../../../" + }, + "devDependencies": { + "lerna": "^3.4.3" + } +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js new file mode 100644 index 00000000000000..8875a32df0ffc4 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js @@ -0,0 +1,35 @@ +'use strict'; + +var assert = require('assert'); +var path = require('path'); +var resolve = require('resolve'); + +var basedir = __dirname + '/node_modules/@my-scope/package-b'; + +var expected = path.join(__dirname, '../../node_modules/jquery/dist/jquery.js'); + +/* + * preserveSymlinks === false + * will search NPM package from + * - packages/package-b/node_modules + * - packages/node_modules + * - node_modules + */ +assert.equal(resolve.sync('jquery', { basedir: basedir, preserveSymlinks: false }), expected); +assert.equal(resolve.sync('../../node_modules/jquery', { basedir: basedir, preserveSymlinks: false }), expected); + +/* + * preserveSymlinks === true + * will search NPM package from + * - packages/package-a/node_modules/@my-scope/packages/package-b/node_modules + * - packages/package-a/node_modules/@my-scope/packages/node_modules + * - packages/package-a/node_modules/@my-scope/node_modules + * - packages/package-a/node_modules/node_modules + * - packages/package-a/node_modules + * - packages/node_modules + * - node_modules + */ +assert.equal(resolve.sync('jquery', { basedir: basedir, preserveSymlinks: true }), expected); +assert.equal(resolve.sync('../../../../../node_modules/jquery', { basedir: basedir, preserveSymlinks: true }), expected); + +console.log(' * all monorepo paths successfully resolved through symlinks'); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json new file mode 100644 index 00000000000000..204de51e05878b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json @@ -0,0 +1,14 @@ +{ + "name": "@my-scope/package-a", + "version": "0.0.0", + "private": true, + "description": "", + "license": "MIT", + "main": "index.js", + "scripts": { + "test": "echo \"Error: run tests from root\" && exit 1" + }, + "dependencies": { + "@my-scope/package-b": "^0.0.0" + } +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json new file mode 100644 index 00000000000000..f57c3b5f5e454d --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json @@ -0,0 +1,14 @@ +{ + "name": "@my-scope/package-b", + "private": true, + "version": "0.0.0", + "description": "", + "license": "MIT", + "main": "index.js", + "scripts": { + "test": "echo \"Error: run tests from root\" && exit 1" + }, + "dependencies": { + "@my-scope/package-a": "^0.0.0" + } +} diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/other_path/lib/other-lib.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/other_path/lib/other-lib.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/other_path/root.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/other_path/root.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/quux/foo/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/quux/foo/index.js new file mode 100644 index 00000000000000..bd816eaba4ca3b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/quux/foo/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo.js new file mode 100644 index 00000000000000..888cae37af95c5 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo.js @@ -0,0 +1 @@ +module.exports = 42; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo/index.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo/index.js new file mode 100644 index 00000000000000..bd816eaba4ca3b --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/same_names/foo/index.js @@ -0,0 +1 @@ +module.exports = 1; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/without_basedir/main.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/without_basedir/main.js new file mode 100644 index 00000000000000..5b31975be69da5 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver/without_basedir/main.js @@ -0,0 +1,5 @@ +var resolve = require('../../../'); + +module.exports = function (t, cb) { + resolve('mymodule', null, cb); +}; diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver_sync.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver_sync.js new file mode 100644 index 00000000000000..f33143903c140e --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/resolver_sync.js @@ -0,0 +1,340 @@ +var path = require('path'); +var test = require('tape'); +var resolve = require('../'); + +test('foo', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./foo', { basedir: dir }), + path.join(dir, 'foo.js') + ); + + t.equal( + resolve.sync('./foo.js', { basedir: dir }), + path.join(dir, 'foo.js') + ); + + t.equal( + resolve.sync('./foo.js', { basedir: dir, filename: path.join(dir, 'bar.js') }), + path.join(dir, 'foo.js') + ); + + t.throws(function () { + resolve.sync('foo', { basedir: dir }); + }); + + // Test that filename is reported as the "from" value when passed. + t.throws( + function () { + resolve.sync('foo', { basedir: dir, filename: path.join(dir, 'bar.js') }); + }, + { + name: 'Error', + message: "Cannot find module 'foo' from '" + path.join(dir, 'bar.js') + "'" + } + ); + + t.end(); +}); + +test('bar', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('foo', { basedir: path.join(dir, 'bar') }), + path.join(dir, 'bar/node_modules/foo/index.js') + ); + t.end(); +}); + +test('baz', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./baz', { basedir: dir }), + path.join(dir, 'baz/quux.js') + ); + t.end(); +}); + +test('biz', function (t) { + var dir = path.join(__dirname, 'resolver/biz/node_modules'); + t.equal( + resolve.sync('./grux', { basedir: dir }), + path.join(dir, 'grux/index.js') + ); + + t.equal( + resolve.sync('tiv', { basedir: path.join(dir, 'grux') }), + path.join(dir, 'tiv/index.js') + ); + + t.equal( + resolve.sync('grux', { basedir: path.join(dir, 'tiv') }), + path.join(dir, 'grux/index.js') + ); + t.end(); +}); + +test('normalize', function (t) { + var dir = path.join(__dirname, 'resolver/biz/node_modules/grux'); + t.equal( + resolve.sync('../grux', { basedir: dir }), + path.join(dir, 'index.js') + ); + t.end(); +}); + +test('cup', function (t) { + var dir = path.join(__dirname, 'resolver'); + t.equal( + resolve.sync('./cup', { + basedir: dir, + extensions: ['.js', '.coffee'] + }), + path.join(dir, 'cup.coffee') + ); + + t.equal( + resolve.sync('./cup.coffee', { basedir: dir }), + path.join(dir, 'cup.coffee') + ); + + t.throws(function () { + resolve.sync('./cup', { + basedir: dir, + extensions: ['.js'] + }); + }); + + t.end(); +}); + +test('mug', function (t) { + var dir = path.join(__dirname, 'resolver'); + t.equal( + resolve.sync('./mug', { basedir: dir }), + path.join(dir, 'mug.js') + ); + + t.equal( + resolve.sync('./mug', { + basedir: dir, + extensions: ['.coffee', '.js'] + }), + path.join(dir, 'mug.coffee') + ); + + t.equal( + resolve.sync('./mug', { + basedir: dir, + extensions: ['.js', '.coffee'] + }), + path.join(dir, 'mug.js') + ); + + t.end(); +}); + +test('other path', function (t) { + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'bar'); + var otherDir = path.join(resolverDir, 'other_path'); + + t.equal( + resolve.sync('root', { + basedir: dir, + paths: [otherDir] + }), + path.join(resolverDir, 'other_path/root.js') + ); + + t.equal( + resolve.sync('lib/other-lib', { + basedir: dir, + paths: [otherDir] + }), + path.join(resolverDir, 'other_path/lib/other-lib.js') + ); + + t.throws(function () { + resolve.sync('root', { basedir: dir }); + }); + + t.throws(function () { + resolve.sync('zzz', { + basedir: dir, + paths: [otherDir] + }); + }); + + t.end(); +}); + +test('incorrect main', function (t) { + var resolverDir = path.join(__dirname, 'resolver'); + var dir = path.join(resolverDir, 'incorrect_main'); + + t.equal( + resolve.sync('./incorrect_main', { basedir: resolverDir }), + path.join(dir, 'index.js') + ); + + t.end(); +}); + +test('#25: node modules with the same name as node stdlib modules', function (t) { + var resolverDir = path.join(__dirname, 'resolver/punycode'); + + t.equal( + resolve.sync('punycode', { basedir: resolverDir }), + path.join(resolverDir, 'node_modules/punycode/index.js') + ); + + t.end(); +}); + +var stubStatSync = function stubStatSync(fn) { + var fs = require('fs'); + var statSync = fs.statSync; + try { + fs.statSync = function () { + throw new EvalError('Unknown Error'); + }; + return fn(); + } finally { + fs.statSync = statSync; + } +}; + +test('#79 - re-throw non ENOENT errors from stat', function (t) { + var dir = path.join(__dirname, 'resolver'); + + stubStatSync(function () { + t.throws(function () { + resolve.sync('foo', { basedir: dir }); + }, /Unknown Error/); + }); + + t.end(); +}); + +test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) { + var dir = path.join(__dirname, 'resolver'); + + t.equal( + resolve.sync('./foo', { basedir: path.join(dir, 'same_names') }), + path.join(dir, 'same_names/foo.js') + ); + t.equal( + resolve.sync('./foo/', { basedir: path.join(dir, 'same_names') }), + path.join(dir, 'same_names/foo/index.js') + ); + t.end(); +}); + +test('sync: #121 - treating an existing file as a dir when no basedir', function (t) { + var testFile = path.basename(__filename); + + t.test('sanity check', function (st) { + st.equal( + resolve.sync('./' + testFile), + __filename, + 'sanity check' + ); + st.end(); + }); + + t.test('with a fake directory', function (st) { + function run() { return resolve.sync('./' + testFile + '/blah'); } + + st.throws(run, 'throws an error'); + + try { + run(); + } catch (e) { + st.equal(e.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve'); + st.equal( + e.message, + 'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'', + 'can not find nonexistent module' + ); + } + + st.end(); + }); + + t.end(); +}); + +test('sync dot main', function (t) { + var start = new Date(); + t.equal(resolve.sync('./resolver/dot_main'), path.join(__dirname, 'resolver/dot_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); +}); + +test('sync dot slash main', function (t) { + var start = new Date(); + t.equal(resolve.sync('./resolver/dot_slash_main'), path.join(__dirname, 'resolver/dot_slash_main/index.js')); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); +}); + +test('not a directory', function (t) { + var path = './foo'; + try { + resolve.sync(path, { basedir: __filename }); + t.fail(); + } catch (err) { + t.ok(err, 'a non-directory errors'); + t.equal(err && err.message, 'Cannot find module \'' + path + "' from '" + __filename + "'"); + t.equal(err && err.code, 'MODULE_NOT_FOUND'); + } + t.end(); +}); + +test('non-string "main" field in package.json', function (t) { + var dir = path.join(__dirname, 'resolver'); + try { + var result = resolve.sync('./invalid_main', { basedir: dir }); + t.equal(result, undefined, 'result should not exist'); + t.fail('should not get here'); + } catch (err) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + } + t.end(); +}); + +test('non-string "main" field in package.json', function (t) { + var dir = path.join(__dirname, 'resolver'); + try { + var result = resolve.sync('./invalid_main', { basedir: dir }); + t.equal(result, undefined, 'result should not exist'); + t.fail('should not get here'); + } catch (err) { + t.ok(err, 'errors on non-string main'); + t.equal(err.message, 'package “invalid main” `main` must be a string'); + t.equal(err.code, 'INVALID_PACKAGE_MAIN'); + } + t.end(); +}); + +test('browser field in package.json', function (t) { + var dir = path.join(__dirname, 'resolver'); + var res = resolve.sync('./browser_field', { + basedir: dir, + packageFilter: function packageFilter(pkg) { + if (pkg.browser) { + pkg.main = pkg.browser; + delete pkg.browser; + } + return pkg; + } + }); + t.equal(res, path.join(dir, 'browser_field', 'b.js')); + t.end(); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/subdirs.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/subdirs.js new file mode 100644 index 00000000000000..b7b8450a9ef231 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/subdirs.js @@ -0,0 +1,13 @@ +var test = require('tape'); +var resolve = require('../'); +var path = require('path'); + +test('subdirs', function (t) { + t.plan(2); + + var dir = path.join(__dirname, '/subdirs'); + resolve('a/b/c/x.json', { basedir: dir }, function (err, res) { + t.ifError(err); + t.equal(res, path.join(dir, 'node_modules/a/b/c/x.json')); + }); +}); diff --git a/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/symlinks.js b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/symlinks.js new file mode 100644 index 00000000000000..ea95a1e1a20fb9 --- /dev/null +++ b/deps/npm/node_modules/normalize-package-data/node_modules/resolve/test/symlinks.js @@ -0,0 +1,56 @@ +var path = require('path'); +var fs = require('fs'); +var test = require('tape'); +var resolve = require('../'); + +var symlinkDir = path.join(__dirname, 'resolver', 'symlinked', 'symlink'); +try { + fs.unlinkSync(symlinkDir); +} catch (err) {} +try { + fs.symlinkSync('./_/symlink_target', symlinkDir, 'dir'); +} catch (err) { + // if fails then it is probably on Windows and lets try to create a junction + fs.symlinkSync(path.join(__dirname, 'resolver', 'symlinked', '_', 'symlink_target') + '\\', symlinkDir, 'junction'); +} + +test('symlink', function (t) { + t.plan(2); + + resolve('foo', { basedir: symlinkDir, preserveSymlinks: false }, function (err, res, pkg) { + t.error(err); + t.equal(res, path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js')); + }); +}); + +test('sync symlink when preserveSymlinks = true', function (t) { + t.plan(4); + + resolve('foo', { basedir: symlinkDir }, function (err, res, pkg) { + t.ok(err, 'there is an error'); + t.notOk(res, 'no result'); + + t.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve'); + t.equal( + err && err.message, + 'Cannot find module \'foo\' from \'' + symlinkDir + '\'', + 'can not find nonexistent module' + ); + }); +}); + +test('sync symlink', function (t) { + var start = new Date(); + t.doesNotThrow(function () { + t.equal(resolve.sync('foo', { basedir: symlinkDir, preserveSymlinks: false }), path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js')); + }); + t.ok(new Date() - start < 50, 'resolve.sync timedout'); + t.end(); +}); + +test('sync symlink when preserveSymlinks = true', function (t) { + t.throws(function () { + resolve.sync('foo', { basedir: symlinkDir }); + }, /Cannot find module 'foo'/); + t.end(); +}); diff --git a/deps/npm/node_modules/normalize-package-data/package.json b/deps/npm/node_modules/normalize-package-data/package.json index 37151c79c9f833..a408d8c0ab602d 100644 --- a/deps/npm/node_modules/normalize-package-data/package.json +++ b/deps/npm/node_modules/normalize-package-data/package.json @@ -1,36 +1,34 @@ { - "_args": [ - [ - "normalize-package-data@2.4.0", - "/Users/rebecca/code/npm" - ] - ], - "_from": "normalize-package-data@2.4.0", - "_id": "normalize-package-data@2.4.0", + "_from": "normalize-package-data@2.5.0", + "_id": "normalize-package-data@2.5.0", "_inBundle": false, - "_integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "_integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "_location": "/normalize-package-data", - "_phantomChildren": {}, + "_phantomChildren": { + "path-parse": "1.0.6" + }, "_requested": { "type": "version", "registry": true, - "raw": "normalize-package-data@2.4.0", + "raw": "normalize-package-data@2.5.0", "name": "normalize-package-data", "escapedName": "normalize-package-data", - "rawSpec": "2.4.0", + "rawSpec": "2.5.0", "saveSpec": null, - "fetchSpec": "2.4.0" + "fetchSpec": "2.5.0" }, "_requiredBy": [ + "#USER", "/", - "/npm-registry-client", + "/libnpmpublish", "/pacote", "/read-package-json", "/read-pkg" ], - "_resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "_spec": "2.4.0", - "_where": "/Users/rebecca/code/npm", + "_resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "_shasum": "e66db1838b200c1dfc233225d12cb36520e234a8", + "_spec": "normalize-package-data@2.5.0", + "_where": "/Users/aeschright/code/npm-release", "author": { "name": "Meryn Stol", "email": "merynstol@gmail.com" @@ -38,6 +36,7 @@ "bugs": { "url": "https://github.com/npm/normalize-package-data/issues" }, + "bundleDependencies": false, "contributors": [ { "name": "Isaac Z. Schlueter", @@ -54,14 +53,15 @@ ], "dependencies": { "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", + "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" }, + "deprecated": false, "description": "Normalizes data that can be found in package.json files.", "devDependencies": { - "async": "^1.5.0", - "tap": "^2.2.0", + "async": "^2.6.1", + "tap": "^12.4.0", "underscore": "^1.8.3" }, "files": [ @@ -80,5 +80,5 @@ "scripts": { "test": "tap test/*.js" }, - "version": "2.4.0" + "version": "2.5.0" } diff --git a/deps/npm/node_modules/npm-bundled/index.js b/deps/npm/node_modules/npm-bundled/index.js index c0c5f60cc0edf7..bde0acd164b7d1 100644 --- a/deps/npm/node_modules/npm-bundled/index.js +++ b/deps/npm/node_modules/npm-bundled/index.js @@ -43,6 +43,18 @@ class BundleWalker extends EE { this.bundle = null } + addListener (ev, fn) { + return this.on(ev, fn) + } + + on (ev, fn) { + const ret = super.on(ev, fn) + if (ev === 'done' && this.didDone) { + this.emit('done', this.result) + } + return ret + } + done () { if (!this.didDone) { this.didDone = true @@ -57,7 +69,7 @@ class BundleWalker extends EE { } start () { - const pj = this.path + '/package.json' + const pj = path.resolve(this.path, 'package.json') if (this.packageJsonCache.has(pj)) this.onPackage(this.packageJsonCache.get(pj)) else diff --git a/deps/npm/node_modules/npm-bundled/package.json b/deps/npm/node_modules/npm-bundled/package.json index 4c46838ce476a0..48297374004536 100644 --- a/deps/npm/node_modules/npm-bundled/package.json +++ b/deps/npm/node_modules/npm-bundled/package.json @@ -1,8 +1,8 @@ { "_from": "npm-bundled@^1.0.1", - "_id": "npm-bundled@1.0.5", + "_id": "npm-bundled@1.0.6", "_inBundle": false, - "_integrity": "sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g==", + "_integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", "_location": "/npm-bundled", "_phantomChildren": {}, "_requested": { @@ -18,10 +18,10 @@ "_requiredBy": [ "/npm-packlist" ], - "_resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.5.tgz", - "_shasum": "3c1732b7ba936b3a10325aef616467c0ccbcc979", + "_resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "_shasum": "e7ba9aadcef962bb61248f91721cd932b3fe6bdd", "_spec": "npm-bundled@^1.0.1", - "_where": "/Users/zkat/Documents/code/work/npm/node_modules/npm-packlist", + "_where": "/Users/aeschright/code/npm-release/node_modules/npm-packlist", "author": { "name": "Isaac Z. Schlueter", "email": "i@izs.me", @@ -56,5 +56,5 @@ "preversion": "npm test", "test": "tap test/*.js -J --100" }, - "version": "1.0.5" + "version": "1.0.6" } diff --git a/deps/npm/node_modules/npm-packlist/index.js b/deps/npm/node_modules/npm-packlist/index.js index 110a344cb04d96..5cbe011fb66e89 100644 --- a/deps/npm/node_modules/npm-packlist/index.js +++ b/deps/npm/node_modules/npm-packlist/index.js @@ -38,7 +38,13 @@ const defaultRules = [ '._*', '*.orig', 'package-lock.json', + 'yarn.lock', 'archived-packages/**', + 'core', + '*.core', + '*.vgcore', + 'vgcore.*', + 'core.+([0-9])', ] // a decorator that applies our custom rules to an ignore walker @@ -136,13 +142,21 @@ const npmWalker = Class => class Walker extends Class { onPackageJson (ig, pkg, then) { this.packageJsonCache.set(ig, pkg) - // if there's a browser or main, make sure we don't ignore it + // if there's a bin, browser or main, make sure we don't ignore it const rules = [ pkg.browser ? '!' + pkg.browser : '', pkg.main ? '!' + pkg.main : '', - '!@(readme|copying|license|licence|notice|changes|changelog|history){,.*}' - ].filter(f => f).join('\n') + '\n' - super.onReadIgnoreFile(packageNecessaryRules, rules, _=>_) + '!@(readme|copying|license|licence|notice|changes|changelog|history){,.*[^~$]}' + ] + if (pkg.bin) + if (typeof pkg.bin === "object") + for (const key in pkg.bin) + rules.push('!' + pkg.bin[key]) + else + rules.push('!' + pkg.bin) + + const data = rules.filter(f => f).join('\n') + '\n' + super.onReadIgnoreFile(packageNecessaryRules, data, _=>_) if (Array.isArray(pkg.files)) super.onReadIgnoreFile('package.json', '*\n' + pkg.files.map( @@ -163,7 +177,8 @@ const npmWalker = Class => class Walker extends Class { onReadIgnoreFile (file, data, then) { if (file === 'package.json') try { - this.onPackageJson(file, JSON.parse(data), then) + const ig = path.resolve(this.path, file) + this.onPackageJson(ig, JSON.parse(data), then) } catch (er) { // ignore package.json files that are not json then() @@ -193,12 +208,13 @@ class WalkerSync extends npmWalker(IgnoreWalkerSync) { const walk = (options, callback) => { options = options || {} const p = new Promise((resolve, reject) => { - const bw = new BundleWalker(options).start() + const bw = new BundleWalker(options) bw.on('done', bundled => { options.bundled = bundled options.packageJsonCache = bw.packageJsonCache new Walker(options).on('done', resolve).on('error', reject).start() }) + bw.start() }) return callback ? p.then(res => callback(null, res), callback) : p } diff --git a/deps/npm/node_modules/npm-packlist/package.json b/deps/npm/node_modules/npm-packlist/package.json index d37a7bd1bb4f61..20b37c55b5e8c5 100644 --- a/deps/npm/node_modules/npm-packlist/package.json +++ b/deps/npm/node_modules/npm-packlist/package.json @@ -1,29 +1,29 @@ { - "_from": "npm-packlist@1.2.0", - "_id": "npm-packlist@1.2.0", + "_from": "npm-packlist@1.3.0", + "_id": "npm-packlist@1.3.0", "_inBundle": false, - "_integrity": "sha512-7Mni4Z8Xkx0/oegoqlcao/JpPCPEMtUvsmB0q7mgvlMinykJLSRTYuFqoQLYgGY8biuxIeiHO+QNJKbCfljewQ==", + "_integrity": "sha512-qPBc6CnxEzpOcc4bjoIBJbYdy0D/LFFPUdxvfwor4/w3vxeE0h6TiOVurCEPpQ6trjN77u/ShyfeJGsbAfB3dA==", "_location": "/npm-packlist", "_phantomChildren": {}, "_requested": { "type": "version", "registry": true, - "raw": "npm-packlist@1.2.0", + "raw": "npm-packlist@1.3.0", "name": "npm-packlist", "escapedName": "npm-packlist", - "rawSpec": "1.2.0", + "rawSpec": "1.3.0", "saveSpec": null, - "fetchSpec": "1.2.0" + "fetchSpec": "1.3.0" }, "_requiredBy": [ "#USER", "/", "/pacote" ], - "_resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.2.0.tgz", - "_shasum": "55a60e793e272f00862c7089274439a4cc31fc7f", - "_spec": "npm-packlist@1.2.0", - "_where": "/Users/aeschright/code/cli", + "_resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.3.0.tgz", + "_shasum": "7f01e8e44408341379ca98cfd756e7b29bd2626c", + "_spec": "npm-packlist@1.3.0", + "_where": "/Users/aeschright/code/npm-release", "author": { "name": "Isaac Z. Schlueter", "email": "i@izs.me", @@ -64,5 +64,5 @@ "preversion": "npm test", "test": "tap test/*.js --100 -J" }, - "version": "1.2.0" + "version": "1.3.0" } diff --git a/deps/npm/node_modules/npm-registry-fetch/CHANGELOG.md b/deps/npm/node_modules/npm-registry-fetch/CHANGELOG.md index 71232eff75c0ef..56d849a7730371 100644 --- a/deps/npm/node_modules/npm-registry-fetch/CHANGELOG.md +++ b/deps/npm/node_modules/npm-registry-fetch/CHANGELOG.md @@ -2,6 +2,16 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +# [3.9.0](https://github.com/npm/registry-fetch/compare/v3.8.0...v3.9.0) (2019-01-24) + + +### Features + +* **auth:** support username:password encoded legacy _auth ([a91f90c](https://github.com/npm/registry-fetch/commit/a91f90c)) + + + # [3.8.0](https://github.com/npm/registry-fetch/compare/v3.7.0...v3.8.0) (2018-08-23) diff --git a/deps/npm/node_modules/npm-registry-fetch/auth.js b/deps/npm/node_modules/npm-registry-fetch/auth.js index fa696b97ddee5d..d583982d0a8b2e 100644 --- a/deps/npm/node_modules/npm-registry-fetch/auth.js +++ b/deps/npm/node_modules/npm-registry-fetch/auth.js @@ -25,6 +25,12 @@ function getAuth (registry, opts) { if (AUTH.password) { AUTH.password = Buffer.from(AUTH.password, 'base64').toString('utf8') } + if (AUTH._auth && !(AUTH.username && AUTH.password)) { + let auth = Buffer.from(AUTH._auth, 'base64').toString() + auth = auth.split(':') + AUTH.username = auth.shift() + AUTH.password = auth.join(':') + } AUTH.alwaysAuth = AUTH.alwaysAuth === 'false' ? false : !!AUTH.alwaysAuth return AUTH } diff --git a/deps/npm/node_modules/npm-registry-fetch/package.json b/deps/npm/node_modules/npm-registry-fetch/package.json index 81a00978e2e4e8..0ffa9a8b9e823b 100644 --- a/deps/npm/node_modules/npm-registry-fetch/package.json +++ b/deps/npm/node_modules/npm-registry-fetch/package.json @@ -1,8 +1,8 @@ { "_from": "npm-registry-fetch@latest", - "_id": "npm-registry-fetch@3.8.0", + "_id": "npm-registry-fetch@3.9.0", "_inBundle": false, - "_integrity": "sha512-hrw8UMD+Nob3Kl3h8Z/YjmKamb1gf7D1ZZch2otrIXM3uFLB5vjEY6DhMlq80z/zZet6eETLbOXcuQudCB3Zpw==", + "_integrity": "sha512-srwmt8YhNajAoSAaDWndmZgx89lJwIZ1GWxOuckH4Coek4uHv5S+o/l9FLQe/awA+JwTnj4FJHldxhlXdZEBmw==", "_location": "/npm-registry-fetch", "_phantomChildren": {}, "_requested": { @@ -18,12 +18,18 @@ "_requiredBy": [ "#USER", "/", + "/libnpm", "/libnpmaccess", "/libnpmhook", + "/libnpmorg", + "/libnpmpublish", + "/libnpmsearch", + "/libnpmteam", + "/npm-profile", "/pacote" ], - "_resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-3.8.0.tgz", - "_shasum": "aa7d9a7c92aff94f48dba0984bdef4bd131c88cc", + "_resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-3.9.0.tgz", + "_shasum": "44d841780e2833f06accb34488f8c7450d1a6856", "_spec": "npm-registry-fetch@latest", "_where": "/Users/zkat/Documents/code/work/npm", "author": { @@ -92,5 +98,5 @@ "update-coc": "weallbehave -o . && git add CODE_OF_CONDUCT.md && git commit -m 'docs(coc): updated CODE_OF_CONDUCT.md'", "update-contrib": "weallcontribute -o . && git add CONTRIBUTING.md && git commit -m 'docs(contributing): updated CONTRIBUTING.md'" }, - "version": "3.8.0" + "version": "3.9.0" } diff --git a/deps/npm/node_modules/pacote/CHANGELOG.md b/deps/npm/node_modules/pacote/CHANGELOG.md index 50a0dbde402cb0..a7784d9bb11930 100644 --- a/deps/npm/node_modules/pacote/CHANGELOG.md +++ b/deps/npm/node_modules/pacote/CHANGELOG.md @@ -2,6 +2,16 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +## [9.4.1](https://github.com/zkat/pacote/compare/v9.4.0...v9.4.1) (2019-01-24) + + +### Bug Fixes + +* **directory, finalize-manifest:** strip byte order marker from JSON ([723ad63](https://github.com/zkat/pacote/commit/723ad63)) + + + # [9.4.0](https://github.com/zkat/pacote/compare/v9.3.0...v9.4.0) (2019-01-14) diff --git a/deps/npm/node_modules/pacote/lib/fetchers/directory.js b/deps/npm/node_modules/pacote/lib/fetchers/directory.js index 83f3d7d558cb15..3d4ec24c83f278 100644 --- a/deps/npm/node_modules/pacote/lib/fetchers/directory.js +++ b/deps/npm/node_modules/pacote/lib/fetchers/directory.js @@ -5,6 +5,7 @@ const BB = require('bluebird') const Fetcher = require('../fetch') const glob = BB.promisify(require('glob')) const packDir = require('../util/pack-dir') +const readJson = require('../util/read-json') const path = require('path') const pipe = BB.promisify(require('mississippi').pipe) const through = require('mississippi').through @@ -34,11 +35,11 @@ Fetcher.impl(fetchDirectory, { const pkgPath = path.join(spec.fetchSpec, 'package.json') const srPath = path.join(spec.fetchSpec, 'npm-shrinkwrap.json') return BB.join( - readFileAsync(pkgPath).then(JSON.parse).catch({ code: 'ENOENT' }, err => { + readFileAsync(pkgPath).then(readJson).catch({ code: 'ENOENT' }, err => { err.code = 'ENOPACKAGEJSON' throw err }), - readFileAsync(srPath).then(JSON.parse).catch({ code: 'ENOENT' }, () => null), + readFileAsync(srPath).then(readJson).catch({ code: 'ENOENT' }, () => null), (pkg, sr) => { pkg._shrinkwrap = sr pkg._hasShrinkwrap = !!sr diff --git a/deps/npm/node_modules/pacote/lib/finalize-manifest.js b/deps/npm/node_modules/pacote/lib/finalize-manifest.js index 80b379898fe4c8..f047517945192f 100644 --- a/deps/npm/node_modules/pacote/lib/finalize-manifest.js +++ b/deps/npm/node_modules/pacote/lib/finalize-manifest.js @@ -13,6 +13,7 @@ const path = require('path') const pipe = BB.promisify(require('mississippi').pipe) const ssri = require('ssri') const tar = require('tar') +const readJson = require('./util/read-json') // `finalizeManifest` takes as input the various kinds of manifests that // manifest handlers ('lib/fetchers/*.js#manifest()') return, and makes sure @@ -212,7 +213,7 @@ function jsonFromStream (filename, dataStream) { entry.on('error', cb) finished(entry).then(() => { try { - cb(null, JSON.parse(data)) + cb(null, readJson(data)) } catch (err) { cb(err) } diff --git a/deps/npm/node_modules/pacote/lib/util/read-json.js b/deps/npm/node_modules/pacote/lib/util/read-json.js new file mode 100644 index 00000000000000..32fffbc53746b5 --- /dev/null +++ b/deps/npm/node_modules/pacote/lib/util/read-json.js @@ -0,0 +1,15 @@ +'use strict' + +module.exports = function (content) { + // Code also yanked from read-package-json. + function stripBOM (content) { + content = content.toString() + // Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) + // because the buffer-to-string conversion in `fs.readFileSync()` + // translates it to FEFF, the UTF-16 BOM. + if (content.charCodeAt(0) === 0xFEFF) return content.slice(1) + return content + } + + return JSON.parse(stripBOM(content)) +} diff --git a/deps/npm/node_modules/pacote/package.json b/deps/npm/node_modules/pacote/package.json index 32e8a07b094e1b..96ae38bd682a60 100644 --- a/deps/npm/node_modules/pacote/package.json +++ b/deps/npm/node_modules/pacote/package.json @@ -1,8 +1,8 @@ { - "_from": "pacote@9.4.0", - "_id": "pacote@9.4.0", + "_from": "pacote@9.4.1", + "_id": "pacote@9.4.1", "_inBundle": false, - "_integrity": "sha512-WQ1KL/phGMkedYEQx9ODsjj7xvwLSpdFJJdEXrLyw5SILMxcTNt5DTxT2Z93fXuLFYJBlZJdnwdalrQdB/rX5w==", + "_integrity": "sha512-YKSRsQqmeHxgra0KCdWA2FtVxDPUlBiCdmew+mSe44pzlx5t1ViRMWiQg18T+DREA+vSqYfKzynaToFR4hcKHw==", "_location": "/pacote", "_phantomChildren": { "safe-buffer": "5.1.2" @@ -10,12 +10,12 @@ "_requested": { "type": "version", "registry": true, - "raw": "pacote@9.4.0", + "raw": "pacote@9.4.1", "name": "pacote", "escapedName": "pacote", - "rawSpec": "9.4.0", + "rawSpec": "9.4.1", "saveSpec": null, - "fetchSpec": "9.4.0" + "fetchSpec": "9.4.1" }, "_requiredBy": [ "#USER", @@ -23,10 +23,10 @@ "/libcipm", "/libnpm" ], - "_resolved": "https://registry.npmjs.org/pacote/-/pacote-9.4.0.tgz", - "_shasum": "af979abdeb175cd347c3e33be3241af1ed254807", - "_spec": "pacote@9.4.0", - "_where": "/Users/aeschright/code/cli", + "_resolved": "https://registry.npmjs.org/pacote/-/pacote-9.4.1.tgz", + "_shasum": "f0af2a52d241bce523d39280ac810c671db62279", + "_spec": "pacote@9.4.1", + "_where": "/Users/aeschright/code/npm-release", "author": { "name": "Kat Marchán", "email": "kzm@sykosomatic.org" @@ -116,5 +116,5 @@ "update-coc": "weallbehave -o . && git add CODE_OF_CONDUCT.md && git commit -m 'docs(coc): updated CODE_OF_CONDUCT.md'", "update-contrib": "weallcontribute -o . && git add CONTRIBUTING.md && git commit -m 'docs(contributing): updated CONTRIBUTING.md'" }, - "version": "9.4.0" + "version": "9.4.1" } diff --git a/deps/npm/node_modules/path-parse/.travis.yml b/deps/npm/node_modules/path-parse/.travis.yml new file mode 100644 index 00000000000000..dae31da968ba1f --- /dev/null +++ b/deps/npm/node_modules/path-parse/.travis.yml @@ -0,0 +1,9 @@ +language: node_js +node_js: + - "0.12" + - "0.11" + - "0.10" + - "0.10.12" + - "0.8" + - "0.6" + - "iojs" diff --git a/deps/npm/node_modules/is-builtin-module/license b/deps/npm/node_modules/path-parse/LICENSE similarity index 85% rename from deps/npm/node_modules/is-builtin-module/license rename to deps/npm/node_modules/path-parse/LICENSE index 654d0bfe943437..810f3dbea83b53 100644 --- a/deps/npm/node_modules/is-builtin-module/license +++ b/deps/npm/node_modules/path-parse/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) 2015 Javier Blanco Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -9,13 +9,13 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/deps/npm/node_modules/path-parse/README.md b/deps/npm/node_modules/path-parse/README.md new file mode 100644 index 00000000000000..05097f86aef364 --- /dev/null +++ b/deps/npm/node_modules/path-parse/README.md @@ -0,0 +1,42 @@ +# path-parse [![Build Status](https://travis-ci.org/jbgutierrez/path-parse.svg?branch=master)](https://travis-ci.org/jbgutierrez/path-parse) + +> Node.js [`path.parse(pathString)`](https://nodejs.org/api/path.html#path_path_parse_pathstring) [ponyfill](https://ponyfill.com). + +## Install + +``` +$ npm install --save path-parse +``` + +## Usage + +```js +var pathParse = require('path-parse'); + +pathParse('/home/user/dir/file.txt'); +//=> { +// root : "/", +// dir : "/home/user/dir", +// base : "file.txt", +// ext : ".txt", +// name : "file" +// } +``` + +## API + +See [`path.parse(pathString)`](https://nodejs.org/api/path.html#path_path_parse_pathstring) docs. + +### pathParse(path) + +### pathParse.posix(path) + +The Posix specific version. + +### pathParse.win32(path) + +The Windows specific version. + +## License + +MIT © [Javier Blanco](http://jbgutierrez.info) diff --git a/deps/npm/node_modules/path-parse/index.js b/deps/npm/node_modules/path-parse/index.js new file mode 100644 index 00000000000000..3b7601fe494eed --- /dev/null +++ b/deps/npm/node_modules/path-parse/index.js @@ -0,0 +1,93 @@ +'use strict'; + +var isWindows = process.platform === 'win32'; + +// Regex to split a windows path into three parts: [*, device, slash, +// tail] windows-only +var splitDeviceRe = + /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; + +// Regex to split the tail part of the above into [*, dir, basename, ext] +var splitTailRe = + /^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/; + +var win32 = {}; + +// Function to split a filename into [root, dir, basename, ext] +function win32SplitPath(filename) { + // Separate device+slash from tail + var result = splitDeviceRe.exec(filename), + device = (result[1] || '') + (result[2] || ''), + tail = result[3] || ''; + // Split the tail into dir, basename and extension + var result2 = splitTailRe.exec(tail), + dir = result2[1], + basename = result2[2], + ext = result2[3]; + return [device, dir, basename, ext]; +} + +win32.parse = function(pathString) { + if (typeof pathString !== 'string') { + throw new TypeError( + "Parameter 'pathString' must be a string, not " + typeof pathString + ); + } + var allParts = win32SplitPath(pathString); + if (!allParts || allParts.length !== 4) { + throw new TypeError("Invalid path '" + pathString + "'"); + } + return { + root: allParts[0], + dir: allParts[0] + allParts[1].slice(0, -1), + base: allParts[2], + ext: allParts[3], + name: allParts[2].slice(0, allParts[2].length - allParts[3].length) + }; +}; + + + +// Split a filename into [root, dir, basename, ext], unix version +// 'root' is just a slash, or nothing. +var splitPathRe = + /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; +var posix = {}; + + +function posixSplitPath(filename) { + return splitPathRe.exec(filename).slice(1); +} + + +posix.parse = function(pathString) { + if (typeof pathString !== 'string') { + throw new TypeError( + "Parameter 'pathString' must be a string, not " + typeof pathString + ); + } + var allParts = posixSplitPath(pathString); + if (!allParts || allParts.length !== 4) { + throw new TypeError("Invalid path '" + pathString + "'"); + } + allParts[1] = allParts[1] || ''; + allParts[2] = allParts[2] || ''; + allParts[3] = allParts[3] || ''; + + return { + root: allParts[0], + dir: allParts[0] + allParts[1].slice(0, -1), + base: allParts[2], + ext: allParts[3], + name: allParts[2].slice(0, allParts[2].length - allParts[3].length) + }; +}; + + +if (isWindows) + module.exports = win32.parse; +else /* posix */ + module.exports = posix.parse; + +module.exports.posix = posix.parse; +module.exports.win32 = win32.parse; diff --git a/deps/npm/node_modules/path-parse/package.json b/deps/npm/node_modules/path-parse/package.json new file mode 100644 index 00000000000000..56d19c753c875b --- /dev/null +++ b/deps/npm/node_modules/path-parse/package.json @@ -0,0 +1,65 @@ +{ + "_args": [ + [ + "path-parse@1.0.6", + "/Users/aeschright/code/npm-release" + ] + ], + "_development": true, + "_from": "path-parse@1.0.6", + "_id": "path-parse@1.0.6", + "_inBundle": false, + "_integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "_location": "/path-parse", + "_phantomChildren": {}, + "_requested": { + "type": "version", + "registry": true, + "raw": "path-parse@1.0.6", + "name": "path-parse", + "escapedName": "path-parse", + "rawSpec": "1.0.6", + "saveSpec": null, + "fetchSpec": "1.0.6" + }, + "_requiredBy": [ + "/resolve" + ], + "_resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "_spec": "1.0.6", + "_where": "/Users/aeschright/code/npm-release", + "author": { + "name": "Javier Blanco", + "email": "http://jbgutierrez.info" + }, + "bugs": { + "url": "https://github.com/jbgutierrez/path-parse/issues" + }, + "description": "Node.js path.parse() ponyfill", + "homepage": "https://github.com/jbgutierrez/path-parse#readme", + "keywords": [ + "path", + "paths", + "file", + "dir", + "parse", + "built-in", + "util", + "utils", + "core", + "ponyfill", + "polyfill", + "shim" + ], + "license": "MIT", + "main": "index.js", + "name": "path-parse", + "repository": { + "type": "git", + "url": "git+https://github.com/jbgutierrez/path-parse.git" + }, + "scripts": { + "test": "node test.js" + }, + "version": "1.0.6" +} diff --git a/deps/npm/node_modules/path-parse/test.js b/deps/npm/node_modules/path-parse/test.js new file mode 100644 index 00000000000000..0b30c123936395 --- /dev/null +++ b/deps/npm/node_modules/path-parse/test.js @@ -0,0 +1,77 @@ +var assert = require('assert'); +var pathParse = require('./index'); + +var winParseTests = [ + [{ root: 'C:\\', dir: 'C:\\path\\dir', base: 'index.html', ext: '.html', name: 'index' }, 'C:\\path\\dir\\index.html'], + [{ root: 'C:\\', dir: 'C:\\another_path\\DIR\\1\\2\\33', base: 'index', ext: '', name: 'index' }, 'C:\\another_path\\DIR\\1\\2\\33\\index'], + [{ root: '', dir: 'another_path\\DIR with spaces\\1\\2\\33', base: 'index', ext: '', name: 'index' }, 'another_path\\DIR with spaces\\1\\2\\33\\index'], + [{ root: '\\', dir: '\\foo', base: 'C:', ext: '', name: 'C:' }, '\\foo\\C:'], + [{ root: '', dir: '', base: 'file', ext: '', name: 'file' }, 'file'], + [{ root: '', dir: '.', base: 'file', ext: '', name: 'file' }, '.\\file'], + + // unc + [{ root: '\\\\server\\share\\', dir: '\\\\server\\share\\', base: 'file_path', ext: '', name: 'file_path' }, '\\\\server\\share\\file_path'], + [{ root: '\\\\server two\\shared folder\\', dir: '\\\\server two\\shared folder\\', base: 'file path.zip', ext: '.zip', name: 'file path' }, '\\\\server two\\shared folder\\file path.zip'], + [{ root: '\\\\teela\\admin$\\', dir: '\\\\teela\\admin$\\', base: 'system32', ext: '', name: 'system32' }, '\\\\teela\\admin$\\system32'], + [{ root: '\\\\?\\UNC\\', dir: '\\\\?\\UNC\\server', base: 'share', ext: '', name: 'share' }, '\\\\?\\UNC\\server\\share'] +]; + +var winSpecialCaseFormatTests = [ + [{dir: 'some\\dir'}, 'some\\dir\\'], + [{base: 'index.html'}, 'index.html'], + [{}, ''] +]; + +var unixParseTests = [ + [{ root: '/', dir: '/home/user/dir', base: 'file.txt', ext: '.txt', name: 'file' }, '/home/user/dir/file.txt'], + [{ root: '/', dir: '/home/user/a dir', base: 'another File.zip', ext: '.zip', name: 'another File' }, '/home/user/a dir/another File.zip'], + [{ root: '/', dir: '/home/user/a dir/', base: 'another&File.', ext: '.', name: 'another&File' }, '/home/user/a dir//another&File.'], + [{ root: '/', dir: '/home/user/a$$$dir/', base: 'another File.zip', ext: '.zip', name: 'another File' }, '/home/user/a$$$dir//another File.zip'], + [{ root: '', dir: 'user/dir', base: 'another File.zip', ext: '.zip', name: 'another File' }, 'user/dir/another File.zip'], + [{ root: '', dir: '', base: 'file', ext: '', name: 'file' }, 'file'], + [{ root: '', dir: '', base: '.\\file', ext: '', name: '.\\file' }, '.\\file'], + [{ root: '', dir: '.', base: 'file', ext: '', name: 'file' }, './file'], + [{ root: '', dir: '', base: 'C:\\foo', ext: '', name: 'C:\\foo' }, 'C:\\foo'] +]; + +var unixSpecialCaseFormatTests = [ + [{dir: 'some/dir'}, 'some/dir/'], + [{base: 'index.html'}, 'index.html'], + [{}, ''] +]; + +var errors = [ + {input: null, message: /Parameter 'pathString' must be a string, not/}, + {input: {}, message: /Parameter 'pathString' must be a string, not object/}, + {input: true, message: /Parameter 'pathString' must be a string, not boolean/}, + {input: 1, message: /Parameter 'pathString' must be a string, not number/}, + {input: undefined, message: /Parameter 'pathString' must be a string, not undefined/}, +]; + +checkParseFormat(pathParse.win32, winParseTests); +checkParseFormat(pathParse.posix, unixParseTests); +checkErrors(pathParse.win32); +checkErrors(pathParse.posix); + +function checkErrors(parse) { + errors.forEach(function(errorCase) { + try { + parse(errorCase.input); + } catch(err) { + assert.ok(err instanceof TypeError); + assert.ok( + errorCase.message.test(err.message), + 'expected ' + errorCase.message + ' to match ' + err.message + ); + return; + } + + assert.fail('should have thrown'); + }); +} + +function checkParseFormat(parse, testCases) { + testCases.forEach(function(testCase) { + assert.deepEqual(parse(testCase[1]), testCase[0]); + }); +} diff --git a/deps/npm/node_modules/promise-retry/.jshintrc b/deps/npm/node_modules/promise-retry/.jshintrc new file mode 100644 index 00000000000000..d867d496c3dfa3 --- /dev/null +++ b/deps/npm/node_modules/promise-retry/.jshintrc @@ -0,0 +1,64 @@ +{ + "predef": [ + "console", + "require", + "define", + "describe", + "it", + "before", + "beforeEach", + "after", + "afterEach", + "Promise" + ], + + "node": true, + "devel": true, + + "bitwise": true, + "curly": true, + "eqeqeq": true, + "forin": false, + "immed": true, + "latedef": false, + "newcap": true, + "noarg": true, + "noempty": false, + "nonew": true, + "plusplus": false, + "regexp": true, + "undef": true, + "unused": true, + "quotmark": "single", + "strict": true, + "trailing": true, + + "asi": false, + "boss": false, + "debug": false, + "eqnull": true, + "es5": false, + "esnext": false, + "evil": false, + "expr": true, + "funcscope": false, + "globalstrict": false, + "iterator": false, + "lastsemic": false, + "laxbreak": false, + "laxcomma": false, + "loopfunc": true, + "multistr": false, + "onecase": true, + "regexdash": false, + "scripturl": false, + "smarttabs": false, + "shadow": false, + "sub": false, + "supernew": false, + "validthis": false, + + "nomen": false, + "onevar": false, + "white": true +} diff --git a/deps/npm/node_modules/prr/.jshintrc b/deps/npm/node_modules/prr/.jshintrc new file mode 100644 index 00000000000000..6a7a956c065137 --- /dev/null +++ b/deps/npm/node_modules/prr/.jshintrc @@ -0,0 +1,61 @@ +{ + "predef": [ ] + , "bitwise": false + , "camelcase": false + , "curly": false + , "eqeqeq": false + , "forin": false + , "immed": false + , "latedef": false + , "newcap": true + , "noarg": true + , "noempty": true + , "nonew": true + , "plusplus": false + , "quotmark": true + , "regexp": false + , "undef": true + , "unused": true + , "strict": false + , "trailing": true + , "maxlen": 120 + , "asi": true + , "boss": true + , "debug": true + , "eqnull": true + , "es5": true + , "esnext": true + , "evil": true + , "expr": true + , "funcscope": false + , "globalstrict": false + , "iterator": false + , "lastsemic": true + , "laxbreak": true + , "laxcomma": true + , "loopfunc": true + , "multistr": false + , "onecase": false + , "proto": false + , "regexdash": false + , "scripturl": true + , "smarttabs": false + , "shadow": false + , "sub": true + , "supernew": false + , "validthis": true + , "browser": true + , "couch": false + , "devel": false + , "dojo": false + , "mootools": false + , "node": true + , "nonstandard": true + , "prototypejs": false + , "rhino": false + , "worker": true + , "wsh": false + , "nomen": false + , "onevar": true + , "passfail": false +} \ No newline at end of file diff --git a/deps/npm/node_modules/psl/.eslintrc b/deps/npm/node_modules/psl/.eslintrc new file mode 100644 index 00000000000000..ebbcf70bf8531a --- /dev/null +++ b/deps/npm/node_modules/psl/.eslintrc @@ -0,0 +1,11 @@ +{ + "rules": { + "indent": [ 2, 2 ], + "padding-line-between-statements": "off", + "hapi/hapi-no-var": false + }, + "extends": "hapi", + "env": { + "mocha": true + } +} diff --git a/deps/npm/node_modules/qs/.eslintrc b/deps/npm/node_modules/qs/.eslintrc new file mode 100644 index 00000000000000..b7a87b93dfd730 --- /dev/null +++ b/deps/npm/node_modules/qs/.eslintrc @@ -0,0 +1,19 @@ +{ + "root": true, + + "extends": "@ljharb", + + "rules": { + "complexity": 0, + "consistent-return": 1, + "func-name-matching": 0, + "id-length": [2, { "min": 1, "max": 25, "properties": "never" }], + "indent": [2, 4], + "max-params": [2, 12], + "max-statements": [2, 45], + "no-continue": 1, + "no-magic-numbers": 0, + "no-restricted-syntax": [2, "BreakStatement", "DebuggerStatement", "ForInStatement", "LabeledStatement", "WithStatement"], + "operator-linebreak": [2, "before"], + } +} diff --git a/deps/npm/node_modules/qs/test/.eslintrc b/deps/npm/node_modules/qs/test/.eslintrc new file mode 100644 index 00000000000000..20175d64d9dbf7 --- /dev/null +++ b/deps/npm/node_modules/qs/test/.eslintrc @@ -0,0 +1,15 @@ +{ + "rules": { + "array-bracket-newline": 0, + "array-element-newline": 0, + "consistent-return": 2, + "max-lines": 0, + "max-nested-callbacks": [2, 3], + "max-statements": 0, + "no-buffer-constructor": 0, + "no-extend-native": 0, + "no-magic-numbers": 0, + "object-curly-newline": 0, + "sort-keys": 0 + } +} diff --git a/deps/npm/node_modules/read-package-tree/README.md b/deps/npm/node_modules/read-package-tree/README.md index d2248f82b55a9e..c8edffd2bcc2e4 100644 --- a/deps/npm/node_modules/read-package-tree/README.md +++ b/deps/npm/node_modules/read-package-tree/README.md @@ -1,5 +1,7 @@ # read-package-tree +[![Build Status](https://travis-ci.org/npm/read-package-tree.svg?branch=master)](https://travis-ci.org/npm/read-package-tree) + Read the contents of node_modules. ## USAGE diff --git a/deps/npm/node_modules/read-package-tree/package.json b/deps/npm/node_modules/read-package-tree/package.json index bb7295dadac684..948f096620033a 100644 --- a/deps/npm/node_modules/read-package-tree/package.json +++ b/deps/npm/node_modules/read-package-tree/package.json @@ -1,32 +1,29 @@ { - "_args": [ - [ - "read-package-tree@5.2.1", - "/Users/rebecca/code/npm" - ] - ], - "_from": "read-package-tree@5.2.1", - "_id": "read-package-tree@5.2.1", + "_from": "read-package-tree@latest", + "_id": "read-package-tree@5.2.2", "_inBundle": false, - "_integrity": "sha512-2CNoRoh95LxY47LvqrehIAfUVda2JbuFE/HaGYs42bNrGG+ojbw1h3zOcPcQ+1GQ3+rkzNndZn85u1XyZ3UsIA==", + "_integrity": "sha512-rW3XWUUkhdKmN2JKB4FL563YAgtINifso5KShykufR03nJ5loGFlkUMe1g/yxmqX073SoYYTsgXu7XdDinKZuA==", "_location": "/read-package-tree", "_phantomChildren": {}, "_requested": { - "type": "version", + "type": "tag", "registry": true, - "raw": "read-package-tree@5.2.1", + "raw": "read-package-tree@latest", "name": "read-package-tree", "escapedName": "read-package-tree", - "rawSpec": "5.2.1", + "rawSpec": "latest", "saveSpec": null, - "fetchSpec": "5.2.1" + "fetchSpec": "latest" }, "_requiredBy": [ - "/" + "#USER", + "/", + "/licensee" ], - "_resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.2.1.tgz", - "_spec": "5.2.1", - "_where": "/Users/rebecca/code/npm", + "_resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.2.2.tgz", + "_shasum": "4b6a0ef2d943c1ea36a578214c9a7f6b7424f7a8", + "_spec": "read-package-tree@latest", + "_where": "/Users/zkat/Documents/code/work/npm", "author": { "name": "Isaac Z. Schlueter", "email": "i@izs.me", @@ -35,6 +32,7 @@ "bugs": { "url": "https://github.com/npm/read-package-tree/issues" }, + "bundleDependencies": false, "dependencies": { "debuglog": "^1.0.1", "dezalgo": "^1.0.0", @@ -42,12 +40,13 @@ "read-package-json": "^2.0.0", "readdir-scoped-modules": "^1.0.0" }, + "deprecated": false, "description": "Read the contents of node_modules.", "devDependencies": { "archy": "^1.0.0", "mkdirp": "^0.5.1", "tacks": "^1.2.1", - "tap": "^6.3.0" + "tap": "^12.5.2" }, "directories": { "test": "test" @@ -66,5 +65,5 @@ "scripts": { "test": "tap test/*.js" }, - "version": "5.2.1" + "version": "5.2.2" } diff --git a/deps/npm/node_modules/read-package-tree/rpt.js b/deps/npm/node_modules/read-package-tree/rpt.js index c577ea18011868..fd43be9c22c0c3 100644 --- a/deps/npm/node_modules/read-package-tree/rpt.js +++ b/deps/npm/node_modules/read-package-tree/rpt.js @@ -47,9 +47,9 @@ function Node (pkg, logical, physical, er, cache, fromLink) { debug(node.constructor.name, dpath(physical), pkg && pkg._id) - const parent = path.dirname(logical) + const parent = path.basename(path.dirname(logical)) if (parent[0] === '@') { - node.name = path.basename(parent) + '/' + path.basename(logical) + node.name = parent + '/' + path.basename(logical) } else { node.name = path.basename(logical) } @@ -83,12 +83,11 @@ function Link (pkg, logical, physical, realpath, er, cache) { debug(this.constructor.name, dpath(physical), pkg && pkg._id) - const dir = path.dirname(logical) - const parent = path.dirname(dir) + const parent = path.basename(path.dirname(logical)) if (parent[0] === '@') { - this.name = path.basename(parent) + '/' + path.basename(dir) + this.name = parent + '/' + path.basename(logical) } else { - this.name = path.basename(dir) + this.name = path.basename(logical) } this.id = ID++ this.path = logical diff --git a/deps/npm/node_modules/require-directory/.jshintrc b/deps/npm/node_modules/require-directory/.jshintrc new file mode 100644 index 00000000000000..e14e4dcbd2975e --- /dev/null +++ b/deps/npm/node_modules/require-directory/.jshintrc @@ -0,0 +1,67 @@ +{ + "maxerr" : 50, + "bitwise" : true, + "camelcase" : true, + "curly" : true, + "eqeqeq" : true, + "forin" : true, + "immed" : true, + "indent" : 2, + "latedef" : true, + "newcap" : true, + "noarg" : true, + "noempty" : true, + "nonew" : true, + "plusplus" : true, + "quotmark" : true, + "undef" : true, + "unused" : true, + "strict" : true, + "trailing" : true, + "maxparams" : false, + "maxdepth" : false, + "maxstatements" : false, + "maxcomplexity" : false, + "maxlen" : false, + "asi" : false, + "boss" : false, + "debug" : false, + "eqnull" : true, + "es5" : false, + "esnext" : false, + "moz" : false, + "evil" : false, + "expr" : true, + "funcscope" : true, + "globalstrict" : true, + "iterator" : true, + "lastsemic" : false, + "laxbreak" : false, + "laxcomma" : false, + "loopfunc" : false, + "multistr" : false, + "proto" : false, + "scripturl" : false, + "smarttabs" : false, + "shadow" : false, + "sub" : false, + "supernew" : false, + "validthis" : false, + "browser" : true, + "couch" : false, + "devel" : true, + "dojo" : false, + "jquery" : false, + "mootools" : false, + "node" : true, + "nonstandard" : false, + "prototypejs" : false, + "rhino" : false, + "worker" : false, + "wsh" : false, + "yui" : false, + "nomen" : true, + "onevar" : true, + "passfail" : false, + "white" : true +} diff --git a/deps/npm/node_modules/unique-filename/.nyc_output/54942.json b/deps/npm/node_modules/unique-filename/.nyc_output/54942.json new file mode 100644 index 00000000000000..9e26dfeeb6e641 --- /dev/null +++ b/deps/npm/node_modules/unique-filename/.nyc_output/54942.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/deps/npm/node_modules/unique-filename/.nyc_output/54944.json b/deps/npm/node_modules/unique-filename/.nyc_output/54944.json new file mode 100644 index 00000000000000..3ce72e597b1cd3 --- /dev/null +++ b/deps/npm/node_modules/unique-filename/.nyc_output/54944.json @@ -0,0 +1 @@ +{"./index.js":{"path":"./index.js","s":{"1":1,"2":1,"3":1,"4":6},"b":{"1":[4,2]},"f":{"1":6},"fnMap":{"1":{"name":"(anonymous_1)","line":6,"loc":{"start":{"line":6,"column":17},"end":{"line":6,"column":51}}}},"statementMap":{"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":26}},"2":{"start":{"line":4,"column":0},"end":{"line":4,"column":39}},"3":{"start":{"line":6,"column":0},"end":{"line":8,"column":1}},"4":{"start":{"line":7,"column":2},"end":{"line":7,"column":77}}},"branchMap":{"1":{"line":7,"type":"cond-expr","locations":[{"start":{"line":7,"column":39},"end":{"line":7,"column":51}},{"start":{"line":7,"column":54},"end":{"line":7,"column":56}}]}}}} \ No newline at end of file diff --git a/deps/npm/node_modules/validate-npm-package-name/.nyc_output/aa4ee25ac41a9c3c7ee37ce965e6d1ac.json b/deps/npm/node_modules/validate-npm-package-name/.nyc_output/aa4ee25ac41a9c3c7ee37ce965e6d1ac.json new file mode 100644 index 00000000000000..8540780a8efbe5 --- /dev/null +++ b/deps/npm/node_modules/validate-npm-package-name/.nyc_output/aa4ee25ac41a9c3c7ee37ce965e6d1ac.json @@ -0,0 +1 @@ +{"/Users/chris/projects/npm/validate-npm-package-name/index.js":{"path":"/Users/chris/projects/npm/validate-npm-package-name/index.js","statementMap":{"0":{"start":{"line":3,"column":27},"end":{"line":3,"column":68}},"1":{"start":{"line":4,"column":15},"end":{"line":4,"column":34}},"2":{"start":{"line":5,"column":16},"end":{"line":8,"column":1}},"3":{"start":{"line":10,"column":15},"end":{"line":91,"column":1}},"4":{"start":{"line":11,"column":17},"end":{"line":11,"column":19}},"5":{"start":{"line":12,"column":15},"end":{"line":12,"column":17}},"6":{"start":{"line":14,"column":2},"end":{"line":17,"column":3}},"7":{"start":{"line":15,"column":4},"end":{"line":15,"column":38}},"8":{"start":{"line":16,"column":4},"end":{"line":16,"column":33}},"9":{"start":{"line":19,"column":2},"end":{"line":22,"column":3}},"10":{"start":{"line":20,"column":4},"end":{"line":20,"column":43}},"11":{"start":{"line":21,"column":4},"end":{"line":21,"column":33}},"12":{"start":{"line":24,"column":2},"end":{"line":27,"column":3}},"13":{"start":{"line":25,"column":4},"end":{"line":25,"column":40}},"14":{"start":{"line":26,"column":4},"end":{"line":26,"column":33}},"15":{"start":{"line":29,"column":2},"end":{"line":31,"column":3}},"16":{"start":{"line":30,"column":4},"end":{"line":30,"column":56}},"17":{"start":{"line":33,"column":2},"end":{"line":35,"column":3}},"18":{"start":{"line":34,"column":4},"end":{"line":34,"column":50}},"19":{"start":{"line":37,"column":2},"end":{"line":39,"column":3}},"20":{"start":{"line":38,"column":4},"end":{"line":38,"column":55}},"21":{"start":{"line":41,"column":2},"end":{"line":43,"column":3}},"22":{"start":{"line":42,"column":4},"end":{"line":42,"column":65}},"23":{"start":{"line":46,"column":2},"end":{"line":50,"column":4}},"24":{"start":{"line":47,"column":4},"end":{"line":49,"column":5}},"25":{"start":{"line":48,"column":6},"end":{"line":48,"column":61}},"26":{"start":{"line":55,"column":2},"end":{"line":59,"column":4}},"27":{"start":{"line":56,"column":4},"end":{"line":58,"column":5}},"28":{"start":{"line":57,"column":6},"end":{"line":57,"column":55}},"29":{"start":{"line":63,"column":2},"end":{"line":65,"column":3}},"30":{"start":{"line":64,"column":4},"end":{"line":64,"column":72}},"31":{"start":{"line":68,"column":2},"end":{"line":70,"column":3}},"32":{"start":{"line":69,"column":4},"end":{"line":69,"column":63}},"33":{"start":{"line":72,"column":2},"end":{"line":74,"column":3}},"34":{"start":{"line":73,"column":4},"end":{"line":73,"column":78}},"35":{"start":{"line":76,"column":2},"end":{"line":88,"column":3}},"36":{"start":{"line":78,"column":20},"end":{"line":78,"column":52}},"37":{"start":{"line":79,"column":4},"end":{"line":85,"column":5}},"38":{"start":{"line":80,"column":17},"end":{"line":80,"column":29}},"39":{"start":{"line":81,"column":16},"end":{"line":81,"column":28}},"40":{"start":{"line":82,"column":6},"end":{"line":84,"column":7}},"41":{"start":{"line":83,"column":8},"end":{"line":83,"column":37}},"42":{"start":{"line":87,"column":4},"end":{"line":87,"column":64}},"43":{"start":{"line":90,"column":2},"end":{"line":90,"column":31}},"44":{"start":{"line":93,"column":0},"end":{"line":93,"column":52}},"45":{"start":{"line":95,"column":11},"end":{"line":105,"column":1}},"46":{"start":{"line":96,"column":15},"end":{"line":101,"column":3}},"47":{"start":{"line":102,"column":2},"end":{"line":102,"column":53}},"48":{"start":{"line":102,"column":31},"end":{"line":102,"column":53}},"49":{"start":{"line":103,"column":2},"end":{"line":103,"column":49}},"50":{"start":{"line":103,"column":29},"end":{"line":103,"column":49}},"51":{"start":{"line":104,"column":2},"end":{"line":104,"column":15}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":10,"column":32},"end":{"line":10,"column":33}},"loc":{"start":{"line":10,"column":48},"end":{"line":91,"column":1}}},"1":{"name":"(anonymous_1)","decl":{"start":{"line":46,"column":20},"end":{"line":46,"column":21}},"loc":{"start":{"line":46,"column":47},"end":{"line":50,"column":3}}},"2":{"name":"(anonymous_2)","decl":{"start":{"line":55,"column":19},"end":{"line":55,"column":20}},"loc":{"start":{"line":55,"column":38},"end":{"line":59,"column":3}}},"3":{"name":"(anonymous_3)","decl":{"start":{"line":95,"column":11},"end":{"line":95,"column":12}},"loc":{"start":{"line":95,"column":39},"end":{"line":105,"column":1}}}},"branchMap":{"0":{"loc":{"start":{"line":14,"column":2},"end":{"line":17,"column":3}},"type":"if","locations":[{"start":{"line":14,"column":2},"end":{"line":17,"column":3}},{"start":{"line":14,"column":2},"end":{"line":17,"column":3}}]},"1":{"loc":{"start":{"line":19,"column":2},"end":{"line":22,"column":3}},"type":"if","locations":[{"start":{"line":19,"column":2},"end":{"line":22,"column":3}},{"start":{"line":19,"column":2},"end":{"line":22,"column":3}}]},"2":{"loc":{"start":{"line":24,"column":2},"end":{"line":27,"column":3}},"type":"if","locations":[{"start":{"line":24,"column":2},"end":{"line":27,"column":3}},{"start":{"line":24,"column":2},"end":{"line":27,"column":3}}]},"3":{"loc":{"start":{"line":29,"column":2},"end":{"line":31,"column":3}},"type":"if","locations":[{"start":{"line":29,"column":2},"end":{"line":31,"column":3}},{"start":{"line":29,"column":2},"end":{"line":31,"column":3}}]},"4":{"loc":{"start":{"line":33,"column":2},"end":{"line":35,"column":3}},"type":"if","locations":[{"start":{"line":33,"column":2},"end":{"line":35,"column":3}},{"start":{"line":33,"column":2},"end":{"line":35,"column":3}}]},"5":{"loc":{"start":{"line":37,"column":2},"end":{"line":39,"column":3}},"type":"if","locations":[{"start":{"line":37,"column":2},"end":{"line":39,"column":3}},{"start":{"line":37,"column":2},"end":{"line":39,"column":3}}]},"6":{"loc":{"start":{"line":41,"column":2},"end":{"line":43,"column":3}},"type":"if","locations":[{"start":{"line":41,"column":2},"end":{"line":43,"column":3}},{"start":{"line":41,"column":2},"end":{"line":43,"column":3}}]},"7":{"loc":{"start":{"line":47,"column":4},"end":{"line":49,"column":5}},"type":"if","locations":[{"start":{"line":47,"column":4},"end":{"line":49,"column":5}},{"start":{"line":47,"column":4},"end":{"line":49,"column":5}}]},"8":{"loc":{"start":{"line":56,"column":4},"end":{"line":58,"column":5}},"type":"if","locations":[{"start":{"line":56,"column":4},"end":{"line":58,"column":5}},{"start":{"line":56,"column":4},"end":{"line":58,"column":5}}]},"9":{"loc":{"start":{"line":63,"column":2},"end":{"line":65,"column":3}},"type":"if","locations":[{"start":{"line":63,"column":2},"end":{"line":65,"column":3}},{"start":{"line":63,"column":2},"end":{"line":65,"column":3}}]},"10":{"loc":{"start":{"line":68,"column":2},"end":{"line":70,"column":3}},"type":"if","locations":[{"start":{"line":68,"column":2},"end":{"line":70,"column":3}},{"start":{"line":68,"column":2},"end":{"line":70,"column":3}}]},"11":{"loc":{"start":{"line":72,"column":2},"end":{"line":74,"column":3}},"type":"if","locations":[{"start":{"line":72,"column":2},"end":{"line":74,"column":3}},{"start":{"line":72,"column":2},"end":{"line":74,"column":3}}]},"12":{"loc":{"start":{"line":76,"column":2},"end":{"line":88,"column":3}},"type":"if","locations":[{"start":{"line":76,"column":2},"end":{"line":88,"column":3}},{"start":{"line":76,"column":2},"end":{"line":88,"column":3}}]},"13":{"loc":{"start":{"line":79,"column":4},"end":{"line":85,"column":5}},"type":"if","locations":[{"start":{"line":79,"column":4},"end":{"line":85,"column":5}},{"start":{"line":79,"column":4},"end":{"line":85,"column":5}}]},"14":{"loc":{"start":{"line":82,"column":6},"end":{"line":84,"column":7}},"type":"if","locations":[{"start":{"line":82,"column":6},"end":{"line":84,"column":7}},{"start":{"line":82,"column":6},"end":{"line":84,"column":7}}]},"15":{"loc":{"start":{"line":82,"column":10},"end":{"line":82,"column":78}},"type":"binary-expr","locations":[{"start":{"line":82,"column":10},"end":{"line":82,"column":43}},{"start":{"line":82,"column":47},"end":{"line":82,"column":78}}]},"16":{"loc":{"start":{"line":97,"column":25},"end":{"line":97,"column":69}},"type":"binary-expr","locations":[{"start":{"line":97,"column":25},"end":{"line":97,"column":44}},{"start":{"line":97,"column":48},"end":{"line":97,"column":69}}]},"17":{"loc":{"start":{"line":102,"column":2},"end":{"line":102,"column":53}},"type":"if","locations":[{"start":{"line":102,"column":2},"end":{"line":102,"column":53}},{"start":{"line":102,"column":2},"end":{"line":102,"column":53}}]},"18":{"loc":{"start":{"line":103,"column":2},"end":{"line":103,"column":49}},"type":"if","locations":[{"start":{"line":103,"column":2},"end":{"line":103,"column":49}},{"start":{"line":103,"column":2},"end":{"line":103,"column":49}}]}},"s":{"0":1,"1":1,"2":1,"3":1,"4":22,"5":22,"6":22,"7":0,"8":0,"9":22,"10":0,"11":0,"12":22,"13":0,"14":0,"15":22,"16":2,"17":22,"18":1,"19":22,"20":1,"21":22,"22":2,"23":22,"24":44,"25":2,"26":22,"27":726,"28":1,"29":22,"30":1,"31":22,"32":1,"33":22,"34":2,"35":22,"36":6,"37":6,"38":5,"39":5,"40":5,"41":2,"42":4,"43":20,"44":1,"45":1,"46":22,"47":22,"48":17,"49":22,"50":12,"51":22},"f":{"0":22,"1":44,"2":726,"3":22},"b":{"0":[0,22],"1":[0,22],"2":[0,22],"3":[2,20],"4":[1,21],"5":[1,21],"6":[2,20],"7":[2,42],"8":[1,725],"9":[1,21],"10":[1,21],"11":[2,20],"12":[6,16],"13":[5,1],"14":[2,3],"15":[5,2],"16":[22,12],"17":[17,5],"18":[12,10]},"_coverageSchema":"332fd63041d2c1bcb487cc26dd0d5f7d97098a6c","hash":"7a01205bc1fdf589bdf194d23f1405400131fa00","contentHash":"8b2210ff664cab8b0916540357b1d2f9_10.1.2"}} \ No newline at end of file diff --git a/deps/npm/node_modules/validate-npm-package-name/.nyc_output/bb918173e62b9517f55b630902d07ef4.json b/deps/npm/node_modules/validate-npm-package-name/.nyc_output/bb918173e62b9517f55b630902d07ef4.json new file mode 100644 index 00000000000000..9e26dfeeb6e641 --- /dev/null +++ b/deps/npm/node_modules/validate-npm-package-name/.nyc_output/bb918173e62b9517f55b630902d07ef4.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/deps/npm/node_modules/xtend/.jshintrc b/deps/npm/node_modules/xtend/.jshintrc new file mode 100644 index 00000000000000..77887b5f0f2efc --- /dev/null +++ b/deps/npm/node_modules/xtend/.jshintrc @@ -0,0 +1,30 @@ +{ + "maxdepth": 4, + "maxstatements": 200, + "maxcomplexity": 12, + "maxlen": 80, + "maxparams": 5, + + "curly": true, + "eqeqeq": true, + "immed": true, + "latedef": false, + "noarg": true, + "noempty": true, + "nonew": true, + "undef": true, + "unused": "vars", + "trailing": true, + + "quotmark": true, + "expr": true, + "asi": true, + + "browser": false, + "esnext": true, + "devel": false, + "node": false, + "nonstandard": false, + + "predef": ["require", "module", "__dirname", "__filename"] +} diff --git a/deps/npm/package.json b/deps/npm/package.json index 0b795b363e15c3..b745500dcec69e 100644 --- a/deps/npm/package.json +++ b/deps/npm/package.json @@ -1,5 +1,5 @@ { - "version": "6.7.0", + "version": "6.8.0", "name": "npm", "description": "a package manager for JavaScript", "keywords": [ @@ -90,21 +90,21 @@ "move-concurrently": "^1.0.1", "node-gyp": "^3.8.0", "nopt": "~4.0.1", - "normalize-package-data": "~2.4.0", + "normalize-package-data": "^2.5.0", "npm-audit-report": "^1.3.2", "npm-cache-filename": "~1.0.2", "npm-install-checks": "~3.0.0", "npm-lifecycle": "^2.1.0", "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.2.0", + "npm-packlist": "^1.3.0", "npm-pick-manifest": "^2.2.3", - "npm-registry-fetch": "^3.8.0", + "npm-registry-fetch": "^3.9.0", "npm-user-validate": "~1.0.0", "npmlog": "~4.1.2", "once": "~1.4.0", "opener": "^1.5.1", "osenv": "^0.1.5", - "pacote": "^9.4.0", + "pacote": "^9.4.1", "path-is-inside": "~1.0.2", "promise-inflight": "~1.0.1", "qrcode-terminal": "^0.12.0", @@ -114,7 +114,7 @@ "read-cmd-shim": "~1.0.1", "read-installed": "~4.0.3", "read-package-json": "^2.0.13", - "read-package-tree": "^5.2.1", + "read-package-tree": "^5.2.2", "readable-stream": "^3.1.1", "request": "^2.88.0", "retry": "^0.12.0", diff --git a/deps/npm/scripts/maketest b/deps/npm/scripts/maketest index bf0c2c5f655db2..4ef1e9266fb04e 100755 --- a/deps/npm/scripts/maketest +++ b/deps/npm/scripts/maketest @@ -69,7 +69,7 @@ test('setup', t => { }) test('example', t => { - return common.npm(['install'], conf).then((code, stdout, stderr) => { + return common.npm(['install'], conf).then(([code, stdout, stderr]) => { t.is(code, 0, 'command ran ok') t.comment(stdout.trim()) t.comment(stderr.trim()) diff --git a/deps/npm/test/fixtures/config/userconfig-with-gc b/deps/npm/test/fixtures/config/userconfig-with-gc index 0fc64f6946feac..f3fcc8eeae16fe 100644 --- a/deps/npm/test/fixtures/config/userconfig-with-gc +++ b/deps/npm/test/fixtures/config/userconfig-with-gc @@ -1,4 +1,4 @@ -globalconfig=/Users/zkat/Documents/code/work/npm/test/fixtures/config/globalconfig +globalconfig=/Users/aeschright/code/npm-release/test/fixtures/config/globalconfig email=i@izs.me env-thing=asdf init.author.name=Isaac Z. Schlueter diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/07/07/8db5f6377f6321fceaaedf497de124dc9465 b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/07/07/8db5f6377f6321fceaaedf497de124dc9465 deleted file mode 100644 index cbd0cddbacf6bdd26e109da2e5fd46d87188a6a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4025 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%0Ag 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 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/2a/77/307e108bfb57107c4c334abb5ef5395dc68a b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/2a/77/307e108bfb57107c4c334abb5ef5395dc68a deleted file mode 100644 index 94a4f0f10715f6b646eec6ea56c19bff008825d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 364 zcmV-y0h9h8iwFP!000001MO2mYr-%T_Ux~CV&hvDgG0@^#O=vH764wmKz&s-l(Y6Rb)&_ zu3UM;wGm3X9WaVCC&5<>0)qkYt+0>~WbVD%N8e9^ zyT+du?fI6Na-KqFhEK(oaiQu7-!NIV1vA4hA0~F>Qy13SQfa3!M+)3K4&0pRvzj}- z=`@_M5(SsWTey3;CH;N>5AXjl_rv2QT%yMh^Y6#yIR7*oE{S(w Kzk~|_3IG5$m#c~Z diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/35/6a/192b7913b04c54574d18c28d46e6395428ab b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/35/6a/192b7913b04c54574d18c28d46e6395428ab deleted file mode 100644 index 56a6051ca2b02b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/35/6a/192b7913b04c54574d18c28d46e6395428ab +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/41/c8/0b2b6f5432c60cddb81932ab56563b444f52 b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/41/c8/0b2b6f5432c60cddb81932ab56563b444f52 deleted file mode 100644 index 99e003fb37fc6a4fc44da777c918d6ae44d62f73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6288 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 GY5)L(OgrrW diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/45/c8/a39b626c1f83f8b8f53007c2f60eb98eee9d b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/45/c8/a39b626c1f83f8b8f53007c2f60eb98eee9d deleted file mode 100644 index 4e09b38d524809f299f3698bd85762882e06c1ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 372 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 z

    {xe=p-1^fIQM{N&-&D6o-R=U~CURtg|Y%nBEUq!0Y}T<(GNFU-O$yEJsUqzDpVu$u?O$Mc38F)k zko1l#3KY$fMpg7~mIvgzgF&K4Ob)D>_$gs2nNKv+s;oJWAU=AuFIhgROLmI z>J|NotB$M7+hTAQ(Dw3Pys1rjDvCR4XrP^0+BlQ?_8cuf+&UX><%B1zQbbfHr zKt5cg7wD^(!ZqGEOfff0u!d6o*VDf1m zk^a@g?Q2%zK~U5>wTx+VYA75NwSpoCfFyrpTR+@YCOR352e>$Ad4SjbKap4YwKBwr*YDdluXTB#KLD36zES)87 zMkV_|X+8AM$J&Hv1W+E(3`39p(2&j&mTX8l9B5t>GNpun(HS%zB$C@G;%RH%^MesA zy6<=ivnYvQGs{w%tBnOxL<&k_^$UuLkpr+xxWb)xnD4+{0efUBa+%lxy=I>k61T5#M%g(mSw`|Dl0@kRN}QJ#cNqJmDIkeRY0sI zG5-w_P=%6YO7_Hl9p~1^+C{C5iVYeZtQttaVWw2^%-45Y>RY3} z^+%r$f4ZRNKcCv8vCC^{Nm;cU@B{O|)oJ1RpPlwjyVYv7xAFXEduMb0XD#7BUeqRG zQ0qEgje9r51jy-g5;?B!&x^m6zpq?H&2x|i#R@fF;oYiq87yy&L3@ov!XUuK{5y_^ zd?HYK$iM^t@tg?=coy0-)Y_rNdqZu7x&F0K7W67cj_psV=!pBbv{N9G$CzqS3aAL> zKfEM=TFB0SX-d1qg_6s|m9T;b=0ExRr{{lXho;i=n|?TK=6~V*pFhWG2F4x|<`fpv zje0hArpJ=6_N&x1rWra_ri|HUc7CaloBz&@)90(z03MqEt)1-rZ`bSX&HP_SD4PFE zF#vK;D49Qow0QWY&Z<*(?oCD)tU4245>`P@TIa|rfH7QXTme*t0)?XQ+<$EQwZ$~yXteq#C#3p}{`Q;viIL#ujOo<=8+I3l4qvaVoQ78BM zsVY@{I{%}(%c9tt#($pvPq*}}hyy$%|8crx^#4X@Gym5To-F^Bs{b3C!V88yp zs%o^hn5UC552_&t%|>0dhnMHr0iX#Xza2WgAzrK`vJ{$Z%s+u9l~hWA(gyf?wX3f` zWck16dw5)Do%Wx`_IBR>)7jqe|8<1N^M7f$(Px`k`p$&u$jbvjF6rG;ShA? z6+3`DB>&qv`!6gBH}}7-C46@I|D`*)2@6AR{)-!_)~Wxu3if~M?almOOL(gNN8TDC zYzZ^7*wX_Qi1Q3fU>EX6$g@d6H~kKnCru?ip9eiy((j7O=$?8O6C`dhqqJzYaEJMC z-|cKuwsU5RSOf%PO?H8|E`Djm{!T)X|0lOS>HoDFKJbwI-^uxZb~=rX|MyzLQ|G_B zoyNRbF!yQ3-;@g?H%5T3BxL75+4ZaHVD)O$fQS4)cJlkbt=4A!zm}k`Y|Y;BY}G9J z^p2^F`;sNZ568$YAbJi0{*7kLzU84m;&|cRbzqO=8DP`y`jg01ucB!8d+ajvL*S#s zA)|7A9@&l?GAckjCF0c=rk;3+E0)K�HLjEST1>P_IpS=oqo-cmsc#<}qI|5|20} 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 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/82/f3/ccba11914dc88bcb185ee3b1b33b564272bc b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/82/f3/ccba11914dc88bcb185ee3b1b33b564272bc deleted file mode 100644 index 56dfd8ddd78a3275de8e3fd0db30c65a82ddbf52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220 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 IR{)j(0I>0&82|tP diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/ca/43/09dadee6b54cc0b8d247e8d7c7a0975bdc9b b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/ca/43/09dadee6b54cc0b8d247e8d7c7a0975bdc9b deleted file mode 100644 index 83343569828a6236d897b6eea514bb117c0304fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1519 zcmVmWH4qB#zcrH zgtaY6LW=kBE(f`$TqppA-ZGnJTaV7^YRULmsNuJjl4S*j8c^NLH#dx>x*NTtp?t=8 zL=#EJl`93cAW@EPHa6_dwQo*SCL+oBN-NByOvUp?V;ad>HZnuDXhedLP&9U?O)@!S zTw6Fw41bv5hqE}Nl5+St`ZfAnm<##~R23lNjbb)6^T9@~0yoC@exsk)*89HU*;enu zHW%Zs;N$-N-)^bB-fDFYkK4@y-1)fw+s)>|#zctmZ zu#CMOym#7#)@Kr4MJeFlF5N~0NGupmgwMq-jzsRTBl3P;C@&bHP&~+}d+xt{>HANg z?!1d)1&Q2zDfO-Og0kiFUEC7lA|edbrBYj?-PHE5OEbpxmF=hj(7n=aB z=Ce3Ts8|pDU`OEpx^2$?zSFe_zWr5v+<*SJ4mzDu{;$vfR;SZ`JpaE%Q+wR;yU>q9 znh0tbU6!tRG@W524r}mn4r~}h$`=@GRW!g{ArrKY=Wx2J!-9>Y3HBrzHyDR;BqWbU znWQ?zfnXE4B%Hzog(O)S80j!Y$E*WWa=blBT7@MGZ;LBVnsWm0yCT7+y>u04PINGjmrT; z&wb_e>>k!VK0a5#8uUOZS(m}N>p>5ftZz9NK3M%epp|D00>}2@wG*5ho_%I{sPCc) zf)&7nZvV3949>Kbb202Y=%Qrpp2CIgbaM;b~mUS&R~59sL^$CzyE%TSf~R%>%uxy z6mrweu6^qHBT|N@Yf9- zcc8SEw^=Dkj7;XI;c7(WZE% zoFk{VN}$JgTV0n2N*7Dz5ZQl<4xF5v;ZE||6yAz; z`gDkUfNOhDN;L2HrZa%uvgq#RC@bdRSIYTK`OW6z`qirOa@ieYdXkHk)w)bWZ{K@& VKeosA*dE*6?H{y%ESUft001#v16%+A diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/d2/bd/e817d176ffade894ab71458e682a14b86dc9 b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/d2/bd/e817d176ffade894ab71458e682a14b86dc9 deleted file mode 100644 index 0d0648c17a549ce66847a583a4f2e33002faa1e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22746 zcmV(zK<2+6iwFP!000001MR(QSKCOpFxc;`HEYe{)B9;YE1Y>BAQ*ECkV~g~d=X%b zaljCgCK-@z84GO5k!&vM?zQIU%>01)L-R+@>|0$V+d%s1?&q8{ad)s>Dpl>;wfC-l ztJ1)0U3-`Q@_@hdS4kB9@F#y(R#rA&ym0V)YjcCXSJwD9d{$St)|?+!*H$+-Uu?bD zTHE+xWp#aJ9q<3yfK2*~lA#v^DF19bJQzoR|0ntUI^#IAq1X3k9sPOj%#OmgA1AFS z_GfcgqwOcHI2a6rD4gXQd)|%Lpt8Bd>5Re_-t&6SAdW6$uip>COQ-Ai27c`Hf@bW+ z_jzur8}ira~z z_%U9!dVwDf@v0d|w@^O&nVRxO!)_GMTEpD)W50jz6q4?>A9{)N;}sSB@9n5H>O&i? zUNmYWEI%L>sv)sb3v%~v=KMPG=2Grvy?#VA05&Z3rn)z1LU%v9B4{Mlt zeCBs*xbFqwv>5=NLDZPlc_(PXGvOnT6S{h z_~bG^`H8;FJ*r5}b5rmr)~5FHHvznC{d4#m9_C-m0M>cVp%&q4S=EtyRFMZEk8*9s z4?V&yovVLvU%t;jQ5iiWm1qRkGpdYmbFO=U+cK@6md^oWPd@^3h0>=TibSm#PJ-oGJ@g#Qq%7Zl?mf?qS!H(k2CCgL$r8q z0x*zflF?ug#Y3tz?E20q8G%7$*+$7I8ThSX;>`PAtDAHB-XQ11etXpNa}KP(Lr|^r z`GuKVup6S$(DCnvpmw7r<%RbSLT7g#HLtL-{LIWYbXbO!JLl}Pww-g1VO@vcUf2fs z{3R6ge%onBw_z{x+HfcF{ns;7EH4`$gpAOMz_eIOqEXy}X275sL?PHmPSnAU$yO?% zt;9_xY1=1dP0h^Ia4>+m@EWX$$bmMY!EhJ{%@J5u$;2imnNQ31Q{Od`KlV}U|9++9 z9yHv)q>o3||JC)4?E1gDv9bPr{r@{YrD$*;2bbNUGv8Wp)>c+tEv>Drt~(jeNG{Fh zBv&fo4G5Xw(i;Xh{>+h&vJY6(`G@1S1LDbIU1%nWI>TEJBohMRB}vo@ydeoU zhR{Q4JA>v72wIfGvkiG-c7Zx+`yh*hkYu#F<%rCkiD67}KoUC#m0Gq(SCD?Q)>h+>q7#eg5 zYYdJEMDNTo-13^yjZZjd$_S$&fXX1?1Psiq%B`g9^?FXzpJ9YSzkpsWQp1U{d*HNi z7@&_3ChCLMx9rRo8t{8I=bToKck3s|4%9d* z92|di>f27?;G?onwMein+A{mSvjoU>gyKEO7&q0xf#u5ff*DV^*Wj+}QV zNAKzl7rHOc9Mlgg2ir%`i(7LKj`Pqfbmh43;fK@ME$r`8SA`RR{)pf!)!%(Qs_g6@ z&+OLs%PtfaU4X1m+;_Pv7*uJ$P^kg)6>5bYm!7IaD@Rm~p_@6~b*TvYE5QGy<4XMi zaZ;)u93R0?&;{y8$NJIJO2f@Lg`-LXK%Ln>szdXLPI#hDjlgpUF1LcHc2Y9}Rq*#o z121P7ma<#ehqfB{uw6O-eNFz4|558ddwZ^uzoL)F{C^u5|AFOyYh(2V{6hPGb!+qc z`u}%)V67VU{JejMGC6VHf;sYK6vY1gT;5W(=N8_4XXgKsAI1NvaMPdM$3y(Ty0*5p zu`(9_UEBPw|NkwYpNS8kX21?Sh98OMP}iyo-hK?v%qKO7CXY$^4TiZ0Lu>FliIN0D;2 zSv}&AcTI`i=C{@Bjl?a}fJCK{QIB zVsGRtwfN%v0-p>37GJfZYFfy7OHJp`-%Nx)60ILSRhK@9_!tHshin=&W8b@W(5`_l zJ*O8%11EslAOlBrNtFP}Z=GL%PeIIG7aWOO zzn1n2aqQi{izDd&E&s?5@E1nXK^JXase5$--M+aEldA4+%LJSI3b+ygJoFt{$6D7g z+z!xW2u6xRWkL?RWZ(m^UaRFNWJeJybyJB9o_vmj5#ZAPytT%V$GbVImmv8~tw(pc zB3N84n2sqG`7YNSMhzf!us=;rg`m8;$2GfNQojx14p?Wy`*h9pJ%y$M*k{k5yQNw| z9EuyypF1J5rQ#kZ=ns0nwyG1Rqg&tULR(_?a%*ULw*6KQzT0H!+Zg0lx1-qgTHOgl z?(m(QRk`L3rr-y?rdGux@}EwsD4x}^x<_QyPO3|H><6~VDLbigcGuczxTT1HNNd-uIHBejru3XYQn0PpD3+^?bmEcD<^9pQK3; z8S@%S?OH_u$*QH9HQ$6A8Rqny#OwGLcZyrWl4~NlkXeDsK>qilTP2gup?xjkq2hw1 zuLKc>*5}W2&0;aw%~ zR64+bbLi*^xs}v9LL}fto*&-@O$k>j ziSZE0@H~$|?kvHYtDk@dkX~g}{*S`Qhb|8(lQNO_RtA^EmDR# zFF@q*;j`c~V23UjsAtiu(uh!GouXn3AdtDJaakfy^?Z)YJkJ4CTCi_F3K~4{nI3x_ zJO!Wz)Ru!sEIvtV_LEU>NG@KGn!S6JIascsKx!mn@|hXFky=3s7^l>8)D4I_Tg=NlyR1qY6l@Q|flE}FZquUUbIU@M@;v2=JW!6k5eYS@b{m1`7h@PQJQN940A%80U zYk7dWc#sj&HB#Jw_)!Xntwrcj%S}{{7qgm(tofw&lEGzJC5~wp@1)xOV~mJ}(i)5( zzs{DHxY^GzTy_2CX^cxs4>tMvFX3L({NK&OmYUNEK*1Nc-EB7jeP#e`?W6Gp14O0W zPlkD?&2BW=0n4F|jPTO3mtY z6=M=QF<$^tDhi?anh>37WPYPrLw=fZ;YSWIGbxGRvnPeTJ~%C0{x|E9;&oCckU(QB zASy^Hlw9Y}(kZ`{I#N0))p(+M`M~6(#ls9`PrlQEDNNMj^@xg=nHm8?P4749*!1MH zr{hG1pPmOj<}&bl+{Z}7ZP$lU$25HL`fCjIyaIXP$f{+CEyq zFfj`-nD{K(mN!3NkYN=#FyEn#DFjf=+Cnmqhuq=cU0E zGRT|uBy`M6qd%*mzGe)a@z2i-d2#_Nra)L1CZenqg+Oruhii>RjCkqy;Tq#WEg(58 zBp2Xor{jZ^<1FEU1UMOWgWjlhJ%%}Sjb`BV zgl(9gotr3VJ1e-w{&SiT&Qy&#G*{-J#vBi2?(@U+k#$>h#~H^p6%uyI1UAT?Bm#{4 zdCcJW=Vm5s!@K}150#^u$IMgn%`=1Tolc*fF%qPiOidq-D?K2~>g;=WL4VZO3qPV+ zu9uo5k};k*;s}$H)+H~TgQ|mJ&=0(0)tR z7iQQ~fA?*%BdvX-&_7pEY7YMLGH|x?S%-A+S{4U!lKcomf)R}gubMaPA~YhS@Fzz> zY)8sO0GOGus;1PXO4vas!~Fz3TBD6y?L zO}F=x3?i>f00TyE`IVQ$*Q!lxoa*xThYZ5J?sX!q16FKWpNCOBOzS{gAZz{u5mylY zDa7?e+8QIR|G<>>EUh`mVit!iIh&xDj`&Rn8TvADDjl8m?CMSZMl7> zVcH@SPuzca5%uS(-Ni-i!&Hs3qtjV(RzIVbr%Lgu&tr9|H0`0wU`JI=VWtq$N)U(E zrd6~LFZ~eb*~j$2>(M|@yULN1@`|z7CXZGxc9z~L6@GTqM5oaItEIi4Q4LhU($lH( zZg`=dlN8FtY2M>fA0x0h4$uwJyW6Jn(2y?AJ~UDsw^KFIjfXqTSkr?~dB604Nfn)+ zs%Sp!bu!9Qni-4^MWpds8qvivb`S47nNgLFrKpBbV{&PGeg~e5(*YMUKM)geGp~Am zW8G|`uLPeNyG!aHX?@Kxtq@k7CfdgyiCxxBwJ2PDld1e8S8h(KyrgSqbVq`i(f6Z3 z$iIGuX8>=j3Jp1Djsw~Yk8{ijmn2ktz01p(ye!V_WgG$HH1B6|A2ny!YVP5C57S=G zY5HC7CWzv3KeOcJK9Mw)c@0A}UKK@CPjhFC1*e|sy09ZxYCIzACHdr0-*F24JBYdD z3EZD|-eDBM57^hLQs7Y2rZjSH4n>{J6Qy%|mK4ND1OvkTnWjmA&~s0gATlC)X!309 zRwiIaV_!0UtSTr-`6ruGuhmk@KXGANSeWLew+yEdx}Q~MB&YC%=|pnD6CxQbZZL|n z$mXV|Vw^Lsp`RxpTa2$X#_8d|7~>ho?>M>_oHTk@-e~!vix(FsBKaio*%Tdk%&zu| z+X*f)3lsD5X&*r!mCTF#OR?}y~{BEWPy z$1vh_?&-PF&*-=GZAT~5Hjl1i`4bJwAIqW~cdU&$@O2fI*ShgZ24FbqH$jMC!kG$< zp({zzy$~+CG#<_g&pMV@QlLCIqMvPB@3ozYVNsb;3uqD^&J|Wmm_M|fP1>E)G3E(L zQ=IDO&%@`>o!bDoDK^OA2M@S4S^OjnB+uJU`mXP_FDOs=V(4A_7kSD?dj9-!JhUG)M;%CuqvtaD%A{GTAndO~^RE z80m=8T`pmVF~Kv@?qq}f=}HzWAl$(yn80ChhdJ!#BP!+#c?Vy%fpI%dp` z<5#&K=QCIaNLF-~ZaO_mQ4|q*=CRe!W|4Uc<%{5%K>D`a0M(%rO|%@bXf86|E#`X*c&k$rp!+auM zdv(UrqqN@+IlI^MqL z#+p8$loNi}w%ebOKQRh}FC&#cfj>w}ap{Da z3zCL({a{=pScX>CBIJ~ZUHW^}T}5e)3ih8V9T@Fg5DeJr8UC>sQWK3v=$@IRmU*nH1VT!FU<(uY zJF`oN7j8~nepm)fN|@9{9NLVg6K?3>$q={O^Y$t{EFl22Xzhy^9m+Q}3oj)tw{c$~ zhlMp6Mk%o|#)(Lu^IF2#yhritDeN~Haw``GL=J8vZ~DVqoNv*cxs}PFk{>paZJN^r zh>+EAYNE_));yI}RtCzAS#*ZLjxA(r$-|zkx)Hj<(wWpM9wK>3RD+lU8vV&~C;dLz zQFn~C7S5iLhZ<#=7RX4ZQ}Qe$I%1cc#vL?N$0U?g?&$!4myE)zQDUo#YP%O{Z|GKH z{97PA0sE=7-fUBUM2=6@ex~K^*gVU#A$*y|RmjM~!7NvqU6Au3=CyT@7M8fD zf%P77UT~%Kj#k;hs&=#5+gPQgv*0s9GX}@poU`ZzDV6L2VMR$exNFrRo|Vc%>V?<$6+&U6kQ3kz9acchzy(J3wW1h6 zA4Gi8F01A|Vd7Y|<_w1+FeUanOPdz6CZZjd8H?3S+G32YJh;agyGnO%rtA!#hH2B0 zU!23K%4qtTvlV(w{aXE;S(V18Ic;Th>@x^R>BCebJP(;nLpI1%lIDD6u1_9djtHRc zlmpAI)~LA8pD)N3&s!fT*_Q(+wNYZb1?f#JmeMBqTCEms?&lqF$J9$83*qk^TS ze`+>&RA!DBsw7ScK3J)$B=gYd^oK!NUlg4)tS=Q)XD@R;=<8)X_#I3hszK?Xa*F=4YAm7G%lsR4B0d1RwrL8F=Rs--5EJXBroDbT=*`blS4-URg0sw!q6^m&o9#@-m>O$JWm}N$h(zY`8B)|zDPx!Z8QfT0{Hz9- z9@pYq>Ryd4wRq#hDH>AV0YGLK>F&`ZZnX1fl%POBQcGZUYNdkMD7ExqYIxorrd2DS zVk?s+wqVYc)2Bn}mYUIskG@vhQA8=5M~CtyQTPQa2^Xx~8BLWNWM2%rs284oR)juU z4tI>B{1eSSEd-mqbyp7qFD7P-;eLl44JQAtt5}|`8w))!WK0Xc7VQw zjnkeKU~`VU5KJk4k>mk(JSxW~8L8;P?0T3L(kJaWP+Lw+xCY-90=9Jz9gE5x+v-vye?+L?gVtmR}uRf;llJM1E$ zV>S4PhhbZ`fg!3M02t*+l5^_Y&3=i(9YVrMAl z1-Il7K!gz$r`9!2Ew|R{`RIUF1Mm3pG@)iG zY^(xlo1~PwMiFM`I(ox2H5wUZwI>hf6}oUWAiRJC!X2KtAe5mcC9fud=uA|9Qe(9R z(__*zq_oIv$D}A~z;RR6G{_h1@r9f=Y4o(dSi5g&mM}{R`&-h_7_Cu9JozMUE)}Vz zInxHuH2xzksm8HHVnRtUL80YOnv7Iu$~c~m?$mLX&r~lK?lf^fGsydO0$7&(C9=vH zL}ucW6TH9K^=P`}@_1*d5*jd~ARMs~M#;*yNDCv;rfjjs$vsZP_x$HT0art#cV>V8C?Os8Ppv1ow*2FkVj#z{ILv7p@ znjJoTBE8CFdYFt~6XVf%7Td*3*vZL#sguN+)pOc5qnDi#X3?3{rm(i9iJ@}XirN@K z??me5avdTgxSUZ30PvgA$n=(p<&+-~8iBnHOfs5cZ!m%P=^XJmqe4#MW#L`YCv{lP zN>5{zW2yxreT`Ym6HSU~q#VemCw%Rv3A&l1TD3nnM;4<-Rx;|Vbmr8-DJo)@>V#iN zmzXrjDDfxBCEF&>NVF$ma!d-QBC#nOddXSE$jeV0F-K>;5smh|V5D^%!34>%` z*kg`ngOND!C9#ft6Io}Coca>@-+JJA-Mq!%g778hY+A2806qMn9VMt@%}hF0 za;_2r)dy__v8BsPhbozE;vwG?kM^eHJ}H+Bf2W8aZ)Iu9U{Df|A4H+rl=Fa3N>})H z&?UcufRE(p@$?9|MrsU_Mq+u=Br8Wrpmef`eG&^@J}?w@|Jz5xozOte)Y0iQoXmKr zUTQcM9t}HR9Ap&mgfujqi=AJw{MoAOVBXj6**wpYI zIM7qlWA!Yhgg!H~j;Sca+-&N~B*=!tEzxCZT;PrG(pdYgAPj>U(9$>t!#hzOL)bmY1^QJUWiK4rM%vz_K`vfQ}*GVk=L zvt<^d5HwCr$yT8^Fr49iibv9Y{%H(`%sT@fb`M)=?gPCmMbJfypcUQ5Tesa{=p&8! z?J-d{2*wTpOM7kx_fC2Py$Iz$nxaVP=VUY8>DXRko9Yk*nd7H4I3noE>@tQb1!jR0d0{t9Z{Iri0~b1iPkB64?k)l< zNr%*$xTC%C!$GX!X&jp(Yp3>qWMNaRB-rB@iy)-iPXne3L+6T{g#J`nHO{f0z9wZ ze07oTm(NI$<7?9SaRQd^^duyo0v@ZYUPq?#sjVi{uRp`Xc|864vNyV3GgA-G>1k%_ zk@AhhgJGPVm3p9(d839xmvm3MMXto%F;K>w8dfsI+nMt@Y8^3Cb^U@N^D|P*k ze^@FEeZ0K9l#r^)^`vUF4ToOWOEt~UNtJ`kFpB*WLQ1vGZ(BpOve1bj=fneoqF2hB zcKIZkgn~awfMj?XQ*Uc*-M2tTaX1rl6eIPZKB0GfQYC)J2f6F0x@yoog`DQKy#Z?K zls@b>oQ?ddqjt8f!jHB5I>@*tJcJv?wPN91?A0%fNY*=wcyXS18V(iNZcTt?A5csg zbF_=VdB<#zi-beTe3(&&`;KYdjoBHlT<$vM#55-xSVNzT4+}k(M$8bNsrSsl1bXIt z^RatPdq%Z8Q5Z^XLmS#@smTPsVc91>z>7pRMmRT(bYgZ=#J)kSSK{w8(sPk&PFHBEcXY8;AV~+?Uqm2md@vc{q=1r@tX*omX1fP|h@mHA;6G<`ARmlOsDv8!ADf3tD zXv}IGxY0z3FETAY&!tFSDLA}Cfk};4hIZ_1NqUpsYN-yZlT@Jrvix z1=G!ON*Ei`GetC00k>%T8P?52ehl~aBZ)zz1PKY;ZxJQYU_K*AOv!YQv@By2m>3Tt zq+?`oFW_x7!BCxH!AfRu*7nVW(U1bjB0l>(eq2Vyyi!A*TEXvcw_d(MuhjgR>w_jf zOTTB;T}$=T5lIAbQAhL(OGPsR%)XQznek@erCQjWhp!jN5g zG5}4&ABT}Wr(Cb8jo3e{vCAIk(1+D{N9ghC0$;I_r=l5zzi>bOM1=hsz#K@T|twESWRvZSBv} z=N?&kyuh!E zSHR5K(CS@lkIfx7r>NL8HUUhFXJl$&!Z6uNEwqYnwz=>@zEQRGD+HbawR;Eiusq6G_gP58aef?5sm(Fb9rO4OeH z!UOWtjCqd7Ww5wX6mrA?^E9b~G9HDW`pqfIXpKM2bK1-EFmQ|xa`E(f3c!QW)a^DI z=v0#0gHl!dbXEH&s^Dpzm~#ZJR}_F@-5L$ko_NwyXfuO-95WqDB`~S?AAtcI!@Zsy zRE3rbQG_#(D>1q2Zlf6Yf*{S{1|_psQ>X@;ef-r)P^*3$zEiJVQgg*sQ$spI-_7u` zLs3oE&nR>dk8#q9!1lhPaQO2uDn((Z7qo`Yoj$DDIe|mPfiKQ4%)HPZE9pijT!XrV zryrX%tJqhk)`&%GdQFA5OxKfA(&8u@=Fj1d>d3T`R%s;TT%)Cm$|#*cq0UCuQ|`sI zyOP~T9HdOWc)>bP`H>ecOnAErZiF#i@qvt1;ut4=S}wrB6Uu=G^f;e5Gv%b^Ag$rk1Cw(G_(d9eJG?p%sZXbWwDHYJ$Of(62we$g(>Xq4 z4Y-fNJg94H&Gg11r8TQ{hF@a@)s@}DubxS5ELRDxaA%P>k9T@e6f>UW#UBgKbM9eD z>SfQa+m{@g-Q(K6Llci#BD57TX?X){do@!IXu;J0=0_oe#(VK7 zk7?fA<$DWeiZA^;Kgni)WHYEF&p~IDfw1&d-5fLYf~aL6>t2JbX2-*QwU#C$^^Qs`h^41{b73n+CM>OwBtDURt4dlW|-O zB-%1r*F-TCA09+KD`#93Z0;R4c0_jaBu`8PznIxGD8iQs?S_awJ>!Ar*l=B+WDch@r@W|Widx)Y#^2CQVIYaR^S^}(%n5LfW2p+ zzm*IyEM?jNV=ip>DA?Hyh9nkjzM|ZO7_(p~+cp`%GOhMjg>6oVL6cMC9#uqNC$(9e z(57uxY4%EOQXz%E?G3%0X4P~yJAy9>LWV6(&L*V>syn#}OstMr;?Q3c*}@D}&ZrDA zFYj`MIQ8!aa$=Tq6L>~kFh1q533}IhEE}9f;X4ztKCgfg%@G|O!Ws*bD3KehYRitN z)Yk%OyfW4OoK`P?``<*rOyOb>$i90cEV(-;qg^VFOKcxr@7^F}(hCwLJ;a$kKOZc< zotx!bbbgFd`~;6#RZsf&b2cGqsRdV2r<3?rq)Yl*e9O&q{-}Bl8Q0ZIwb446BPZyY zT73ms0oW57SIVW*B$b9H`n-KGv<7E(Zt+t%KYxBcd^)t*oWPXkot zB_kUzXOkIk*-FuPw}yTz7^BzzA34rbpEVC63@4cci}iwuUWD1HAPfh-Nga5mxk@#+ zV5oNvMH=d)zy0>>?+d>I%FuujsGPaqKcREk1{EMh@&^Rx03~nd=HTn_^J=%CP!f^VoO^BW5Y+G zf=N**GtS|UB&f^Gz~W44nihHZIvGsrs)^+tayrLEqa3HjItvS-n&&m(+{zJ|v|jL& z8NWZbVC&uK#(p4V^peeboh<=OwS#75Ku$O6wG&>Z z&08^eXPteH{K&whP0hS>nog<)2}FBtY1DWi5I?)?_pm494T$uy7F?D5^b?Z&m4-Ue z83C`c+^X4-6ITlr74@v$X}y*MfR zUb}Cp6ZPsB+A%U_-Sg|7RAw0iPHLAf;&ClxUJ@=xvLPc5eR-$&o2=Z*`U}ivj*Qbv zO_0~Z6tr)dA>O%#Xval|CW7Go>ybZolqs~QCT8k6Xp9KGAIO3r2mLAO-k=jvHBTDJ zGSM;RaLw0~V7J*ZefmWvx&yG~bpP%hrRgT>^;XFB{00sU3E599Us9mR+uNt3aRLF; zib|;YeZk-te*ZA#19sfCcj+&e>IcV1mEy^9yDZpXBpz z|K{w1LM98Cc{y(?`Z_c7+$r+0DCk%MT^S>7!=QET<1zJMY}3Bx!H8Z8@?}J?+BoAB za^9Dfyk1_u1ig8L>Cye=D=+C@`=OUCn^kx@ND_Lnfv8p-v26!QYn1Q`?lturaZ%EC zd~Zmv$pvc@AI)>BGD|(^yBFXVJO)x+Vx55B|B$yvgut_Cu;J%7c&k2gwDX>_G9!M^ z)7cOzC3@4D8OBvYJI?U-@&fgPulm(Mx1u&%(dfbSv{=yF3D1QqULg+ z-Y{hq!?bbtm5{yk>Dg&VWFC2dvDDe!h|SnvYL0>)r+xQ9aMHWFE==1?Pzdc`06tOs zI`!vJzeL1GG*)uS$T>Q#(NNB!MH3^2wGRfDpDK^OfBxQ&lK*&S+zl)z_x;|V-p9l8 ze`R%LmE`{l{J*lb{sQIy=IZ8m`Tuu(dR}-r0s?sLU>58-$a?w4{as7WO8zAj3_$|4 zcv~74;~9ZHIcM`bBmd|ADE{vN_k#wIhd+OM9}n~Y+Q!x<^8d>E>gtQl%@vHJ|5BkLGOq4e|2kpbA4lT zZ3FfH)%BI{{-3|)lXYBt*XRHL^-=tvaqjfJ!JpU1gZ#g-zP7e0{@)i{FSgb;fd5~t zt$f%2|CZ0Mvl1YkeZ8KWMStGx>)A0+-)wG{1JcRt>$BOElX3QQZkFE}1b1*F4AjM# z1AL9|hJnI!_(xmG{TQxHG)euS=OmB=*Y)O=y3Jcq;R5p%RH4dQz{f^O7Xigs7JPG* z3!#y{WN?|@ur!O1W7_9-6uVvvAMWTYzEkrCaNVcBTyo^&JIvu{tS;>Gqu{bT)Hl^H z>4n}|Jxf^T3odu@ZQ=0Cmv1g@M17yo-Zy>7+b7|7ps&VWbO~j>)UVW5V|-R$nUjv; z$2EVM7tP^B@mJKm!kLpu6M}k&XTMEy1jgJP2K{K7ROq17Z_o$K(3LYs>zv;kyxYD6S zxYj2$%ac4aG+sWZM+1Nlh6rEcYrv!jhF*-|;)7BHS=QkYT)& zA)>mJhOaM#qA47Tl#MUphHu&jjOD{&oDjG%p+R>1%K%QLR^LNR;U**as)V$al|k$e z@ceMB5@0t;chu?7B;sZyQ_z-@sE-(rqU+J1VkQ-X_(f_j#;FcGDWh5L5SE1e@lF%| zUB=M}8L8=aJrE4BD&kf!Wt^_87xfZ?m{xnyEm8m1;fdbt ziLGM5o4#pG_##l|I~<@NFuCFbEuO{>(;dBPGdFcvV;U0gSRGJL^z8V~m z^_mcDPTs^q-STT#aO`SZ*euJQ1D;d92{=T+V-ok0Hz9NpCB%3ghK4ps5}JaTSsk~o z369iwT-=EPkZbWM7bOk^C&C;Wq5e8N6IAwK@!|MUN% zzyG(c8CyNkC9TSs8_BGyy5{^zH7vT~eBD_Tww$<#jUsta&LOA=eDRsor2)0`diD)` zN`-16cUq{qxt&6xQoz6UQm$Iqc~{E0g~FHOHhxui;P1|Ak?s`ej#tXn3WZuJcTy;v zQVIO6!_(VTf)5lvmU4|kp|J-gmELw0i~7ZPRJRT-m0lG~Ty{idhtQ%aJEpP*v}wxd z*+v~&Ep4QpZ5-zOLRHGX6n~*-z1(4;)GbL_o67uL#VYF-sW2#FFS@kHrTt>=qg6WK z(l6<{LoOW^5q4dA$EEj09HlN@<%w-jx7xh0CIgcp1WMS7EmAY2HrD z*iIL#92Uv}Jy#(*ajDruz*AH#6n=4GeoJ1i57!^)$(3S(;4I^f)lvbTFPxO52(Rz( zd3URLi%k~}?-*jFKKGYhO>kJ^7Aha`Z^2!mx+l=e;V%Gep+W%F*Xdbz4M|h~^0_Kv zU_{8N)(Ay}jbRxdJVl(mLxL*p(a2!V;43KJ(gT&7BGU0k#6c-6nL>njvnZ_rC0rE= z7^2L|Aw6>>*D!Nibhkvjg7mJdZY%lTH1vt0oB-H z1tDwYHcKGZieGv7ePYc<$irVL6S%8oCeAY5BWPlq9vQS+2Z7q4b}E-dh9@LfPrBS_ zu2gWZaCl{=+9QO*E1<|}4ygWRF=CWJ|B7|-ky@dQ=)ox?P);{^^1txN>jrVX5(9H` zqZ>kgy)P<2p_jwq_`Q>Lq@$xk`Ej(b7I6uv>@t`h_aCu|&~o~smgdu8I9I^HO~ zs}p`;WYyyW6CpHEqj_j>Pqc83XjayFR__1MtX$C$K8_~Miha+GUBL)cXefbH)8eXt9epJH9l}6B z^3ym!kVp+hKrl2rgwEn2we*4TgzS3S#Yc_{yH8;^8s#Ccpd{W3^-~Q22uc4bbRokG zc+dqyA2&iDc7@W1+PBh4MbSy%lE}Owne1M>hIu!}784O=0l^qP=OmEoD9a8CT=J^; z5K3N=IIH|ZNS!WtfC6qxr*xxbwFwf!w-lY3s7zB2Ad#CJ97eI)=|9|Fba&jXKA2DT{_~ z*;p2P#8=lPqvI1z)_R2g2Ca@YvT|yKVpLtoswawEDkBZ;~kToFv zt-eO+tCqzIL&y$kr4LEldPOp)TC+P7?03r=BZpC$NQ<}>tvvWTxm6Y*{uuD`5Mhn# z2L9M9EYr{*l@vH1eX4rO(?=&$3yLfD>o-_@L>R;GoNA=Tv zRhH@~7%Sc4kf-;BH7movXI6FypCA6ntY9k<;vN>w%&f33BC|sEXjWGLQ_jlfwvqHV zM1>&(cS}DCHzgJYARv!!ahx?&+V%^B@`PdH!ii25?B*5o;^hvp{MQn>qU2`dPFlq# zq^Qh@F+a#JQz^K=++$hg*ccQ6%|T8NB~zu-ya zwfkW&!BzPMuXxlG-Kg=hZ7q%!Rxq|vmpLYh2k9~xeqdUS2a>4 z{|c_DPyun8V`Bz6l^)w8bTmpwm`)07~mrMPg+KDtZA0Jp68kkhrgUM3#?FqMU|2gc<- z(bKrg%AOQ*M#20>YzGT3v5Tr&L961b=wZLdqJ^#P7;cO+W7K+I{RPXYNl0L?Ycbsq zBC;&Q6}Q`^u7ay4D@Aqwb!dK}XYi{wf@)}!Dq(H`I{Xs=CBv{c1w<6wDG=+V@Rdy2 zq0u5XcgV|PIG}##W*3{S64fQIdEpn568)mByUCJ{}>Hkq%>TYRf^)$0;`Voy-d#t3rc{b{NvUM>i~#Hwjp;$%vgOe&PJ!XXx^BG6_>_>p z(L>(2a^=<+mcL2^=I h|O>47FNs$OIEHu>uX<9KXlQH6rI8fxF)j9UH1&m)`UI zKuNbW*s;;M$@4|6HUMX^oZN8Vo0ca#D35i{jP{B~G^w$IqP|0vc?8lu(Ns$>>_{wN zVtsX`$9rqEAF>^?EL@b$)<`13D+`p?AB+ zk+yTZhL2T_uPBV+zO)d^zSsJ7(X#r;=sPrb>KG~$)buOXa#^Jf{tBlg{!2IIuhdbYkCQE)-z~ybmA(E9_&cF6v}1~w z)STC)YK?%&gTrb7Z(V%Ubs~F34(u0dEb;==Lm^q(LM<1cTGsOln0U`bAx_gTjO-g! zsCK$V?6RtSr}u2e0lrE{G+ker6d3NMXIZ zJ7J<-^2#D}zAD?Ss+`u`_f63#nVZz|kOjs%gDA`x@aU)-Q>&OE8(eLZ1GS6Hvt@P_ z)}gb~IuDL1(_{UK`>{vBtF&Tkc2<2noG>cnlk$X7jVz|W6U79j9|&!`%Y_`SBFnWFv3Mkf&iyL!QeA@# zB&^o33t$-)nvGB(G*rBW$xCzso@verATL{~%b{zsb~rBJv++eLB~9Ei2Ntb?y)3IW zw?@l3*1BgYhR;!`2#D*lNE$N=aEv1s?uaZZGCQn%e=I4GNDpGCcx{<80bVe?8!W4! z>D_LLWFqVPA8zSBDv(AWATT9MV?+;9(_Tr{z}a}Qqq_%lYW&vD5Ce{7Hg9BJ zSio_}tuD{73By@fPsGn^N#Uoa@DuDAN42H@)I_@+ZmS?SQ8;Apkk8 zAUPmyX^$$^YUK4s??I_kkTy%85ECQg1l8G>Rp*{Qf-!Zs#|vP|Xs!`2VjDZw;=oBz zwHMeP7!%mYkY>E~h4r(+u8A>yG`_CWP0p5MO|721tB_my^5H2 zLzGKpAl{wA^l;0t_(CEHrx+%~CN}ms;p@d7*{=j6yAtnsv199?5wLqdbR}&o)jnpb zZLct;4)%!KzmRcUjrUM59x@}1_S9T*B9lyqdW7 z${mS<`exarHu&VgTQ1UKS^Ka~Ai6MeExdPg#^K7^^kiHbrjkb_d=V~k) zrU2_(y6&b0#f=TdEfLh=U~e)Q?BipT;i`Da9MUDSYZ)2|sGyd+uuMQfw?6)Y|>X!JbXw|M!2(*488UkX`x~`9QY~nI)dWG7Z zE3?wC8sW(HGx3qcHiz3!p^y=+!KcW)ECPP9>4bXSC4(|>sW1VxrpI1lLTq^6kY@zVV@PSyD z?cWn5f%hCRp_Or4*sY2x3QoliE4!!4AUS0TRAGF$%BrV+$Vt3h+A}Q=sh5l(Fd_*A zK4&QiA7Uey>`I_(vdNAKy&qHkR+M+|6lE`%ZzetA;|D`3q?DXeMB#m5i?D#PSA>i? z8`G132uYQ02E@19B{YUS@;^2UStL<+AJ!ip7AomQmM6UAA2yJNJkr8T#8xMJv>K2` zUPlALy(w;>%6j-gl+x>cGqJ37%FO!K%ytRnf||?<1{~7p+^|Ni@V4UaFA8ZeUpv}{jK*vK^4kr-USF+86?^Re#chBB?tJg9_|RS$vHX-HDC74 zy3Y1$SF(NCWN)&BtMRg)67!rB|8aGfpHdZ3C1Jr?-%NpFH-ZdxhL#H>5l zr3`e2u~|hxcSBc!yRx5ES$irHWH5DzDxnFM?z0X)Xo6 z0Y@@M4!bPcFIoRH>+C&+eot~ikxT$A+9+~noz~I)oJzn}88hR#*O+dK*Q;y+Q^d72 zU=zMWaRZfn%9JT_u4!e{&2)R^KB-@hX4F?%^<+zloFK}t5xCsH_;#(S81Bg` zh2154nf_NRPwIb#b>WcOt=;pa{UT5R0WC8WD;0ubW1p3$eS?LYJsS&Ict>EYaUBK>`Y%sxtpy?vwudih)_&HyY4aMhVN>l`KkL8I-_EmvURKmZWE_@RD(I zvu}vO{mK;hvcjemTGEvcdsN+^X3(*Y5FAqQ;~jTfy-NA}wRIp{L?WVg-WEc6L#1tF zf72s}DtBN-=Fss4lW060+@~D5(aEPqEKn#x>TrEHJy(KLgB?z477~GuH|+ z;`QTSHIfUp{zP!mch3{v-y^~om`63U#$RDSm{k2|&-4c~(+zZwz>S@)iIZOgaaT%D z{%y?&h+fsGu~qKZz2|ugt2ScnIA@*1i5u*Ic&`W?heEVn9u{$ls4uHXu7{^UGYO-7YjSP1p6H! zqijC_*5=R`3^)GAr_!et}NL zb*rkoB{}otqTMImys#<1IAL4iwnDKZarmvW>x0EseR+@46wsd9*;mp?ZlI3Mi3XhV zLsJ7P8Rh4luArx~GT^oC1zTZT4BtzF)??*JVxpTgpqO zh}tr#bYDw@RF!1B3I~pHs5{5xO0N${*j8VnrdRrf>AN0t;Uc*z*?Q#g3ytwg{Ea0v zb?_!E!Z5jo<_nZ#71|3?;EAl$TJC0##z=M0Ty5NZx2gBE-{j>W*bvb|pa^s%7_pmmJO*!!{D4gN{mEsbLt| ztlXC3$_114Mruq!!GVZ6t%Q;YwQ^w6sR!6M3P|{ILVSNK9z2Et4AfH$ey$%_qd1{y zmSjuxZx5E07r|ra-&wodrMQ`#dct2^;-r_1>^Zu9u4^%P6g-_{zJi$ z6V+5e1KDyn7*Gy7P=HWuf_=*{lPpjRK5`utyo5C8I<#HumZd4ldl;ZY4g~EhI~#({ zG762LFOHFjBt2Y@oaduafSUL& z6@Mt4@kSLtQUJMP{T=pH%3)OJ$vMTW3{=`~C~6?vz)5%6#!yk^m_?=}39^=1Oi?## z%MwUmvy4@C+U~5IR1Wu*-ke=7-;!`R?A1BfXFD7GTr83|qsU1%95Cl-&YtAmaMY41 zyGCqKsE+U6rtmcHn5rlHtlHO^KCS#`wh2(%trE`nRMs89u+14=iUS11xe60ScoDiUA<$%Vw#Cm^5`LXYDrXA#0i7wEe+gV7FXDe z`$#h+&raCm!8V{Y11o6n9czv3pyD<^D!IX1Y=)&RNdw^2Ax@>O=5+c~3rEC(N!pSm z%NON#;(CpPpeb&VWR^)My}h(f5z#uS5+|!{Zr$RPfWZ^XV5}`zYn=N<8hwf7Z3`QC z&r9iLQMujG0W29K)FkUoWJQ!@KlhM_J|Ts_#-4~xdiI2x08LZ4Z1m1>+0_BdIX1)O zGzNB;oZQI{B*GTS6EUt>U%)sAsn)!j42h8{#80KK#SJQTE7a1hEI6my@AIm{ZaVAy z3YYSy%LVRaqN|h*e91Zq*;rwvO1TZM2u(XL5#x1n@U5_Yg{ywIc*i)qe`n-TNyL%1 zs(CjnO~MUh+BK+UhbECmwOd-}8GiAO%$Nf0JZRB%yTsDCkJrN@$NS(1j)h{ay!!;x z^WGB#+aaeFBK^IOib_euxI|SIr!FhzlBoXBTs8_jN0LJHvRJ6LZw^_*JG4jbDg&8Q z2_)b^o=o11aJqiT1jC93C*+(+Aq*Lehn*qgIFQlouqOaxge$zNg{&I!a2s2wc9k|H z>l>CHkJ4Ywt*esUYLgIjty{~*%d#Z`s_fX^=@!@bS%1dOA8RBqQ7)C5BaWBGoLhEp zW%=oyJ@_0a&w9ihCp3^&h}6`?jh~3*5eKxFdAHgod$dQyIbU({#@72*>rCSf_H`qy zc%W}O2 zWd1G}m4V!)#0NtODbs$0rXGM14tlw_2=;r!c2X#)M3jwOYyVnwm! zd?u8EKKhcxRN^Q={fa%s$bCDxtE!UUaz_Q& l85mTZ69H=W_kZ=NxZgkDKi@y!KmYYV{~xzuD3Sm=0RT^|S5^Q3 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/d7/aa/327bcecf518f9106ac6b8f003fa3bcea8566 b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/d7/aa/327bcecf518f9106ac6b8f003fa3bcea8566 deleted file mode 100644 index be0f7640fa9d55b895bbd214ff59349d94fe00a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5977 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 H0D=Gjs;s!< diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha1/e0/50/08f3ff82b34f17b1e972454a0ab70a269c7d b/deps/npm/test/npm_cache/_cacache/content-v2/sha1/e0/50/08f3ff82b34f17b1e972454a0ab70a269c7d deleted file mode 100644 index 40d8213d36ce63f073a5eae4429b934927e7efc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 371 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 Lihv|$0C)fZqI5hc diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/0b/61/241d7c17bcbb1baee7094d14b7c451efecc7ffcbd92598a0f13d313cc9ebc2a07e61f007baf58fbf94ff9a8695bdd5cae7ce03bbf1e94e93613a00f25f21 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/0b/61/241d7c17bcbb1baee7094d14b7c451efecc7ffcbd92598a0f13d313cc9ebc2a07e61f007baf58fbf94ff9a8695bdd5cae7ce03bbf1e94e93613a00f25f21 deleted file mode 100644 index 945c9b46d684f0..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/0b/61/241d7c17bcbb1baee7094d14b7c451efecc7ffcbd92598a0f13d313cc9ebc2a07e61f007baf58fbf94ff9a8695bdd5cae7ce03bbf1e94e93613a00f25f21 +++ /dev/null @@ -1 +0,0 @@ -. \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/15/ad/34853f1149526d97f08b50c3aaa9ec84031a7ebfb7bb59e3f2317d5c306286528cb91bf53dc596802d316762e5ba4641764b2680945ba3f620d3cf798a05 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/15/ad/34853f1149526d97f08b50c3aaa9ec84031a7ebfb7bb59e3f2317d5c306286528cb91bf53dc596802d316762e5ba4641764b2680945ba3f620d3cf798a05 deleted file mode 100644 index 1efc06603f9b3e..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/15/ad/34853f1149526d97f08b50c3aaa9ec84031a7ebfb7bb59e3f2317d5c306286528cb91bf53dc596802d316762e5ba4641764b2680945ba3f620d3cf798a05 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"underscore","_rev":"131-e6bd048b180d8ca3830d5242e6bd93fa","name":"underscore","description":"JavaScript's functional programming helper library.","dist-tags":{"latest":"1.5.1","stable":"1.5.1"},"versions":{"1.0.3":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.0.3","_id":"underscore@1.0.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/underscore/-/underscore-1.0.3.tgz","shasum":"7793a6f776dffa491d224eaf1d819824d4dc288a"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.0.4":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.0.4","_id":"underscore@1.0.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/underscore/-/underscore-1.0.4.tgz","shasum":"563141126b4e412f6c12c2ae2fb44ef0edd23fb2"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.0":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.0","_id":"underscore@1.1.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/underscore/-/underscore-1.1.0.tgz","shasum":"8bf44d9cc8c3a614d7940035522e1f95b682b071"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.1":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.1","_id":"underscore@1.1.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/underscore/-/underscore-1.1.1.tgz","shasum":"65dddb8cd0ee3f0094f46db72ea269d5a4f5fca4"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.2":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.2","_id":"underscore@1.1.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/underscore/-/underscore-1.1.2.tgz","shasum":"8cf4ae3900c32f3e3f06579d473a45ad768251e8"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.3":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore","version":"1.1.3","_id":"underscore@1.1.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.8-1","_nodeVersion":"v0.2.5","dist":{"tarball":"http://localhost:1337/underscore/-/underscore-1.1.3.tgz","shasum":"6bd1969042a65bd3966d8924c14909f2284631dd"},"directories":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.4":{"name":"underscore","description":"Functional programming aid for JavaScript. Works well with jQuery.","url":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"lib":".","main":"underscore.js","version":"1.1.4","_id":"underscore@1.1.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.9","_nodeVersion":"v0.5.0-pre","dist":{"shasum":"9e82274902865625b3a6d4c315a38ffd80047dae","tarball":"http://localhost:1337/underscore/-/underscore-1.1.4.tgz"},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.1.5":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.1.5","_id":"underscore@1.1.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.16","_nodeVersion":"v0.4.2","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"23601d62c75619998b2f0db24938102793336a56","tarball":"http://localhost:1337/underscore/-/underscore-1.1.5.tgz"},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.6":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.1.6","_id":"underscore@1.1.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.18","_nodeVersion":"v0.4.2","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"6868da1bdd72d75285be0b4e50f228e70d001a2c","tarball":"http://localhost:1337/underscore/-/underscore-1.1.6.tgz"},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}]},"1.1.7":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.1.7","devDependencies":{},"_id":"underscore@1.1.7","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"40bab84bad19d230096e8d6ef628bff055d83db0","tarball":"http://localhost:1337/underscore/-/underscore-1.1.7.tgz"},"scripts":{},"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.2.0":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.0","_npmJsonOpts":{"file":"/Users/jashkenas/.npm/underscore/1.2.0/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"underscore@1.2.0","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.22","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"b32ce32c8c118caa8031c10b54c7f65ab3b557fd","tarball":"http://localhost:1337/underscore/-/underscore-1.2.0.tgz"},"scripts":{},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"directories":{}},"1.2.1":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.1","_npmJsonOpts":{"file":"/Users/jashkenas/.npm/underscore/1.2.1/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"underscore@1.2.1","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.22","_nodeVersion":"v0.4.10","_defaultsLoaded":true,"dist":{"shasum":"fc5c6b0765673d92a2d4ac8b4dc0aa88702e2bd4","tarball":"http://localhost:1337/underscore/-/underscore-1.2.1.tgz"},"scripts":{},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"directories":{}},"1.2.2":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.2","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.2.2","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.0","_defaultsLoaded":true,"dist":{"shasum":"74dd40e9face84e724eb2edae945b8aedc233ba3","tarball":"http://localhost:1337/underscore/-/underscore-1.2.2.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.2.3":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"dependencies":{},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.3","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.2.3","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.0","_defaultsLoaded":true,"dist":{"shasum":"11b874da70f4683d7d48bba2b44be1e600d2f6cf","tarball":"http://localhost:1337/underscore/-/underscore-1.2.3.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.2.4":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.2.4","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.2.4","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"e8da6241aa06f64df2473bb2590b8c17c84c3c7e","tarball":"http://localhost:1337/underscore/-/underscore-1.2.4.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.0":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"contributors":[],"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.0","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.0","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"253b2d79b7bb67943ced0fc744eb18267963ede8","tarball":"http://localhost:1337/underscore/-/underscore-1.3.0.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.1":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.1","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.1","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"6cb8aad0e77eb5dbbfb54b22bcd8697309cf9641","tarball":"http://localhost:1337/underscore/-/underscore-1.3.1.tgz"},"maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.2":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.2","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.2","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"1b4e455089ab1d1d38ab6794ffe6cf08f764394a","tarball":"http://localhost:1337/underscore/-/underscore-1.3.2.tgz"},"readme":" __ \n /\\ \\ __ \n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____ \n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\ \n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/ \n \\ \\____/ \n \\/___/\n \nUnderscore.js is a utility-belt library for JavaScript that provides \nsupport for the usual functional suspects (each, map, reduce, filter...) \nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://documentcloud.github.com/underscore/\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.3.3":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://documentcloud.github.com/underscore/","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.3.3","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"_id":"underscore@1.3.3","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"47ac53683daf832bfa952e1774417da47817ae42","tarball":"http://localhost:1337/underscore/-/underscore-1.3.3.tgz"},"readme":" __ \n /\\ \\ __ \n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____ \n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\ \n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/ \n \\ \\____/ \n \\/___/\n \nUnderscore.js is a utility-belt library for JavaScript that provides \nsupport for the usual functional suspects (each, map, reduce, filter...) \nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://documentcloud.github.com/underscore/\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","maintainers":[{"name":"documentcloud","email":"jeremy@documentcloud.org"},{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.4.0":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.4.0","readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","_id":"underscore@1.4.0","dist":{"shasum":"caaf510c272cbb53748a225dcfd906e5f5a5ccdd","tarball":"http://localhost:1337/underscore/-/underscore-1.4.0.tgz"},"_npmVersion":"1.1.49","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.4.1":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.4.1","readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","_id":"underscore@1.4.1","dist":{"shasum":"f6a25ffe5d6d3ed4fe8fef37c3a9bfe689b16bb9","tarball":"http://localhost:1337/underscore/-/underscore-1.4.1.tgz"},"_npmVersion":"1.1.49","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.4.2":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.4.2","readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","_id":"underscore@1.4.2","dist":{"shasum":"cb2aae6a7999a89fd55aaee75bce0311698cebfb","tarball":"http://localhost:1337/underscore/-/underscore-1.4.2.tgz"},"_npmVersion":"1.1.49","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.4.3":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.4.3","readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","_id":"underscore@1.4.3","dist":{"shasum":"b3d0aaa1ee74d886ea4f2648021a4f8ad779ed1d","tarball":"http://localhost:1337/underscore/-/underscore-1.4.3.tgz"},"_npmVersion":"1.1.63","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.4.4":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.4.4","devDependencies":{"phantomjs":"0.2.2"},"scripts":{"test":"phantomjs test/vendor/runner.js test/index.html?noglobals=true"},"readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","_id":"underscore@1.4.4","dist":{"shasum":"61a6a32010622afa07963bf325203cf12239d604","tarball":"http://localhost:1337/underscore/-/underscore-1.4.4.tgz"},"_npmVersion":"1.1.63","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.5.0":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/documentcloud/underscore.git"},"main":"underscore.js","version":"1.5.0","devDependencies":{"phantomjs":"1.9.0-1"},"scripts":{"test":"phantomjs test/vendor/runner.js test/index.html?noglobals=true"},"license":"MIT","readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nMany thanks to our contributors:\nhttps://github.com/documentcloud/underscore/contributors\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/documentcloud/underscore/issues"},"_id":"underscore@1.5.0","dist":{"shasum":"90c57994d1de16aab8938142e3c5b43547019362","tarball":"http://localhost:1337/underscore/-/underscore-1.5.0.tgz"},"_from":".","_npmVersion":"1.2.24","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}},"1.5.1":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/jashkenas/underscore.git"},"main":"underscore.js","version":"1.5.1","devDependencies":{"phantomjs":"1.9.0-1"},"scripts":{"test":"phantomjs test/vendor/runner.js test/index.html?noglobals=true"},"license":"MIT","readme":" __\n /\\ \\ __\n __ __ ___ \\_\\ \\ __ _ __ ____ ___ ___ _ __ __ /\\_\\ ____\n /\\ \\/\\ \\ /' _ `\\ /'_ \\ /'__`\\/\\ __\\/ ,__\\ / ___\\ / __`\\/\\ __\\/'__`\\ \\/\\ \\ /',__\\\n \\ \\ \\_\\ \\/\\ \\/\\ \\/\\ \\ \\ \\/\\ __/\\ \\ \\//\\__, `\\/\\ \\__//\\ \\ \\ \\ \\ \\//\\ __/ __ \\ \\ \\/\\__, `\\\n \\ \\____/\\ \\_\\ \\_\\ \\___,_\\ \\____\\\\ \\_\\\\/\\____/\\ \\____\\ \\____/\\ \\_\\\\ \\____\\/\\_\\ _\\ \\ \\/\\____/\n \\/___/ \\/_/\\/_/\\/__,_ /\\/____/ \\/_/ \\/___/ \\/____/\\/___/ \\/_/ \\/____/\\/_//\\ \\_\\ \\/___/\n \\ \\____/\n \\/___/\n\nUnderscore.js is a utility-belt library for JavaScript that provides\nsupport for the usual functional suspects (each, map, reduce, filter...)\nwithout extending any core JavaScript objects.\n\nFor Docs, License, Tests, and pre-packed downloads, see:\nhttp://underscorejs.org\n\nUnderscore is an open-sourced component of DocumentCloud:\nhttps://github.com/documentcloud\n\nMany thanks to our contributors:\nhttps://github.com/jashkenas/underscore/contributors\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/jashkenas/underscore/issues"},"_id":"underscore@1.5.1","dist":{"shasum":"d2bde817d176ffade894ab71458e682a14b86dc9","tarball":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz"},"_from":".","_npmVersion":"1.2.24","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{}}},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"time":{"1.0.3":"2011-12-07T15:12:18.045Z","1.0.4":"2011-12-07T15:12:18.045Z","1.1.0":"2011-12-07T15:12:18.045Z","1.1.1":"2011-12-07T15:12:18.045Z","1.1.2":"2011-12-07T15:12:18.045Z","1.1.3":"2011-12-07T15:12:18.045Z","1.1.4":"2011-12-07T15:12:18.045Z","1.1.5":"2011-12-07T15:12:18.045Z","1.1.6":"2011-12-07T15:12:18.045Z","1.1.7":"2011-12-07T15:12:18.045Z","1.2.0":"2011-12-07T15:12:18.045Z","1.2.1":"2011-12-07T15:12:18.045Z","1.2.2":"2011-11-14T20:28:47.115Z","1.2.3":"2011-12-07T15:12:18.045Z","1.2.4":"2012-01-09T17:23:14.818Z","1.3.0":"2012-01-11T16:41:38.459Z","1.3.1":"2012-01-23T22:57:36.474Z","1.3.2":"2012-04-09T18:38:14.345Z","1.3.3":"2012-04-10T14:43:48.089Z","1.4.0":"2012-09-27T22:02:55.267Z","1.4.1":"2012-10-01T17:20:22.595Z","1.4.2":"2012-10-07T03:05:02.986Z","1.4.3":"2012-12-04T18:47:36.401Z","1.4.4":"2013-01-30T02:12:42.969Z","1.5.0":"2013-07-06T18:05:58.721Z","1.5.1":"2013-07-08T08:38:10.051Z"},"repository":{"type":"git","url":"git://github.com/jashkenas/underscore.git"},"users":{"vesln":true,"mvolkmann":true,"lancehunt":true,"mikl":true,"linus":true,"vasc":true,"bat":true,"dmalam":true,"mbrevoort":true,"danielr":true,"rsimoes":true,"thlorenz":true,"jharding":true,"tellnes":true,"fgribreau":true,"pid":true,"tylerstalder":true,"graemef":true,"gillesruppert":true,"travishorn":true,"m42am":true,"af":true,"bencevans":true,"Scryptonite":true,"konklone":true,"esp":true,"bryanburgers":true,"ehershey":true,"freethenation":true,"dannydulai":true,"megadrive":true,"lupomontero":true,"cj.nichols":true,"dbrockman":true,"maxmaximov":true,"hyqhyq_3":true,"zonetti":true,"cparker15":true,"lemulot":true,"mlowe":true,"chilts":true,"shanewholloway":true,"elgs":true,"eins78":true,"moonpyk":true},"_attachments":{"underscore-1.5.1.tgz":{"content_type":"application/octet-stream","revpos":129,"digest":"md5-jEzAnjdRfcazh9PKAMa1kw==","length":22746,"stub":true},"underscore-1.5.0.tgz":{"content_type":"application/octet-stream","revpos":126,"digest":"md5-JiqbW+htmCdz6yVjqaz44Q==","length":22907,"stub":true},"underscore-1.4.4.tgz":{"content_type":"application/octet-stream","revpos":104,"digest":"md5-s/MrjCiRarwh7tZ9DX+RyA==","length":41763,"stub":true},"underscore-1.4.3.tgz":{"content_type":"application/octet-stream","revpos":97,"digest":"md5-SbGx702k/T8yuag+j/VjCg==","length":62294,"stub":true},"underscore-1.4.2.tgz":{"content_type":"application/octet-stream","revpos":91,"digest":"md5-vSAO6RpJID3UCJkAWMEIjg==","length":61836,"stub":true},"underscore-1.4.1.tgz":{"content_type":"application/octet-stream","revpos":88,"digest":"md5-O72hIvWp7cVwkiA/2eF6rg==","length":61692,"stub":true},"underscore-1.4.0.tgz":{"content_type":"application/octet-stream","revpos":85,"digest":"md5-26PeH3uwZlxMzfzwS4LmMg==","length":61579,"stub":true},"underscore-1.3.3.tgz":{"content_type":"application/octet-stream","revpos":69,"digest":"md5-lRWlaQvCPiUt9CVTCTbZqQ==","length":58692,"stub":true},"underscore-1.3.2.tgz":{"content_type":"application/octet-stream","revpos":66,"digest":"md5-yS3kcu5U31CO0KAJcBJ9yA==","length":58699,"stub":true},"underscore-1.3.1.tgz":{"content_type":"application/octet-stream","revpos":60,"digest":"md5-Y4Z1Vvv7gZoZtJ9mTz0zSQ==","length":61440,"stub":true},"underscore-1.3.0.tgz":{"content_type":"application/octet-stream","revpos":56,"digest":"md5-eIPIVGdK7Fzup3CU/AMO4g==","length":61440,"stub":true},"underscore-1.2.4.tgz":{"content_type":"application/octet-stream","revpos":54,"digest":"md5-jCUzsaWc+tlE/lQNsuLQBA==","length":61440,"stub":true},"underscore-1.2.3.tgz":{"content_type":"application/octet-stream","revpos":41,"digest":"md5-bP9hXPsRRpFAWlmUNIY+jA==","length":40960,"stub":true},"underscore-1.2.2.tgz":{"content_type":"application/octet-stream","revpos":38,"digest":"md5-78/kFlhnF2WL94pdo/dfww==","length":40960,"stub":true},"underscore-1.2.1.tgz":{"content_type":"application/octet-stream","revpos":35,"digest":"md5-gNzWgJppZn3xUj8LCQcJ+Q==","length":31879,"stub":true},"underscore-1.2.0.tgz":{"content_type":"application/octet-stream","revpos":33,"digest":"md5-WYSTx/McoA2yFB6GmQ5KnA==","length":31310,"stub":true},"underscore-1.1.7.tgz":{"content_type":"application/octet-stream","revpos":29,"digest":"md5-BxaNPc3JexY2qLOK3gDhgw==","length":29052,"stub":true},"underscore-1.1.6.tgz":{"content_type":"application/octet-stream","revpos":27,"digest":"md5-U11VsMTDu6BEZDKJlZidTw==","length":25592,"stub":true},"underscore-1.1.5.tgz":{"content_type":"application/octet-stream","revpos":25,"digest":"md5-rpLusI4XejA3uVROFAZg1A==","length":25038,"stub":true},"underscore-1.1.4.tgz":{"content_type":"application/octet-stream","revpos":23,"digest":"md5-VrXC+bUYmxwzr2CQH4oq0w==","length":86233,"stub":true},"underscore-1.1.3.tgz":{"content_type":"application/octet-stream","revpos":17,"digest":"md5-sdTV7zbtYfhAAanQLEcziw==","length":86107,"stub":true},"underscore-1.1.2.tgz":{"content_type":"application/octet-stream","revpos":11,"digest":"md5-SSm/3w/usRqR+0SrSyCr8A==","length":85482,"stub":true},"underscore-1.1.1.tgz":{"content_type":"application/octet-stream","revpos":9,"digest":"md5-UW8pTfPbkrRFTiwM6AFlVA==","length":85214,"stub":true},"underscore-1.1.0.tgz":{"content_type":"application/octet-stream","revpos":7,"digest":"md5-YJcA44Oj1Dm2imfD7dHLag==","length":71266,"stub":true},"underscore-1.0.4.tgz":{"content_type":"application/octet-stream","revpos":5,"digest":"md5-nRJu+q0L17u8DZqPxVvQKQ==","length":71018,"stub":true},"underscore-1.0.3.tgz":{"content_type":"application/octet-stream","revpos":3,"digest":"md5-pwgll4db7l4cg7fPTrgVTw==","length":70285,"stub":true}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/21/82/eac4f83e50f3b6aa8bea561c5dfebdc1d66941e2da785af406e045de56a0fc422034ca7fa2ab5fa99022c6b860203eb4853ce85f15f26b96c84b8d9e7320 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/21/82/eac4f83e50f3b6aa8bea561c5dfebdc1d66941e2da785af406e045de56a0fc422034ca7fa2ab5fa99022c6b860203eb4853ce85f15f26b96c84b8d9e7320 deleted file mode 100644 index a568011ff72d0b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/21/82/eac4f83e50f3b6aa8bea561c5dfebdc1d66941e2da785af406e045de56a0fc422034ca7fa2ab5fa99022c6b860203eb4853ce85f15f26b96c84b8d9e7320 +++ /dev/null @@ -1 +0,0 @@ -{"versions":{"1.0.0":{"name":"inherits","version":"1.0.0","dependencies":{},"devDependencies":{},"_hasShrinkwrap":false,"directories":{},"dist":{"shasum":"38e1975285bf1f7ba9c84da102bb12771322ac48","tarball":"https://registry.npmjs.org/inherits/-/inherits-1.0.0.tgz"},"engines":{"node":"*"}},"2.0.0":{"name":"inherits","version":"2.0.0","_hasShrinkwrap":false,"directories":{},"dist":{"shasum":"76c81b3b1c10ddee3a60bf2c247162bc369f8ba8","tarball":"https://registry.npmjs.org/inherits/-/inherits-2.0.0.tgz"}},"2.0.1":{"name":"inherits","version":"2.0.1","_hasShrinkwrap":false,"directories":{},"dist":{"shasum":"b17d08d326b4423e568eff719f91b0b1cbdf69f1","tarball":"https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"}},"1.0.1":{"name":"inherits","version":"1.0.1","_hasShrinkwrap":false,"directories":{},"dist":{"shasum":"1bdf16c6ff8266cb858c6da2baf3637a99fb3d87","tarball":"https://registry.npmjs.org/inherits/-/inherits-1.0.1.tgz"}},"1.0.2":{"name":"inherits","version":"1.0.2","_hasShrinkwrap":false,"directories":{},"dist":{"shasum":"ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b","tarball":"https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz"}},"2.0.3":{"name":"inherits","version":"2.0.3","devDependencies":{"tap":"^7.1.0"},"_hasShrinkwrap":false,"directories":{},"dist":{"shasum":"633c2c83e3da42a502f52466022480f4208261de","tarball":"https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz"}}},"name":"inherits","dist-tags":{"latest":"2.0.3"},"modified":"2018-08-03T00:38:03.803Z"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/22/fe/eed42d3bab5ff699721346f9c5fa7a70ac2748ee0ced75bc0b8f6e8aba924f53a93404b30fa8d28e0d64c14922e8f0d1ed1c212ef3f15d00e9527b17b9b9 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/22/fe/eed42d3bab5ff699721346f9c5fa7a70ac2748ee0ced75bc0b8f6e8aba924f53a93404b30fa8d28e0d64c14922e8f0d1ed1c212ef3f15d00e9527b17b9b9 deleted file mode 100644 index 9ed5bd97f87f00e12616479192be3dee78b3e1b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15108 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 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/2c/ec/8afad096618ae60ad9cd1cf2d2d9d5597b68010cc087c9a78765ef0dacd25c13a0e36948949317f09f667274ee5fa714abdc1b158e5cfea5ca5401663425 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/2c/ec/8afad096618ae60ad9cd1cf2d2d9d5597b68010cc087c9a78765ef0dacd25c13a0e36948949317f09f667274ee5fa714abdc1b158e5cfea5ca5401663425 deleted file mode 100644 index 6f66c55bd1a1398b20e290e5bd5202de9f9cb5c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5787 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 F{{ZV+n{faD diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/2e/36/48f976830aeaba0724b382a09a6a6736dfd4c755963a4f462f963f9ecb211c2258f00766dc3aa68664f66d3a01cb2789b2cf614aeb292dbeb4afe0b206cc b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/2e/36/48f976830aeaba0724b382a09a6a6736dfd4c755963a4f462f963f9ecb211c2258f00766dc3aa68664f66d3a01cb2789b2cf614aeb292dbeb4afe0b206cc deleted file mode 100644 index c4b25ccf69b8931e2fb8a3aa529b60ae153928ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4733 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 Lihv|$0C)fZqI5hc diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/32/c8/6992ba4671408a292bb3f2fae4cd10416dcedb6a214c169054af6bcc792b6ea56f7245333357cc59e4f84660380604b5ff338258ad46973218d864799b5e b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/32/c8/6992ba4671408a292bb3f2fae4cd10416dcedb6a214c169054af6bcc792b6ea56f7245333357cc59e4f84660380604b5ff338258ad46973218d864799b5e deleted file mode 100644 index 80ee92c7856849..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/32/c8/6992ba4671408a292bb3f2fae4cd10416dcedb6a214c169054af6bcc792b6ea56f7245333357cc59e4f84660380604b5ff338258ad46973218d864799b5e +++ /dev/null @@ -1 +0,0 @@ -{"myorg:myteam":"write","myorg:anotherteam":"read"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/39/721f705f621cffe30dbc828be387e253c50ed05fb0a8e3f418769996bdde1dd1cb8af2e47dfe9417aab7ac3d238d1f036ef2e9adb898c386f0cda9b6861e b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/39/721f705f621cffe30dbc828be387e253c50ed05fb0a8e3f418769996bdde1dd1cb8af2e47dfe9417aab7ac3d238d1f036ef2e9adb898c386f0cda9b6861e deleted file mode 100644 index fa4c213ed2bb85..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/39/721f705f621cffe30dbc828be387e253c50ed05fb0a8e3f418769996bdde1dd1cb8af2e47dfe9417aab7ac3d238d1f036ef2e9adb898c386f0cda9b6861e +++ /dev/null @@ -1 +0,0 @@ -{"latest":"2.0.0","a":"0.0.2","b":"0.6.0","c":"7.7.7"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/aa/ea2b3a5902264c14606117b00e20425af14560c323e92859dd86f4cc552146fc06548a31ea59ba6edd569b6a41a201781f6a39900082feaac81923a12e57 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/aa/ea2b3a5902264c14606117b00e20425af14560c323e92859dd86f4cc552146fc06548a31ea59ba6edd569b6a41a201781f6a39900082feaac81923a12e57 deleted file mode 100644 index 5808c97a4f7471..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/35/aa/ea2b3a5902264c14606117b00e20425af14560c323e92859dd86f4cc552146fc06548a31ea59ba6edd569b6a41a201781f6a39900082feaac81923a12e57 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"test-repo-url-http","_rev":"2-ab911ee92af4c4ad93d44a61b09e073b","name":"test-repo-url-http","description":"Test repo with non-github http repository url","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"test-repo-url-http","version":"0.0.1","description":"Test repo with non-github http repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"http://gitlab.com/evanlucas/test-repo-url-http.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-http@0.0.1","dist":{"shasum":"45c8a39b626c1f83f8b8f53007c2f60eb98eee9d","tarball":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{}}},"readme":"ERROR: No README data found!","maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"time":{"0.0.1":"2014-02-16T19:23:06.941Z"},"readmeFilename":"","_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/37/27/2f58378ed591197373f46d3be148bfc82649dbb213be14a2b1ac47f50d7d4804cb105590935a7bcd02dfae3a2421c939cafb586b9f1b6c492fdfe09aca86 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/37/27/2f58378ed591197373f46d3be148bfc82649dbb213be14a2b1ac47f50d7d4804cb105590935a7bcd02dfae3a2421c939cafb586b9f1b6c492fdfe09aca86 deleted file mode 100644 index d98a345996b5b4eb6aaa9f82233f0b1f9ef503eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55415 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%0Ag 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 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/3a/f5/ac6e34332259d456779c882d9d0db472befe84fd8043ac328bf51e1bdcd47437b17eff4d92df4ad8e999b2c2e140779cde81f69475d8d4591808103b964b b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/3a/f5/ac6e34332259d456779c882d9d0db472befe84fd8043ac328bf51e1bdcd47437b17eff4d92df4ad8e999b2c2e140779cde81f69475d8d4591808103b964b deleted file mode 100644 index 4087ab3f3c6c28..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/3a/f5/ac6e34332259d456779c882d9d0db472befe84fd8043ac328bf51e1bdcd47437b17eff4d92df4ad8e999b2c2e140779cde81f69475d8d4591808103b964b +++ /dev/null @@ -1 +0,0 @@ -{"_id":"test-repo-url-https","_rev":"4-252d9ae747df7201a8e870dc60464829","name":"test-repo-url-https","description":"Test repo with non-github https repository url","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.0":{"name":"test-repo-url-https","version":"0.0.0","description":"Test repo with non-github https repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"http://gitlab.com/evanlucas/test-repo-url-https.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-https@0.0.0","dist":{"shasum":"de1a007b42c5741892aa734921fa1279bf4db2f6","tarball":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.0.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{}},"0.0.1":{"name":"test-repo-url-https","version":"0.0.1","description":"Test repo with non-github https repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"https://gitlab.com/evanlucas/test-repo-url-https.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-https@0.0.1","dist":{"shasum":"e05008f3ff82b34f17b1e972454a0ab70a269c7d","tarball":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{}}},"readme":"ERROR: No README data found!","maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"time":{"0.0.0":"2014-02-16T18:38:39.564Z","0.0.1":"2014-02-16T18:42:28.053Z"},"readmeFilename":"","_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/52/3a/902538a5ebd3ce129087f262bf0a1663c2fdb6a636acd7660e386fbf2f8d097946cda07518bbd9b9fc9c5be725e8ae6041e62c9e9e81de5585e900328b09 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/52/3a/902538a5ebd3ce129087f262bf0a1663c2fdb6a636acd7660e386fbf2f8d097946cda07518bbd9b9fc9c5be725e8ae6041e62c9e9e81de5585e900328b09 deleted file mode 100644 index 6b74362771d789..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/52/3a/902538a5ebd3ce129087f262bf0a1663c2fdb6a636acd7660e386fbf2f8d097946cda07518bbd9b9fc9c5be725e8ae6041e62c9e9e81de5585e900328b09 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"wordwrap","_rev":"6-961a85500434fed15d9749919ec35e34","name":"wordwrap","description":"Wrap those words. Show them at what columns to start and stop.","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"wordwrap","description":"Wrap those words. Show them at what columns to start and stop.","version":"0.0.1","repository":{"type":"git","url":"git://github.com/substack/node-wordwrap.git"},"main":"./index.js","keywords":["word","wrap","rule","format","column"],"directories":{"lib":".","example":"example","test":"test"},"scripts":{"test":"expresso"},"devDependencies":{"expresso":"=0.7.x"},"engines":{"node":">=0.4.0"},"license":"MIT/X11","author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"dependencies":{},"_id":"wordwrap@0.0.1","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"ac9b6dfa49e1147523055c5ef490c069cdd61f3e","tarball":"http://localhost:1337/wordwrap/-/wordwrap-0.0.1.tgz"}},"0.0.2":{"name":"wordwrap","description":"Wrap those words. Show them at what columns to start and stop.","version":"0.0.2","repository":{"type":"git","url":"git://github.com/substack/node-wordwrap.git"},"main":"./index.js","keywords":["word","wrap","rule","format","column"],"directories":{"lib":".","example":"example","test":"test"},"scripts":{"test":"expresso"},"devDependencies":{"expresso":"=0.7.x"},"engines":{"node":">=0.4.0"},"license":"MIT/X11","author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"_id":"wordwrap@0.0.2","dependencies":{},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"b79669bb42ecb409f83d583cad52ca17eaa1643f","tarball":"http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz"},"maintainers":[{"name":"substack","email":"mail@substack.net"}]}},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"time":{"0.0.1":"2011-05-30T01:46:34.944Z","0.0.2":"2011-08-26T10:17:09.949Z"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"repository":{"type":"git","url":"git://github.com/substack/node-wordwrap.git"},"users":{"fgribreau":true},"_attachments":{"wordwrap-0.0.2.tgz":{"content_type":"application/octet-stream","revpos":5,"digest":"md5-M3sB+fx52fvpmBznCtNNbw==","length":13772,"stub":true},"wordwrap-0.0.1.tgz":{"content_type":"application/octet-stream","revpos":3,"digest":"md5-EwWHDiAQRyEetK/Xt78gPA==","length":13067,"stub":true}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/54/95/fe840edbf5d18dfc27c5f4d9b359e8ab81a4741f62b0deb20979359843828ae50112bac4e25a3fc1089d260fd9b8236e434a3a55580b7aaba369e6f8ba87 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/54/95/fe840edbf5d18dfc27c5f4d9b359e8ab81a4741f62b0deb20979359843828ae50112bac4e25a3fc1089d260fd9b8236e434a3a55580b7aaba369e6f8ba87 deleted file mode 100644 index 2608065a4cff752c1baf23b8446274bb7b56a765..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 283 zcmV+$0p$K4iwFP!000006YZ7FYQ!KA$9vs8#o)Qbk7x>kzC~}P2RE^sbln)DSz1cp zy^|*0L%Xntrn@ZoLzr2j+#hIW%pU%YE?7KSmFO9{u~Unm^QRL(fhbA~=T zN-DHV7jlfj2i;>Se_dzV3LNZ}@SXsWR__ccfRuG(D{?!A_NMoZYsV;0S(=gLBe`^~ zk>#0nPt#2kcCH$%@r&m;p?}WBFa1k#7xjM*9{sSM&K(H4oenj5N>-zVdzd51YUnL? z@s1RfT32dYJ0A)zGD&gHczNRMaFu-Pe?DpY>|7dN!=gD({r{Qzsed69i~2tY4|U@K hTi3gNQ<)0ZZ*X`LE?rzC5{X3qjZdfL(J=rJ008{;gVz86 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/5a/64/0274b5cfdc4e0635bdd262c5830de7faf9c02d3c5ef66a60ac58ed20fcb324f85d7ef7b6e85210d8209122096191893f662db33d0569837305388bad35bf b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/5a/64/0274b5cfdc4e0635bdd262c5830de7faf9c02d3c5ef66a60ac58ed20fcb324f85d7ef7b6e85210d8209122096191893f662db33d0569837305388bad35bf deleted file mode 100644 index c35d7fea14d526..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/5a/64/0274b5cfdc4e0635bdd262c5830de7faf9c02d3c5ef66a60ac58ed20fcb324f85d7ef7b6e85210d8209122096191893f662db33d0569837305388bad35bf +++ /dev/null @@ -1 +0,0 @@ -{"_id":"cond","_rev":"19-d458a706de1740662cd7728d7d7ddf07","name":"cond","time":{"modified":"2015-02-13T07:33:58.120Z","created":"2014-03-16T20:52:52.236Z","0.0.0":"2014-03-16T20:52:52.236Z","0.0.1":"2014-03-16T21:12:33.393Z","0.0.2":"2014-03-16T21:15:25.430Z"},"versions":{"0.0.0":{},"0.0.1":{},"0.0.2":{}},"dist-tags":{"latest":"0.0.2"},"description":"Restartable error handling system","license":"CC0"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/5d/29/d6e1add2536379abc1eba52f83824a6091a5af9ffba1479cf404f478f36f06504f6643db8631e0b6f057e55140d84489cacc140627e012824fa073f97568 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/5d/29/d6e1add2536379abc1eba52f83824a6091a5af9ffba1479cf404f478f36f06504f6643db8631e0b6f057e55140d84489cacc140627e012824fa073f97568 deleted file mode 100644 index 0d0d28776eb2d4..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/5d/29/d6e1add2536379abc1eba52f83824a6091a5af9ffba1479cf404f478f36f06504f6643db8631e0b6f057e55140d84489cacc140627e012824fa073f97568 +++ /dev/null @@ -1 +0,0 @@ -{"versions":{"1.0.0":{"name":"graceful-fs","version":"1.0.0","dependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"ba8e39479ec46658d59eb305f878f8b0820fa8e5","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.0.0.tgz"},"engines":{"node":"0.4 || 0.5"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.0.1":{"name":"graceful-fs","version":"1.0.1","dependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"63647ef7ca9bf0abc561cdb72d2a58704a11cc2f","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.0.1.tgz"},"engines":{"node":"0.4 || 0.5"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.0.2":{"name":"graceful-fs","version":"1.0.2","dependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"79ac9f685c97c391d88a95e4cde5a1313c3807de","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.0.2.tgz"},"engines":{"node":"0.4 || 0.5 || 0.6"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.0":{"name":"graceful-fs","version":"1.1.0","dependencies":{"fast-list":"1"},"devDependencies":{},"directories":{},"dist":{"shasum":"c36f1d3b31d71b4cef3da303b784074f6d578037","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.0.tgz"},"engines":{"node":"0.4 || 0.5 || 0.6"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.1":{"name":"graceful-fs","version":"1.1.1","dependencies":{"fast-list":"1"},"devDependencies":{},"directories":{},"dist":{"shasum":"2f10989f7e9addfcea6592d95f52bb0c2d7e5bd2","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.1.tgz"},"engines":{"node":"0.4 || 0.5 || 0.6"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.2":{"name":"graceful-fs","version":"1.1.2","dependencies":{"fast-list":"1"},"devDependencies":{},"directories":{},"dist":{"shasum":"e82181f54de6620c67034e736fbc0d8fee8c1ffa","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.2.tgz"},"engines":{"node":"0.4 || 0.5 || 0.6"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.3":{"name":"graceful-fs","version":"1.1.3","dependencies":{"fast-list":"1"},"optionalDependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"7c5264a5fd5888cf02545898e402502ff01150ae","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.3.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.4":{"name":"graceful-fs","version":"1.1.4","dependencies":{"fast-list":"1"},"optionalDependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"d53940783394758e59b24e10d355cbcf8c225103","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.4.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.5":{"name":"graceful-fs","version":"1.1.5","dependencies":{"fast-list":"1"},"optionalDependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"0e4692e2240d3951c135587ff7dc8c557186d037","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.5.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.6":{"name":"graceful-fs","version":"1.1.6","dependencies":{},"optionalDependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"cb87fa245e5669fb7b1da44ceef5920054052e24","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.6.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.7":{"name":"graceful-fs","version":"1.1.7","dependencies":{},"optionalDependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"e5cfd7904de546273c1c461ddd053e44e84bc0d7","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.7.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.8":{"name":"graceful-fs","version":"1.1.8","dependencies":{},"optionalDependencies":{},"devDependencies":{},"directories":{},"dist":{"shasum":"7c9b7cd96f16b83230f61d522156306500914888","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.8.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.9":{"name":"graceful-fs","version":"1.1.9","devDependencies":{},"directories":{},"dist":{"shasum":"2d8916e828b906a921d7e7de8fc2ba148f03b18a","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.9.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.10":{"name":"graceful-fs","version":"1.1.10","dependencies":{},"devDependencies":{},"directories":{"test":"test"},"dist":{"shasum":"388a63917e823bc695afd57c76d7f3ee3db54ad3","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.10.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.11":{"name":"graceful-fs","version":"1.1.11","dependencies":{},"devDependencies":{},"directories":{"test":"test"},"dist":{"shasum":"3a3de260cc4cc80ae13debf31b71f73c2c5eb5e5","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.11.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.12":{"name":"graceful-fs","version":"1.1.12","dependencies":{"mkdirp":"~0.3.4"},"devDependencies":{},"directories":{"test":"test"},"dist":{"shasum":"baff9d5d87b722ecef6615ea301a5cb9e2860038","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.12.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.13":{"name":"graceful-fs","version":"1.1.13","directories":{"test":"test"},"dist":{"shasum":"a91e1d8231dc083bdaa227983fbdf5010944ca14","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.13.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.1.14":{"name":"graceful-fs","version":"1.1.14","directories":{"test":"test"},"dist":{"shasum":"07078db5f6377f6321fceaaedf497de124dc9465","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.2.0":{"name":"graceful-fs","version":"1.2.0","directories":{"test":"test"},"dist":{"shasum":"fe2d82a295e30de4e1d1c04ec159e10061140704","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.0.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.2.1":{"name":"graceful-fs","version":"1.2.1","directories":{"test":"test"},"dist":{"shasum":"b35cc6e623576fc2a278cba12c00dda6a1758d2d","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.1.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.2.2":{"name":"graceful-fs","version":"1.2.2","directories":{"test":"test"},"dist":{"shasum":"2643e33eaed1c7277decd37377ff9fb394689cf5","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.2.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"1.2.3":{"name":"graceful-fs","version":"1.2.3","directories":{"test":"test"},"dist":{"shasum":"15a4806a57547cb2d2dbf27f42e89a8c3451b364","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"2.0.0":{"name":"graceful-fs","version":"2.0.0","directories":{"test":"test"},"dist":{"shasum":"c9a206f6f5f4b94e1046dfaaccfe9e12d0ab8cef","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.0.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"2.0.1":{"name":"graceful-fs","version":"2.0.1","directories":{"test":"test"},"dist":{"shasum":"7fd6e0a4837c35d0cc15330294d9584a3898cf84","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.1.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"2.0.2":{"name":"graceful-fs","version":"2.0.2","directories":{"test":"test"},"dist":{"shasum":"26806eaca4bff8fc5dbc935e696135792175c46f","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.2.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"2.0.3":{"name":"graceful-fs","version":"2.0.3","directories":{"test":"test"},"dist":{"shasum":"7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.0":{"name":"graceful-fs","version":"3.0.0","directories":{"test":"test"},"dist":{"shasum":"5792ffae0ed7e318060ebf9f6e7a6e6cf5139327","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.0.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.1":{"name":"graceful-fs","version":"3.0.1","directories":{"test":"test"},"dist":{"shasum":"93352b5b951b009ef541271204122b612e46edaf","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.1.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.2":{"name":"graceful-fs","version":"3.0.2","directories":{"test":"test"},"dist":{"shasum":"2cb5bf7f742bea8ad47c754caeee032b7e71a577","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.2.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.3":{"name":"graceful-fs","version":"3.0.3","directories":{"test":"test"},"dist":{"shasum":"277141085e739ae7d54361119a62797b08a1d8c0","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.3.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.4":{"name":"graceful-fs","version":"3.0.4","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^0.4.13"},"directories":{"test":"test"},"dist":{"shasum":"a0306d9b0940e0fc512d33b5df1014e88e0637a3","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.4.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.5":{"name":"graceful-fs","version":"3.0.5","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^0.4.13"},"directories":{"test":"test"},"dist":{"shasum":"4a880474bdeb716fe3278cf29792dec38dfac418","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.6":{"name":"graceful-fs","version":"3.0.6","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^0.4.13"},"directories":{"test":"test"},"dist":{"shasum":"dce3a18351cb94cdc82e688b2e3dd2842d1b09bb","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.6.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.7":{"name":"graceful-fs","version":"3.0.7","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^0.4.13"},"directories":{"test":"test"},"dist":{"shasum":"e935be4b3e57892d289dc3bef7be8c02779d2b54","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.7.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.8":{"name":"graceful-fs","version":"3.0.8","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"ce813e725fa82f7e6147d51c9a5ca68270551c22","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.8.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"4.1.0":{"name":"graceful-fs","version":"4.1.0","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"6be6119244f64d6417fe303cc36ab497b5756cc1","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.0.tgz"},"engines":{"node":">=0.4.0"}},"4.1.1":{"name":"graceful-fs","version":"4.1.1","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"db940cb46e47bd719314a876bace802ea3e90d3c","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.1.tgz"},"engines":{"node":">=0.4.0"}},"4.1.2":{"name":"graceful-fs","version":"4.1.2","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"fe2239b7574972e67e41f808823f9bfa4a991e37","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.2.tgz"},"engines":{"node":">=0.4.0"}},"4.1.3":{"name":"graceful-fs","version":"4.1.3","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"92033ce11113c41e2628d61fdfa40bc10dc0155c","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.3.tgz"},"engines":{"node":">=0.4.0"}},"4.1.4":{"name":"graceful-fs","version":"4.1.4","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"ef089d2880f033b011823ce5c8fae798da775dbd","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.4.tgz"},"engines":{"node":">=0.4.0"}},"4.1.5":{"name":"graceful-fs","version":"4.1.5","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"f4745e8caed5e0dd2ef21bb5e2d229a32e8093c0","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.5.tgz"},"engines":{"node":">=0.4.0"}},"3.0.9":{"name":"graceful-fs","version":"3.0.9","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"44e10a870a068e892485bace909520905b08ba24","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.9.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"4.1.6":{"name":"graceful-fs","version":"4.1.6","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"514c38772b31bee2e08bedc21a0aeb3abf54c19e","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.6.tgz"},"engines":{"node":">=0.4.0"}},"3.0.10":{"name":"graceful-fs","version":"3.0.10","dependencies":{"natives":"^1.0.1"},"devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"5268b37746ff73a549708f3ce47fb54c84d5b0f0","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.10.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"3.0.11":{"name":"graceful-fs","version":"3.0.11","dependencies":{"natives":"^1.1.0"},"devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^1.2.0"},"directories":{"test":"test"},"dist":{"shasum":"7613c778a1afea62f25c630a086d7f3acbbdd818","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz"},"engines":{"node":">=0.4.0"},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js"},"4.1.7":{"name":"graceful-fs","version":"4.1.7","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"f8b39fe797b022ae88024cff94a3613197141f32","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.7.tgz"},"engines":{"node":">=0.4.0"}},"4.1.8":{"name":"graceful-fs","version":"4.1.8","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"da3e11135eb2168bdd374532c4e2649751672890","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.8.tgz"},"engines":{"node":">=0.4.0"}},"4.1.9":{"name":"graceful-fs","version":"4.1.9","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"baacba37d19d11f9d146d3578bc99958c3787e29","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.9.tgz"},"engines":{"node":">=0.4.0"}},"4.1.10":{"name":"graceful-fs","version":"4.1.10","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"f2d720c22092f743228775c75e3612632501f131","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.10.tgz"},"engines":{"node":">=0.4.0"}},"4.1.11":{"name":"graceful-fs","version":"4.1.11","devDependencies":{"mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^5.4.2"},"directories":{"test":"test"},"dist":{"shasum":"0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658","tarball":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz"},"engines":{"node":">=0.4.0"}},"4.1.12":{"name":"graceful-fs","version":"4.1.12","devDependencies":{"import-fresh":"^2.0.0","mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^12.0.1"},"_hasShrinkwrap":false,"directories":{"test":"test"},"dist":{"integrity":"sha512-E1kqZR391RPU4xZ4uJSKm42R1ZsN8qcolVVlMKDZ1yGa0HVRcNwhjJ74VGDTriDcOHa/LNzFCDHAOx/jq4F63A==","shasum":"5f732cae9d5023c66371362e72685e9c6cd42326","tarball":"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.12.tgz","fileCount":6,"unpackedSize":25559,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3LkMCRA9TVsSAnZWagAAizkP/3ROSu1bgKvgHuJ3BP7Q\nFA6TmxzkoAH9K55guUge0xxR7SCZI5YxiwImggAmklVXopSQXLl/jo7EfOpR\nHqyiUwIVnDlBKn9AB7CWRgPkIZRH4rGuu0JMiRqCHXdXboDUKn4qONTfI6mj\nfcAoVpAXpwumAP7LJD2olEnHE1j2fUca8RIaJlAAqw8LSiZd5Hdn/+JpLlp2\nK/9kM54BpPL9xM+IfaM07O59+6/TaNL1OcUb06wa1Qj0MP9jMqQPjrOxSOmQ\noKvOu2Vg6jsRTUkaIMRgsWO9puzhz74LLHe+DzBKqa8wVX97EEDd4Pldxeyx\n8UUzmLqQlSmdiNCY6dkR1F7yOQnbWMT3FBp9+tqlW6/IAA1vLnIwbofj1jJX\nBY0F8wi632qdE2gNti8puFqu79JedDLa/FQKyWppJ1pcLSOCrZK7dd6mGipr\nSmsQZPTXFOJuX9BJxH4sFnps/5hU47dpcnVPcPnTQneifVG1FN7l0Wqd+kpj\nxxbnOAnIZ+0q4L/Ppat1ks7c9R2OrknZM7+Ye8wAMT6VCgUkfxOjFWS11wad\nZ3iAZc6o2WZ1N4FJCsWchMXhceeevDhBhgCuGoOedYFXNKcfa3jPeR7oWRTV\no2/A9bryp6dmYYw+rpKi60xhqV/9Islf0bSfR028kfRBuIpohIGNkxhQqQtT\nic6a\r\n=7wOy\r\n-----END PGP SIGNATURE-----\r\n"},"engines":{"node":">=6"}},"4.1.13":{"name":"graceful-fs","version":"4.1.13","devDependencies":{"import-fresh":"^2.0.0","mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^12.0.1"},"_hasShrinkwrap":false,"directories":{"test":"test"},"dist":{"integrity":"sha512-a3u3Sck0c7/X622CIqiU0q/eRmhEOssVa3jkrfRRxxHPzaW1EcZgsQt87zKipdteGmFEKGGBvIBPr13pCB2HYw==","shasum":"9291d55cf899209ec0c2c8445d0ff7f6cc0e2df1","tarball":"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.13.tgz","fileCount":7,"unpackedSize":25976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3MFwCRA9TVsSAnZWagAAivkP/AlHtY1y8mmXNgKdLPov\n0ULfG8zMLkNfnKx437uFEHjcyjClOFrrV2nOuQnNBR/HYvWp6kSRoRJMX6eB\nzPhPN7bsR2SZGdIqOKwkoweDyFjrA/BPMaHLYPeoY+OkMZ8SdHcOQ4EelvWM\nmRtXMGjB+6W1KOsBjFxqvRKi7eMmkaJf6tyFRsEhju1RUGmhw1VY+F9fS67s\nbn/DCTujUAHxMhzvmcsBscoiI7WN6q/vP1W8cRHSKe+5INPwISp/M4bo+gU3\ng7XwafgK9bMHgSsC2a7sE0i6zPzlre55bEAvDemE7WsORGagrM2AHJw5Ow1n\nnGulaYd5rit5f2++DPGQ50FaGJtlEFqOqS+J1XldGB69KSvKIqjgyqmoG4VH\nBLv9DflSyO5kJJZggtXKMqqwf/GlXCRij4s5sZVyVqUQ8VK1N95MCF+IWm51\nvyVlyg+ZgnuT8LEiDyxDMx27KbwwxUcN3QPLXvp5zuvDsqlePVMg9AzmsF01\niB6tX/ZddeMF2yTbOV8FRZ7bD23jqbWfSapilKNZBgvLpi2ah3Li9suu1B8v\nz2t/oAU6aqC8PQ1D59Eq8t0eq4wYlKWpIHL24Z/Fj+LUdHw/GnpUy60Tu0GW\npwCoqmZVmP9K9THjahagpXKWxsYaewHr+MhBca+DJ9vjCHv40MrOmgauB7g6\nwCoN\r\n=t9Oq\r\n-----END PGP SIGNATURE-----\r\n"},"engines":{"node":">=6"}},"4.1.14":{"name":"graceful-fs","version":"4.1.14","devDependencies":{"import-fresh":"^2.0.0","mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^12.0.1"},"_hasShrinkwrap":false,"directories":{"test":"test"},"dist":{"integrity":"sha512-ns/IGcSmmGNPP085JCheg0Nombh1QPvSCnlx+2V+byQWRQEIL4ZB5jXJMNIHOFVS1roi85HIi5Ka0h43iWXfcQ==","shasum":"1b6e8362ef8c5ecb5da799901f39297e3054773a","tarball":"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.14.tgz","fileCount":7,"unpackedSize":25976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3NtKCRA9TVsSAnZWagAAn50P/R41gvttUFl7OysdDnVH\nTUFoUzk5WrVSQMO76cf8gQZ46xC4du+1BQhDFJ3gYvpmv57+6MDsgh2IFfCl\ntm0KsuBFnP9C3z8I47YdIqlMoUG+paoIRPrk0YIlqZddnaaf/BRO/9yr1Hb/\nm0mA4puWt+ceJh+pdSu3UzPFNoSSXr/+ViuVQiDVcxFOHHrWCxyXBrRLFc+8\nVTAinVmUEGLi9CkjlwIz99QbjizBd7INzRGCvCFm17XQlRHeT7e3EtRO2ySM\nvOU7o0K02vrP1XWtW7rXvGDATVJnTACM1yPZIhIXdZVxgD5zAEsTjqvvOAYJ\nfY3vqkHE1uoDTbf3mdT24ZmmaMRrOcOwmUPTa5ZxnIqAwOInOeVSwLUMIN+z\nqK+A4nL98U5L568OxpHlbAtbAgIHCPYADg+fT+8Xj7mIGtx/HBN+75h1WHaq\naGVvkK2kclgXFKXzHzCKfDlHe268rvqoRy+6Q9a1d5Cth1aArO6kTNajc4AX\nfco+TDCEg/oMDgCikHI4qL6zXwQ6aQiJjeuHONprnyrwrRhS9iCFD1DSC37Q\nsglCxNioVpd7TlfDg0v3yDFr8gZqo7a2ELoRmog3rwzgGYZ/VA/FJO/ztfE4\nkPH4rW2tbDldWc8bZ3FkH2TFHgwEw2qTgziPSFwE+V7G0GaDrbFjHslABMaP\nvlOn\r\n=G/Sv\r\n-----END PGP SIGNATURE-----\r\n"},"engines":{"node":">=6"}},"4.1.15":{"name":"graceful-fs","version":"4.1.15","devDependencies":{"import-fresh":"^2.0.0","mkdirp":"^0.5.0","rimraf":"^2.2.8","tap":"^12.0.1"},"_hasShrinkwrap":false,"directories":{"test":"test"},"dist":{"integrity":"sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==","shasum":"ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00","tarball":"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz","fileCount":7,"unpackedSize":25938,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb31vrCRA9TVsSAnZWagAAjMYP/2AwGCPcxbX+2ZBkpyRq\nJ85zkTLDdO2AhSNpgApHrPFbvQ2MYSedMmA/tuNOILCd2zulEvadRZLSW5zI\nHUkRFdU20ByFJoLMvoGm8EY9gEnQ3lpIvh6lmgNSYhQhm5khE0XHQ4sAs9YW\nV61Qr4yqKvkxXrMpElTgzkCfEZ79pNzZ58lE0Qvqmcp3OTczsOimh+w5UIUu\nt/GMZpsmLC4VHTj+hSRqYsh8HJFt9Nl2ahXK08eGAroZMRgRY5hA/9aJ2bA7\nHpuyqMH2wjbaJRnT8ORLfgfJ9a8xO+VzIp0ueAWpAjAaCtbC2dKF3/YJ8Bn6\nZUaCWMM1PZG1BIM/4g/q++OV7o9NgJvqjvjMmVZKanzUMBwfD9ygwFcP8oNF\nlLSR4GU6itDJo2oqdtsrTsfDe35sNTl3kwyhMqZPWFlNJ5C02jmeH2qPtc9s\n69lGDH5JNBBKOmJXV9WKfN+mOSXniBnUsUVu0vAm/y9nY1GZQiAlI5MfIW+T\n1a+K2cGakv6c+b2bO6ExwnIjWPwEpKNlPYHdjLv01GoT9qZRh2guD5RBJqDj\nbNToHu3zR6po45ekShHykoFDz3F+mOKWKyfQ1F3Z+z+8udFk7xbO4vxRTC4M\nq1HSgomC6uFS+RRNVhmTS2L4S1izPDbozKOUU+rpk4hQMBhTLgf7nQ0Bates\nG+db\r\n=Fpd7\r\n-----END PGP SIGNATURE-----\r\n"}}},"name":"graceful-fs","dist-tags":{"latest":"4.1.15","old":"3.0.11"},"modified":"2018-11-04T20:51:57.343Z"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/6f/c7/3dd4508c2d9f17eeb1cfd288276948a1689ebdf6a8d3f4f7516d4c68be639063e7e5437ef7ff72547aabe86b49a6b1bf5c733bdece3877d82bc8bc1a9a7d b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/6f/c7/3dd4508c2d9f17eeb1cfd288276948a1689ebdf6a8d3f4f7516d4c68be639063e7e5437ef7ff72547aabe86b49a6b1bf5c733bdece3877d82bc8bc1a9a7d deleted file mode 100644 index 24c60e2ca60ee3..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/6f/c7/3dd4508c2d9f17eeb1cfd288276948a1689ebdf6a8d3f4f7516d4c68be639063e7e5437ef7ff72547aabe86b49a6b1bf5c733bdece3877d82bc8bc1a9a7d +++ /dev/null @@ -1 +0,0 @@ -{"otheruser":"admin"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/76/39/4b378512c68bf209b433e06b71df27a45f7e7be35f174a0f83bce7799628b74dbe993c18b1c12e899a1ed7b159470b382180d1f0a5c4098ac6092cda1a8f b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/76/39/4b378512c68bf209b433e06b71df27a45f7e7be35f174a0f83bce7799628b74dbe993c18b1c12e899a1ed7b159470b382180d1f0a5c4098ac6092cda1a8f deleted file mode 100644 index 3ae97a65db0815..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/76/39/4b378512c68bf209b433e06b71df27a45f7e7be35f174a0f83bce7799628b74dbe993c18b1c12e899a1ed7b159470b382180d1f0a5c4098ac6092cda1a8f +++ /dev/null @@ -1 +0,0 @@ -{"objects":[{"id":"foo","type":"package","name":"@foo/pkg","endpoint":"foo.com"},{"id":"bar","type":"owner","name":"bar","endpoint":"bar.com"},{"id":"baz","type":"scope","name":"baz","endpoint":"baz.com"}]} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/79/ec/4625bec1a13aaefdcd4e7cf18f1c5575879d80e8bdba063cc962c959c48526a0c1c9e3766c95ec9ea1cf10cd954968f3bfec136f0d3aa87009db05cf4666 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/79/ec/4625bec1a13aaefdcd4e7cf18f1c5575879d80e8bdba063cc962c959c48526a0c1c9e3766c95ec9ea1cf10cd954968f3bfec136f0d3aa87009db05cf4666 deleted file mode 100644 index 2e95263ba3890b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/79/ec/4625bec1a13aaefdcd4e7cf18f1c5575879d80e8bdba063cc962c959c48526a0c1c9e3766c95ec9ea1cf10cd954968f3bfec136f0d3aa87009db05cf4666 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"clean","_rev":"33-7bb9012e61b414bbf93c168b5e95108c","name":"clean","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","dist-tags":{"latest":"2.1.6"},"versions":{"0.0.0":{"name":"clean","version":"0.0.0","description":"","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":"","license":"MIT","readme":"ERROR: No README data found!","_id":"clean@0.0.0","dist":{"shasum":"86cb7c9efff672cd768b54039c133057f4b810f2","tarball":"http://localhost:1337/clean/-/clean-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"1.1.4":{"name":"clean","version":"1.1.4","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n\n# Argv-parser\n\n> Argv-parser is a small and simple node.js module to parse `process.argv`\n\nArgv-parser is designed to be simple and will do nothing about:\n\n- option registration\n- description of options\n- output\n\n## Installation\n\n```sh\nnpm install argv-parser --save\n```\n\n## Usage\n\n```js\nvar parser = require('argv-parser');\n```\n\n## parser.parse(argv, options)\n\nParse argument vector (argv) or something like argv.\n\n##### Returns `ret` `Object`\n\n- parsed: `Object` the parsed object\n- warnings: `Object` the warnings of each option. If not exists, `ret.warning` will be an empty object\n- errors: `Object` the errors of each option.\n\n##### argv `Array`\n\n`process.argv` or something like that.\n\n##### options `Object`\n\n- rules: `Object` an extended `nopt` rules\n- offset: `Number` (optional, default to `2`) the offset from which the parser should start to parse.\n\n\n## parser.clean(data, options)\n\n##### Returns\n\nThe same as `parser.parse`\n\n##### options `Object`\n\n- rules: `Object`\n- types: `Object` (optional) type definitions. For most cases, you needn't this option\n\n\n## options.rules\n\n\n## Example\n\ntest.js\n\n```js\nvar rules = {\n open: {\n type: Boolean,\n value: true\n },\n\n port: {\n type: Number,\n short: 'p',\n value: function(port, parsed, tool) {\n if(!port){\n port = 9230;\n }\n\n if(port < 8000){\n tool.warn('port < 8000 which is dangerous');\n \n if(port < 1000){\n \ttool.error('port < 100 which is forbidden');\n \t\t\treturn;\n }\n }\n\n return port;\n }\n },\n\n html: {\n type: 'html',\n },\n\n name: {\n type: String\n }\n};\n\nvar data = parser.parse(process.argv, {\n\trules: rules\n});\n```\n\nDefault values:\n\n```\n$ node test.js\n> data.parsed.open; // true\n> data.parsed.port; // 9230\n\n```\n\nType limitation:\n\n```\n$ node test.js --port 8888 --no-open --name name\n> data.parsed.open; // false\n> data.parsed.port; // 8888\n> data.parsed.name; // 'namealert(123)'; -> stripped\n> data.errors; // {}\n> data.warnings; // {}\n```\n\nWarnings and errors:\n\n```\n$ node test.js --port 888 --no-open --name name\n> data.parsed.open; // false\n> data.parsed.port; // undefined; -> error\n> data.parsed.name; // 'name'\n> data.errors; // {port: ['port < 100 which is forbidden']}\n> data.warnings; // {port: ['port < 8000 which is dangerous']}\n```\n\n\n\n\n\n\n","_id":"clean@1.1.4","dist":{"shasum":"5fe3f1d48a22842316eba0a19c51f26428015c80","tarball":"http://localhost:1337/clean/-/clean-1.1.4.tgz"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"2.1.1":{"name":"clean","version":"2.1.1","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n\n# clean\n\nClean is small but powerful node.js module that parses and santitize argv or options for node, supporting:\n\n- fully extendable types\n- shorthands\n- validatiors\n- setters\n\n# Installation and Usage\n\n```sh\nnpm install clean --save\n```\n\n```js\nvar clean = require('clean')(options);\n```\n\n# Usage\n\n## Argv Shorthands\n\nWe can define shorthands with the option `options.shorthands`.\n\n```js\nvar shorthands = {\n\t// if `String`, define a shorthand for a key name\n\tc: 'cwd',\n\t// if `Array`, define a pattern slice of argv\n\tnr: ['--no-recursive'],\n\t// if `Object`, define a specific value\n\tr3: {\n\t\tretry: 3,\n\t\tstrict: false\n\t}\n};\nclean({\n\tshorthands: shorthands\n}).argv(['node', 'xxx', '-c', 'abc', '--nr', '--r3']); \n// notice that '-nr' will be considered as '-n -r'\n// The result is:\n// {\n//\t\tcwd: 'abc',\n//\t\trecursive: false,\n//\t\tretry: 3,\n//\t\tstrict: false \n// }\n```\n\n## Types\n\n```js\nclean({\n\tschema: {\n\t\tcwd: {\n\t\t\ttype: require('path')\n\t\t},\n\t\t\n\t\tretry: {\n\t\t\ttype: Boolean\n\t\t}\t\t\n\t}\n}).parseArgv(\n\t['node', 'xxx', '--cwd', 'abc', 'retry', 'false'], \n\tfunction(err, results, details){\n\t\tconsole.log(results.cwd); // the `path.resolved()`d 'abc'\n\t\tconsole.log(results.retry === false); // is a boolean, not a string\n\t}\n)\n```\n\nHow to extend a custom type ? See the \"advanced section\".\n\n## Validators and Setters\n\nValidators and setters of `clean` is implemented by `[checker](https://github.com/kaelzhang/node-checker)`, check the apis of `checker` for details.\n\nYou could check out the demo located at \"example/clean.js\". That is a very complicated situation of usage.\n\n```sh\nnode example/clean.js --username guest\n```\n\n\n\n# Programatical Details\n\n## constructor: clean(schema, options)\n\n\n### options\n\n#### options.offset `Number=`\n\nThe offset from which the parser should start to parse. Optional. Default to `2`.\n\n#### options.shorthands `Object=`\n\nThe shorthands used to parse the argv.\n\n#### options.schema `Object=`\n\nThe schema used to clean the given object or the parsred argv\n\n#### options.check_all `Boolean=false`\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n\n## .argv(argv)\n\nParses the argument vector, without cleaning the data.\n\n### argv `Array`\n\n### returns `Object`\n\nThe parsed object with shorthand rules applied.\n\n\n## .clean(data, callback)\n\nCleans the given data according to the `schema`.\n\n### data `Object`\n\nThe given data.\n\n### callback `function(err, results, details)`\n\n\n## .parseArgv(argv, callback)\n\nParses argument vector (argv) or something like argv, and cleans the parsed data according to the `schema`.\n\nThis method is equivalent to `c.clean(c.argv(argv), callback)`.\n\n# Advanced Section\n\n## .registerType(type, typeDef)\n\n\n\n\n\n\n","_id":"clean@2.1.1","dist":{"shasum":"f78cb9f6a9b3156e537fc2cbb7caf271636ecb09","tarball":"http://localhost:1337/clean/-/clean-2.1.1.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"2.1.2":{"name":"clean","version":"2.1.2","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![NPM version](https://badge.fury.io/js/clean.png)](http://badge.fury.io/js/clean)\n[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n[![Dependency Status](https://gemnasium.com/kaelzhang/node-clean.png)](https://gemnasium.com/kaelzhang/node-clean)\n\n# clean\n\nClean is small but powerful node.js module that parses and santitize argv or options for node, supporting:\n\n- fully extendable types\n- shorthands\n- validatiors\n- setters\n\n# Installation and Usage\n\n```sh\nnpm install clean --save\n```\n\n```js\nvar clean = require('clean')(options);\n```\n\n# Usage\n\n## Argv Shorthands\n\nWe can define shorthands with the option `options.shorthands`.\n\n```js\nvar shorthands = {\n\t// if `String`, define a shorthand for a key name\n\tc: 'cwd',\n\t// if `Array`, define a pattern slice of argv\n\tnr: ['--no-recursive'],\n\t// if `Object`, define a specific value\n\tr3: {\n\t\tretry: 3,\n\t\tstrict: false\n\t}\n};\nclean({\n\tshorthands: shorthands\n}).argv(['node', 'xxx', '-c', 'abc', '--nr', '--r3']); \n// notice that '-nr' will be considered as '-n -r'\n// The result is:\n// {\n//\t\tcwd: 'abc',\n//\t\trecursive: false,\n//\t\tretry: 3,\n//\t\tstrict: false \n// }\n```\n\n## Types\n\n```js\nclean({\n\tschema: {\n\t\tcwd: {\n\t\t\ttype: require('path')\n\t\t},\n\t\t\n\t\tretry: {\n\t\t\ttype: Boolean\n\t\t}\t\t\n\t}\n}).parseArgv(\n\t['node', 'xxx', '--cwd', 'abc', 'retry', 'false'], \n\tfunction(err, results, details){\n\t\tconsole.log(results.cwd); // the `path.resolved()`d 'abc'\n\t\tconsole.log(results.retry === false); // is a boolean, not a string\n\t}\n)\n```\n\nHow to extend a custom type ? See the \"advanced section\".\n\n## Validators and Setters\n\nValidators and setters of `clean` is implemented by `[checker](https://github.com/kaelzhang/node-checker)`, check the apis of `checker` for details.\n\nYou could check out the demo located at \"example/clean.js\". That is a very complicated situation of usage.\n\n```sh\nnode example/clean.js --username guest\n```\n\n\n\n# Programatical Details\n\n## constructor: clean(schema, options)\n\n\n### options\n\n#### options.offset `Number=`\n\nThe offset from which the parser should start to parse. Optional. Default to `2`.\n\n#### options.shorthands `Object=`\n\nThe shorthands used to parse the argv.\n\n#### options.schema `Object=`\n\nThe schema used to clean the given object or the parsred argv\n\n#### options.check_all `Boolean=false`\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n\n## .argv(argv)\n\nParses the argument vector, without cleaning the data.\n\n### argv `Array`\n\n### returns `Object`\n\nThe parsed object with shorthand rules applied.\n\n\n## .clean(data, callback)\n\nCleans the given data according to the `schema`.\n\n### data `Object`\n\nThe given data.\n\n### callback `function(err, results, details)`\n\n\n## .parseArgv(argv, callback)\n\nParses argument vector (argv) or something like argv, and cleans the parsed data according to the `schema`.\n\nThis method is equivalent to `c.clean(c.argv(argv), callback)`.\n\n# Advanced Section\n\n## .registerType(type, typeDef)\n\n\n\n\n\n\n","_id":"clean@2.1.2","dist":{"shasum":"1b331a23e2352a0ef4e145a72cfce1b461f36c41","tarball":"http://localhost:1337/clean/-/clean-2.1.2.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"2.1.3":{"name":"clean","version":"2.1.3","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![NPM version](https://badge.fury.io/js/clean.png)](http://badge.fury.io/js/clean)\n[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n[![Dependency Status](https://gemnasium.com/kaelzhang/node-clean.png)](https://gemnasium.com/kaelzhang/node-clean)\n\n# clean\n\nClean is small but powerful node.js module that parses and santitize argv or options for node, supporting:\n\n- fully extendable types\n- shorthands\n- validatiors\n- setters\n\n# Installation and Usage\n\n```sh\nnpm install clean --save\n```\n\n```js\nvar clean = require('clean')(options);\n```\n\n# Usage\n\n## Argv Shorthands\n\nWe can define shorthands with the option `options.shorthands`.\n\n```js\nvar shorthands = {\n\t// if `String`, define a shorthand for a key name\n\tc: 'cwd',\n\t// if `Array`, define a pattern slice of argv\n\tnr: ['--no-recursive'],\n\t// if `Object`, define a specific value\n\tr3: {\n\t\tretry: 3,\n\t\tstrict: false\n\t}\n};\nclean({\n\tshorthands: shorthands\n}).argv(['node', 'xxx', '-c', 'abc', '--nr', '--r3']); \n// notice that '-nr' will be considered as '-n -r'\n// The result is:\n// {\n//\t\tcwd: 'abc',\n//\t\trecursive: false,\n//\t\tretry: 3,\n//\t\tstrict: false \n// }\n```\n\n## Types\n\n```js\nclean({\n\tschema: {\n\t\tcwd: {\n\t\t\ttype: require('path')\n\t\t},\n\t\t\n\t\tretry: {\n\t\t\ttype: Boolean\n\t\t}\t\t\n\t}\n}).parseArgv(\n\t['node', 'xxx', '--cwd', 'abc', 'retry', 'false'], \n\tfunction(err, results, details){\n\t\tconsole.log(results.cwd); // the `path.resolved()`d 'abc'\n\t\tconsole.log(results.retry === false); // is a boolean, not a string\n\t}\n)\n```\n\nHow to extend a custom type ? See the \"advanced section\".\n\n## Validators and Setters\n\nValidators and setters of `clean` is implemented by `[checker](https://github.com/kaelzhang/node-checker)`, check the apis of `checker` for details.\n\nYou could check out the demo located at \"example/clean.js\". That is a very complicated situation of usage.\n\n```sh\nnode example/clean.js --username guest\n```\n\n\n\n# Programatical Details\n\n## constructor: clean(schema, options)\n\n\n### options\n\n#### options.offset `Number=`\n\nThe offset from which the parser should start to parse. Optional. Default to `2`.\n\n#### options.shorthands `Object=`\n\nThe shorthands used to parse the argv.\n\n#### options.schema `Object=`\n\nThe schema used to clean the given object or the parsred argv\n\n#### options.check_all `Boolean=false`\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n\n## .argv(argv)\n\nParses the argument vector, without cleaning the data.\n\n### argv `Array`\n\n### returns `Object`\n\nThe parsed object with shorthand rules applied.\n\n\n## .clean(data, callback)\n\nCleans the given data according to the `schema`.\n\n### data `Object`\n\nThe given data.\n\n### callback `function(err, results, details)`\n\n\n## .parseArgv(argv, callback)\n\nParses argument vector (argv) or something like argv, and cleans the parsed data according to the `schema`.\n\nThis method is equivalent to `c.clean(c.argv(argv), callback)`.\n\n# Advanced Section\n\n## .registerType(type, typeDef)\n\n\n\n\n\n\n","_id":"clean@2.1.3","dist":{"shasum":"b7cc64b5f6254daed3a285ae6845a826f1e16c71","tarball":"http://localhost:1337/clean/-/clean-2.1.3.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"2.1.4":{"name":"clean","version":"2.1.4","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![NPM version](https://badge.fury.io/js/clean.png)](http://badge.fury.io/js/clean)\n[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n[![Dependency Status](https://gemnasium.com/kaelzhang/node-clean.png)](https://gemnasium.com/kaelzhang/node-clean)\n\n# clean\n\nClean is small but powerful node.js module that parses and santitize argv or options for node, supporting:\n\n- fully extendable types\n- shorthands\n- validatiors\n- setters\n\n# Installation and Usage\n\n```sh\nnpm install clean --save\n```\n\n```js\nvar clean = require('clean')(options);\n```\n\n# Usage\n\n## Argv Shorthands\n\nWe can define shorthands with the option `options.shorthands`.\n\n```js\nvar shorthands = {\n\t// if `String`, define a shorthand for a key name\n\tc: 'cwd',\n\t// if `Array`, define a pattern slice of argv\n\tnr: ['--no-recursive'],\n\t// if `Object`, define a specific value\n\tr3: {\n\t\tretry: 3,\n\t\tstrict: false\n\t}\n};\nclean({\n\tshorthands: shorthands\n}).argv(['node', 'xxx', '-c', 'abc', '--nr', '--r3']); \n// notice that '-nr' will be considered as '-n -r'\n// The result is:\n// {\n//\t\tcwd: 'abc',\n//\t\trecursive: false,\n//\t\tretry: 3,\n//\t\tstrict: false \n// }\n```\n\n## Types\n\n```js\nclean({\n\tschema: {\n\t\tcwd: {\n\t\t\ttype: require('path')\n\t\t},\n\t\t\n\t\tretry: {\n\t\t\ttype: Boolean\n\t\t}\t\t\n\t}\n}).parseArgv(\n\t['node', 'xxx', '--cwd', 'abc', 'retry', 'false'], \n\tfunction(err, results, details){\n\t\tconsole.log(results.cwd); // the `path.resolved()`d 'abc'\n\t\tconsole.log(results.retry === false); // is a boolean, not a string\n\t}\n)\n```\n\nHow to extend a custom type ? See the \"advanced section\".\n\n## Validators and Setters\n\nValidators and setters of `clean` is implemented by `[checker](https://github.com/kaelzhang/node-checker)`, check the apis of `checker` for details.\n\nYou could check out the demo located at \"example/clean.js\". That is a very complicated situation of usage.\n\n```sh\nnode example/clean.js --username guest\n```\n\n\n\n# Programatical Details\n\n## constructor: clean(schema, options)\n\n\n### options\n\n#### options.offset `Number=`\n\nThe offset from which the parser should start to parse. Optional. Default to `2`.\n\n#### options.shorthands `Object=`\n\nThe shorthands used to parse the argv.\n\n#### options.schema `Object=`\n\nThe schema used to clean the given object or the parsred argv\n\n#### options.check_all `Boolean=false`\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n\n## .argv(argv)\n\nParses the argument vector, without cleaning the data.\n\n### argv `Array`\n\n### returns `Object`\n\nThe parsed object with shorthand rules applied.\n\n\n## .clean(data, callback)\n\nCleans the given data according to the `schema`.\n\n### data `Object`\n\nThe given data.\n\n### callback `function(err, results, details)`\n\n\n## .parseArgv(argv, callback)\n\nParses argument vector (argv) or something like argv, and cleans the parsed data according to the `schema`.\n\nThis method is equivalent to `c.clean(c.argv(argv), callback)`.\n\n# Advanced Section\n\n## .registerType(type, typeDef)\n\n\n\n\n\n\n","_id":"clean@2.1.4","dist":{"shasum":"4c93d479f635b64e0df1230729811030b71ed2e0","tarball":"http://localhost:1337/clean/-/clean-2.1.4.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"2.1.5":{"name":"clean","version":"2.1.5","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![NPM version](https://badge.fury.io/js/clean.png)](http://badge.fury.io/js/clean)\n[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n[![Dependency Status](https://gemnasium.com/kaelzhang/node-clean.png)](https://gemnasium.com/kaelzhang/node-clean)\n\n# clean\n\nClean is small but powerful node.js module that parses and santitize argv or options for node, supporting:\n\n- fully extendable types\n- shorthands\n- validatiors\n- setters\n\n# Installation and Usage\n\n```sh\nnpm install clean --save\n```\n\n```js\nvar clean = require('clean')(options);\n```\n\n# Usage\n\n## Argv Shorthands\n\nWe can define shorthands with the option `options.shorthands`.\n\n```js\nvar shorthands = {\n\t// if `String`, define a shorthand for a key name\n\tc: 'cwd',\n\t// if `Array`, define a pattern slice of argv\n\tnr: ['--no-recursive'],\n\t// if `Object`, define a specific value\n\tr3: {\n\t\tretry: 3,\n\t\tstrict: false\n\t}\n};\nclean({\n\tshorthands: shorthands\n}).argv(['node', 'xxx', '-c', 'abc', '--nr', '--r3']); \n// notice that '-nr' will be considered as '-n -r'\n// The result is:\n// {\n//\t\tcwd: 'abc',\n//\t\trecursive: false,\n//\t\tretry: 3,\n//\t\tstrict: false \n// }\n```\n\n## Types\n\n```js\nclean({\n\tschema: {\n\t\tcwd: {\n\t\t\ttype: require('path')\n\t\t},\n\t\t\n\t\tretry: {\n\t\t\ttype: Boolean\n\t\t}\t\t\n\t}\n}).parseArgv(\n\t['node', 'xxx', '--cwd', 'abc', 'retry', 'false'], \n\tfunction(err, results, details){\n\t\tconsole.log(results.cwd); // the `path.resolved()`d 'abc'\n\t\tconsole.log(results.retry === false); // is a boolean, not a string\n\t}\n)\n```\n\nHow to extend a custom type ? See the \"advanced section\".\n\n## Validators and Setters\n\nValidators and setters of `clean` is implemented by `[checker](https://github.com/kaelzhang/node-checker)`, check the apis of `checker` for details.\n\nYou could check out the demo located at \"example/clean.js\". That is a very complicated situation of usage.\n\n```sh\nnode example/clean.js --username guest\n```\n\n\n\n# Programatical Details\n\n## constructor: clean(schema, options)\n\n\n### options\n\n#### options.offset `Number=`\n\nThe offset from which the parser should start to parse. Optional. Default to `2`.\n\n#### options.shorthands `Object=`\n\nThe shorthands used to parse the argv.\n\n#### options.schema `Object=`\n\nThe schema used to clean the given object or the parsred argv\n\n#### options.check_all `Boolean=false`\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n\n## .argv(argv)\n\nParses the argument vector, without cleaning the data.\n\n### argv `Array`\n\n### returns `Object`\n\nThe parsed object with shorthand rules applied.\n\n\n## .clean(data, callback)\n\nCleans the given data according to the `schema`.\n\n### data `Object`\n\nThe given data.\n\n### callback `function(err, results, details)`\n\n\n## .parseArgv(argv, callback)\n\nParses argument vector (argv) or something like argv, and cleans the parsed data according to the `schema`.\n\nThis method is equivalent to `c.clean(c.argv(argv), callback)`.\n\n# Advanced Section\n\n## .registerType(type, typeDef)\n\n\n\n\n\n\n","_id":"clean@2.1.5","dist":{"shasum":"62c230d6c08ab4d21388b9cbdfd2519bfd43bde9","tarball":"http://localhost:1337/clean/-/clean-2.1.5.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"2.1.6":{"name":"clean","version":"2.1.6","description":"clean parses and santitize argv or options for node, supporting fully extendable types, shorthands, validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"keywords":["argv","parser","argument-vector","cleaner","simple"],"author":{"name":"Kael"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/kaelzhang/node-clean/issues"},"dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"readme":"[![NPM version](https://badge.fury.io/js/clean.png)](http://badge.fury.io/js/clean)\n[![Build Status](https://travis-ci.org/kaelzhang/node-clean.png?branch=master)](https://travis-ci.org/kaelzhang/node-clean)\n[![Dependency Status](https://gemnasium.com/kaelzhang/node-clean.png)](https://gemnasium.com/kaelzhang/node-clean)\n\n# clean\n\nClean is small but powerful node.js module that parses and santitize argv or options for node, supporting:\n\n- fully extendable types\n- shorthands\n- validatiors\n- setters\n\n# Installation and Usage\n\n```sh\nnpm install clean --save\n```\n\n```js\nvar clean = require('clean')(options);\n```\n\n# Usage\n\n## Argv Shorthands\n\nWe can define shorthands with the option `options.shorthands`.\n\n```js\nvar shorthands = {\n\t// if `String`, define a shorthand for a key name\n\tc: 'cwd',\n\t// if `Array`, define a pattern slice of argv\n\tnr: ['--no-recursive'],\n\t// if `Object`, define a specific value\n\tr3: {\n\t\tretry: 3,\n\t\tstrict: false\n\t}\n};\nclean({\n\tshorthands: shorthands\n}).argv(['node', 'xxx', '-c', 'abc', '--nr', '--r3']); \n// notice that '-nr' will be considered as '-n -r'\n// The result is:\n// {\n//\t\tcwd: 'abc',\n//\t\trecursive: false,\n//\t\tretry: 3,\n//\t\tstrict: false \n// }\n```\n\n## Types\n\n```js\nclean({\n\tschema: {\n\t\tcwd: {\n\t\t\ttype: require('path')\n\t\t},\n\t\t\n\t\tretry: {\n\t\t\ttype: Boolean\n\t\t}\t\t\n\t}\n}).parseArgv(\n\t['node', 'xxx', '--cwd', 'abc', 'retry', 'false'], \n\tfunction(err, results, details){\n\t\tconsole.log(results.cwd); // the `path.resolved()`d 'abc'\n\t\tconsole.log(results.retry === false); // is a boolean, not a string\n\t}\n)\n```\n\nHow to extend a custom type ? See the \"advanced section\".\n\n## Validators and Setters\n\nValidators and setters of `clean` is implemented by `[checker](https://github.com/kaelzhang/node-checker)`, check the apis of `checker` for details.\n\nYou could check out the demo located at \"example/clean.js\". That is a very complicated situation of usage.\n\n```sh\nnode example/clean.js --username guest\n```\n\n\n\n# Programatical Details\n\n## constructor: clean(schema, options)\n\n\n### options\n\n#### options.offset `Number=`\n\nThe offset from which the parser should start to parse. Optional. Default to `2`.\n\n#### options.shorthands `Object=`\n\nThe shorthands used to parse the argv.\n\n#### options.schema `Object=`\n\nThe schema used to clean the given object or the parsred argv\n\n#### options.check_all `Boolean=false`\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n\n## .argv(argv)\n\nParses the argument vector, without cleaning the data.\n\n### argv `Array`\n\n### returns `Object`\n\nThe parsed object with shorthand rules applied.\n\n\n## .clean(data, callback)\n\nCleans the given data according to the `schema`.\n\n### data `Object`\n\nThe given data.\n\n### callback `function(err, results, details)`\n\n\n## .parseArgv(argv, callback)\n\nParses argument vector (argv) or something like argv, and cleans the parsed data according to the `schema`.\n\nThis method is equivalent to `c.clean(c.argv(argv), callback)`.\n\n# Advanced Section\n\n## .registerType(type, typeDef)\n\n\n\n\n\n\n","_id":"clean@2.1.6","dist":{"shasum":"41c80b2b6f5432c60cddb81932ab56563b444f52","tarball":"http://localhost:1337/clean/-/clean-2.1.6.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}}},"readme":"ERROR: No README data found!","maintainers":[{"name":"kael","email":"i@kael.me"}],"time":{"modified":"2013-10-29T10:27:09.584Z","created":"2013-10-09T14:58:35.029Z","0.0.0":"2013-10-09T14:58:56.786Z","1.1.3":"2013-10-09T17:11:53.515Z","1.1.4":"2013-10-09T17:14:02.537Z","2.1.1":"2013-10-10T04:10:32.004Z","2.1.2":"2013-10-14T13:43:09.309Z","2.1.3":"2013-10-14T15:49:01.158Z","2.1.4":"2013-10-17T03:15:37.028Z","2.1.5":"2013-10-17T03:21:04.145Z","2.1.6":"2013-10-29T10:27:09.584Z"},"author":{"name":"Kael"},"repository":{"type":"git","url":"git@github.com:kaelzhang/node-clean.git"},"_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/83/a4/d747b806caae7385778145bcf999fae69eeb6f14343f6801b79b6b7853538961694ac8b4791c7675c27928b5495d12d2f944867db1105e424d5fa9b1e015 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/83/a4/d747b806caae7385778145bcf999fae69eeb6f14343f6801b79b6b7853538961694ac8b4791c7675c27928b5495d12d2f944867db1105e424d5fa9b1e015 deleted file mode 100644 index 3dd7b758016759..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/83/a4/d747b806caae7385778145bcf999fae69eeb6f14343f6801b79b6b7853538961694ac8b4791c7675c27928b5495d12d2f944867db1105e424d5fa9b1e015 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"minimist","_rev":"14-5a3ee715a591f6fb1267503070d3d114","name":"minimist","description":"parse argument options","dist-tags":{"latest":"0.0.5"},"versions":{"0.0.0":{"name":"minimist","version":"0.0.0","description":"parse argument options","main":"index.js","devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"scripts":{"test":"tap test/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","ff/3.6","firefox/latest","chrome/10","chrome/latest","safari/5.1","safari/latest","opera/12"]},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"homepage":"https://github.com/substack/minimist","keywords":["argv","getopt","parser","optimist"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/minimist/issues"},"_id":"minimist@0.0.0","dist":{"shasum":"0f62459b3333ea881e554e400243e130ef123568","tarball":"http://localhost:1337/minimist/-/minimist-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.0.1":{"name":"minimist","version":"0.0.1","description":"parse argument options","main":"index.js","devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"scripts":{"test":"tap test/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","ff/3.6","firefox/latest","chrome/10","chrome/latest","safari/5.1","safari/latest","opera/12"]},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"homepage":"https://github.com/substack/minimist","keywords":["argv","getopt","parser","optimist"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/minimist/issues"},"_id":"minimist@0.0.1","dist":{"shasum":"fa2439fbf7da8525c51b2a74e2815b380abc8ab6","tarball":"http://localhost:1337/minimist/-/minimist-0.0.1.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.0.2":{"name":"minimist","version":"0.0.2","description":"parse argument options","main":"index.js","devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"scripts":{"test":"tap test/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","ff/5","firefox/latest","chrome/10","chrome/latest","safari/5.1","safari/latest","opera/12"]},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"homepage":"https://github.com/substack/minimist","keywords":["argv","getopt","parser","optimist"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/minimist/issues"},"_id":"minimist@0.0.2","dist":{"shasum":"3297e0500be195b8fcb56668c45b925bc9bca7ab","tarball":"http://localhost:1337/minimist/-/minimist-0.0.2.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.0.3":{"name":"minimist","version":"0.0.3","description":"parse argument options","main":"index.js","devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"scripts":{"test":"tap test/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","ff/5","firefox/latest","chrome/10","chrome/latest","safari/5.1","safari/latest","opera/12"]},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"homepage":"https://github.com/substack/minimist","keywords":["argv","getopt","parser","optimist"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/minimist/issues"},"_id":"minimist@0.0.3","dist":{"shasum":"a7a2ef8fbafecbae6c1baa4e56ad81e77acacb94","tarball":"http://localhost:1337/minimist/-/minimist-0.0.3.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.0.4":{"name":"minimist","version":"0.0.4","description":"parse argument options","main":"index.js","devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"scripts":{"test":"tap test/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","ff/5","firefox/latest","chrome/10","chrome/latest","safari/5.1","safari/latest","opera/12"]},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"homepage":"https://github.com/substack/minimist","keywords":["argv","getopt","parser","optimist"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/minimist/issues"},"_id":"minimist@0.0.4","dist":{"shasum":"db41b1028484927a9425765b954075f5082f5048","tarball":"http://localhost:1337/minimist/-/minimist-0.0.4.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.0.5":{"name":"minimist","version":"0.0.5","description":"parse argument options","main":"index.js","devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"scripts":{"test":"tap test/*.js"},"testling":{"files":"test/*.js","browsers":["ie/6..latest","ff/5","firefox/latest","chrome/10","chrome/latest","safari/5.1","safari/latest","opera/12"]},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"homepage":"https://github.com/substack/minimist","keywords":["argv","getopt","parser","optimist"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT","readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/minimist/issues"},"_id":"minimist@0.0.5","dist":{"shasum":"d7aa327bcecf518f9106ac6b8f003fa3bcea8566","tarball":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}}},"readme":"# minimist\n\nparse argument options\n\nThis module is the guts of optimist's argument parser without all the\nfanciful decoration.\n\n[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)\n\n[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)\n\n# example\n\n``` js\nvar argv = require('minimist')(process.argv.slice(2));\nconsole.dir(argv);\n```\n\n```\n$ node example/parse.js -a beep -b boop\n{ _: [], a: 'beep', b: 'boop' }\n```\n\n```\n$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz\n{ _: [ 'foo', 'bar', 'baz' ],\n x: 3,\n y: 4,\n n: 5,\n a: true,\n b: true,\n c: true,\n beep: 'boop' }\n```\n\n# methods\n\n``` js\nvar parseArgs = require('minimist')\n```\n\n## var argv = parseArgs(args, opts={})\n\nReturn an argument object `argv` populated with the array arguments from `args`.\n\n`argv._` contains all the arguments that didn't have an option associated with\nthem.\n\nNumeric-looking arguments will be returned as numbers unless `opts.string` or\n`opts.boolean` is set for that argument name.\n\nAny arguments after `'--'` will not be parsed and will end up in `argv._`.\n\noptions can be:\n\n* `opts.string` - a string or array of strings argument names to always treat as\nstrings\n* `opts.boolean` - a string or array of strings to always treat as booleans\n* `opts.alias` - an object mapping string names to strings or arrays of string\nargument names to use as aliases\n* `opts.default` - an object mapping string argument names to default values\n\n# install\n\nWith [npm](https://npmjs.org) do:\n\n```\nnpm install minimist\n```\n\n# license\n\nMIT\n","maintainers":[{"name":"substack","email":"mail@substack.net"}],"time":{"0.0.0":"2013-06-25T08:17:18.123Z","0.0.1":"2013-06-25T08:22:05.384Z","0.0.2":"2013-08-28T23:00:17.595Z","0.0.3":"2013-09-12T16:27:07.340Z","0.0.4":"2013-09-17T15:13:28.184Z","0.0.5":"2013-09-19T06:45:40.016Z"},"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"repository":{"type":"git","url":"git://github.com/substack/minimist.git"},"users":{"chrisdickinson":true},"_attachments":{"minimist-0.0.5.tgz":{"content_type":"application/octet-stream","revpos":12,"digest":"md5-7fj5eF/2Az1v1uUELt0w5Q==","length":5977,"stub":true},"minimist-0.0.4.tgz":{"content_type":"application/octet-stream","revpos":10,"digest":"md5-qnJpUhb/cbsf0S5JujcKvA==","length":5952,"stub":true},"minimist-0.0.3.tgz":{"content_type":"application/octet-stream","revpos":8,"digest":"md5-2LmD2Da9atq7rqeguE/HPQ==","length":5871,"stub":true},"minimist-0.0.2.tgz":{"content_type":"application/octet-stream","revpos":6,"digest":"md5-8HHOFLuI1T4ko3lvq362pA==","length":5821,"stub":true},"minimist-0.0.1.tgz":{"content_type":"application/octet-stream","revpos":4,"digest":"md5-sEDD6p3usslEbK4/f4Rbpw==","length":5691,"stub":true},"minimist-0.0.0.tgz":{"content_type":"application/octet-stream","revpos":2,"digest":"md5-g7dzol87egGxtducC9bdFw==","length":5687,"stub":true}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/87/44/66cb46d039cc912bd3ee29bfae97ac7f4dd4051cd240c1b25548747f9f1c6fdc3a2a9e65b058ab28f0a22b4aaee58075e0c77fd00ddf656536bc543290be b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/87/44/66cb46d039cc912bd3ee29bfae97ac7f4dd4051cd240c1b25548747f9f1c6fdc3a2a9e65b058ab28f0a22b4aaee58075e0c77fd00ddf656536bc543290be deleted file mode 100644 index b4e8a5f74ed1a4..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/87/44/66cb46d039cc912bd3ee29bfae97ac7f4dd4051cd240c1b25548747f9f1c6fdc3a2a9e65b058ab28f0a22b4aaee58075e0c77fd00ddf656536bc543290be +++ /dev/null @@ -1 +0,0 @@ -{"_id":"npm-test-peer-deps","_rev":"2-fb584f2e7674d4ae2a93f2f9086e7268","name":"npm-test-peer-deps","dist-tags":{"latest":"0.0.0"},"versions":{"0.0.0":{"author":{"name":"Domenic Denicola"},"name":"npm-test-peer-deps","version":"0.0.0","peerDependencies":{"request":"0.9.x"},"dependencies":{"underscore":"1.3.1"},"_id":"npm-test-peer-deps@0.0.0","dist":{"shasum":"82f3ccba11914dc88bcb185ee3b1b33b564272bc","tarball":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.25","_npmUser":{"name":"domenic","email":"domenic@domenicdenicola.com"},"maintainers":[{"name":"domenic","email":"domenic@domenicdenicola.com"}],"directories":{}}},"readme":"ERROR: No README data found!","maintainers":[{"name":"domenic","email":"domenic@domenicdenicola.com"}],"time":{"0.0.0":"2014-02-08T04:56:36.743Z"},"readmeFilename":"","_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/88/49/914fc692dc5441fec8231a33caec98409b6d522fa46bed4a673127876224b9cb8bc35e51e251c8a897a1d71dd9d7f46b6217ec8ef30ec4d83f4b9a43098d b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/88/49/914fc692dc5441fec8231a33caec98409b6d522fa46bed4a673127876224b9cb8bc35e51e251c8a897a1d71dd9d7f46b6217ec8ef30ec4d83f4b9a43098d deleted file mode 100644 index 9de484272a7327..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/88/49/914fc692dc5441fec8231a33caec98409b6d522fa46bed4a673127876224b9cb8bc35e51e251c8a897a1d71dd9d7f46b6217ec8ef30ec4d83f4b9a43098d +++ /dev/null @@ -1 +0,0 @@ -{"name":"add-named-update-protocol-porti","versions":{"0.0.0":{"name":"add-named-update-protocol-porti","version":"0.0.0","dist":{"tarball":"http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz","shasum":"356a192b7913b04c54574d18c28d46e6395428ab"}}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/9d/5b/15d0ad75fc513f4a327b5e441803dd220edeb4f9660e454fe9d263b543ba356c71330a5964f864d1c24aada16bea028eb40106762b142b30d448cdc08593 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/9d/5b/15d0ad75fc513f4a327b5e441803dd220edeb4f9660e454fe9d263b543ba356c71330a5964f864d1c24aada16bea028eb40106762b142b30d448cdc08593 deleted file mode 100644 index b4bac32b24d86ca4afa12aecdeaa0d9a7dc23148..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27629 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

    n%u0V7@#Qr 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 BICB61 diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/ad/a1/cd9122e6beb95de36bb8dc10c255a6a7d7b8bfbe21b72843ab6db402ee8cb8bde5fb2d050a7eb96ea330e8be1a394c4c7c444c8b541f8e180b7f12506fe8 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/ad/a1/cd9122e6beb95de36bb8dc10c255a6a7d7b8bfbe21b72843ab6db402ee8cb8bde5fb2d050a7eb96ea330e8be1a394c4c7c444c8b541f8e180b7f12506fe8 deleted file mode 100644 index 009905080b2b41..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/ad/a1/cd9122e6beb95de36bb8dc10c255a6a7d7b8bfbe21b72843ab6db402ee8cb8bde5fb2d050a7eb96ea330e8be1a394c4c7c444c8b541f8e180b7f12506fe8 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"async","_rev":"223-5df87f4f3d2584f561ccb40c7361a399","name":"async","description":"Higher-order functions and common patterns for asynchronous code","dist-tags":{"latest":"0.2.10"},"versions":{"0.1.0":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.0","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.0.tgz","shasum":"ab8ece0c40627e4e8f0e09c8fcf7c19ed0c4241c"},"directories":{}},"0.1.1":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.1","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.1.tgz","shasum":"fb965e70dbea44c8a4b8a948472dee7d27279d5e"},"directories":{}},"0.1.2":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.2","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.2.tgz","shasum":"be761882a64d3dc81a669f9ee3d5c28497382691"},"directories":{}},"0.1.3":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.3","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.3.tgz","shasum":"629ca2357112d90cafc33872366b14f2695a1fbc"},"directories":{}},"0.1.4":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.4","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.4.tgz","shasum":"29de4b98712ab8858411d8d8e3361a986c3b2c18"},"directories":{}},"0.1.5":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.5","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.5.tgz","shasum":"9d83e3d4adb9c962fc4a30e7dd04bf1206c28ea5"},"directories":{}},"0.1.6":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.6","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.6","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.6.tgz","shasum":"2dfb4fa1915f86056060c2e2f35a7fb8549907cc"},"directories":{}},"0.1.7":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.7","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.7","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.4-1","_nodeVersion":"v0.2.5","dist":{"tarball":"http://localhost:1337/async/-/async-0.1.7.tgz","shasum":"e9268d0d8cd8dcfe0db0895b27dcc4bcc5c739a5"},"directories":{}},"0.1.8":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.8","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"web":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_id":"async@0.1.8","engines":{"node":"*"},"_nodeSupported":true,"dist":{"tarball":"http://localhost:1337/async/-/async-0.1.8.tgz","shasum":"52f2df6c0aa6a7f8333e1fbac0fbd93670cf6758"},"directories":{}},"0.1.9":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.9","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"dependencies":{},"devDependencies":{},"_id":"async@0.1.9","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.1rc7","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"f984d0739b5382c949cc3bea702d21d0dbd52040","tarball":"http://localhost:1337/async/-/async-0.1.9.tgz"},"directories":{}},"0.1.10":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.10","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmJsonOpts":{"file":"/home/caolan/.npm/async/0.1.10/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"async@0.1.10","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.27","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"12b32bf098fa7fc51ae3ac51441b8ba15f437cf1","tarball":"http://localhost:1337/async/-/async-0.1.10.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.11":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.11","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmJsonOpts":{"file":"/home/caolan/.npm/async/0.1.11/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"async@0.1.11","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.27","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"a397a69c6febae232d20a76a5b10d8742e2b8215","tarball":"http://localhost:1337/async/-/async-0.1.11.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.12":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.12","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmJsonOpts":{"file":"/home/caolan/.npm/async/0.1.12/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"async@0.1.12","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.27","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"ab36be6611dc63d91657128e1d65102b959d4afe","tarball":"http://localhost:1337/async/-/async-0.1.12.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.13":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.13","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.13","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.9","_defaultsLoaded":true,"dist":{"shasum":"f1e53ad69dab282d8e75cbec5e2c5524b6195eab","tarball":"http://localhost:1337/async/-/async-0.1.13.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.14":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.14","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.14","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.9","_defaultsLoaded":true,"dist":{"shasum":"0fcfaf089229fc657798203d1a4544102f7d26dc","tarball":"http://localhost:1337/async/-/async-0.1.14.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.15":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.15","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.15","dependencies":{},"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.9","_defaultsLoaded":true,"dist":{"shasum":"2180eaca2cf2a6ca5280d41c0585bec9b3e49bd3","tarball":"http://localhost:1337/async/-/async-0.1.15.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.16":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.16","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.16","dependencies":{},"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.6.10","_defaultsLoaded":true,"dist":{"shasum":"b3a61fdc1a9193d4f64755c7600126e254223186","tarball":"http://localhost:1337/async/-/async-0.1.16.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.17":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.17","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"dependencies":{"uglify-js":"1.2.x"},"devDependencies":{"nodeunit":">0.0.0","nodelint":">0.0.0"},"scripts":{"preinstall":"make clean","install":"make build","test":"make test"},"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.17","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"03524a379e974dc9ee5c811c6ee3815d7bc54f6e","tarball":"http://localhost:1337/async/-/async-0.1.17.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.18":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.18","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.18","dependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"c59c923920b76d5bf23248c04433920c4d45086a","tarball":"http://localhost:1337/async/-/async-0.1.18.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.19":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.19","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.19","dependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"4fd6125a70f841fb10b14aeec6e23cf1479c71a7","tarball":"http://localhost:1337/async/-/async-0.1.19.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.20":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.20","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.20","dependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"ba0e47b08ae972e04b5215de28539b313482ede5","tarball":"http://localhost:1337/async/-/async-0.1.20.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.21":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.21","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.21","dependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"b5b12e985f09ab72c202fa00f623cd9d997e9464","tarball":"http://localhost:1337/async/-/async-0.1.21.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.1.22":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./index","author":{"name":"Caolan McMahon"},"version":"0.1.22","repository":{"type":"git","url":"git://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_npmUser":{"name":"caolan","email":"caolan@caolanmcmahon.com"},"_id":"async@0.1.22","dependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.6.18","_defaultsLoaded":true,"dist":{"shasum":"0fc1aaa088a0e3ef0ebe2d8831bab0dcf8845061","tarball":"http://localhost:1337/async/-/async-0.1.22.tgz"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.0":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.0","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_id":"async@0.2.0","dist":{"shasum":"db1c645337bab79d0ca93d95f5c72d9605be0fce","tarball":"http://localhost:1337/async/-/async-0.2.0.tgz"},"_npmVersion":"1.2.0","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.1":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.1","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"_id":"async@0.2.1","dist":{"shasum":"4e37d08391132f79657a99ca73aa4eb471a6f771","tarball":"http://localhost:1337/async/-/async-0.2.1.tgz"},"_npmVersion":"1.2.0","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.2":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.2","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"_id":"async@0.2.2","dist":{"shasum":"8414ee47da7548126b4d3d923850d54e68a72b28","tarball":"http://localhost:1337/async/-/async-0.2.2.tgz"},"_npmVersion":"1.2.0","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.3":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.3","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"_id":"async@0.2.3","dist":{"shasum":"79bf601d723a2e8c3e91cb6bb08f152dca309fb3","tarball":"http://localhost:1337/async/-/async-0.2.3.tgz"},"_npmVersion":"1.2.0","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.4":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.4","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"_id":"async@0.2.4","dist":{"shasum":"0550e510cf43b83e2fcf1cb96399f03f1efd50eb","tarball":"http://localhost:1337/async/-/async-0.2.4.tgz"},"_npmVersion":"1.2.0","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.5":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.5","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"_id":"async@0.2.5","dist":{"shasum":"45f05da480749ba4c1dcd8cd3a3747ae7b36fe52","tarball":"http://localhost:1337/async/-/async-0.2.5.tgz"},"_npmVersion":"1.2.0","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.6":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.6","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"scripts":{"test":"nodeunit test/test-async.js"},"_id":"async@0.2.6","dist":{"shasum":"ad3f373d9249ae324881565582bc90e152abbd68","tarball":"http://localhost:1337/async/-/async-0.2.6.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.7":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.7","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"scripts":{"test":"nodeunit test/test-async.js"},"_id":"async@0.2.7","dist":{"shasum":"44c5ee151aece6c4bf5364cfc7c28fe4e58f18df","tarball":"http://localhost:1337/async/-/async-0.2.7.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.8":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.8","repository":{"type":"git","url":"http://github.com/caolan/async.git"},"bugs":{"url":"http://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"http://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"scripts":{"test":"nodeunit test/test-async.js"},"_id":"async@0.2.8","dist":{"shasum":"ba1b3ffd1e6cdb1e999aca76ef6ecee8e7f55f53","tarball":"http://localhost:1337/async/-/async-0.2.8.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.9":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.9","repository":{"type":"git","url":"https://github.com/caolan/async.git"},"bugs":{"url":"https://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"https://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"scripts":{"test":"nodeunit test/test-async.js"},"_id":"async@0.2.9","dist":{"shasum":"df63060fbf3d33286a76aaf6d55a2986d9ff8619","tarball":"http://localhost:1337/async/-/async-0.2.9.tgz"},"_from":".","_npmVersion":"1.2.23","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}},"0.2.10":{"name":"async","description":"Higher-order functions and common patterns for asynchronous code","main":"./lib/async","author":{"name":"Caolan McMahon"},"version":"0.2.10","repository":{"type":"git","url":"https://github.com/caolan/async.git"},"bugs":{"url":"https://github.com/caolan/async/issues"},"licenses":[{"type":"MIT","url":"https://github.com/caolan/async/raw/master/LICENSE"}],"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"jam":{"main":"lib/async.js","include":["lib/async.js","README.md","LICENSE"]},"scripts":{"test":"nodeunit test/test-async.js"},"_id":"async@0.2.10","dist":{"shasum":"b6bbe0b0674b9d719708ca38de8c237cb526c3d1","tarball":"http://localhost:1337/async/-/async-0.2.10.tgz"},"_from":".","_npmVersion":"1.3.2","_npmUser":{"name":"caolan","email":"caolan.mcmahon@gmail.com"},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"directories":{}}},"maintainers":[{"name":"caolan","email":"caolan@caolanmcmahon.com"}],"author":{"name":"Caolan McMahon"},"repository":{"type":"git","url":"https://github.com/caolan/async.git"},"time":{"modified":"2014-03-13T17:04:44.914Z","created":"2010-12-19T16:41:51.765Z","0.1.0":"2010-12-19T16:41:51.765Z","0.1.1":"2010-12-19T16:41:51.765Z","0.1.2":"2010-12-19T16:41:51.765Z","0.1.3":"2010-12-19T16:41:51.765Z","0.1.4":"2010-12-19T16:41:51.765Z","0.1.5":"2010-12-19T16:41:51.765Z","0.1.6":"2010-12-19T16:41:51.765Z","0.1.7":"2010-12-19T16:41:51.765Z","0.1.8":"2011-01-18T09:56:53.975Z","0.1.9":"2011-04-27T20:48:08.634Z","0.1.10":"2011-09-19T04:40:01.573Z","0.1.11":"2011-10-14T17:07:28.752Z","0.1.12":"2011-10-14T17:19:19.452Z","0.1.13":"2011-10-29T22:33:52.448Z","0.1.14":"2011-10-29T22:40:14.486Z","0.1.15":"2011-11-01T23:05:01.415Z","0.1.16":"2012-02-13T04:56:23.926Z","0.1.17":"2012-02-27T02:40:58.997Z","0.1.18":"2012-02-27T16:51:02.109Z","0.1.19":"2012-05-24T06:51:06.109Z","0.1.20":"2012-05-24T06:53:39.997Z","0.1.21":"2012-05-24T07:16:16.753Z","0.1.22":"2012-05-30T18:26:44.821Z","0.1.23":"2012-10-04T13:52:08.947Z","0.2.0":"2013-02-04T11:38:08.943Z","0.2.1":"2013-02-04T11:52:34.110Z","0.2.2":"2013-02-05T15:55:23.202Z","0.2.3":"2013-02-06T12:48:37.415Z","0.2.4":"2013-02-07T17:26:22.236Z","0.2.5":"2013-02-10T22:42:00.162Z","0.2.6":"2013-03-03T11:29:52.674Z","0.2.7":"2013-04-09T20:50:04.712Z","0.2.8":"2013-05-01T10:04:07.430Z","0.2.9":"2013-05-28T07:50:48.795Z","0.2.10":"2014-01-23T16:23:57.271Z"},"users":{"thejh":true,"avianflu":true,"dylang":true,"ragingwind":true,"mvolkmann":true,"mikl":true,"linus":true,"pvorb":true,"dodo":true,"danielr":true,"suor":true,"dolphin278":true,"kurijov":true,"langpavel":true,"alexindigo":true,"fgribreau":true,"hughsk":true,"pid":true,"tylerstalder":true,"gillesruppert":true,"coiscir":true,"xenomuta":true,"jgoodall":true,"jswartwood":true,"drudge":true,"cpsubrian":true,"joeferner":true,"bencevans":true,"Scryptonite":true,"damonoehlman":true,"glukki":true,"tivac":true,"shama":true,"gimenete":true,"bryanburgers":true,"hij1nx":true,"sandeepmistry":true,"minddiaper":true,"fiws":true,"ljharb":true,"popeindustries":true,"charmander":true,"dbrockman":true,"eknkc":true,"booyaa":true,"afc163":true,"maxmaximov":true,"meryn":true,"hfcorriez":true,"hyqhyq_3":true,"zonetti":true,"cmilhench":true,"cparker15":true,"jfromaniello":true,"ExxKA":true,"devoidfury":true,"cedrickchee":true,"niftymonkey":true,"paulj":true,"leesei":true,"jamesmgreene":true,"igorissen":true,"zaphod1984":true,"moonpyk":true,"joliva":true,"netroy":true,"chrisweb":true,"cuprobot":true,"tmaximini":true,"lupomontero":true,"john.pinch":true,"everywhere.js":true,"frankblizzard":true,"alanshaw":true,"forivall":true,"kubakubula":true,"doliveira":true,"dstokes":true,"pana":true,"irae":true,"mhaidarh":true,"feross":true,"tetsu3a":true,"qubyte":true,"darosh":true,"pragmadash":true,"denisix":true,"samuelrn":true,"tigefa":true,"tcrowe":true,"tpwk":true,"eins78":true,"sierrasoftworks":true,"yoavf":true,"irakli":true,"hypergeometric":true,"gammasoft":true,"youxiachai":true,"kahboom":true,"elisee":true,"soroush":true,"thomas-so":true,"shenaor":true,"dannynemer":true,"paulomcnally":true,"timur.shemsedinov":true,"slianfeng":true,"ettalea":true,"mananvaghasiya":true,"daniel7912":true,"themiddleman":true,"jacques":true,"kerimdzhanov":true,"jorgemsrs":true,"ivandimanov":true,"vegera":true,"aselzer":true,"kentcdodds":true,"putaoshu":true,"imdsm":true,"cilindrox":true},"readme":"# Async.js\n\nAsync is a utility module which provides straight-forward, powerful functions\nfor working with asynchronous JavaScript. Although originally designed for\nuse with [node.js](http://nodejs.org), it can also be used directly in the\nbrowser. Also supports [component](https://github.com/component/component).\n\nAsync provides around 20 functions that include the usual 'functional'\nsuspects (map, reduce, filter, each…) as well as some common patterns\nfor asynchronous control flow (parallel, series, waterfall…). All these\nfunctions assume you follow the node.js convention of providing a single\ncallback as the last argument of your async function.\n\n\n## Quick Examples\n\n```javascript\nasync.map(['file1','file2','file3'], fs.stat, function(err, results){\n // results is now an array of stats for each file\n});\n\nasync.filter(['file1','file2','file3'], fs.exists, function(results){\n // results now equals an array of the existing files\n});\n\nasync.parallel([\n function(){ ... },\n function(){ ... }\n], callback);\n\nasync.series([\n function(){ ... },\n function(){ ... }\n]);\n```\n\nThere are many more functions available so take a look at the docs below for a\nfull list. This module aims to be comprehensive, so if you feel anything is\nmissing please create a GitHub issue for it.\n\n## Common Pitfalls\n\n### Binding a context to an iterator\n\nThis section is really about bind, not about async. If you are wondering how to\nmake async execute your iterators in a given context, or are confused as to why\na method of another library isn't working as an iterator, study this example:\n\n```js\n// Here is a simple object with an (unnecessarily roundabout) squaring method\nvar AsyncSquaringLibrary = {\n squareExponent: 2,\n square: function(number, callback){ \n var result = Math.pow(number, this.squareExponent);\n setTimeout(function(){\n callback(null, result);\n }, 200);\n }\n};\n\nasync.map([1, 2, 3], AsyncSquaringLibrary.square, function(err, result){\n // result is [NaN, NaN, NaN]\n // This fails because the `this.squareExponent` expression in the square\n // function is not evaluated in the context of AsyncSquaringLibrary, and is\n // therefore undefined.\n});\n\nasync.map([1, 2, 3], AsyncSquaringLibrary.square.bind(AsyncSquaringLibrary), function(err, result){\n // result is [1, 4, 9]\n // With the help of bind we can attach a context to the iterator before\n // passing it to async. Now the square function will be executed in its \n // 'home' AsyncSquaringLibrary context and the value of `this.squareExponent`\n // will be as expected.\n});\n```\n\n## Download\n\nThe source is available for download from\n[GitHub](http://github.com/caolan/async).\nAlternatively, you can install using Node Package Manager (npm):\n\n npm install async\n\n__Development:__ [async.js](https://github.com/caolan/async/raw/master/lib/async.js) - 29.6kb Uncompressed\n\n## In the Browser\n\nSo far it's been tested in IE6, IE7, IE8, FF3.6 and Chrome 5. Usage:\n\n```html\n\n\n```\n\n## Documentation\n\n### Collections\n\n* [each](#each)\n* [eachSeries](#eachSeries)\n* [eachLimit](#eachLimit)\n* [map](#map)\n* [mapSeries](#mapSeries)\n* [mapLimit](#mapLimit)\n* [filter](#filter)\n* [filterSeries](#filterSeries)\n* [reject](#reject)\n* [rejectSeries](#rejectSeries)\n* [reduce](#reduce)\n* [reduceRight](#reduceRight)\n* [detect](#detect)\n* [detectSeries](#detectSeries)\n* [sortBy](#sortBy)\n* [some](#some)\n* [every](#every)\n* [concat](#concat)\n* [concatSeries](#concatSeries)\n\n### Control Flow\n\n* [series](#series)\n* [parallel](#parallel)\n* [parallelLimit](#parallellimittasks-limit-callback)\n* [whilst](#whilst)\n* [doWhilst](#doWhilst)\n* [until](#until)\n* [doUntil](#doUntil)\n* [forever](#forever)\n* [waterfall](#waterfall)\n* [compose](#compose)\n* [applyEach](#applyEach)\n* [applyEachSeries](#applyEachSeries)\n* [queue](#queue)\n* [cargo](#cargo)\n* [auto](#auto)\n* [iterator](#iterator)\n* [apply](#apply)\n* [nextTick](#nextTick)\n* [times](#times)\n* [timesSeries](#timesSeries)\n\n### Utils\n\n* [memoize](#memoize)\n* [unmemoize](#unmemoize)\n* [log](#log)\n* [dir](#dir)\n* [noConflict](#noConflict)\n\n\n## Collections\n\n\n\n### each(arr, iterator, callback)\n\nApplies an iterator function to each item in an array, in parallel.\nThe iterator is called with an item from the list and a callback for when it\nhas finished. If the iterator passes an error to this callback, the main\ncallback for the each function is immediately called with the error.\n\nNote, that since this function applies the iterator to each item in parallel\nthere is no guarantee that the iterator functions will complete in order.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A function to apply to each item in the array.\n The iterator is passed a callback(err) which must be called once it has \n completed. If no error has occured, the callback should be run without \n arguments or with an explicit null argument.\n* callback(err) - A callback which is called after all the iterator functions\n have finished, or an error has occurred.\n\n__Example__\n\n```js\n// assuming openFiles is an array of file names and saveFile is a function\n// to save the modified contents of that file:\n\nasync.each(openFiles, saveFile, function(err){\n // if any of the saves produced an error, err would equal that error\n});\n```\n\n---------------------------------------\n\n\n\n### eachSeries(arr, iterator, callback)\n\nThe same as each only the iterator is applied to each item in the array in\nseries. The next iterator is only called once the current one has completed\nprocessing. This means the iterator functions will complete in order.\n\n\n---------------------------------------\n\n\n\n### eachLimit(arr, limit, iterator, callback)\n\nThe same as each only no more than \"limit\" iterators will be simultaneously \nrunning at any time.\n\nNote that the items are not processed in batches, so there is no guarantee that\n the first \"limit\" iterator functions will complete before any others are \nstarted.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* limit - The maximum number of iterators to run at any time.\n* iterator(item, callback) - A function to apply to each item in the array.\n The iterator is passed a callback(err) which must be called once it has \n completed. If no error has occured, the callback should be run without \n arguments or with an explicit null argument.\n* callback(err) - A callback which is called after all the iterator functions\n have finished, or an error has occurred.\n\n__Example__\n\n```js\n// Assume documents is an array of JSON objects and requestApi is a\n// function that interacts with a rate-limited REST api.\n\nasync.eachLimit(documents, 20, requestApi, function(err){\n // if any of the saves produced an error, err would equal that error\n});\n```\n\n---------------------------------------\n\n\n### map(arr, iterator, callback)\n\nProduces a new array of values by mapping each value in the given array through\nthe iterator function. The iterator is called with an item from the array and a\ncallback for when it has finished processing. The callback takes 2 arguments, \nan error and the transformed item from the array. If the iterator passes an\nerror to this callback, the main callback for the map function is immediately\ncalled with the error.\n\nNote, that since this function applies the iterator to each item in parallel\nthere is no guarantee that the iterator functions will complete in order, however\nthe results array will be in the same order as the original array.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A function to apply to each item in the array.\n The iterator is passed a callback(err, transformed) which must be called once \n it has completed with an error (which can be null) and a transformed item.\n* callback(err, results) - A callback which is called after all the iterator\n functions have finished, or an error has occurred. Results is an array of the\n transformed items from the original array.\n\n__Example__\n\n```js\nasync.map(['file1','file2','file3'], fs.stat, function(err, results){\n // results is now an array of stats for each file\n});\n```\n\n---------------------------------------\n\n\n### mapSeries(arr, iterator, callback)\n\nThe same as map only the iterator is applied to each item in the array in\nseries. The next iterator is only called once the current one has completed\nprocessing. The results array will be in the same order as the original.\n\n\n---------------------------------------\n\n\n### mapLimit(arr, limit, iterator, callback)\n\nThe same as map only no more than \"limit\" iterators will be simultaneously \nrunning at any time.\n\nNote that the items are not processed in batches, so there is no guarantee that\n the first \"limit\" iterator functions will complete before any others are \nstarted.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* limit - The maximum number of iterators to run at any time.\n* iterator(item, callback) - A function to apply to each item in the array.\n The iterator is passed a callback(err, transformed) which must be called once \n it has completed with an error (which can be null) and a transformed item.\n* callback(err, results) - A callback which is called after all the iterator\n functions have finished, or an error has occurred. Results is an array of the\n transformed items from the original array.\n\n__Example__\n\n```js\nasync.mapLimit(['file1','file2','file3'], 1, fs.stat, function(err, results){\n // results is now an array of stats for each file\n});\n```\n\n---------------------------------------\n\n\n### filter(arr, iterator, callback)\n\n__Alias:__ select\n\nReturns a new array of all the values which pass an async truth test.\n_The callback for each iterator call only accepts a single argument of true or\nfalse, it does not accept an error argument first!_ This is in-line with the\nway node libraries work with truth tests like fs.exists. This operation is\nperformed in parallel, but the results array will be in the same order as the\noriginal.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A truth test to apply to each item in the array.\n The iterator is passed a callback(truthValue) which must be called with a \n boolean argument once it has completed.\n* callback(results) - A callback which is called after all the iterator\n functions have finished.\n\n__Example__\n\n```js\nasync.filter(['file1','file2','file3'], fs.exists, function(results){\n // results now equals an array of the existing files\n});\n```\n\n---------------------------------------\n\n\n### filterSeries(arr, iterator, callback)\n\n__alias:__ selectSeries\n\nThe same as filter only the iterator is applied to each item in the array in\nseries. The next iterator is only called once the current one has completed\nprocessing. The results array will be in the same order as the original.\n\n---------------------------------------\n\n\n### reject(arr, iterator, callback)\n\nThe opposite of filter. Removes values that pass an async truth test.\n\n---------------------------------------\n\n\n### rejectSeries(arr, iterator, callback)\n\nThe same as reject, only the iterator is applied to each item in the array\nin series.\n\n\n---------------------------------------\n\n\n### reduce(arr, memo, iterator, callback)\n\n__aliases:__ inject, foldl\n\nReduces a list of values into a single value using an async iterator to return\neach successive step. Memo is the initial state of the reduction. This\nfunction only operates in series. For performance reasons, it may make sense to\nsplit a call to this function into a parallel map, then use the normal\nArray.prototype.reduce on the results. This function is for situations where\neach step in the reduction needs to be async, if you can get the data before\nreducing it then it's probably a good idea to do so.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* memo - The initial state of the reduction.\n* iterator(memo, item, callback) - A function applied to each item in the\n array to produce the next step in the reduction. The iterator is passed a\n callback(err, reduction) which accepts an optional error as its first \n argument, and the state of the reduction as the second. If an error is \n passed to the callback, the reduction is stopped and the main callback is \n immediately called with the error.\n* callback(err, result) - A callback which is called after all the iterator\n functions have finished. Result is the reduced value.\n\n__Example__\n\n```js\nasync.reduce([1,2,3], 0, function(memo, item, callback){\n // pointless async:\n process.nextTick(function(){\n callback(null, memo + item)\n });\n}, function(err, result){\n // result is now equal to the last value of memo, which is 6\n});\n```\n\n---------------------------------------\n\n\n### reduceRight(arr, memo, iterator, callback)\n\n__Alias:__ foldr\n\nSame as reduce, only operates on the items in the array in reverse order.\n\n\n---------------------------------------\n\n\n### detect(arr, iterator, callback)\n\nReturns the first value in a list that passes an async truth test. The\niterator is applied in parallel, meaning the first iterator to return true will\nfire the detect callback with that result. That means the result might not be\nthe first item in the original array (in terms of order) that passes the test.\n\nIf order within the original array is important then look at detectSeries.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A truth test to apply to each item in the array.\n The iterator is passed a callback(truthValue) which must be called with a \n boolean argument once it has completed.\n* callback(result) - A callback which is called as soon as any iterator returns\n true, or after all the iterator functions have finished. Result will be\n the first item in the array that passes the truth test (iterator) or the\n value undefined if none passed.\n\n__Example__\n\n```js\nasync.detect(['file1','file2','file3'], fs.exists, function(result){\n // result now equals the first file in the list that exists\n});\n```\n\n---------------------------------------\n\n\n### detectSeries(arr, iterator, callback)\n\nThe same as detect, only the iterator is applied to each item in the array\nin series. This means the result is always the first in the original array (in\nterms of array order) that passes the truth test.\n\n\n---------------------------------------\n\n\n### sortBy(arr, iterator, callback)\n\nSorts a list by the results of running each value through an async iterator.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A function to apply to each item in the array.\n The iterator is passed a callback(err, sortValue) which must be called once it\n has completed with an error (which can be null) and a value to use as the sort\n criteria.\n* callback(err, results) - A callback which is called after all the iterator\n functions have finished, or an error has occurred. Results is the items from\n the original array sorted by the values returned by the iterator calls.\n\n__Example__\n\n```js\nasync.sortBy(['file1','file2','file3'], function(file, callback){\n fs.stat(file, function(err, stats){\n callback(err, stats.mtime);\n });\n}, function(err, results){\n // results is now the original array of files sorted by\n // modified date\n});\n```\n\n---------------------------------------\n\n\n### some(arr, iterator, callback)\n\n__Alias:__ any\n\nReturns true if at least one element in the array satisfies an async test.\n_The callback for each iterator call only accepts a single argument of true or\nfalse, it does not accept an error argument first!_ This is in-line with the\nway node libraries work with truth tests like fs.exists. Once any iterator\ncall returns true, the main callback is immediately called.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A truth test to apply to each item in the array.\n The iterator is passed a callback(truthValue) which must be called with a \n boolean argument once it has completed.\n* callback(result) - A callback which is called as soon as any iterator returns\n true, or after all the iterator functions have finished. Result will be\n either true or false depending on the values of the async tests.\n\n__Example__\n\n```js\nasync.some(['file1','file2','file3'], fs.exists, function(result){\n // if result is true then at least one of the files exists\n});\n```\n\n---------------------------------------\n\n\n### every(arr, iterator, callback)\n\n__Alias:__ all\n\nReturns true if every element in the array satisfies an async test.\n_The callback for each iterator call only accepts a single argument of true or\nfalse, it does not accept an error argument first!_ This is in-line with the\nway node libraries work with truth tests like fs.exists.\n\n__Arguments__\n\n* arr - An array to iterate over.\n* iterator(item, callback) - A truth test to apply to each item in the array.\n The iterator is passed a callback(truthValue) which must be called with a \n boolean argument once it has completed.\n* callback(result) - A callback which is called after all the iterator\n functions have finished. Result will be either true or false depending on\n the values of the async tests.\n\n__Example__\n\n```js\nasync.every(['file1','file2','file3'], fs.exists, function(result){\n // if result is true then every file exists\n});\n```\n\n---------------------------------------\n\n\n### concat(arr, iterator, callback)\n\nApplies an iterator to each item in a list, concatenating the results. Returns the\nconcatenated list. The iterators are called in parallel, and the results are\nconcatenated as they return. There is no guarantee that the results array will\nbe returned in the original order of the arguments passed to the iterator function.\n\n__Arguments__\n\n* arr - An array to iterate over\n* iterator(item, callback) - A function to apply to each item in the array.\n The iterator is passed a callback(err, results) which must be called once it \n has completed with an error (which can be null) and an array of results.\n* callback(err, results) - A callback which is called after all the iterator\n functions have finished, or an error has occurred. Results is an array containing\n the concatenated results of the iterator function.\n\n__Example__\n\n```js\nasync.concat(['dir1','dir2','dir3'], fs.readdir, function(err, files){\n // files is now a list of filenames that exist in the 3 directories\n});\n```\n\n---------------------------------------\n\n\n### concatSeries(arr, iterator, callback)\n\nSame as async.concat, but executes in series instead of parallel.\n\n\n## Control Flow\n\n\n### series(tasks, [callback])\n\nRun an array of functions in series, each one running once the previous\nfunction has completed. If any functions in the series pass an error to its\ncallback, no more functions are run and the callback for the series is\nimmediately called with the value of the error. Once the tasks have completed,\nthe results are passed to the final callback as an array.\n\nIt is also possible to use an object instead of an array. Each property will be\nrun as a function and the results will be passed to the final callback as an object\ninstead of an array. This can be a more readable way of handling results from\nasync.series.\n\n\n__Arguments__\n\n* tasks - An array or object containing functions to run, each function is passed\n a callback(err, result) it must call on completion with an error (which can\n be null) and an optional result value.\n* callback(err, results) - An optional callback to run once all the functions\n have completed. This function gets a results array (or object) containing all \n the result arguments passed to the task callbacks.\n\n__Example__\n\n```js\nasync.series([\n function(callback){\n // do some stuff ...\n callback(null, 'one');\n },\n function(callback){\n // do some more stuff ...\n callback(null, 'two');\n }\n],\n// optional callback\nfunction(err, results){\n // results is now equal to ['one', 'two']\n});\n\n\n// an example using an object instead of an array\nasync.series({\n one: function(callback){\n setTimeout(function(){\n callback(null, 1);\n }, 200);\n },\n two: function(callback){\n setTimeout(function(){\n callback(null, 2);\n }, 100);\n }\n},\nfunction(err, results) {\n // results is now equal to: {one: 1, two: 2}\n});\n```\n\n---------------------------------------\n\n\n### parallel(tasks, [callback])\n\nRun an array of functions in parallel, without waiting until the previous\nfunction has completed. If any of the functions pass an error to its\ncallback, the main callback is immediately called with the value of the error.\nOnce the tasks have completed, the results are passed to the final callback as an\narray.\n\nIt is also possible to use an object instead of an array. Each property will be\nrun as a function and the results will be passed to the final callback as an object\ninstead of an array. This can be a more readable way of handling results from\nasync.parallel.\n\n\n__Arguments__\n\n* tasks - An array or object containing functions to run, each function is passed \n a callback(err, result) it must call on completion with an error (which can\n be null) and an optional result value.\n* callback(err, results) - An optional callback to run once all the functions\n have completed. This function gets a results array (or object) containing all \n the result arguments passed to the task callbacks.\n\n__Example__\n\n```js\nasync.parallel([\n function(callback){\n setTimeout(function(){\n callback(null, 'one');\n }, 200);\n },\n function(callback){\n setTimeout(function(){\n callback(null, 'two');\n }, 100);\n }\n],\n// optional callback\nfunction(err, results){\n // the results array will equal ['one','two'] even though\n // the second function had a shorter timeout.\n});\n\n\n// an example using an object instead of an array\nasync.parallel({\n one: function(callback){\n setTimeout(function(){\n callback(null, 1);\n }, 200);\n },\n two: function(callback){\n setTimeout(function(){\n callback(null, 2);\n }, 100);\n }\n},\nfunction(err, results) {\n // results is now equals to: {one: 1, two: 2}\n});\n```\n\n---------------------------------------\n\n\n### parallelLimit(tasks, limit, [callback])\n\nThe same as parallel only the tasks are executed in parallel with a maximum of \"limit\" \ntasks executing at any time.\n\nNote that the tasks are not executed in batches, so there is no guarantee that \nthe first \"limit\" tasks will complete before any others are started.\n\n__Arguments__\n\n* tasks - An array or object containing functions to run, each function is passed \n a callback(err, result) it must call on completion with an error (which can\n be null) and an optional result value.\n* limit - The maximum number of tasks to run at any time.\n* callback(err, results) - An optional callback to run once all the functions\n have completed. This function gets a results array (or object) containing all \n the result arguments passed to the task callbacks.\n\n---------------------------------------\n\n\n### whilst(test, fn, callback)\n\nRepeatedly call fn, while test returns true. Calls the callback when stopped,\nor an error occurs.\n\n__Arguments__\n\n* test() - synchronous truth test to perform before each execution of fn.\n* fn(callback) - A function to call each time the test passes. The function is\n passed a callback(err) which must be called once it has completed with an \n optional error argument.\n* callback(err) - A callback which is called after the test fails and repeated\n execution of fn has stopped.\n\n__Example__\n\n```js\nvar count = 0;\n\nasync.whilst(\n function () { return count < 5; },\n function (callback) {\n count++;\n setTimeout(callback, 1000);\n },\n function (err) {\n // 5 seconds have passed\n }\n);\n```\n\n---------------------------------------\n\n\n### doWhilst(fn, test, callback)\n\nThe post check version of whilst. To reflect the difference in the order of operations `test` and `fn` arguments are switched. `doWhilst` is to `whilst` as `do while` is to `while` in plain JavaScript.\n\n---------------------------------------\n\n\n### until(test, fn, callback)\n\nRepeatedly call fn, until test returns true. Calls the callback when stopped,\nor an error occurs.\n\nThe inverse of async.whilst.\n\n---------------------------------------\n\n\n### doUntil(fn, test, callback)\n\nLike doWhilst except the test is inverted. Note the argument ordering differs from `until`.\n\n---------------------------------------\n\n\n### forever(fn, callback)\n\nCalls the asynchronous function 'fn' repeatedly, in series, indefinitely.\nIf an error is passed to fn's callback then 'callback' is called with the\nerror, otherwise it will never be called.\n\n---------------------------------------\n\n\n### waterfall(tasks, [callback])\n\nRuns an array of functions in series, each passing their results to the next in\nthe array. However, if any of the functions pass an error to the callback, the\nnext function is not executed and the main callback is immediately called with\nthe error.\n\n__Arguments__\n\n* tasks - An array of functions to run, each function is passed a \n callback(err, result1, result2, ...) it must call on completion. The first\n argument is an error (which can be null) and any further arguments will be \n passed as arguments in order to the next task.\n* callback(err, [results]) - An optional callback to run once all the functions\n have completed. This will be passed the results of the last task's callback.\n\n\n\n__Example__\n\n```js\nasync.waterfall([\n function(callback){\n callback(null, 'one', 'two');\n },\n function(arg1, arg2, callback){\n callback(null, 'three');\n },\n function(arg1, callback){\n // arg1 now equals 'three'\n callback(null, 'done');\n }\n], function (err, result) {\n // result now equals 'done' \n});\n```\n\n---------------------------------------\n\n### compose(fn1, fn2...)\n\nCreates a function which is a composition of the passed asynchronous\nfunctions. Each function consumes the return value of the function that\nfollows. Composing functions f(), g() and h() would produce the result of\nf(g(h())), only this version uses callbacks to obtain the return values.\n\nEach function is executed with the `this` binding of the composed function.\n\n__Arguments__\n\n* functions... - the asynchronous functions to compose\n\n\n__Example__\n\n```js\nfunction add1(n, callback) {\n setTimeout(function () {\n callback(null, n + 1);\n }, 10);\n}\n\nfunction mul3(n, callback) {\n setTimeout(function () {\n callback(null, n * 3);\n }, 10);\n}\n\nvar add1mul3 = async.compose(mul3, add1);\n\nadd1mul3(4, function (err, result) {\n // result now equals 15\n});\n```\n\n---------------------------------------\n\n### applyEach(fns, args..., callback)\n\nApplies the provided arguments to each function in the array, calling the\ncallback after all functions have completed. If you only provide the first\nargument then it will return a function which lets you pass in the\narguments as if it were a single function call.\n\n__Arguments__\n\n* fns - the asynchronous functions to all call with the same arguments\n* args... - any number of separate arguments to pass to the function\n* callback - the final argument should be the callback, called when all\n functions have completed processing\n\n\n__Example__\n\n```js\nasync.applyEach([enableSearch, updateSchema], 'bucket', callback);\n\n// partial application example:\nasync.each(\n buckets,\n async.applyEach([enableSearch, updateSchema]),\n callback\n);\n```\n\n---------------------------------------\n\n\n### applyEachSeries(arr, iterator, callback)\n\nThe same as applyEach only the functions are applied in series.\n\n---------------------------------------\n\n\n### queue(worker, concurrency)\n\nCreates a queue object with the specified concurrency. Tasks added to the\nqueue will be processed in parallel (up to the concurrency limit). If all\nworkers are in progress, the task is queued until one is available. Once\na worker has completed a task, the task's callback is called.\n\n__Arguments__\n\n* worker(task, callback) - An asynchronous function for processing a queued\n task, which must call its callback(err) argument when finished, with an \n optional error as an argument.\n* concurrency - An integer for determining how many worker functions should be\n run in parallel.\n\n__Queue objects__\n\nThe queue object returned by this function has the following properties and\nmethods:\n\n* length() - a function returning the number of items waiting to be processed.\n* concurrency - an integer for determining how many worker functions should be\n run in parallel. This property can be changed after a queue is created to\n alter the concurrency on-the-fly.\n* push(task, [callback]) - add a new task to the queue, the callback is called\n once the worker has finished processing the task.\n instead of a single task, an array of tasks can be submitted. the respective callback is used for every task in the list.\n* unshift(task, [callback]) - add a new task to the front of the queue.\n* saturated - a callback that is called when the queue length hits the concurrency and further tasks will be queued\n* empty - a callback that is called when the last item from the queue is given to a worker\n* drain - a callback that is called when the last item from the queue has returned from the worker\n\n__Example__\n\n```js\n// create a queue object with concurrency 2\n\nvar q = async.queue(function (task, callback) {\n console.log('hello ' + task.name);\n callback();\n}, 2);\n\n\n// assign a callback\nq.drain = function() {\n console.log('all items have been processed');\n}\n\n// add some items to the queue\n\nq.push({name: 'foo'}, function (err) {\n console.log('finished processing foo');\n});\nq.push({name: 'bar'}, function (err) {\n console.log('finished processing bar');\n});\n\n// add some items to the queue (batch-wise)\n\nq.push([{name: 'baz'},{name: 'bay'},{name: 'bax'}], function (err) {\n console.log('finished processing bar');\n});\n\n// add some items to the front of the queue\n\nq.unshift({name: 'bar'}, function (err) {\n console.log('finished processing bar');\n});\n```\n\n---------------------------------------\n\n\n### cargo(worker, [payload])\n\nCreates a cargo object with the specified payload. Tasks added to the\ncargo will be processed altogether (up to the payload limit). If the\nworker is in progress, the task is queued until it is available. Once\nthe worker has completed some tasks, each callback of those tasks is called.\n\n__Arguments__\n\n* worker(tasks, callback) - An asynchronous function for processing an array of\n queued tasks, which must call its callback(err) argument when finished, with \n an optional error as an argument.\n* payload - An optional integer for determining how many tasks should be\n processed per round; if omitted, the default is unlimited.\n\n__Cargo objects__\n\nThe cargo object returned by this function has the following properties and\nmethods:\n\n* length() - a function returning the number of items waiting to be processed.\n* payload - an integer for determining how many tasks should be\n process per round. This property can be changed after a cargo is created to\n alter the payload on-the-fly.\n* push(task, [callback]) - add a new task to the queue, the callback is called\n once the worker has finished processing the task.\n instead of a single task, an array of tasks can be submitted. the respective callback is used for every task in the list.\n* saturated - a callback that is called when the queue length hits the concurrency and further tasks will be queued\n* empty - a callback that is called when the last item from the queue is given to a worker\n* drain - a callback that is called when the last item from the queue has returned from the worker\n\n__Example__\n\n```js\n// create a cargo object with payload 2\n\nvar cargo = async.cargo(function (tasks, callback) {\n for(var i=0; i\n### auto(tasks, [callback])\n\nDetermines the best order for running functions based on their requirements.\nEach function can optionally depend on other functions being completed first,\nand each function is run as soon as its requirements are satisfied. If any of\nthe functions pass an error to their callback, that function will not complete\n(so any other functions depending on it will not run) and the main callback\nwill be called immediately with the error. Functions also receive an object\ncontaining the results of functions which have completed so far.\n\nNote, all functions are called with a results object as a second argument, \nso it is unsafe to pass functions in the tasks object which cannot handle the\nextra argument. For example, this snippet of code:\n\n```js\nasync.auto({\n readData: async.apply(fs.readFile, 'data.txt', 'utf-8')\n}, callback);\n```\n\nwill have the effect of calling readFile with the results object as the last\nargument, which will fail:\n\n```js\nfs.readFile('data.txt', 'utf-8', cb, {});\n```\n\nInstead, wrap the call to readFile in a function which does not forward the \nresults object:\n\n```js\nasync.auto({\n readData: function(cb, results){\n fs.readFile('data.txt', 'utf-8', cb);\n }\n}, callback);\n```\n\n__Arguments__\n\n* tasks - An object literal containing named functions or an array of\n requirements, with the function itself the last item in the array. The key\n used for each function or array is used when specifying requirements. The \n function receives two arguments: (1) a callback(err, result) which must be \n called when finished, passing an error (which can be null) and the result of \n the function's execution, and (2) a results object, containing the results of\n the previously executed functions.\n* callback(err, results) - An optional callback which is called when all the\n tasks have been completed. The callback will receive an error as an argument\n if any tasks pass an error to their callback. Results will always be passed\n\tbut if an error occurred, no other tasks will be performed, and the results\n\tobject will only contain partial results.\n \n\n__Example__\n\n```js\nasync.auto({\n get_data: function(callback){\n // async code to get some data\n },\n make_folder: function(callback){\n // async code to create a directory to store a file in\n // this is run at the same time as getting the data\n },\n write_file: ['get_data', 'make_folder', function(callback){\n // once there is some data and the directory exists,\n // write the data to a file in the directory\n callback(null, filename);\n }],\n email_link: ['write_file', function(callback, results){\n // once the file is written let's email a link to it...\n // results.write_file contains the filename returned by write_file.\n }]\n});\n```\n\nThis is a fairly trivial example, but to do this using the basic parallel and\nseries functions would look like this:\n\n```js\nasync.parallel([\n function(callback){\n // async code to get some data\n },\n function(callback){\n // async code to create a directory to store a file in\n // this is run at the same time as getting the data\n }\n],\nfunction(err, results){\n async.series([\n function(callback){\n // once there is some data and the directory exists,\n // write the data to a file in the directory\n },\n function(callback){\n // once the file is written let's email a link to it...\n }\n ]);\n});\n```\n\nFor a complicated series of async tasks using the auto function makes adding\nnew tasks much easier and makes the code more readable.\n\n\n---------------------------------------\n\n\n### iterator(tasks)\n\nCreates an iterator function which calls the next function in the array,\nreturning a continuation to call the next one after that. It's also possible to\n'peek' the next iterator by doing iterator.next().\n\nThis function is used internally by the async module but can be useful when\nyou want to manually control the flow of functions in series.\n\n__Arguments__\n\n* tasks - An array of functions to run.\n\n__Example__\n\n```js\nvar iterator = async.iterator([\n function(){ sys.p('one'); },\n function(){ sys.p('two'); },\n function(){ sys.p('three'); }\n]);\n\nnode> var iterator2 = iterator();\n'one'\nnode> var iterator3 = iterator2();\n'two'\nnode> iterator3();\n'three'\nnode> var nextfn = iterator2.next();\nnode> nextfn();\n'three'\n```\n\n---------------------------------------\n\n\n### apply(function, arguments..)\n\nCreates a continuation function with some arguments already applied, a useful\nshorthand when combined with other control flow functions. Any arguments\npassed to the returned function are added to the arguments originally passed\nto apply.\n\n__Arguments__\n\n* function - The function you want to eventually apply all arguments to.\n* arguments... - Any number of arguments to automatically apply when the\n continuation is called.\n\n__Example__\n\n```js\n// using apply\n\nasync.parallel([\n async.apply(fs.writeFile, 'testfile1', 'test1'),\n async.apply(fs.writeFile, 'testfile2', 'test2'),\n]);\n\n\n// the same process without using apply\n\nasync.parallel([\n function(callback){\n fs.writeFile('testfile1', 'test1', callback);\n },\n function(callback){\n fs.writeFile('testfile2', 'test2', callback);\n }\n]);\n```\n\nIt's possible to pass any number of additional arguments when calling the\ncontinuation:\n\n```js\nnode> var fn = async.apply(sys.puts, 'one');\nnode> fn('two', 'three');\none\ntwo\nthree\n```\n\n---------------------------------------\n\n\n### nextTick(callback)\n\nCalls the callback on a later loop around the event loop. In node.js this just\ncalls process.nextTick, in the browser it falls back to setImmediate(callback)\nif available, otherwise setTimeout(callback, 0), which means other higher priority\nevents may precede the execution of the callback.\n\nThis is used internally for browser-compatibility purposes.\n\n__Arguments__\n\n* callback - The function to call on a later loop around the event loop.\n\n__Example__\n\n```js\nvar call_order = [];\nasync.nextTick(function(){\n call_order.push('two');\n // call_order now equals ['one','two']\n});\ncall_order.push('one')\n```\n\n\n### times(n, callback)\n\nCalls the callback n times and accumulates results in the same manner\nyou would use with async.map.\n\n__Arguments__\n\n* n - The number of times to run the function.\n* callback - The function to call n times.\n\n__Example__\n\n```js\n// Pretend this is some complicated async factory\nvar createUser = function(id, callback) {\n callback(null, {\n id: 'user' + id\n })\n}\n// generate 5 users\nasync.times(5, function(n, next){\n createUser(n, function(err, user) {\n next(err, user)\n })\n}, function(err, users) {\n // we should now have 5 users\n});\n```\n\n\n### timesSeries(n, callback)\n\nThe same as times only the iterator is applied to each item in the array in\nseries. The next iterator is only called once the current one has completed\nprocessing. The results array will be in the same order as the original.\n\n\n## Utils\n\n\n### memoize(fn, [hasher])\n\nCaches the results of an async function. When creating a hash to store function\nresults against, the callback is omitted from the hash and an optional hash\nfunction can be used.\n\nThe cache of results is exposed as the `memo` property of the function returned\nby `memoize`.\n\n__Arguments__\n\n* fn - the function you to proxy and cache results from.\n* hasher - an optional function for generating a custom hash for storing\n results, it has all the arguments applied to it apart from the callback, and\n must be synchronous.\n\n__Example__\n\n```js\nvar slow_fn = function (name, callback) {\n // do something\n callback(null, result);\n};\nvar fn = async.memoize(slow_fn);\n\n// fn can now be used as if it were slow_fn\nfn('some name', function () {\n // callback\n});\n```\n\n\n### unmemoize(fn)\n\nUndoes a memoized function, reverting it to the original, unmemoized\nform. Comes handy in tests.\n\n__Arguments__\n\n* fn - the memoized function\n\n\n### log(function, arguments)\n\nLogs the result of an async function to the console. Only works in node.js or\nin browsers that support console.log and console.error (such as FF and Chrome).\nIf multiple arguments are returned from the async function, console.log is\ncalled on each argument in order.\n\n__Arguments__\n\n* function - The function you want to eventually apply all arguments to.\n* arguments... - Any number of arguments to apply to the function.\n\n__Example__\n\n```js\nvar hello = function(name, callback){\n setTimeout(function(){\n callback(null, 'hello ' + name);\n }, 1000);\n};\n```\n```js\nnode> async.log(hello, 'world');\n'hello world'\n```\n\n---------------------------------------\n\n\n### dir(function, arguments)\n\nLogs the result of an async function to the console using console.dir to\ndisplay the properties of the resulting object. Only works in node.js or\nin browsers that support console.dir and console.error (such as FF and Chrome).\nIf multiple arguments are returned from the async function, console.dir is\ncalled on each argument in order.\n\n__Arguments__\n\n* function - The function you want to eventually apply all arguments to.\n* arguments... - Any number of arguments to apply to the function.\n\n__Example__\n\n```js\nvar hello = function(name, callback){\n setTimeout(function(){\n callback(null, {hello: name});\n }, 1000);\n};\n```\n```js\nnode> async.dir(hello, 'world');\n{hello: 'world'}\n```\n\n---------------------------------------\n\n\n### noConflict()\n\nChanges the value of async back to its original value, returning a reference to the\nasync object.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/caolan/async/issues"},"_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/b4/8a/454c55f95fa0351cca479761f5ff792f8f7ab4448f2b1399a3ac3778a60a293f71feeda29678ce15b71712b0803f9866e92c0cbc4549b4807435dcf7a767 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/b4/8a/454c55f95fa0351cca479761f5ff792f8f7ab4448f2b1399a3ac3778a60a293f71feeda29678ce15b71712b0803f9866e92c0cbc4549b4807435dcf7a767 deleted file mode 100644 index 0866e68dc09d2e2e7d587bd6aaaf23ee40764ec5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 143 zcmb2|=3oE=VQmkebACSlSM?h%R7D>BS;-T^1_WtpYFsyt96TVRk)D&4mXMK=md236 zEV)c=nZvAGdsn-Wt58a%ko)-1Hk{$sgRHqy z)FY4b?K{gZ;$8p51WsQJ?BNg%#p>RB9|(4EGb35=_(GOgA}7?1HbjE`1i@3Zjz4Y~ mxWRP27lre|6e7=sdDti<%=52TOOhl>K6nE8r0AXi2mk=&S6NE{ diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/cd/eb/0f5065be03e89547a33e064d911969953c45eb05df664ca4d537b970dc9f768123463a6f75ce6b836d50ee73c18ac7a25e763f2b9869612cdbf427195d4b b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/cd/eb/0f5065be03e89547a33e064d911969953c45eb05df664ca4d537b970dc9f768123463a6f75ce6b836d50ee73c18ac7a25e763f2b9869612cdbf427195d4b deleted file mode 100644 index df235e9e79ec2e..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/cd/eb/0f5065be03e89547a33e064d911969953c45eb05df664ca4d537b970dc9f768123463a6f75ce6b836d50ee73c18ac7a25e763f2b9869612cdbf427195d4b +++ /dev/null @@ -1 +0,0 @@ -{"_id":"test-repo-url-ssh","_rev":"2-cc990259d480838e6847fb520d305a9e","name":"test-repo-url-ssh","description":"Test repo with non-github ssh repository url","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"test-repo-url-ssh","version":"0.0.1","description":"Test repo with non-github ssh repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git@gitlab.com:evanlucas/test-repo-url-ssh.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-ssh@0.0.1","dist":{"shasum":"2a77307e108bfb57107c4c334abb5ef5395dc68a","tarball":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{}}},"readme":"ERROR: No README data found!","maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"time":{"0.0.1":"2014-02-16T18:50:00.142Z"},"readmeFilename":"","_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/d4/45/ed72e65ed0b9fec5a6a41794caadda951ba79a0541648e259c8021b3fc96487d2caedf869ac142b4b0f31998c436f171d98a9a1740e3ac8eebb5c1103c53 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/d4/45/ed72e65ed0b9fec5a6a41794caadda951ba79a0541648e259c8021b3fc96487d2caedf869ac142b4b0f31998c436f171d98a9a1740e3ac8eebb5c1103c53 deleted file mode 100644 index 11b928e5cddd9e..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/d4/45/ed72e65ed0b9fec5a6a41794caadda951ba79a0541648e259c8021b3fc96487d2caedf869ac142b4b0f31998c436f171d98a9a1740e3ac8eebb5c1103c53 +++ /dev/null @@ -1 +0,0 @@ -{"_id":"checker","_rev":"23-39ff9491581c529b8b828651a196c7a3","name":"checker","description":"Checker is the collection of common abstract methods for validatiors and setters.","dist-tags":{"latest":"0.5.2"},"versions":{"0.0.0":{"name":"checker","version":"0.0.0","description":"","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":"","license":"MIT","readme":"ERROR: No README data found!","_id":"checker@0.0.0","dist":{"shasum":"6a7a3977bbe770560d4fcc86eb3a32a52c9b368d","tarball":"http://localhost:1337/checker/-/checker-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"0.2.1":{"name":"checker","version":"0.2.1","description":"Checker is the collection of common abstract methods for validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"keywords":["checker","validator","validate","setter"],"author":{"name":"kael"},"license":"MIT","bugs":{"url":"https://github.com/kaelzhang/node-checker/issues"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"dependencies":{"async":"~0.2.9"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-checker.png?branch=master)](https://travis-ci.org/kaelzhang/node-checker)\n\n(THIS DOCUMENTAION IS NOT FINISHED YET.)\n\n# checker\n\nChecker is the collection of common abstract node.js methods for validatiors and setters.\n\t\n# Usage\n```sh\nnpm install checker --save\n```\n\n```js\nvar checker = require('checker');\n```\n\n# Synopsis\n\n```js\nchecker(schema, options).check(data, callback);\n```\n\n# Validation, Error Messages\n\n## Simple synchronous validators\n\n```js\nvar schema = {\n\tusername: {\n\t\tvalidator: function(value){\n\t\t\treturn /^[a-zA-Z0-9]{6,}$/.test(value);\n\t\t},\n\t\tmessage: 'Username must only contain letters, numbers; Username must contain at least 6 charactors'\n\t}\n};\n\nvar c = checker(schema);\n\nc.check({\n\tusername: 'a'\n}, function(err){\n\tif(err){\n\t\tconsole.log(err); // Then, `schema.username.message` will be displayed.\n\t}\n});\n```\n\n## Regular expressions as validators\n\nThe error hint of the example above is bad, because we want to know the very certain reason why we are wrong.\n\nThe `schema` below is equivalent to the one of the previous section:\n\n```js\n{\n\tvalidator: [\n\t\tfunction(value){\n\t\t\treturn value && value.length > 5;\n\t\t}, \n\t\t/^[a-zA-Z0-9]+$/\n\t],\n\tmessage: [\n\t\t'Username must contain at least 6 charactors', \n\t\t'Username must only contain letters and numbers'\n\t];\n}\n```\n\n## Asynchronous validators\n\n```js\n{\n\tvalidator: function(value){\n\t\tvar done = this.async();\n\t\t// this is an async method, and takes sooooo long...\n\t\tremote_check(value, function(err){\n\t\t\tdone(err); // `err` will pass to the `callback`\n\t\t});\n\t}\n}\n```\n\n\n# Programmatical Details\n\n## Options\n\n#### options.default_message `String`\n\nDefault error message\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n#### options.check_all `Boolean=false`\n\n\n\n## Schema Structures \n\n```js\n{\n\t: \n}\n```\n\n\nWhere `rule` might contains (all properties are optional):\n\n#### validator \n\n- `RegExp` The regular exp that input must matches against\n- `Function` Validation function. If `arguments.length === 3`, it will be considered as an async methods\n- `Array.` Group of validations. Asks will check each validator one by one. If validation fails, the rest validators will be skipped.\n- See sections above for details\n\t\n#### setter `Function|Array.`\n\nSee sections above for details.\n\n#### message `String`\n\nDefault error message\n\n#### default: `String`\n","_id":"checker@0.2.1","dist":{"shasum":"f25a07a1429cd9cee4a668f19fa99fa7e380deda","tarball":"http://localhost:1337/checker/-/checker-0.2.1.tgz"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"0.3.1":{"name":"checker","version":"0.3.1","description":"Checker is the collection of common abstract methods for validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"keywords":["checker","validator","validate","setter"],"author":{"name":"kael"},"license":"MIT","bugs":{"url":"https://github.com/kaelzhang/node-checker/issues"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"dependencies":{"async":"~0.2.9"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-checker.png?branch=master)](https://travis-ci.org/kaelzhang/node-checker)\n\n(THIS DOCUMENTAION IS NOT FINISHED YET.)\n\n# checker\n\nChecker is the collection of common abstract node.js methods for validatiors and setters.\n\t\n# Usage\n```sh\nnpm install checker --save\n```\n\n```js\nvar checker = require('checker');\n```\n\n# Synopsis\n\n```js\nchecker(schema, options).check(data, callback);\n```\n\n# Validation, Error Messages\n\n## Simple synchronous validators\n\n```js\nvar schema = {\n\tusername: {\n\t\tvalidator: function(value){\n\t\t\treturn /^[a-zA-Z0-9]{6,}$/.test(value);\n\t\t},\n\t\tmessage: 'Username must only contain letters, numbers; Username must contain at least 6 charactors'\n\t}\n};\n\nvar c = checker(schema);\n\nc.check({\n\tusername: 'a'\n}, function(err){\n\tif(err){\n\t\tconsole.log(err); // Then, `schema.username.message` will be displayed.\n\t}\n});\n```\n\n## Regular expressions as validators\n\nThe error hint of the example above is bad, because we want to know the very certain reason why we are wrong.\n\nThe `schema` below is equivalent to the one of the previous section:\n\n```js\n{\n\tvalidator: [\n\t\tfunction(value){\n\t\t\treturn value && value.length > 5;\n\t\t}, \n\t\t/^[a-zA-Z0-9]+$/\n\t],\n\tmessage: [\n\t\t'Username must contain at least 6 charactors', \n\t\t'Username must only contain letters and numbers'\n\t];\n}\n```\n\n## Asynchronous validators\n\n```js\n{\n\tvalidator: function(value){\n\t\tvar done = this.async();\n\t\t// this is an async method, and takes sooooo long...\n\t\tremote_check(value, function(err){\n\t\t\tdone(err); // `err` will pass to the `callback`\n\t\t});\n\t}\n}\n```\n\n\n# Programmatical Details\n\n## Options\n\n#### options.default_message `String`\n\nDefault error message\n\n#### options.parallel `Boolean=false`\n\n#### options.limit `Boolean=false`\n\n#### options.check_all `Boolean=false`\n\n\n\n## Schema Structures \n\n```js\n{\n\t: \n}\n```\n\n\nWhere `rule` might contains (all properties are optional):\n\n#### validator \n\n- `RegExp` The regular exp that input must matches against\n- `Function` Validation function. If `arguments.length === 3`, it will be considered as an async methods\n- `Array.` Group of validations. Asks will check each validator one by one. If validation fails, the rest validators will be skipped.\n- See sections above for details\n\t\n#### setter `Function|Array.`\n\nSee sections above for details.\n\n#### message `String`\n\nDefault error message\n\n#### default: `String`\n","_id":"checker@0.3.1","dist":{"shasum":"c285c3f3c29c4186156d9e94945ad3892e64c739","tarball":"http://localhost:1337/checker/-/checker-0.3.1.tgz"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"0.3.2":{"name":"checker","version":"0.3.2","description":"Checker is the collection of common abstract methods for validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"keywords":["checker","validator","validate","setter"],"author":{"name":"kael"},"license":"MIT","bugs":{"url":"https://github.com/kaelzhang/node-checker/issues"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"dependencies":{"async":"~0.2.9"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-checker.png?branch=master)](https://travis-ci.org/kaelzhang/node-checker)\n\n# checker\n\nChecker is the collection of common abstract node.js methods for validatiors and setters.\n\t\n# Usage\n```sh\nnpm install checker --save\n```\n\n```js\nvar checker = require('checker');\n```\n\n# Synopsis\n\n```js\nchecker(schema, options).check(data, function(err, value, details){\n});\n```\n\n### err `mixed`\n\n### parsed `Object`\n\nThe cleaned and parsed `data`.\n\n### details `Object`\n\n```\n{\n\t: \n}\n```\n\n- `detail.value` `mixed` the parsed value\n- `detail.is_default` `Boolean` if the current property is defined in `schema`, but the input data doesn't have it, then the value will be `true`\n- `detail.is_cooked` `Boolean` if there're any setters, it will be `true`\n- `detail.origin` the origin value of the property\n\n\n# Validation, Error Messages\n\n## Simple synchronous validators\n\n```js\nvar schema = {\n\tusername: {\n\t\tvalidator: function(value){\n\t\t\treturn /^[a-zA-Z0-9]{6,}$/.test(value);\n\t\t},\n\t\tmessage: 'Username must only contain letters, numbers; ' \n\t\t\t+ 'Username must contain at least 6 charactors'\n\t}\n};\n\nvar c = checker(schema);\n\nc.check({\n\tusername: 'a'\n}, function(err){\n\tif(err){\n\t\tconsole.log(err); // Then, `schema.username.message` will be displayed.\n\t}\n});\n```\n\n## Regular expressions as validators\n\nThe error hint of the example above is bad, because we want to know the very certain reason why we are wrong.\n\nThe `schema` below is equivalent to the one of the previous section:\n\n```js\n{\n\tvalidator: [\n\t\tfunction(value){\n\t\t\treturn value && value.length > 5;\n\t\t}, \n\t\t/^[a-zA-Z0-9]+$/\n\t],\n\tmessage: [\n\t\t'Username must contain at least 6 charactors', \n\t\t'Username must only contain letters and numbers'\n\t];\n}\n```\n\n## Asynchronous validators\n\n```js\n{\n\tvalidator: function(value){\n\t\tvar done = this.async();\n\t\t// this is an async method, and takes sooooo long...\n\t\tremote_check(value, function(err){\n\t\t\tdone(err); // `err` will pass to the `callback`\n\t\t});\n\t}\n}\n```\n\n\n# Programmatical Details\n\n## Options\n\n#### options.default_message `String`\n\nDefault error message\n\n#### options.parallel `Boolean=false`\n\nBy default, `checker` will check each properties in series, \n\n#### options.limit `Boolean=false`\n\nIf `options.limit` is `true` and a certain property of the input data is not defined in the `schema`, the property will be removed.\n\nDefault to `false`.\n\n#### options.check_all `Boolean=false`\n\nNot implemented yet.\n\n#### options.context `Object`\n\nSee sections below.\n\n## Schema Structures \n\n```js\n{\n\t: \n}\n```\n\n\nWhere `rule` might contains (all properties are optional):\n\n#### validator \n\n- `RegExp` The regular exp that input must matches against\n- `Function` Validation function. If `arguments.length === 3`, it will be considered as an async methods\n- `Array.` Group of validations. Asks will check each validator one by one. If validation fails, the rest validators will be skipped.\n- See sections above for details\n\t\n#### setter `Function|Array.`\n\nSee sections above for details.\n\n#### message `String`\n\nDefault error message\n\n#### default: `String`\n\n\n## `this` object inside validators and setters\n\nInside validators(`rule.validator`) and setters(`rule.setter`), there're several opaque methods\n\n### this.async()\n\nGenerate the `done` function to make the validator or setter become an async method.\n\n\tvar done = this.async();\n\t\nFor details, see the demos above.\n\n### this.get(name)\n\nThe value of the input object by name\n\n### this.set(name, value)\n\nChange the value of the specified property of the input object.\n\n```\n{\n\tusername: {\n\t},\n\t\n\tpassword: {\n\t\tvalidator: function(value){\n\t\t\tvar username = this.get('username');\n\t\t\t\n\t\t\t// Guests are welcome even without passwords\n\t\t\treturn value || username === 'guest';\n\t\t}\n\t}\n}\n```\n\nNotice that you'd better use `this.get` and `this.set` with the `options.parallel` setting as `false`(the default value). Otherwise, it might encounter unexpected situations, because the value of the object is ever changing due to the setter.\n\nSo, use them wisely.\n\n### this.context `Object`\n\nThe `options.context` itself.\n\n\n\n","_id":"checker@0.3.2","dist":{"shasum":"bc4b84036a5699c609e3c627923cb87d8058a79d","tarball":"http://localhost:1337/checker/-/checker-0.3.2.tgz"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"0.4.2":{"name":"checker","version":"0.4.2","description":"Checker is the collection of common abstract methods for validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"keywords":["checker","validator","validate","setter"],"author":{"name":"kael"},"license":"MIT","bugs":{"url":"https://github.com/kaelzhang/node-checker/issues"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"dependencies":{"async":"~0.2.9"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-checker.png?branch=master)](https://travis-ci.org/kaelzhang/node-checker)\n\n# checker\n\nChecker is the collection of common abstract node.js methods for validatiors and setters.\n\t\n# Usage\n```sh\nnpm install checker --save\n```\n\n```js\nvar checker = require('checker');\n```\n\n# Synopsis\n\n```js\nchecker(schema, options).check(data, function(err, value, details){\n});\n```\n\n### err `mixed`\n\n### results `Object`\n\nThe parsed object.\n\n### details `Object`\n\n```\n{\n\t: \n}\n```\n\n- `detail.value` `mixed` the parsed value\n- `detail.is_default` `Boolean` if the current property is defined in `schema`, but the input data doesn't have it, then the value will be `true`\n- `detail.is_cooked` `Boolean` if there're any setters, it will be `true`\n- `detail.origin` the origin value of the property\n- `detail.error` the error belongs to the current property. If not exists, it will be `null`\n\n\n# Validation, Error Messages\n\n## Simple synchronous validators\n\n```js\nvar schema = {\n\tusername: {\n\t\tvalidator: function(value){\n\t\t\treturn /^[a-zA-Z0-9]{6,}$/.test(value);\n\t\t},\n\t\tmessage: 'Username must only contain letters, numbers; ' \n\t\t\t+ 'Username must contain at least 6 charactors'\n\t}\n};\n\nvar c = checker(schema);\n\nc.check({\n\tusername: 'a'\n}, function(err){\n\tif(err){\n\t\tconsole.log(err); // Then, `schema.username.message` will be displayed.\n\t}\n});\n```\n\n## Regular expressions as validators\n\nThe error hint of the example above is bad, because we want to know the very certain reason why we are wrong.\n\nThe `schema` below is equivalent to the one of the previous section:\n\n```js\n{\n\tvalidator: [\n\t\tfunction(value){\n\t\t\treturn value && value.length > 5;\n\t\t}, \n\t\t/^[a-zA-Z0-9]+$/\n\t],\n\tmessage: [\n\t\t'Username must contain at least 6 charactors', \n\t\t'Username must only contain letters and numbers'\n\t];\n}\n```\n\n## Asynchronous validators\n\n```js\n{\n\tvalidator: function(value){\n\t\tvar done = this.async();\n\t\t// this is an async method, and takes sooooo long...\n\t\tremote_check(value, function(err){\n\t\t\tdone(err); // `err` will pass to the `callback`\n\t\t});\n\t}\n}\n```\n\n\n# Programmatical Details\n\n## Options\n\n#### options.default_message `String`\n\nDefault error message\n\n#### options.parallel `Boolean=false`\n\nBy default, `checker` will check each properties in series, \n\n#### options.limit `Boolean=false`\n\nIf `options.limit` is `true` and a certain property of the input data is not defined in the `schema`, the property will be removed.\n\nDefault to `false`.\n\n#### options.check_all `Boolean=false`\n\nBy default, `checker` will exit immediately at the first error. But if `options.check_all` is `true`, it will parse all the properties, and collect every possible error.\n\n#### options.context `Object`\n\nSee sections below.\n\n## Schema Structures \n\n```js\n{\n\t: \n}\n```\n\n\nWhere `rule` might contains (all properties are optional):\n\n#### validator \n\n- `RegExp` The regular exp that input must matches against\n- `Function` Validation function. If `arguments.length === 3`, it will be considered as an async methods\n- `Array.` Group of validations. Asks will check each validator one by one. If validation fails, the rest validators will be skipped.\n- See sections above for details\n\t\n#### setter `Function|Array.`\n\nSee sections above for details.\n\n#### message `String`\n\nDefault error message\n\n#### default: `String`\n\n\n## `this` object inside validators and setters\n\nInside validators(`rule.validator`) and setters(`rule.setter`), there're several opaque methods\n\n### this.async()\n\nGenerate the `done` function to make the validator or setter become an async method.\n\n\tvar done = this.async();\n\t\nFor details, see the demos above.\n\n### this.get(name)\n\nThe value of the input object by name\n\n### this.set(name, value)\n\nChange the value of the specified property of the input object.\n\n```\n{\n\tusername: {\n\t},\n\t\n\tpassword: {\n\t\tvalidator: function(value){\n\t\t\tvar username = this.get('username');\n\t\t\t\n\t\t\t// Guests are welcome even without passwords\n\t\t\treturn value || username === 'guest';\n\t\t}\n\t}\n}\n```\n\nNotice that you'd better use `this.get` and `this.set` with the `options.parallel` setting as `false`(the default value). Otherwise, it might encounter unexpected situations, because the value of the object is ever changing due to the setter.\n\nSo, use them wisely.\n\n### this.context `Object`\n\nThe `options.context` itself.\n\n\n\n","_id":"checker@0.4.2","dist":{"shasum":"7b033fdad0f000f88302ff1f5a8e59d8f466580e","tarball":"http://localhost:1337/checker/-/checker-0.4.2.tgz"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"0.5.1":{"name":"checker","version":"0.5.1","description":"Checker is the collection of common abstract methods for validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"keywords":["checker","validator","validate","setter"],"author":{"name":"kael"},"license":"MIT","bugs":{"url":"https://github.com/kaelzhang/node-checker/issues"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"dependencies":{"async":"~0.2.9"},"readme":"[![Build Status](https://travis-ci.org/kaelzhang/node-checker.png?branch=master)](https://travis-ci.org/kaelzhang/node-checker)\n\n# checker\n\nChecker is the collection of common abstract node.js methods for validatiors and setters.\n\t\n# Usage\n```sh\nnpm install checker --save\n```\n\n```js\nvar checker = require('checker');\n```\n\n# Synopsis\n\n```js\nchecker(schema, options).check(data, function(err, value, details){\n});\n```\n\n### err `mixed`\n\n### results `Object`\n\nThe parsed object.\n\n### details `Object`\n\n```\n{\n\t: \n}\n```\n\n- `detail.value` `mixed` the parsed value\n- `detail.is_default` `Boolean` if the current property is defined in `schema`, but the input data doesn't have it, then the value will be `true`\n- `detail.is_cooked` `Boolean` if there're any setters, it will be `true`\n- `detail.origin` the origin value of the property\n- `detail.error` the error belongs to the current property. If not exists, it will be `null`\n\n\n# Validation, Error Messages\n\n## Simple synchronous validators\n\n```js\nvar schema = {\n\tusername: {\n\t\tvalidator: function(value){\n\t\t\treturn /^[a-zA-Z0-9]{6,}$/.test(value);\n\t\t},\n\t\tmessage: 'Username must only contain letters, numbers; ' \n\t\t\t+ 'Username must contain at least 6 charactors'\n\t}\n};\n\nvar c = checker(schema);\n\nc.check({\n\tusername: 'a'\n}, function(err){\n\tif(err){\n\t\tconsole.log(err); // Then, `schema.username.message` will be displayed.\n\t}\n});\n```\n\n## Regular expressions as validators\n\nThe error hint of the example above is bad, because we want to know the very certain reason why we are wrong.\n\nThe `schema` below is equivalent to the one of the previous section:\n\n```js\n{\n\tvalidator: [\n\t\tfunction(value){\n\t\t\treturn value && value.length > 5;\n\t\t}, \n\t\t/^[a-zA-Z0-9]+$/\n\t],\n\tmessage: [\n\t\t'Username must contain at least 6 charactors', \n\t\t'Username must only contain letters and numbers'\n\t];\n}\n```\n\n## Asynchronous validators\n\n```js\n{\n\tvalidator: function(value){\n\t\tvar done = this.async();\n\t\t// this is an async method, and takes sooooo long...\n\t\tremote_check(value, function(err){\n\t\t\tdone(err); // `err` will pass to the `callback`\n\t\t});\n\t}\n}\n```\n\n\n# Programmatical Details\n\n## Options\n\n#### options.default_message `String`\n\nDefault error message\n\n#### options.parallel `Boolean=false`\n\nBy default, `checker` will check each properties in series, \n\n#### options.limit `Boolean=false`\n\nIf `options.limit` is `true` and a certain property of the input data is not defined in the `schema`, the property will be removed.\n\nDefault to `false`.\n\n#### options.check_all `Boolean=false`\n\nBy default, `checker` will exit immediately at the first error. But if `options.check_all` is `true`, it will parse all the properties, and collect every possible error.\n\n#### options.context `Object`\n\nSee sections below.\n\n## Schema Structures \n\n```js\n{\n\t: \n}\n```\n\n\nWhere `rule` might contains (all properties are optional):\n\n#### validator \n\n- `RegExp` The regular exp that input must matches against\n- `Function` Validation function. If `arguments.length === 3`, it will be considered as an async methods\n- `Array.` Group of validations. Asks will check each validator one by one. If validation fails, the rest validators will be skipped.\n- See sections above for details\n\t\n#### setter `Function|Array.`\n\nSee sections above for details.\n\n#### message `String`\n\nDefault error message\n\n#### default: `String`\n\n\n## `this` object inside validators and setters\n\nInside validators(`rule.validator`) and setters(`rule.setter`), there're several opaque methods\n\n### this.async()\n\nGenerate the `done` function to make the validator or setter become an async method.\n\n\tvar done = this.async();\n\t\nFor details, see the demos above.\n\n### this.get(name)\n\nThe value of the input object by name\n\n### this.set(name, value)\n\nChange the value of the specified property of the input object.\n\n```\n{\n\tusername: {\n\t},\n\t\n\tpassword: {\n\t\tvalidator: function(value){\n\t\t\tvar username = this.get('username');\n\t\t\t\n\t\t\t// Guests are welcome even without passwords\n\t\t\treturn value || username === 'guest';\n\t\t}\n\t}\n}\n```\n\nNotice that you'd better use `this.get` and `this.set` with the `options.parallel` setting as `false`(the default value). Otherwise, it might encounter unexpected situations, because the value of the object is ever changing due to the setter.\n\nSo, use them wisely.\n\n### this.context `Object`\n\nThe `options.context` itself.\n\n\n\n","readmeFilename":"README.md","_id":"checker@0.5.1","dist":{"shasum":"fef66f63d231ae2910f7dd7df291912a1e95e5d7","tarball":"http://localhost:1337/checker/-/checker-0.5.1.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}},"0.5.2":{"name":"checker","version":"0.5.2","description":"Checker is the collection of common abstract methods for validatiors and setters.","main":"index.js","scripts":{"test":"make test"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"keywords":["checker","validator","validate","setter"],"author":{"name":"kael"},"license":"MIT","bugs":{"url":"https://github.com/kaelzhang/node-checker/issues"},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"dependencies":{"async":"~0.2.9"},"readme":"[![NPM version](https://badge.fury.io/js/checker.png)](http://badge.fury.io/js/checker)\n[![Build Status](https://travis-ci.org/kaelzhang/node-checker.png?branch=master)](https://travis-ci.org/kaelzhang/node-checker)\n[![Dependency Status](https://gemnasium.com/kaelzhang/node-checker.png)](https://gemnasium.com/kaelzhang/node-checker)\n\n# checker\n\nChecker is the collection of common abstract node.js methods for validatiors and setters.\n\t\n# Usage\n```sh\nnpm install checker --save\n```\n\n```js\nvar checker = require('checker');\n```\n\n# Synopsis\n\n```js\nchecker(schema, options).check(data, function(err, value, details){\n});\n```\n\n### err `mixed`\n\n### results `Object`\n\nThe parsed object.\n\n### details `Object`\n\n```\n{\n\t: \n}\n```\n\n- `detail.value` `mixed` the parsed value\n- `detail.is_default` `Boolean` if the current property is defined in `schema`, but the input data doesn't have it, then the value will be `true`\n- `detail.is_cooked` `Boolean` if there're any setters, it will be `true`\n- `detail.origin` the origin value of the property\n- `detail.error` the error belongs to the current property. If not exists, it will be `null`\n\n\n# Validation, Error Messages\n\n## Simple synchronous validators\n\n```js\nvar schema = {\n\tusername: {\n\t\tvalidator: function(value){\n\t\t\treturn /^[a-zA-Z0-9]{6,}$/.test(value);\n\t\t},\n\t\tmessage: 'Username must only contain letters, numbers; ' \n\t\t\t+ 'Username must contain at least 6 charactors'\n\t}\n};\n\nvar c = checker(schema);\n\nc.check({\n\tusername: 'a'\n}, function(err){\n\tif(err){\n\t\tconsole.log(err); // Then, `schema.username.message` will be displayed.\n\t}\n});\n```\n\n## Regular expressions as validators\n\nThe error hint of the example above is bad, because we want to know the very certain reason why we are wrong.\n\nThe `schema` below is equivalent to the one of the previous section:\n\n```js\n{\n\tvalidator: [\n\t\tfunction(value){\n\t\t\treturn value && value.length > 5;\n\t\t}, \n\t\t/^[a-zA-Z0-9]+$/\n\t],\n\tmessage: [\n\t\t'Username must contain at least 6 charactors', \n\t\t'Username must only contain letters and numbers'\n\t];\n}\n```\n\n## Asynchronous validators\n\n```js\n{\n\tvalidator: function(value){\n\t\tvar done = this.async();\n\t\t// this is an async method, and takes sooooo long...\n\t\tremote_check(value, function(err){\n\t\t\tdone(err); // `err` will pass to the `callback`\n\t\t});\n\t}\n}\n```\n\n\n# Programmatical Details\n\n## Options\n\n#### options.default_message `String`\n\nDefault error message\n\n#### options.parallel `Boolean=false`\n\nBy default, `checker` will check each properties in series, \n\n#### options.limit `Boolean=false`\n\nIf `options.limit` is `true` and a certain property of the input data is not defined in the `schema`, the property will be removed.\n\nDefault to `false`.\n\n#### options.check_all `Boolean=false`\n\nBy default, `checker` will exit immediately at the first error. But if `options.check_all` is `true`, it will parse all the properties, and collect every possible error.\n\n#### options.context `Object`\n\nSee sections below.\n\n## Schema Structures \n\n```js\n{\n\t: \n}\n```\n\n\nWhere `rule` might contains (all properties are optional):\n\n#### validator \n\n- `RegExp` The regular exp that input must matches against\n- `Function` Validation function. If `arguments.length === 3`, it will be considered as an async methods\n- `Array.` Group of validations. Asks will check each validator one by one. If validation fails, the rest validators will be skipped.\n- See sections above for details\n\t\n#### setter `Function|Array.`\n\nSee sections above for details.\n\n#### message `String`\n\nDefault error message\n\n#### default: `String`\n\n\n## `this` object inside validators and setters\n\nInside validators(`rule.validator`) and setters(`rule.setter`), there're several opaque methods\n\n### this.async()\n\nGenerate the `done` function to make the validator or setter become an async method.\n\n\tvar done = this.async();\n\t\nFor details, see the demos above.\n\n### this.get(name)\n\nThe value of the input object by name\n\n### this.set(name, value)\n\nChange the value of the specified property of the input object.\n\n```\n{\n\tusername: {\n\t},\n\t\n\tpassword: {\n\t\tvalidator: function(value){\n\t\t\tvar username = this.get('username');\n\t\t\t\n\t\t\t// Guests are welcome even without passwords\n\t\t\treturn value || username === 'guest';\n\t\t}\n\t}\n}\n```\n\nNotice that you'd better use `this.get` and `this.set` with the `options.parallel` setting as `false`(the default value). Otherwise, it might encounter unexpected situations, because the value of the object is ever changing due to the setter.\n\nSo, use them wisely.\n\n### this.context `Object`\n\nThe `options.context` itself.\n\n\n\n","readmeFilename":"README.md","_id":"checker@0.5.2","dist":{"shasum":"c27a36bf00f3a7a3d24a8fbc7853f06fce4e9c86","tarball":"http://localhost:1337/checker/-/checker-0.5.2.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"kael","email":"i@kael.me"},"maintainers":[{"name":"kael","email":"i@kael.me"}],"directories":{}}},"readme":"ERROR: No README data found!","maintainers":[{"name":"kael","email":"i@kael.me"}],"time":{"modified":"2013-10-17T03:05:51.738Z","created":"2013-10-07T13:53:26.836Z","0.0.0":"2013-10-07T14:00:18.706Z","0.2.1":"2013-10-08T13:10:06.237Z","0.3.1":"2013-10-08T14:00:33.456Z","0.3.2":"2013-10-08T14:36:07.451Z","0.4.2":"2013-10-09T10:02:48.711Z","0.5.1":"2013-10-09T16:43:25.048Z","0.5.2":"2013-10-17T03:05:51.738Z"},"author":{"name":"kael"},"repository":{"type":"git","url":"git://github.com/kaelzhang/node-checker.git"},"_attachments":{}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/2a/a4df42cd435623f4c2c3e274fa081cc942ff45dcfa98cdf4a9324b6a21c3721c34bb97e6809ee28051fc10f57749cff60aa970a1e38c7a6c354a9403554e b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/2a/a4df42cd435623f4c2c3e274fa081cc942ff45dcfa98cdf4a9324b6a21c3721c34bb97e6809ee28051fc10f57749cff60aa970a1e38c7a6c354a9403554e deleted file mode 100644 index fa7bb7f467d7bd..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/2a/a4df42cd435623f4c2c3e274fa081cc942ff45dcfa98cdf4a9324b6a21c3721c34bb97e6809ee28051fc10f57749cff60aa970a1e38c7a6c354a9403554e +++ /dev/null @@ -1 +0,0 @@ -{"@foo/bar":"write","@foo/util":"read"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/68/8298544a3867cf399b04cc60c38c6519dae6096c5ba1917bb78a489baa9d6bad39649e16e00367e7cd02ac14ba7cd64f3acd56e21b984630f823ad9c9663 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/68/8298544a3867cf399b04cc60c38c6519dae6096c5ba1917bb78a489baa9d6bad39649e16e00367e7cd02ac14ba7cd64f3acd56e21b984630f823ad9c9663 deleted file mode 100644 index 4293310ab4d4ff..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/dc/68/8298544a3867cf399b04cc60c38c6519dae6096c5ba1917bb78a489baa9d6bad39649e16e00367e7cd02ac14ba7cd64f3acd56e21b984630f823ad9c9663 +++ /dev/null @@ -1 +0,0 @@ -{"name":"add-named-update-protocol-port","versions":{"0.0.0":{"name":"add-named-update-protocol-port","version":"0.0.0","dist":{"tarball":"https://localhost:1338/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz","shasum":"356a192b7913b04c54574d18c28d46e6395428ab"}}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/e7/06/de9d8e6ce16152be537cbccdf26321b3d678394ce42fb56aa4e69a37aba9d54df284700d066f7e6d005e461ab41d220fd6f268ff889e405809108a7b8676 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/e7/06/de9d8e6ce16152be537cbccdf26321b3d678394ce42fb56aa4e69a37aba9d54df284700d066f7e6d005e461ab41d220fd6f268ff889e405809108a7b8676 deleted file mode 100644 index a04cd09944ea10..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/e7/06/de9d8e6ce16152be537cbccdf26321b3d678394ce42fb56aa4e69a37aba9d54df284700d066f7e6d005e461ab41d220fd6f268ff889e405809108a7b8676 +++ /dev/null @@ -1 +0,0 @@ -{"latest":"2.0.0","a":"0.0.2","b":"0.6.0"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/e8/36/89a9c21ac93c2a0efc7e536925004e528bd3bfeba708cf5216db999c5efce0d7138a7e6ecedb125e43ba2aeb475d5958a2ca31f48c6a1442f164e90a3a22 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/e8/36/89a9c21ac93c2a0efc7e536925004e528bd3bfeba708cf5216db999c5efce0d7138a7e6ecedb125e43ba2aeb475d5958a2ca31f48c6a1442f164e90a3a22 deleted file mode 100644 index 643beaec7898ae..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/e8/36/89a9c21ac93c2a0efc7e536925004e528bd3bfeba708cf5216db999c5efce0d7138a7e6ecedb125e43ba2aeb475d5958a2ca31f48c6a1442f164e90a3a22 +++ /dev/null @@ -1 +0,0 @@ -{"username":"igotauthed"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/ed/fc/2d79d0d55bf4ea02b74ecc3657ea833bc6d0578adb2e1f5ae0d733b09a484f8e7287901578c7bdaa5d6fd30ac4dea48773a610ca6ee1e09e31f6147e921d b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/ed/fc/2d79d0d55bf4ea02b74ecc3657ea833bc6d0578adb2e1f5ae0d733b09a484f8e7287901578c7bdaa5d6fd30ac4dea48773a610ca6ee1e09e31f6147e921d deleted file mode 100644 index 34df07b38c356e..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/ed/fc/2d79d0d55bf4ea02b74ecc3657ea833bc6d0578adb2e1f5ae0d733b09a484f8e7287901578c7bdaa5d6fd30ac4dea48773a610ca6ee1e09e31f6147e921d +++ /dev/null @@ -1 +0,0 @@ -{"_id":"optimist","_rev":"147-993915d1034a2506e97797cd2d1bd171","name":"optimist","dist-tags":{"latest":"0.6.0"},"versions":{"0.0.1":{"name":"optimist","version":"0.0.1","descrption":"Light-weight option parsing","modules":{"index":"./optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"engine":["node >=0.1.100"],"_id":"optimist@0.0.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/optimist/-/optimist-0.0.1.tgz","shasum":"be66175d8781290f1672ae96858814c88274c41c"},"directories":{}},"0.0.2":{"name":"optimist","version":"0.0.2","description":"Light-weight option parsing","modules":{"index":"./optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"engine":["node >=0.1.100"],"_id":"optimist@0.0.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/optimist/-/optimist-0.0.2.tgz","shasum":"594ac6711315fa0d06887e3833567ff3fc7de4e1"},"directories":{}},"0.0.4":{"name":"optimist","version":"0.0.4","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.0.4","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/optimist/-/optimist-0.0.4.tgz","shasum":"6d5a2516e5b9a4808a8477cd62086ef829f07f4e"},"directories":{}},"0.0.5":{"name":"optimist","version":"0.0.5","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.0.5","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/optimist/-/optimist-0.0.5.tgz","shasum":"79f3bd7caf7c9002ace2a0600df80761fa459ea7"},"directories":{}},"0.0.6":{"name":"optimist","version":"0.0.6","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.0.6","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.7-2","_nodeVersion":"v0.3.1-pre","dist":{"tarball":"http://localhost:1337/optimist/-/optimist-0.0.6.tgz","shasum":"1e00197a8f5c010ed02c9bed629af28422c51bdf"},"directories":{}},"0.0.7":{"name":"optimist","version":"0.0.7","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.0.7","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.10","_nodeVersion":"v0.2.5","dist":{"shasum":"5ffc1dce7ddfdfe57a61fabb2644d7bda57722b2","tarball":"http://localhost:1337/optimist/-/optimist-0.0.7.tgz"},"directories":{}},"0.1.0":{"name":"optimist","version":"0.1.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.0","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.10","_nodeVersion":"v0.2.5","dist":{"shasum":"b523820a36a51c35bf6098d2dc4b5aa001e0f541","tarball":"http://localhost:1337/optimist/-/optimist-0.1.0.tgz"},"directories":{}},"0.1.1":{"name":"optimist","version":"0.1.1","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.1","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.10","_nodeVersion":"v0.2.5","dist":{"shasum":"ed43041fe2196e9f36b9c0f75e301526ab751baa","tarball":"http://localhost:1337/optimist/-/optimist-0.1.1.tgz"},"directories":{}},"0.1.2":{"name":"optimist","version":"0.1.2","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","option","parser","parsing"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.2","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.12-1","_nodeVersion":"v0.2.5","dist":{"shasum":"489780fb5350e8429e99a9e6e1305124eb3bbc8e","tarball":"http://localhost:1337/optimist/-/optimist-0.1.2.tgz"},"directories":{}},"0.1.3":{"name":"optimist","version":"0.1.3","description":"Light-weight option parsing with an argv hash. No optstrings attached.","modules":{"index":"./lib/optimist.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","option","parser","parsing"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.3","engines":{"node":"*"},"_nodeSupported":true,"_npmVersion":"0.2.12-1","_nodeVersion":"v0.2.5","dist":{"shasum":"90389a7e6807b5798b41c4b4112403a9691b98ff","tarball":"http://localhost:1337/optimist/-/optimist-0.1.3.tgz"},"directories":{}},"0.1.4":{"name":"optimist","version":"0.1.4","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index","repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","option","parser","parsing"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.16","_nodeVersion":"v0.3.8-pre","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"92496e1e378b46a24b6c027a612637cfc5fb543e","tarball":"http://localhost:1337/optimist/-/optimist-0.1.4.tgz"}},"0.1.5":{"name":"optimist","version":"0.1.5","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index","repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","option","parser","parsing"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.16","_nodeVersion":"v0.3.8-pre","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"f5b85dd7ba7928224db268f668419ffb1e7d2cec","tarball":"http://localhost:1337/optimist/-/optimist-0.1.5.tgz"}},"0.1.6":{"name":"optimist","version":"0.1.6","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index","repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","option","parser","parsing"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.2.16","_nodeVersion":"v0.3.8-pre","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"0f2f671dfec3365509dc335f098158aa90c80100","tarball":"http://localhost:1337/optimist/-/optimist-0.1.6.tgz"}},"0.1.7":{"name":"optimist","version":"0.1.7","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.7","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"f83a9644634d446bf3934518257d55dd6d08e183","tarball":"http://localhost:1337/optimist/-/optimist-0.1.7.tgz"}},"0.1.8":{"name":"optimist","version":"0.1.8","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"_id":"optimist@0.1.8","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","directories":{},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"58d0adde9d61db67dfbe2c7467da8abf9c86bc94","tarball":"http://localhost:1337/optimist/-/optimist-0.1.8.tgz"}},"0.1.9":{"name":"optimist","version":"0.1.9","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":["node >=0.1.100"],"dependencies":{},"devDependencies":{},"_id":"optimist@0.1.9","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.1rc8","_nodeVersion":"v0.4.2","_defaultsLoaded":true,"dist":{"shasum":"d88fd79743a88960a418f5754b3b2157252447cc","tarball":"http://localhost:1337/optimist/-/optimist-0.1.9.tgz"},"directories":{}},"0.0.3":{"name":"optimist","version":"0.0.3","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./optimist.js","repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"license":"MIT/X11","engine":["node >=0.1.100"],"dependencies":{},"devDependencies":{},"_id":"optimist@0.0.3","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.8-pre","_defaultsLoaded":true,"dist":{"shasum":"323a5c625b708e0197b72c106aef6444ada0c515","tarball":"http://localhost:1337/optimist/-/optimist-0.0.3.tgz"},"scripts":{},"directories":{}},"0.2.0":{"name":"optimist","version":"0.2.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"dependencies":{},"devDependencies":{},"_id":"optimist@0.2.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"1cb5b0e727009370f324765e2a5245ac0d806bfd","tarball":"http://localhost:1337/optimist/-/optimist-0.2.0.tgz"},"scripts":{},"directories":{}},"0.2.1":{"name":"optimist","version":"0.2.1","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"dependencies":{},"devDependencies":{},"_id":"optimist@0.2.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"80a2d75b660d467f673599dcbc69c113f289554a","tarball":"http://localhost:1337/optimist/-/optimist-0.2.1.tgz"},"scripts":{},"directories":{}},"0.2.2":{"name":"optimist","version":"0.2.2","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1"},"devDependencies":{"expresso":"=0.7.x"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_id":"optimist@0.2.2","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"a6bb06ff1f8229a12ee9abcb8160eee35e629ef8","tarball":"http://localhost:1337/optimist/-/optimist-0.2.2.tgz"},"scripts":{}},"0.2.3":{"name":"optimist","version":"0.2.3","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1"},"devDependencies":{"expresso":"=0.7.x"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_id":"optimist@0.2.3","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.3","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"dc259cc0e5d73e1f3fcc2dea3526e52f19ed740c","tarball":"http://localhost:1337/optimist/-/optimist-0.2.3.tgz"},"scripts":{}},"0.2.4":{"name":"optimist","version":"0.2.4","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1"},"devDependencies":{"hashish":"0.0.x","expresso":"=0.7.x"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_id":"optimist@0.2.4","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"9d543b3444fe127e8c01891c11a38d20b886317b","tarball":"http://localhost:1337/optimist/-/optimist-0.2.4.tgz"},"scripts":{}},"0.2.5":{"name":"optimist","version":"0.2.5","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1"},"devDependencies":{"hashish":"0.0.x","expresso":"=0.7.x"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_id":"optimist@0.2.5","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"50e0127b8443da18f4fdb756aaca446f1c65d136","tarball":"http://localhost:1337/optimist/-/optimist-0.2.5.tgz"},"scripts":{}},"0.2.6":{"name":"optimist","version":"0.2.6","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1"},"devDependencies":{"hashish":"0.0.x","expresso":"=0.7.x"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_id":"optimist@0.2.6","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.10","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"c15b750c98274ea175d241b745edf4ddc88f177b","tarball":"http://localhost:1337/optimist/-/optimist-0.2.6.tgz"},"scripts":{}},"0.2.7":{"name":"optimist","version":"0.2.7","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1.0"},"devDependencies":{"hashish":"0.0.x","expresso":"0.7.x"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"optimist@0.2.7","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.99","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"62945bcc760643d918a5c7649ade86e662144024","tarball":"http://localhost:1337/optimist/-/optimist-0.2.7.tgz"},"maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.2.8":{"name":"optimist","version":"0.2.8","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1.0"},"devDependencies":{"hashish":"0.0.x","expresso":"0.7.x"},"scripts":{"test":"expresso"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"optimist@0.2.8","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.99","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"e981ab7e268b457948593b55674c099a815cac31","tarball":"http://localhost:1337/optimist/-/optimist-0.2.8.tgz"},"maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.3.0":{"name":"optimist","version":"0.3.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1.0"},"devDependencies":{"hashish":"0.0.x","expresso":"0.7.x"},"scripts":{"test":"expresso"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"optimist@0.3.0","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"4458c1f02acf1e5c9ece36ce2fd4d338e56ee0f6","tarball":"http://localhost:1337/optimist/-/optimist-0.3.0.tgz"},"maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.3.1":{"name":"optimist","version":"0.3.1","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"examples"},"dependencies":{"wordwrap":">=0.0.1 <0.1.0"},"devDependencies":{"hashish":"0.0.x","expresso":"0.7.x"},"scripts":{"test":"expresso"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"optimist@0.3.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"6680d30560193af5a55eb64394883ed7bcb98f2e","tarball":"http://localhost:1337/optimist/-/optimist-0.3.1.tgz"},"maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.3.3":{"name":"optimist","version":"0.3.3","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"example"},"dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.2.4"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"optimist@0.3.3","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"d75701d48f37fe0e6f06f88e7b0cf0882a3ce394","tarball":"http://localhost:1337/optimist/-/optimist-0.3.3.tgz"},"readme":"","maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.3.4":{"name":"optimist","version":"0.3.4","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"example"},"dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.2.4"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"git://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"_npmUser":{"name":"substack","email":"mail@substack.net"},"_id":"optimist@0.3.4","optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"4d6d0bd71ffad0da4ba4f6d876d5eeb04e07480b","tarball":"http://localhost:1337/optimist/-/optimist-0.3.4.tgz"},"readme":"","maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.3.5":{"name":"optimist","version":"0.3.5","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","directories":{"lib":".","test":"test","example":"example"},"dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.2.4"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","_id":"optimist@0.3.5","dist":{"shasum":"03654b52417030312d109f39b159825b60309304","tarball":"http://localhost:1337/optimist/-/optimist-0.3.5.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}]},"0.3.6":{"name":"optimist","version":"0.3.6","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","_id":"optimist@0.3.6","dist":{"shasum":"816e0039f848fccf9db70cada5535ed9dd55f496","tarball":"http://localhost:1337/optimist/-/optimist-0.3.6.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.3.7":{"name":"optimist","version":"0.3.7","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","_id":"optimist@0.3.7","dist":{"shasum":"c90941ad59e4273328923074d2cf2e7cbc6ec0d9","tarball":"http://localhost:1337/optimist/-/optimist-0.3.7.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.4.0":{"name":"optimist","version":"0.4.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\nshort numbers\n-------------\n\nShort numeric `head -n5` style argument work too:\n\n $ node reflect.js -n123 -m456\n { '3': true,\n '6': true,\n _: [],\n '$0': 'node ./reflect.js',\n n: 123,\n m: 456 }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","_id":"optimist@0.4.0","dist":{"shasum":"cb8ec37f2fe3aa9864cb67a275250e7e19620a25","tarball":"http://localhost:1337/optimist/-/optimist-0.4.0.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.5.0":{"name":"optimist","version":"0.5.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\nshort numbers\n-------------\n\nShort numeric `head -n5` style argument work too:\n\n $ node reflect.js -n123 -m456\n { '3': true,\n '6': true,\n _: [],\n '$0': 'node ./reflect.js',\n n: 123,\n m: 456 }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","_id":"optimist@0.5.0","dist":{"shasum":"d9c60da4c34811418d183390623f8046f134a2d4","tarball":"http://localhost:1337/optimist/-/optimist-0.5.0.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.5.1":{"name":"optimist","version":"0.5.1","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\nshort numbers\n-------------\n\nShort numeric `head -n5` style argument work too:\n\n $ node reflect.js -n123 -m456\n { '3': true,\n '6': true,\n _: [],\n '$0': 'node ./reflect.js',\n n: 123,\n m: 456 }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","_id":"optimist@0.5.1","dist":{"shasum":"9f6a34014ca8344a60a5d39734436f49d2bbe4f5","tarball":"http://localhost:1337/optimist/-/optimist-0.5.1.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.5.2":{"name":"optimist","version":"0.5.2","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\nshort numbers\n-------------\n\nShort numeric `head -n5` style argument work too:\n\n $ node reflect.js -n123 -m456\n { '3': true,\n '6': true,\n _: [],\n '$0': 'node ./reflect.js',\n n: 123,\n m: 456 }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","_id":"optimist@0.5.2","dist":{"shasum":"85c8c1454b3315e4a78947e857b1df033450bfbc","tarball":"http://localhost:1337/optimist/-/optimist-0.5.2.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}},"0.6.0":{"name":"optimist","version":"0.6.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2","minimist":"~0.0.1"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readme":"optimist\n========\n\nOptimist is a node.js library for option parsing for people who hate option\nparsing. More specifically, this module is for people who like all the --bells\nand -whistlz of program usage but think optstrings are a waste of time.\n\nWith optimist, option parsing doesn't have to suck (as much).\n\n[![build status](https://secure.travis-ci.org/substack/node-optimist.png)](http://travis-ci.org/substack/node-optimist)\n\nexamples\n========\n\nWith Optimist, the options are just a hash! No optstrings attached.\n-------------------------------------------------------------------\n\nxup.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\n\nif (argv.rif - 5 * argv.xup > 7.138) {\n console.log('Buy more riffiwobbles');\n}\nelse {\n console.log('Sell the xupptumblers');\n}\n````\n\n***\n\n $ ./xup.js --rif=55 --xup=9.52\n Buy more riffiwobbles\n \n $ ./xup.js --rif 12 --xup 8.1\n Sell the xupptumblers\n\n![This one's optimistic.](http://substack.net/images/optimistic.png)\n\nBut wait! There's more! You can do short options:\n-------------------------------------------------\n \nshort.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\n````\n\n***\n\n $ ./short.js -x 10 -y 21\n (10,21)\n\nAnd booleans, both long and short (and grouped):\n----------------------------------\n\nbool.js:\n\n````javascript\n#!/usr/bin/env node\nvar util = require('util');\nvar argv = require('optimist').argv;\n\nif (argv.s) {\n util.print(argv.fr ? 'Le chat dit: ' : 'The cat says: ');\n}\nconsole.log(\n (argv.fr ? 'miaou' : 'meow') + (argv.p ? '.' : '')\n);\n````\n\n***\n\n $ ./bool.js -s\n The cat says: meow\n \n $ ./bool.js -sp\n The cat says: meow.\n\n $ ./bool.js -sp --fr\n Le chat dit: miaou.\n\nAnd non-hypenated options too! Just use `argv._`!\n-------------------------------------------------\n \nnonopt.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist').argv;\nconsole.log('(%d,%d)', argv.x, argv.y);\nconsole.log(argv._);\n````\n\n***\n\n $ ./nonopt.js -x 6.82 -y 3.35 moo\n (6.82,3.35)\n [ 'moo' ]\n \n $ ./nonopt.js foo -x 0.54 bar -y 1.12 baz\n (0.54,1.12)\n [ 'foo', 'bar', 'baz' ]\n\nPlus, Optimist comes with .usage() and .demand()!\n-------------------------------------------------\n\ndivide.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Usage: $0 -x [num] -y [num]')\n .demand(['x','y'])\n .argv;\n\nconsole.log(argv.x / argv.y);\n````\n\n***\n \n $ ./divide.js -x 55 -y 11\n 5\n \n $ node ./divide.js -x 4.91 -z 2.51\n Usage: node ./divide.js -x [num] -y [num]\n\n Options:\n -x [required]\n -y [required]\n\n Missing required arguments: y\n\nEVEN MORE HOLY COW\n------------------\n\ndefault_singles.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default('x', 10)\n .default('y', 10)\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_singles.js -x 5\n 15\n\ndefault_hash.js:\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .default({ x : 10, y : 10 })\n .argv\n;\nconsole.log(argv.x + argv.y);\n````\n\n***\n\n $ ./default_hash.js -y 7\n 17\n\nAnd if you really want to get all descriptive about it...\n---------------------------------------------------------\n\nboolean_single.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean('v')\n .argv\n;\nconsole.dir(argv);\n````\n\n***\n\n $ ./boolean_single.js -v foo bar baz\n true\n [ 'bar', 'baz', 'foo' ]\n\nboolean_double.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .boolean(['x','y','z'])\n .argv\n;\nconsole.dir([ argv.x, argv.y, argv.z ]);\nconsole.dir(argv._);\n````\n\n***\n\n $ ./boolean_double.js -x -z one two three\n [ true, false, true ]\n [ 'one', 'two', 'three' ]\n\nOptimist is here to help...\n---------------------------\n\nYou can describe parameters for help messages and set aliases. Optimist figures\nout how to format a handy help string automatically.\n\nline_count.js\n\n````javascript\n#!/usr/bin/env node\nvar argv = require('optimist')\n .usage('Count the lines in a file.\\nUsage: $0')\n .demand('f')\n .alias('f', 'file')\n .describe('f', 'Load a file')\n .argv\n;\n\nvar fs = require('fs');\nvar s = fs.createReadStream(argv.file);\n\nvar lines = 0;\ns.on('data', function (buf) {\n lines += buf.toString().match(/\\n/g).length;\n});\n\ns.on('end', function () {\n console.log(lines);\n});\n````\n\n***\n\n $ node line_count.js\n Count the lines in a file.\n Usage: node ./line_count.js\n\n Options:\n -f, --file Load a file [required]\n\n Missing required arguments: f\n\n $ node line_count.js --file line_count.js \n 20\n \n $ node line_count.js -f line_count.js \n 20\n\nmethods\n=======\n\nBy itself,\n\n````javascript\nrequire('optimist').argv\n`````\n\nwill use `process.argv` array to construct the `argv` object.\n\nYou can pass in the `process.argv` yourself:\n\n````javascript\nrequire('optimist')([ '-x', '1', '-y', '2' ]).argv\n````\n\nor use .parse() to do the same thing:\n\n````javascript\nrequire('optimist').parse([ '-x', '1', '-y', '2' ])\n````\n\nThe rest of these methods below come in just before the terminating `.argv`.\n\n.alias(key, alias)\n------------------\n\nSet key names as equivalent such that updates to a key will propagate to aliases\nand vice-versa.\n\nOptionally `.alias()` can take an object that maps keys to aliases.\n\n.default(key, value)\n--------------------\n\nSet `argv[key]` to `value` if no option was specified on `process.argv`.\n\nOptionally `.default()` can take an object that maps keys to default values.\n\n.demand(key)\n------------\n\nIf `key` is a string, show the usage information and exit if `key` wasn't\nspecified in `process.argv`.\n\nIf `key` is a number, demand at least as many non-option arguments, which show\nup in `argv._`.\n\nIf `key` is an Array, demand each element.\n\n.describe(key, desc)\n--------------------\n\nDescribe a `key` for the generated usage information.\n\nOptionally `.describe()` can take an object that maps keys to descriptions.\n\n.options(key, opt)\n------------------\n\nInstead of chaining together `.alias().demand().default()`, you can specify\nkeys in `opt` for each of the chainable methods.\n\nFor example:\n\n````javascript\nvar argv = require('optimist')\n .options('f', {\n alias : 'file',\n default : '/etc/passwd',\n })\n .argv\n;\n````\n\nis the same as\n\n````javascript\nvar argv = require('optimist')\n .alias('f', 'file')\n .default('f', '/etc/passwd')\n .argv\n;\n````\n\nOptionally `.options()` can take an object that maps keys to `opt` parameters.\n\n.usage(message)\n---------------\n\nSet a usage message to show which commands to use. Inside `message`, the string\n`$0` will get interpolated to the current script name or node command for the\npresent script similar to how `$0` works in bash or perl.\n\n.check(fn)\n----------\n\nCheck that certain conditions are met in the provided arguments.\n\nIf `fn` throws or returns `false`, show the thrown error, usage information, and\nexit.\n\n.boolean(key)\n-------------\n\nInterpret `key` as a boolean. If a non-flag option follows `key` in\n`process.argv`, that string won't get set as the value of `key`.\n\nIf `key` never shows up as a flag in `process.arguments`, `argv[key]` will be\n`false`.\n\nIf `key` is an Array, interpret all the elements as booleans.\n\n.string(key)\n------------\n\nTell the parser logic not to interpret `key` as a number or boolean.\nThis can be useful if you need to preserve leading zeros in an input.\n\nIf `key` is an Array, interpret all the elements as strings.\n\n.wrap(columns)\n--------------\n\nFormat usage output to wrap at `columns` many columns.\n\n.help()\n-------\n\nReturn the generated usage string.\n\n.showHelp(fn=console.error)\n---------------------------\n\nPrint the usage data using `fn` for printing.\n\n.parse(args)\n------------\n\nParse `args` instead of `process.argv`. Returns the `argv` object.\n\n.argv\n-----\n\nGet the arguments as a plain old object.\n\nArguments without a corresponding flag show up in the `argv._` array.\n\nThe script name or node command is available at `argv.$0` similarly to how `$0`\nworks in bash or perl.\n\nparsing tricks\n==============\n\nstop parsing\n------------\n\nUse `--` to stop parsing flags and stuff the remainder into `argv._`.\n\n $ node examples/reflect.js -a 1 -b 2 -- -c 3 -d 4\n { _: [ '-c', '3', '-d', '4' ],\n '$0': 'node ./examples/reflect.js',\n a: 1,\n b: 2 }\n\nnegate fields\n-------------\n\nIf you want to explicity set a field to false instead of just leaving it\nundefined or to override a default you can do `--no-key`.\n\n $ node examples/reflect.js -a --no-b\n { _: [],\n '$0': 'node ./examples/reflect.js',\n a: true,\n b: false }\n\nnumbers\n-------\n\nEvery argument that looks like a number (`!isNaN(Number(arg))`) is converted to\none. This way you can just `net.createConnection(argv.port)` and you can add\nnumbers out of `argv` with `+` without having that mean concatenation,\nwhich is super frustrating.\n\nduplicates\n----------\n\nIf you specify a flag multiple times it will get turned into an array containing\nall the values in order.\n\n $ node examples/reflect.js -x 5 -x 8 -x 0\n { _: [],\n '$0': 'node ./examples/reflect.js',\n x: [ 5, 8, 0 ] }\n\ndot notation\n------------\n\nWhen you use dots (`.`s) in argument names, an implicit object path is assumed.\nThis lets you organize arguments into nested objects.\n\n $ node examples/reflect.js --foo.bar.baz=33 --foo.quux=5\n { _: [],\n '$0': 'node ./examples/reflect.js',\n foo: { bar: { baz: 33 }, quux: 5 } }\n\nshort numbers\n-------------\n\nShort numeric `head -n5` style argument work too:\n\n $ node reflect.js -n123 -m456\n { '3': true,\n '6': true,\n _: [],\n '$0': 'node ./reflect.js',\n n: 123,\n m: 456 }\n\ninstallation\n============\n\nWith [npm](http://github.com/isaacs/npm), just do:\n npm install optimist\n \nor clone this project on github:\n\n git clone http://github.com/substack/node-optimist.git\n\nTo run the tests with [expresso](http://github.com/visionmedia/expresso),\njust do:\n \n expresso\n\ninspired By\n===========\n\nThis module is loosely inspired by Perl's\n[Getopt::Casual](http://search.cpan.org/~photo/Getopt-Casual-0.13.1/Casual.pm).\n","readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/node-optimist/issues"},"_id":"optimist@0.6.0","dist":{"shasum":"69424826f3405f79f142e6fc3d9ae58d4dbb9200","tarball":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{}}},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"repository":{"type":"git","url":"http://github.com/substack/node-optimist.git"},"description":"Light-weight option parsing with an argv hash. No optstrings attached.","author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"time":{"0.0.1":"2010-12-21T14:33:53.354Z","0.0.2":"2010-12-21T14:33:53.354Z","0.0.3":"2010-12-21T14:33:53.354Z","0.0.4":"2010-12-21T14:33:53.354Z","0.0.5":"2010-12-21T14:33:53.354Z","0.0.6":"2010-12-21T14:33:53.354Z","0.0.7":"2010-12-21T14:33:53.354Z","0.1.0":"2010-12-21T14:33:53.354Z","0.1.1":"2010-12-21T14:33:53.354Z","0.1.2":"2010-12-21T14:33:53.354Z","0.1.3":"2010-12-21T14:33:53.354Z","0.1.4":"2011-01-30T07:04:28.963Z","0.1.5":"2011-02-01T08:01:38.160Z","0.1.6":"2011-02-13T23:35:31.427Z","0.1.7":"2011-03-28T05:44:30.304Z","0.1.8":"2011-03-28T21:03:46.234Z","0.1.9":"2011-04-14T03:33:37.811Z","0.2.0":"2011-05-08T03:32:40.650Z","0.2.1":"2011-05-16T07:14:37.232Z","0.2.2":"2011-05-16T09:20:48.490Z","0.2.3":"2011-05-16T19:03:41.732Z","0.2.4":"2011-06-13T04:00:46.046Z","0.2.5":"2011-06-25T22:24:50.361Z","0.2.6":"2011-07-14T21:41:44.257Z","0.2.7":"2011-10-20T02:25:41.335Z","0.2.8":"2011-10-20T03:47:03.659Z","0.3.0":"2011-12-09T08:22:35.261Z","0.3.1":"2011-12-31T08:45:18.568Z","0.3.3":"2012-04-30T06:46:32.091Z","0.3.4":"2012-04-30T06:59:33.018Z","0.3.5":"2012-10-10T11:12:31.230Z","0.3.6":"2013-04-04T04:06:39.393Z","0.3.7":"2013-04-04T04:09:40.361Z","0.4.0":"2013-04-13T19:05:38.560Z","0.5.0":"2013-05-18T22:00:22.299Z","0.5.1":"2013-05-30T07:17:29.830Z","0.5.2":"2013-05-31T03:46:50.271Z","0.6.0":"2013-06-25T08:49:19.511Z"},"users":{"avianflu":true,"mvolkmann":true,"naholyr":true,"vtsvang":true,"linus":true,"pvorb":true,"matthiasg":true,"dshaw":true,"thlorenz":true,"MattiSG":true,"fgribreau":true,"clux":true,"hughsk":true,"pid":true,"gillesruppert":true,"jswartwood":true,"tokuhirom":true,"kennethjor":true,"chevex":true,"tivac":true,"konklone":true,"hij1nx":true,"luk":true,"booyaa":true,"megadrive":true,"nrn":true,"kastor":true,"joshthegeek":true,"charmander":true,"zaphod1984":true,"ljharb":true,"everywhere.js":true,"fiveisprime":true,"florianwendelborn":true,"lexa":true,"nak2k":true,"spekkionu":true,"conradz":true,"leesei":true,"pana":true},"_attachments":{"optimist-0.6.0.tgz":{"content_type":"application/octet-stream","revpos":132,"digest":"md5-I0ZgAx6amh/JRlF/tCQh0A==","length":12142,"stub":true},"optimist-0.5.2.tgz":{"content_type":"application/octet-stream","revpos":129,"digest":"md5-meoV8NdbCXOtbQcUb7qjUA==","length":13233,"stub":true},"optimist-0.5.1.tgz":{"content_type":"application/octet-stream","revpos":127,"digest":"md5-gE3NkJCbcKOoRQ1uMWn2nw==","length":13087,"stub":true},"optimist-0.5.0.tgz":{"content_type":"application/octet-stream","revpos":124,"digest":"md5-uQDzmYafvd/HvTJ3mUyLgw==","length":12984,"stub":true},"optimist-0.4.0.tgz":{"content_type":"application/octet-stream","revpos":121,"digest":"md5-Qka6k4uV5oWTww24Qt5P1Q==","length":12765,"stub":true},"optimist-0.3.7.tgz":{"content_type":"application/octet-stream","revpos":118,"digest":"md5-p4myQcSLDtU5PdiW3z137w==","length":12549,"stub":true},"optimist-0.3.6.tgz":{"content_type":"application/octet-stream","revpos":116,"digest":"md5-DueY6+6h+OTzM7P4iu5l9Q==","length":12598,"stub":true},"optimist-0.3.5.tgz":{"content_type":"application/octet-stream","revpos":101,"digest":"md5-5oFLAuVTvnhrV97GjqYmCA==","length":12463,"stub":true},"optimist-0.3.4.tgz":{"content_type":"application/octet-stream","revpos":88,"digest":"md5-kYOcoyFYV6OViKIqfMCxTA==","length":12538,"stub":true},"optimist-0.3.3.tgz":{"content_type":"application/octet-stream","revpos":83,"digest":"md5-Eq2+Ja5uGwC3gWW6Z0Z1gA==","length":12495,"stub":true},"optimist-0.3.1.tgz":{"content_type":"application/octet-stream","revpos":79,"digest":"md5-eFa9A+zxtlqYkE1zVnuUmA==","length":11800,"stub":true},"optimist-0.3.0.tgz":{"content_type":"application/octet-stream","revpos":75,"digest":"md5-ixo6YIBhoVFxqPN+KKyeuw==","length":11788,"stub":true},"optimist-0.2.8.tgz":{"content_type":"application/octet-stream","revpos":70,"digest":"md5-4LAF42qgFkJWg+BctkReNg==","length":11471,"stub":true},"optimist-0.2.7.tgz":{"content_type":"application/octet-stream","revpos":68,"digest":"md5-9GdCLdqH8jznVkbyjf/H8Q==","length":11337,"stub":true},"optimist-0.2.6.tgz":{"content_type":"application/octet-stream","revpos":64,"digest":"md5-t0BAQ1OFo1Sib+eStMAJxQ==","length":11308,"stub":true},"optimist-0.2.5.tgz":{"content_type":"application/octet-stream","revpos":62,"digest":"md5-QJVI872hENNvWGP+Ry+tLg==","length":11304,"stub":true},"optimist-0.2.4.tgz":{"content_type":"application/octet-stream","revpos":60,"digest":"md5-V4yDhXE3ifUaQzmOsLTgEg==","length":11161,"stub":true},"optimist-0.2.3.tgz":{"content_type":"application/octet-stream","revpos":58,"digest":"md5-NRVX0hVlcRjZdC92K6YIIw==","length":9713,"stub":true},"optimist-0.2.2.tgz":{"content_type":"application/octet-stream","revpos":56,"digest":"md5-fKrLoZrWtXw+5ITaXcXgBw==","length":9595,"stub":true},"optimist-0.2.1.tgz":{"content_type":"application/octet-stream","revpos":54,"digest":"md5-FpyRtmufNwNV17Lj3bE0VA==","length":9446,"stub":true},"optimist-0.2.0.tgz":{"content_type":"application/octet-stream","revpos":52,"digest":"md5-y8zpVGItFFYgNe3iNal2Jw==","length":8982,"stub":true},"optimist-0.0.3.tgz":{"content_type":"application/octet-stream","revpos":48,"digest":"md5-Gu0oCNCbD1Uki/2RcH2dEA==","length":3895,"stub":true},"optimist-0.1.9.tgz":{"content_type":"application/octet-stream","revpos":42,"digest":"md5-pEYFZ2Ayic4OVE+XnBgiFA==","length":7870,"stub":true},"optimist-0.1.8.tgz":{"content_type":"application/octet-stream","revpos":40,"digest":"md5-KSQ/QYT218dKyFforjobWw==","length":7740,"stub":true},"optimist-0.1.7.tgz":{"content_type":"application/octet-stream","revpos":38,"digest":"md5-kuMOFCqPA+3fZe5wAoJkvQ==","length":7650,"stub":true},"optimist-0.1.6.tgz":{"content_type":"application/octet-stream","revpos":36,"digest":"md5-VQGuFlwNqfW9dluVGAPung==","length":7547,"stub":true},"optimist-0.1.5.tgz":{"content_type":"application/octet-stream","revpos":34,"digest":"md5-s/q19VNxIBEt8kJMKIgLgQ==","length":7054,"stub":true},"optimist-0.1.4.tgz":{"content_type":"application/octet-stream","revpos":28,"digest":"md5-qo9j4yQZZ2bVphRNdykI/Q==","length":6431,"stub":true},"optimist-0.1.3.tgz":{"content_type":"application/octet-stream","revpos":26,"digest":"md5-gjKi5e08v+EsS4pgDok9cg==","length":6612,"stub":true},"optimist-0.1.2.tgz":{"content_type":"application/octet-stream","revpos":24,"digest":"md5-scvhz0+WQU6CQ9GOr4upWw==","length":6575,"stub":true},"optimist-0.1.1.tgz":{"content_type":"application/octet-stream","revpos":22,"digest":"md5-eRK/UJ1K8f2KzTRdzoS/Qw==","length":6179,"stub":true},"optimist-0.1.0.tgz":{"content_type":"application/octet-stream","revpos":20,"digest":"md5-pa99w4YezJSc5rwUaM8dvQ==","length":5809,"stub":true},"optimist-0.0.7.tgz":{"content_type":"application/octet-stream","revpos":18,"digest":"md5-pRDoQx+Kl+XL9l/O1NRV2A==","length":5470,"stub":true},"optimist-0.0.6.tgz":{"content_type":"application/octet-stream","revpos":13,"digest":"md5-prbC00jgIbKx0pRJk3H3Yw==","length":5470,"stub":true},"optimist-0.0.5.tgz":{"content_type":"application/octet-stream","revpos":11,"digest":"md5-zMnStZ7TmRET2xBnt2V4Qg==","length":5342,"stub":true},"optimist-0.0.4.tgz":{"content_type":"application/octet-stream","revpos":9,"digest":"md5-y7Y+/2R3qu0qa+5I0mJDRA==","length":5092,"stub":true},"optimist-0.0.2.tgz":{"content_type":"application/octet-stream","revpos":5,"digest":"md5-qhp0ch0rzo1O4GTFO0AOtg==","length":3128,"stub":true},"optimist-0.0.1.tgz":{"content_type":"application/octet-stream","revpos":3,"digest":"md5-cL87g7wfaP2HMV5LK9Gh+A==","length":3130,"stub":true}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f3/e8/2d6a0b75ad5cebd09177d93f572dbd8b877ee9f1505b2e84e03810fa0412e4904060be7d2a4df4221b1bb92884db886826bf8cd26634667a2d103a999438 b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f3/e8/2d6a0b75ad5cebd09177d93f572dbd8b877ee9f1505b2e84e03810fa0412e4904060be7d2a4df4221b1bb92884db886826bf8cd26634667a2d103a999438 deleted file mode 100644 index 9b3718b2d05897..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f3/e8/2d6a0b75ad5cebd09177d93f572dbd8b877ee9f1505b2e84e03810fa0412e4904060be7d2a4df4221b1bb92884db886826bf8cd26634667a2d103a999438 +++ /dev/null @@ -1 +0,0 @@ -{"objects":[{"id":"foo"},{"id":"bar"},{"id":"baz"}]} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/91/da7ce6e308dcaa672b8625ca0491cafed6726ceda16ffbcdd3f7661e5eb5b1aae2bd99960acb3a2fcc61a14edff79dd7bd610b27c57fea8aff535dbc519f b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/91/da7ce6e308dcaa672b8625ca0491cafed6726ceda16ffbcdd3f7661e5eb5b1aae2bd99960acb3a2fcc61a14edff79dd7bd610b27c57fea8aff535dbc519f deleted file mode 100644 index cd9bffe29a343b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/91/da7ce6e308dcaa672b8625ca0491cafed6726ceda16ffbcdd3f7661e5eb5b1aae2bd99960acb3a2fcc61a14edff79dd7bd610b27c57fea8aff535dbc519f +++ /dev/null @@ -1 +0,0 @@ -{"_id":"@scope/cond","_rev":"19-d458a706de1740662cd7728d7d7ddf07","name":"@scope/cond","time":{"modified":"2015-02-13T07:33:58.120Z","created":"2014-03-16T20:52:52.236Z","0.0.0":"2014-03-16T20:52:52.236Z","0.0.1":"2014-03-16T21:12:33.393Z","0.0.2":"2014-03-16T21:15:25.430Z"},"versions":{"0.0.0":{},"0.0.1":{},"0.0.2":{}},"dist-tags":{"latest":"0.0.2"},"description":"Restartable error handling system","license":"CC0"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/bd/a6b78fcf204b1ec0e6069045b44f6669e9aab878bfc891b946e4cecb843f4e87e428b6771ae7b4a2ce8f303e97746763b0642faf89a9b00425297dc78d6a b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/bd/a6b78fcf204b1ec0e6069045b44f6669e9aab878bfc891b946e4cecb843f4e87e428b6771ae7b4a2ce8f303e97746763b0642faf89a9b00425297dc78d6a deleted file mode 100644 index 075750f8680f0d..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/f5/bd/a6b78fcf204b1ec0e6069045b44f6669e9aab878bfc891b946e4cecb843f4e87e428b6771ae7b4a2ce8f303e97746763b0642faf89a9b00425297dc78d6a +++ /dev/null @@ -1 +0,0 @@ -{"latest":"1.0.0","a":"0.0.1","b":"0.5.0"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/fd/37/65c30143da9bd36758e4f19cce0984aac9f6a6a90a2a1ea79ab8acec84841b7b2af4b20e52051d585ac12bef1930d35234d6556319315d5656391257472d b/deps/npm/test/npm_cache/_cacache/content-v2/sha512/fd/37/65c30143da9bd36758e4f19cce0984aac9f6a6a90a2a1ea79ab8acec84841b7b2af4b20e52051d585ac12bef1930d35234d6556319315d5656391257472d deleted file mode 100644 index fb33c40d3795ba..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/content-v2/sha512/fd/37/65c30143da9bd36758e4f19cce0984aac9f6a6a90a2a1ea79ab8acec84841b7b2af4b20e52051d585ac12bef1930d35234d6556319315d5656391257472d +++ /dev/null @@ -1 +0,0 @@ -{"username":"admin","username2":"foo"} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/06/90/5e61e746e7d543d4bffbfeead5822d45a4e7089a414fbe6f1be007f6cd48 b/deps/npm/test/npm_cache/_cacache/index-v5/06/90/5e61e746e7d543d4bffbfeead5822d45a4e7089a414fbe6f1be007f6cd48 deleted file mode 100644 index 0fb889198463c6..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/06/90/5e61e746e7d543d4bffbfeead5822d45a4e7089a414fbe6f1be007f6cd48 +++ /dev/null @@ -1,3 +0,0 @@ - -f79f1f96542accdfe7c66e2adeebe6230b324be4 {"key":"pacote:tag-manifest:http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz:sha1-KncwfhCL+1cQfEwzSrte9Tldxoo=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833049346,"size":1,"metadata":{"id":"test-repo-url-ssh@0.0.1","manifest":{"name":"test-repo-url-ssh","version":"0.0.1","description":"Test repo with non-github ssh repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/evanlucas/test-repo-url-ssh.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-ssh@0.0.1","dist":{"shasum":"2a77307e108bfb57107c4c334abb5ef5395dc68a","tarball":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{},"_integrity":"sha1-KncwfhCL+1cQfEwzSrte9Tldxoo=","_shasum":"2a77307e108bfb57107c4c334abb5ef5395dc68a","_resolved":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null,"bugs":{"url":"https://gitlab.com/evanlucas/test-repo-url-ssh/issues"},"homepage":"https://gitlab.com/evanlucas/test-repo-url-ssh#readme"},"type":"finalized-manifest"}} -033be10c654046737e09e90415c78249d86bb129 {"key":"pacote:tag-manifest:http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz:sha1-KncwfhCL+1cQfEwzSrte9Tldxoo=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833266232,"size":1,"metadata":{"id":"test-repo-url-ssh@0.0.1","manifest":{"name":"test-repo-url-ssh","version":"0.0.1","description":"Test repo with non-github ssh repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+ssh://git@gitlab.com/evanlucas/test-repo-url-ssh.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-ssh@0.0.1","dist":{"shasum":"2a77307e108bfb57107c4c334abb5ef5395dc68a","tarball":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{},"_integrity":"sha1-KncwfhCL+1cQfEwzSrte9Tldxoo=","_shasum":"2a77307e108bfb57107c4c334abb5ef5395dc68a","_resolved":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null,"bugs":{"url":"https://gitlab.com/evanlucas/test-repo-url-ssh/issues"},"homepage":"https://gitlab.com/evanlucas/test-repo-url-ssh#readme"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/0b/5a/62ce62a24edca98b341182e328ec6d451a459b384cac489f57771ed7e74a b/deps/npm/test/npm_cache/_cacache/index-v5/0b/5a/62ce62a24edca98b341182e328ec6d451a459b384cac489f57771ed7e74a deleted file mode 100644 index 2225a6556e0f7b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/0b/5a/62ce62a24edca98b341182e328ec6d451a459b384cac489f57771ed7e74a +++ /dev/null @@ -1,2 +0,0 @@ - -d58db47c718e3d30c4c86d7b5ea9fd867dbdbc68 {"key":"pacote:packed-dir:git://localhost:1234/child.git#aef7bbd091eeef812d6364c2e8250b1e4b39a5ba","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833000938,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/0e/d4/8aa7d55331a48f04b5218bb50c1c639e7a3600893f62fde6191d2563e6df b/deps/npm/test/npm_cache/_cacache/index-v5/0e/d4/8aa7d55331a48f04b5218bb50c1c639e7a3600893f62fde6191d2563e6df deleted file mode 100644 index ae572112072f70..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/0e/d4/8aa7d55331a48f04b5218bb50c1c639e7a3600893f62fde6191d2563e6df +++ /dev/null @@ -1,5 +0,0 @@ - -74dc30109273ec856599bc20e75e4a7163722fa7 {"key":"pacote:packed-dir:git://localhost:1234/child.git#8da4c77141205e56a0a30c4a95a13aa221537ea9","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833118351,"size":143} -75e68abddffebaf55df7bb36f662ab7faa04b943 {"key":"pacote:packed-dir:git://localhost:1234/child.git#8da4c77141205e56a0a30c4a95a13aa221537ea9","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833118616,"size":143} -49f7029d1f223b3bd3eecb19428ace3310fd9f93 {"key":"pacote:packed-dir:git://localhost:1234/child.git#8da4c77141205e56a0a30c4a95a13aa221537ea9","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833119692,"size":143} -992f03d4d29fd112cef6fd6afb6af20ad7acfe0b {"key":"pacote:packed-dir:git://localhost:1234/child.git#8da4c77141205e56a0a30c4a95a13aa221537ea9","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833119999,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/13/b5/0178cbb8a4a3e25b821dbdd82db862373a457bbab3fee9c0e305b4f83b37 b/deps/npm/test/npm_cache/_cacache/index-v5/13/b5/0178cbb8a4a3e25b821dbdd82db862373a457bbab3fee9c0e305b4f83b37 deleted file mode 100644 index b0c1a79bb55ae7..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/13/b5/0178cbb8a4a3e25b821dbdd82db862373a457bbab3fee9c0e305b4f83b37 +++ /dev/null @@ -1,2 +0,0 @@ - -95c0e26dc337f0530229453e6eae5e768fc188d3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/clean/-/clean-2.1.6.tgz","integrity":"sha1-QcgLK29UMsYM3bgZMqtWVjtET1I=","time":1547833073369,"size":6288,"metadata":{"url":"http://localhost:1337/clean/-/clean-2.1.6.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:clean@http://localhost:1337/clean/-/clean-2.1.6.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/14/7e/33640d7ecca75f94fce8a3c3b46e111bc08921520f7b2cce032bf8862107 b/deps/npm/test/npm_cache/_cacache/index-v5/14/7e/33640d7ecca75f94fce8a3c3b46e111bc08921520f7b2cce032bf8862107 deleted file mode 100644 index 7546dee83ef37d..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/14/7e/33640d7ecca75f94fce8a3c3b46e111bc08921520f7b2cce032bf8862107 +++ /dev/null @@ -1,3 +0,0 @@ - -dda70cf10fd1b63cf6d5d008b56f3a199fea0741 {"key":"make-fetch-happen:request-cache:http://localhost:1337/underscore/-/underscore-1.5.1.tgz","integrity":"sha1-0r3oF9F2/63olKtxRY5oKhS4bck=","time":1547833045352,"size":22746,"metadata":{"url":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["4fa97a596a50fc65"],"referer":["bugs underscore"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:underscore@http://localhost:1337/underscore/-/underscore-1.5.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:25 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -920b6c736f7d6cfb695de62fc103db9fb5522b33 {"key":"make-fetch-happen:request-cache:http://localhost:1337/underscore/-/underscore-1.5.1.tgz","integrity":"sha1-0r3oF9F2/63olKtxRY5oKhS4bck=","time":1547833262764,"size":22746,"metadata":{"url":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["20080b2063fb2e2a"],"referer":["bugs underscore"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:underscore@http://localhost:1337/underscore/-/underscore-1.5.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:02 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/15/bf/92c5cbc5f2b5bb51971d6f7d04cf0b3871bdde88a368eed466901917d636 b/deps/npm/test/npm_cache/_cacache/index-v5/15/bf/92c5cbc5f2b5bb51971d6f7d04cf0b3871bdde88a368eed466901917d636 deleted file mode 100644 index a1c0e1e2b37a03..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/15/bf/92c5cbc5f2b5bb51971d6f7d04cf0b3871bdde88a368eed466901917d636 +++ /dev/null @@ -1,3 +0,0 @@ - -994ba6103d857ed6f02b897b43c714147a25c7d1 {"key":"make-fetch-happen:request-cache:http://localhost:1337/async/-/async-0.2.10.tgz","integrity":"sha1-trvgsGdLnXGXCMo43owjfLUmw9E=","time":1547833073451,"size":15772,"metadata":{"url":"http://localhost:1337/async/-/async-0.2.10.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:async@http://localhost:1337/async/-/async-0.2.10.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -cf44917b107eb08c84c9345d5b79d2bed349755f {"key":"make-fetch-happen:request-cache:http://localhost:1337/async/-/async-0.2.10.tgz","integrity":"sha1-trvgsGdLnXGXCMo43owjfLUmw9E=","time":1547833093330,"size":15772,"metadata":{"url":"http://localhost:1337/async/-/async-0.2.10.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:async@http://localhost:1337/async/-/async-0.2.10.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/18/1f/b15fb9d4fbd32e771ad6afadda07bc566c24b4b589c6bbc5c3e996c7a3db b/deps/npm/test/npm_cache/_cacache/index-v5/18/1f/b15fb9d4fbd32e771ad6afadda07bc566c24b4b589c6bbc5c3e996c7a3db deleted file mode 100644 index af0dae50439ad2..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/18/1f/b15fb9d4fbd32e771ad6afadda07bc566c24b4b589c6bbc5c3e996c7a3db +++ /dev/null @@ -1,3 +0,0 @@ - -5872147226813473de0d5f3c9bf716a16e27a39e {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:npm_oauth_auth_dummy_user","integrity":null,"time":1547833016269} -e580567b82439b0fa590acaf46117d7ea73de06c {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:npm_oauth_auth_dummy_user","integrity":null,"time":1547833235770} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/19/db/491ce5fd3b8f5521f62a3d208c8b91325f3f8fe347347649e2e7cb8c10b2 b/deps/npm/test/npm_cache/_cacache/index-v5/19/db/491ce5fd3b8f5521f62a3d208c8b91325f3f8fe347347649e2e7cb8c10b2 deleted file mode 100644 index 9bbc8300f630fe..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/19/db/491ce5fd3b8f5521f62a3d208c8b91325f3f8fe347347649e2e7cb8c10b2 +++ /dev/null @@ -1,3 +0,0 @@ - -9d3fbd26021863fa857a7b84ed1768b2b94f0366 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks/hook","integrity":null,"time":1547833360547} -a85a425bcdeb7c2ccf977d545f13cdd7f3cef331 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks/hook","integrity":null,"time":1547833361187} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/1c/05/419d1e706cbe2c4b49cddcc72c47c6fbcde4ff2cdbb76da7c1defd09d6d6 b/deps/npm/test/npm_cache/_cacache/index-v5/1c/05/419d1e706cbe2c4b49cddcc72c47c6fbcde4ff2cdbb76da7c1defd09d6d6 deleted file mode 100644 index 747abfcf598669..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/1c/05/419d1e706cbe2c4b49cddcc72c47c6fbcde4ff2cdbb76da7c1defd09d6d6 +++ /dev/null @@ -1,7 +0,0 @@ - -eab0846401a097a355ae6b40613e32a9d5bdd840 {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap","integrity":"sha512-UjqQJTil69POEpCH8mK/ChZjwv22pjas12YOOG+/L40JeUbNoHUYu9m5/Jxb5yXormBB5iyenoHeVYXpADKLCQ==","time":1547833073399,"size":2532,"metadata":{"url":"http://localhost:1337/wordwrap","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:wordwrap"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -dc32e815d94277f6d7fdc1b0ccc2988d624aec46 {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap","integrity":"sha512-UjqQJTil69POEpCH8mK/ChZjwv22pjas12YOOG+/L40JeUbNoHUYu9m5/Jxb5yXormBB5iyenoHeVYXpADKLCQ==","time":1547833079826,"size":2532,"metadata":{"url":"http://localhost:1337/wordwrap","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["d19ab2d4de48cace"],"referer":["install optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:wordwrap"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:59 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -6e816008ddb2f41c3f1c121ffece8dbee86ef0b7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap","integrity":"sha512-UjqQJTil69POEpCH8mK/ChZjwv22pjas12YOOG+/L40JeUbNoHUYu9m5/Jxb5yXormBB5iyenoHeVYXpADKLCQ==","time":1547833093372,"size":2532,"metadata":{"url":"http://localhost:1337/wordwrap","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:wordwrap"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -d1063fca9f6ffeb5fc3cbb9f09d0324106467714 {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap","integrity":"sha512-UjqQJTil69POEpCH8mK/ChZjwv22pjas12YOOG+/L40JeUbNoHUYu9m5/Jxb5yXormBB5iyenoHeVYXpADKLCQ==","time":1547833294159,"size":2532,"metadata":{"url":"http://localhost:1337/wordwrap","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:wordwrap"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -a73d8c131fb046e62332bca244be5323d0c1b54e {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap","integrity":"sha512-UjqQJTil69POEpCH8mK/ChZjwv22pjas12YOOG+/L40JeUbNoHUYu9m5/Jxb5yXormBB5iyenoHeVYXpADKLCQ==","time":1547833301219,"size":2532,"metadata":{"url":"http://localhost:1337/wordwrap","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["f4c81daeaa866c45"],"referer":["install optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:wordwrap"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:41 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -93cb442b9ba3e5e64ff7047b96f76559172cc302 {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap","integrity":"sha512-UjqQJTil69POEpCH8mK/ChZjwv22pjas12YOOG+/L40JeUbNoHUYu9m5/Jxb5yXormBB5iyenoHeVYXpADKLCQ==","time":1547833314454,"size":2532,"metadata":{"url":"http://localhost:1337/wordwrap","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ce2c0b941f6a62b8"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:wordwrap"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:54 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/1d/95/be47aca6f275eae3f3b2d5c35a85f51736f1403d8fd3790ab0e354238f68 b/deps/npm/test/npm_cache/_cacache/index-v5/1d/95/be47aca6f275eae3f3b2d5c35a85f51736f1403d8fd3790ab0e354238f68 deleted file mode 100644 index de0902ed8d0c16..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/1d/95/be47aca6f275eae3f3b2d5c35a85f51736f1403d8fd3790ab0e354238f68 +++ /dev/null @@ -1,5 +0,0 @@ - -09c3f181c0854f46273f41e916aedf906823cc22 {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/user/org.couchdb.user:u","integrity":null,"time":1547833010390} -90ced6633bb45047bdb8b1aae92c7cf9e5864c96 {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/user/org.couchdb.user:u","integrity":null,"time":1547833011577} -66dd2102e034752ab1aa68d91b0c66ba1894363c {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/user/org.couchdb.user:u","integrity":null,"time":1547833230546} -318a7ae8e8c3e1f64f4396ee1c893f80b9f9110e {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/user/org.couchdb.user:u","integrity":null,"time":1547833231536} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/1e/c1/c1f0fea37e015610f77e0486d0c90745de8da2029e042c59f6197901f5fb b/deps/npm/test/npm_cache/_cacache/index-v5/1e/c1/c1f0fea37e015610f77e0486d0c90745de8da2029e042c59f6197901f5fb deleted file mode 100644 index 8659041e1210e3..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/1e/c1/c1f0fea37e015610f77e0486d0c90745de8da2029e042c59f6197901f5fb +++ /dev/null @@ -1,13 +0,0 @@ - -d51b8401bfd296821844053e4d221c3e963f6a5c {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833009024} -b5a55946cc3765a670773a1ac1c61020efdfcc7c {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833012658} -296fdd1a10001bb18edea110f74ef314d16624dc {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833013383} -abb2b62b4b9b34c703d06944e5abfb2760c0189f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833014054} -2c41be84ad4581319a0b1c5ee2d27c9ef07d2a27 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833015086} -dc098e0a677206db298b56e879f3571da00247d7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":"sha512-nbMJVEfJtT/oi78ZD7ajJMekKoS/UdPDRfyIze6gDwJhZ61zKbQjadeaZ4EnOKIyS3quQtT+6sSaK4lcV7SBaA==","time":1547833015108,"size":29,"metadata":{"url":"http://localhost:1337/-/user/org.couchdb.user:u?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["921f4dd388006bcd"],"referer":["adduser"],"authorization":["Basic dTp4"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:55 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -18e85b94d32a66aa745c72800287b0737e64da56 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833229649} -52b8b6265052d06cb1b11701990b1cc867599a2f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833232612} -4fe8d89414166b89a370517f3770037b7529ea5d {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833233312} -0c1b13b3cb55c753d9b44b35ef490e514cc8f219 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833233899} -9772baed148b319af55ee66915c9e7a5baf26b02 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":null,"time":1547833234801} -00845d6e9ad719f069dedc8971ebb25f8b31f30f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u","integrity":"sha512-nbMJVEfJtT/oi78ZD7ajJMekKoS/UdPDRfyIze6gDwJhZ61zKbQjadeaZ4EnOKIyS3quQtT+6sSaK4lcV7SBaA==","time":1547833234821,"size":29,"metadata":{"url":"http://localhost:1337/-/user/org.couchdb.user:u?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["f5d540ebb7caafdf"],"referer":["adduser"],"authorization":["Basic dTp4"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/1f/4c/7c6c652ccd8d9b32c0b4ef03e8a114c823d405df62054797ae8e510155d2 b/deps/npm/test/npm_cache/_cacache/index-v5/1f/4c/7c6c652ccd8d9b32c0b4ef03e8a114c823d405df62054797ae8e510155d2 deleted file mode 100644 index 1b22356a3e8028..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/1f/4c/7c6c652ccd8d9b32c0b4ef03e8a114c823d405df62054797ae8e510155d2 +++ /dev/null @@ -1,5 +0,0 @@ - -bec8fa8e08f78acec14ab9c9db47d7c10afcea82 {"key":"make-fetch-happen:request-cache:http://localhost:1337/checker","integrity":"sha512-1EXtcuZe0Ln+xaakF5TKrdqVG6eaBUFkjiWcgCGz/JZIfSyu34aawUK0sPMZmMQ28XHZipoXQOOsjuu1wRA8Uw==","time":1547833073399,"size":29837,"metadata":{"url":"http://localhost:1337/checker","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:checker"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -dd598597f8e43cf35bcd5cdd30fd47e607caa590 {"key":"make-fetch-happen:request-cache:http://localhost:1337/checker","integrity":"sha512-1EXtcuZe0Ln+xaakF5TKrdqVG6eaBUFkjiWcgCGz/JZIfSyu34aawUK0sPMZmMQ28XHZipoXQOOsjuu1wRA8Uw==","time":1547833093286,"size":29837,"metadata":{"url":"http://localhost:1337/checker","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:checker"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -d50082ec956f0b3a8fd90ea25c490bcf2e11deb7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/checker","integrity":"sha512-1EXtcuZe0Ln+xaakF5TKrdqVG6eaBUFkjiWcgCGz/JZIfSyu34aawUK0sPMZmMQ28XHZipoXQOOsjuu1wRA8Uw==","time":1547833294158,"size":29837,"metadata":{"url":"http://localhost:1337/checker","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:checker"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -12823d2665d82f3e3319f998b9e6cc5e849d90fa {"key":"make-fetch-happen:request-cache:http://localhost:1337/checker","integrity":"sha512-1EXtcuZe0Ln+xaakF5TKrdqVG6eaBUFkjiWcgCGz/JZIfSyu34aawUK0sPMZmMQ28XHZipoXQOOsjuu1wRA8Uw==","time":1547833314395,"size":29837,"metadata":{"url":"http://localhost:1337/checker","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ce2c0b941f6a62b8"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:checker"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:54 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/21/69/cf895689c136d0f667f13d167389f0bdff113e4a85c2d0a34e8420953fb0 b/deps/npm/test/npm_cache/_cacache/index-v5/21/69/cf895689c136d0f667f13d167389f0bdff113e4a85c2d0a34e8420953fb0 deleted file mode 100644 index ee51d124d2d660..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/21/69/cf895689c136d0f667f13d167389f0bdff113e4a85c2d0a34e8420953fb0 +++ /dev/null @@ -1,2 +0,0 @@ - -bcf2512c5444034125be184da64a4bc8f0c469ff {"key":"pacote:version-manifest:http://localhost:1337/minimist/-/minimist-0.0.5.tgz:sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833093354,"size":1,"metadata":{"id":"minimist@0.0.5","manifest":{"name":"minimist","version":"0.0.5","dependencies":{},"optionalDependencies":{},"devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz","_integrity":"sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","_shasum":"d7aa327bcecf518f9106ac6b8f003fa3bcea8566","_shrinkwrap":null,"bin":null,"_id":"minimist@0.0.5"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/21/90/97d7c2a8081808dcd3d6fc97011bebe11fc8e308eaff2d4224c21477d1d5 b/deps/npm/test/npm_cache/_cacache/index-v5/21/90/97d7c2a8081808dcd3d6fc97011bebe11fc8e308eaff2d4224c21477d1d5 deleted file mode 100644 index 2e8cbde1cf80c7..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/21/90/97d7c2a8081808dcd3d6fc97011bebe11fc8e308eaff2d4224c21477d1d5 +++ /dev/null @@ -1,2 +0,0 @@ - -068551101b5c24f7117897d030b63fc0e7bb83ff {"key":"pacote:remote-manifest:https://github.com/substack/jsonify/tarball/master:sha512-LjZI+XaDCuq6BySzgqCaamc239THVZY6T0Yvlj+eyyEcIljwB2bcOqaGZPZtOgHLJ4myz2FK6yktvrSv4LIGzA==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1544485146885,"size":1,"metadata":{"id":"jsonify@0.0.0","manifest":{"name":"jsonify","version":"0.0.0","dependencies":{},"optionalDependencies":{},"devDependencies":{"tap":"0.4.x","garbage":"0.0.x"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"https://github.com/substack/jsonify/tarball/master","_integrity":"sha512-LjZI+XaDCuq6BySzgqCaamc239THVZY6T0Yvlj+eyyEcIljwB2bcOqaGZPZtOgHLJ4myz2FK6yktvrSv4LIGzA==","_shasum":"ee568a2b1efaeb95bec4d9e59e5301fc63339866","_shrinkwrap":null,"bin":null,"_id":"jsonify@0.0.0"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/24/d3/c242b6ced69f0f27995a54c44c2c4ef172a4c3a0e7c91e0b8da7b9c418f8 b/deps/npm/test/npm_cache/_cacache/index-v5/24/d3/c242b6ced69f0f27995a54c44c2c4ef172a4c3a0e7c91e0b8da7b9c418f8 deleted file mode 100644 index f28910aab1e348..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/24/d3/c242b6ced69f0f27995a54c44c2c4ef172a4c3a0e7c91e0b8da7b9c418f8 +++ /dev/null @@ -1,3 +0,0 @@ - -fe1b6996003d74fda794d1572ae3e1d9f91e3de0 {"key":"pacote:file-manifest:/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/test-whoops-1.0.0.tgz:sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833112248,"size":1,"metadata":{"id":"@test/whoops@1.0.0","manifest":{"name":"@test/whoops","version":"1.0.0","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/test-whoops-1.0.0.tgz","_integrity":"sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw==","_shasum":"fdccb81c7f8261e7ad23f8160293393b19c117a9","_shrinkwrap":null,"bin":null,"_id":"@test/whoops@1.0.0"},"type":"finalized-manifest"}} -54837347024bdf594dbd5f7d2e0d9a9d26dfa5ec {"key":"pacote:file-manifest:/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/test-whoops-1.0.0.tgz:sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833333874,"size":1,"metadata":{"id":"@test/whoops@1.0.0","manifest":{"name":"@test/whoops","version":"1.0.0","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/test-whoops-1.0.0.tgz","_integrity":"sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw==","_shasum":"fdccb81c7f8261e7ad23f8160293393b19c117a9","_shrinkwrap":null,"bin":null,"_id":"@test/whoops@1.0.0"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/29/89/d8ec4f471f8b2f7110ade5b17475bf87d30ec77a66a68a3481fbcb2299ca b/deps/npm/test/npm_cache/_cacache/index-v5/29/89/d8ec4f471f8b2f7110ade5b17475bf87d30ec77a66a68a3481fbcb2299ca deleted file mode 100644 index 5b8d6a8f1dfc08..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/29/89/d8ec4f471f8b2f7110ade5b17475bf87d30ec77a66a68a3481fbcb2299ca +++ /dev/null @@ -1,3 +0,0 @@ - -920d3ce83fe8dea3041db1157d39e26cd0490eef {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz","integrity":"sha1-Rcijm2JsH4P4uPUwB8L2DrmO7p0=","time":1547833047698,"size":372,"metadata":{"url":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["e139e9c1a8b0ded0"],"referer":["bugs test-repo-url-http"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:test-repo-url-http@http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:27 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -94ed1e8729c493f16b28a16b058bf28e58029638 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz","integrity":"sha1-Rcijm2JsH4P4uPUwB8L2DrmO7p0=","time":1547833264863,"size":372,"metadata":{"url":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["11f83a1c99f277cb"],"referer":["bugs test-repo-url-http"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:test-repo-url-http@http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:04 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/2d/22/47328dfeb3a9f00c15c20ec3ebdaa0e12382c5c6badfa30fb7b376f6a580 b/deps/npm/test/npm_cache/_cacache/index-v5/2d/22/47328dfeb3a9f00c15c20ec3ebdaa0e12382c5c6badfa30fb7b376f6a580 deleted file mode 100644 index 4882c2fc4e14dc..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/2d/22/47328dfeb3a9f00c15c20ec3ebdaa0e12382c5c6badfa30fb7b376f6a580 +++ /dev/null @@ -1,2 +0,0 @@ - -47afbed34e3296c3fb1c2c3c31dd4f6e008a611d {"key":"pacote:packed-dir:git://github.com/isaacs/node-glob.git#67bda227fd7a559cca5620307c7d30a6732a792f","integrity":"sha512-nVsV0K11/FE/SjJ7XkQYA90iDt60+WYORU/p0mO1Q7o1bHEzCllk+GTRwkqtoWvqAo60AQZ2KxQrMNRIzcCFkw==","time":1544485144332,"size":27629} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/2f/ee/99c47a7b4b5d997bbdb8d0095b14f1940fbdde0e7515bc19ccfcfbccec49 b/deps/npm/test/npm_cache/_cacache/index-v5/2f/ee/99c47a7b4b5d997bbdb8d0095b14f1940fbdde0e7515bc19ccfcfbccec49 deleted file mode 100644 index 5fc55edfd6c6e9..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/2f/ee/99c47a7b4b5d997bbdb8d0095b14f1940fbdde0e7515bc19ccfcfbccec49 +++ /dev/null @@ -1,3 +0,0 @@ - -821d0bccf89608b476114b6cf34478e48ed64c01 {"key":"pacote:tag-manifest:http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz:sha1-gvPMuhGRTciLyxhe47GzO1ZCcrw=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833046970,"size":1,"metadata":{"id":"npm-test-peer-deps@0.0.0","manifest":{"author":{"name":"Domenic Denicola"},"name":"npm-test-peer-deps","version":"0.0.0","peerDependencies":{"request":"0.9.x"},"dependencies":{"underscore":"1.3.1"},"_id":"npm-test-peer-deps@0.0.0","dist":{"shasum":"82f3ccba11914dc88bcb185ee3b1b33b564272bc","tarball":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.25","_npmUser":{"name":"domenic","email":"domenic@domenicdenicola.com"},"maintainers":[{"name":"domenic","email":"domenic@domenicdenicola.com"}],"directories":{},"_integrity":"sha1-gvPMuhGRTciLyxhe47GzO1ZCcrw=","_shasum":"82f3ccba11914dc88bcb185ee3b1b33b564272bc","_resolved":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz","optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"deprecated":false,"_shrinkwrap":null,"bin":null},"type":"finalized-manifest"}} -dc64a2c024b2011cd817a03f225f2ce1fd5bc3c2 {"key":"pacote:tag-manifest:http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz:sha1-gvPMuhGRTciLyxhe47GzO1ZCcrw=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833264159,"size":1,"metadata":{"id":"npm-test-peer-deps@0.0.0","manifest":{"author":{"name":"Domenic Denicola"},"name":"npm-test-peer-deps","version":"0.0.0","peerDependencies":{"request":"0.9.x"},"dependencies":{"underscore":"1.3.1"},"_id":"npm-test-peer-deps@0.0.0","dist":{"shasum":"82f3ccba11914dc88bcb185ee3b1b33b564272bc","tarball":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz"},"_from":".","_npmVersion":"1.3.25","_npmUser":{"name":"domenic","email":"domenic@domenicdenicola.com"},"maintainers":[{"name":"domenic","email":"domenic@domenicdenicola.com"}],"directories":{},"_integrity":"sha1-gvPMuhGRTciLyxhe47GzO1ZCcrw=","_shasum":"82f3ccba11914dc88bcb185ee3b1b33b564272bc","_resolved":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz","optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"deprecated":false,"_shrinkwrap":null,"bin":null},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/32/2d/90e41f3ad9eeece7d8bafb5672197db1ee77ca9aa734a3e77692efcf7716 b/deps/npm/test/npm_cache/_cacache/index-v5/32/2d/90e41f3ad9eeece7d8bafb5672197db1ee77ca9aa734a3e77692efcf7716 deleted file mode 100644 index b7a52d77b40f60..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/32/2d/90e41f3ad9eeece7d8bafb5672197db1ee77ca9aa734a3e77692efcf7716 +++ /dev/null @@ -1,2 +0,0 @@ - -9c30652272faf34fb4c4f517d0252e59c247af3e {"key":"pacote:range-manifest:http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz:sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073434,"size":1,"metadata":{"id":"wordwrap@0.0.2","manifest":{"name":"wordwrap","version":"0.0.2","engines":{"node":">=0.4.0"},"dependencies":{},"optionalDependencies":{},"devDependencies":{"expresso":"=0.7.x"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz","_integrity":"sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=","_shasum":"b79669bb42ecb409f83d583cad52ca17eaa1643f","_shrinkwrap":null,"bin":null,"_id":"wordwrap@0.0.2"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/34/f7/495a783848aed5199e0583f72c91d67d20fa9f5f5604755719bc421195dd b/deps/npm/test/npm_cache/_cacache/index-v5/34/f7/495a783848aed5199e0583f72c91d67d20fa9f5f5604755719bc421195dd deleted file mode 100644 index 1189abdea29efc..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/34/f7/495a783848aed5199e0583f72c91d67d20fa9f5f5604755719bc421195dd +++ /dev/null @@ -1,3 +0,0 @@ - -ff2ce690683c79e0df6daf181cfe0543239d9b0b {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fanother/access","integrity":null,"time":1547832986290} -e053044487b8a4c73b139c9f3441d9ed6d646135 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fanother/access","integrity":null,"time":1547833210590} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/35/d4/4f8776a16f1d67cec7136a104fc757d4d7719d47a6b5d71c1b3075cc1b69 b/deps/npm/test/npm_cache/_cacache/index-v5/35/d4/4f8776a16f1d67cec7136a104fc757d4d7719d47a6b5d71c1b3075cc1b69 deleted file mode 100644 index a000ea1d271756..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/35/d4/4f8776a16f1d67cec7136a104fc757d4d7719d47a6b5d71c1b3075cc1b69 +++ /dev/null @@ -1,3 +0,0 @@ - -f9ae39b39ffa062b7f3c79830bf3f5666ced8f6a {"key":"make-fetch-happen:request-cache:http://localhost:1337/registry/add-named-update-protocol-port","integrity":"sha512-3GiCmFRKOGfPOZsEzGDDjGUZ2uYJbFuhkXu3ikibqp1rrTlknhbgA2fnzQKsFLp81k86zVbiG5hGMPgjrZyWYw==","time":1547832996619,"size":301,"metadata":{"url":"http://localhost:1337/registry/add-named-update-protocol-port","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["2b49fe996267b15d"],"referer":["cache add add-named-update-protocol-port@0.0.0"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:add-named-update-protocol-port"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:36 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -d7c26b3ee71fee8c9c16ec6525b081a4972ee922 {"key":"make-fetch-happen:request-cache:http://localhost:1337/registry/add-named-update-protocol-port","integrity":"sha512-3GiCmFRKOGfPOZsEzGDDjGUZ2uYJbFuhkXu3ikibqp1rrTlknhbgA2fnzQKsFLp81k86zVbiG5hGMPgjrZyWYw==","time":1547833219206,"size":301,"metadata":{"url":"http://localhost:1337/registry/add-named-update-protocol-port","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["302f70336b58dfc7"],"referer":["cache add add-named-update-protocol-port@0.0.0"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:add-named-update-protocol-port"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:19 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/4b/fa/51a839f22632c42d66d63607a55048be00c0a16bcf8dc96b9aadb8511570 b/deps/npm/test/npm_cache/_cacache/index-v5/4b/fa/51a839f22632c42d66d63607a55048be00c0a16bcf8dc96b9aadb8511570 deleted file mode 100644 index b01ea3b8b46f58..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/4b/fa/51a839f22632c42d66d63607a55048be00c0a16bcf8dc96b9aadb8511570 +++ /dev/null @@ -1,5 +0,0 @@ - -6ed5c7aff973ebeb3d108482dfd58982c46c2e1c {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fpkg/access","integrity":null,"time":1547832983691} -8b3bb3243ae51532a265f0f56f77a2b120c6cac5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fpkg/access","integrity":null,"time":1547832985654} -a76a484674e2e4cb0185c9c622f4894dcabc0fc7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fpkg/access","integrity":null,"time":1547833208503} -417ea4dabdd7cadf16c11c19d3a321c54eb68f21 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fpkg/access","integrity":null,"time":1547833210073} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/4c/94/5f2a94150990b1ee4ecadd4897498d69b3141e0d72f1ccc1f3bd703a4c75 b/deps/npm/test/npm_cache/_cacache/index-v5/4c/94/5f2a94150990b1ee4ecadd4897498d69b3141e0d72f1ccc1f3bd703a4c75 deleted file mode 100644 index 8d1978120a29ff..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/4c/94/5f2a94150990b1ee4ecadd4897498d69b3141e0d72f1ccc1f3bd703a4c75 +++ /dev/null @@ -1,3 +0,0 @@ - -67a9de7796100032dc06f94a7f969dc9dbf6b66f {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz","integrity":"sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=","time":1547833073426,"size":13772,"metadata":{"url":"http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:wordwrap@http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -7b4401744a73e7d9d61a3cef29d9548dd30dff92 {"key":"make-fetch-happen:request-cache:http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz","integrity":"sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=","time":1547833093386,"size":13772,"metadata":{"url":"http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:wordwrap@http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/4c/9f/92b75e7965b407ec25a6d5770af0d18432dbca32e8a2a9958dd413e3b776 b/deps/npm/test/npm_cache/_cacache/index-v5/4c/9f/92b75e7965b407ec25a6d5770af0d18432dbca32e8a2a9958dd413e3b776 deleted file mode 100644 index 3fb97608f5172b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/4c/9f/92b75e7965b407ec25a6d5770af0d18432dbca32e8a2a9958dd413e3b776 +++ /dev/null @@ -1,5 +0,0 @@ - -65e2bd8d36bc6ef8dce26de8c55e0a213bab8d5a {"key":"make-fetch-happen:request-cache:http://localhost:1337/clean","integrity":"sha512-eexGJb7BoTqu/c1OfPGPHFV1h52A6L26BjzJYslZxIUmoMHJ43Zsleyeoc8QzZVJaPO/7BNvDTqocAnbBc9GZg==","time":1547833073341,"size":29623,"metadata":{"url":"http://localhost:1337/clean","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:clean"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -6a207e4d350e6a798c36a4e81135a280f6ba65e9 {"key":"make-fetch-happen:request-cache:http://localhost:1337/clean","integrity":"sha512-eexGJb7BoTqu/c1OfPGPHFV1h52A6L26BjzJYslZxIUmoMHJ43Zsleyeoc8QzZVJaPO/7BNvDTqocAnbBc9GZg==","time":1547833093274,"size":29623,"metadata":{"url":"http://localhost:1337/clean","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:clean"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -1dd2ce72056652f48dc6931ea01fab72e888a342 {"key":"make-fetch-happen:request-cache:http://localhost:1337/clean","integrity":"sha512-eexGJb7BoTqu/c1OfPGPHFV1h52A6L26BjzJYslZxIUmoMHJ43Zsleyeoc8QzZVJaPO/7BNvDTqocAnbBc9GZg==","time":1547833294122,"size":29623,"metadata":{"url":"http://localhost:1337/clean","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:clean"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -091b191fc26665b124a1ebd27d91f5f5a70e18a9 {"key":"make-fetch-happen:request-cache:http://localhost:1337/clean","integrity":"sha512-eexGJb7BoTqu/c1OfPGPHFV1h52A6L26BjzJYslZxIUmoMHJ43Zsleyeoc8QzZVJaPO/7BNvDTqocAnbBc9GZg==","time":1547833314380,"size":29623,"metadata":{"url":"http://localhost:1337/clean","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ce2c0b941f6a62b8"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:clean"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:54 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/4d/ed/ee7db809a7dfddfb87fc4055ac06876c63165a517fc12011046fc2cc4a9f b/deps/npm/test/npm_cache/_cacache/index-v5/4d/ed/ee7db809a7dfddfb87fc4055ac06876c63165a517fc12011046fc2cc4a9f deleted file mode 100644 index 9d55f4bb97315f..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/4d/ed/ee7db809a7dfddfb87fc4055ac06876c63165a517fc12011046fc2cc4a9f +++ /dev/null @@ -1,3 +0,0 @@ - -f907d57bfb7ff4880fc048a1703c6bee25d11de6 {"key":"make-fetch-happen:request-cache:http://localhost:1337/registry/add-named-update-protocol-porti","integrity":"sha512-iEmRT8aS3FRB/sgjGjPK7JhAm21SL6Rr7UpnMSeHYiS5y4vDXlHiUciol6HXHdnX9GtiF+yO8w7E2D9LmkMJjQ==","time":1547832997182,"size":304,"metadata":{"url":"http://localhost:1337/registry/add-named-update-protocol-porti","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["8cb41ddc499c27b6"],"referer":["cache add add-named-update-protocol-porti@0.0.0"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:add-named-update-protocol-porti"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:37 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -27ddad6023e6e5949796edad34e03de77ff584e4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/registry/add-named-update-protocol-porti","integrity":"sha512-iEmRT8aS3FRB/sgjGjPK7JhAm21SL6Rr7UpnMSeHYiS5y4vDXlHiUciol6HXHdnX9GtiF+yO8w7E2D9LmkMJjQ==","time":1547833219768,"size":304,"metadata":{"url":"http://localhost:1337/registry/add-named-update-protocol-porti","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["87b598eff1cdd205"],"referer":["cache add add-named-update-protocol-porti@0.0.0"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:add-named-update-protocol-porti"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:19 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/4e/ce/f2fe3deddf79eb0c8c03828e46b026559f16671fbad7c36d5e0a1bd28a7f b/deps/npm/test/npm_cache/_cacache/index-v5/4e/ce/f2fe3deddf79eb0c8c03828e46b026559f16671fbad7c36d5e0a1bd28a7f deleted file mode 100644 index 46ff239a9a061c..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/4e/ce/f2fe3deddf79eb0c8c03828e46b026559f16671fbad7c36d5e0a1bd28a7f +++ /dev/null @@ -1,13 +0,0 @@ - -615a02b41b714e7944da18b9c8a4a62463b823f9 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":"sha512-WmQCdLXP3E4GNb3SYsWDDef6+cAtPF72amCsWO0g/LMk+F1+97boUhDYIJEiCWGRiT9mLbM9BWmDcwU4i601vw==","time":1547833095212,"size":405,"metadata":{"url":"http://localhost:1337/cond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["02b311f2b8b360bb"],"referer":["deprecate cond@0.0.1 make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:15 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -a876e349124d09b706740a5fc1a495f5bf0c32a2 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":null,"time":1547833095221} -74a45b087e8945624ff7f12c34c21da8e82210a5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":"sha512-WmQCdLXP3E4GNb3SYsWDDef6+cAtPF72amCsWO0g/LMk+F1+97boUhDYIJEiCWGRiT9mLbM9BWmDcwU4i601vw==","time":1547833096353,"size":405,"metadata":{"url":"http://localhost:1337/cond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["2dc1d8ce7042f86e"],"referer":["deprecate cond@<0.0.2 make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:16 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -c0f7a970f72991a541e6e96b934f43f00a29b0e4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":null,"time":1547833096358} -ff945e0c64b571a8018b102bb1bf6e6a3814391d {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":"sha512-WmQCdLXP3E4GNb3SYsWDDef6+cAtPF72amCsWO0g/LMk+F1+97boUhDYIJEiCWGRiT9mLbM9BWmDcwU4i601vw==","time":1547833097537,"size":405,"metadata":{"url":"http://localhost:1337/cond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["8fcad2955426aecc"],"referer":["deprecate cond make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:17 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -a0bfcc705e18dcda52ad996ed6b93ee76b367dc3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":null,"time":1547833097544} -04c50a42efd378ebf125165e24d0a56eaae2f814 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":"sha512-WmQCdLXP3E4GNb3SYsWDDef6+cAtPF72amCsWO0g/LMk+F1+97boUhDYIJEiCWGRiT9mLbM9BWmDcwU4i601vw==","time":1547833316172,"size":405,"metadata":{"url":"http://localhost:1337/cond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0c1b36ee0c47d1ae"],"referer":["deprecate cond@0.0.1 make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:56 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -32965c869981124c26fcb3933106540045c69ae4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":null,"time":1547833316178} -591f02138e8b4dbb841c65796f6da7928c1ca821 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":"sha512-WmQCdLXP3E4GNb3SYsWDDef6+cAtPF72amCsWO0g/LMk+F1+97boUhDYIJEiCWGRiT9mLbM9BWmDcwU4i601vw==","time":1547833317223,"size":405,"metadata":{"url":"http://localhost:1337/cond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["83346960af9afefb"],"referer":["deprecate cond@<0.0.2 make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:57 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -1c56dcec89793dace00808ad01cfcfae3d49a8de {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":null,"time":1547833317228} -d66e3a04880e9d955736a5130058591b4c7acab4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":"sha512-WmQCdLXP3E4GNb3SYsWDDef6+cAtPF72amCsWO0g/LMk+F1+97boUhDYIJEiCWGRiT9mLbM9BWmDcwU4i601vw==","time":1547833318278,"size":405,"metadata":{"url":"http://localhost:1337/cond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["74d74662562f8e40"],"referer":["deprecate cond make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:58 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -5f2eee7d6a675de32334da3735a9cd5918686f89 {"key":"make-fetch-happen:request-cache:http://localhost:1337/cond","integrity":null,"time":1547833318286} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/52/26/16d800e2651582fd96b18d4ff02085c52be8b7b4b739d0da243122208329 b/deps/npm/test/npm_cache/_cacache/index-v5/52/26/16d800e2651582fd96b18d4ff02085c52be8b7b4b739d0da243122208329 deleted file mode 100644 index 015dce01067b88..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/52/26/16d800e2651582fd96b18d4ff02085c52be8b7b4b739d0da243122208329 +++ /dev/null @@ -1,3 +0,0 @@ - -714a9469ff5844eb797bf3506abc20d4d452dec6 {"key":"make-fetch-happen:request-cache:http://localhost:1337/underscore","integrity":"sha512-Fa00hT8RSVJtl/CLUMOqqeyEAxp+v7e7WePyMX1cMGKGUoy5G/U9xZaALTFnYuW6RkF2SyaAlFuj9iDTz3mKBQ==","time":1547833045332,"size":40940,"metadata":{"url":"http://localhost:1337/underscore","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["4fa97a596a50fc65"],"referer":["bugs underscore"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:underscore"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:25 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -35349b250c2ac115dcd5abcd4ebba1151a71f888 {"key":"make-fetch-happen:request-cache:http://localhost:1337/underscore","integrity":"sha512-Fa00hT8RSVJtl/CLUMOqqeyEAxp+v7e7WePyMX1cMGKGUoy5G/U9xZaALTFnYuW6RkF2SyaAlFuj9iDTz3mKBQ==","time":1547833262745,"size":40940,"metadata":{"url":"http://localhost:1337/underscore","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["20080b2063fb2e2a"],"referer":["bugs underscore"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:underscore"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:02 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/53/b9/a3f54151106c138d93ef4e411f13d971ff84939f5a96a1d5826244927399 b/deps/npm/test/npm_cache/_cacache/index-v5/53/b9/a3f54151106c138d93ef4e411f13d971ff84939f5a96a1d5826244927399 deleted file mode 100644 index f3558b0d7a772b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/53/b9/a3f54151106c138d93ef4e411f13d971ff84939f5a96a1d5826244927399 +++ /dev/null @@ -1,3 +0,0 @@ - -8c49400cedb617b1a7a9dd9f93635b4f7546dd84 {"key":"pacote:tag-manifest:http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz:sha1-Rcijm2JsH4P4uPUwB8L2DrmO7p0=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833047706,"size":1,"metadata":{"id":"test-repo-url-http@0.0.1","manifest":{"name":"test-repo-url-http","version":"0.0.1","description":"Test repo with non-github http repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"http://gitlab.com/evanlucas/test-repo-url-http.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-http@0.0.1","dist":{"shasum":"45c8a39b626c1f83f8b8f53007c2f60eb98eee9d","tarball":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{},"_integrity":"sha1-Rcijm2JsH4P4uPUwB8L2DrmO7p0=","_shasum":"45c8a39b626c1f83f8b8f53007c2f60eb98eee9d","_resolved":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null},"type":"finalized-manifest"}} -4fb5740938b9bf3eef72c65b21823d14dd9c2367 {"key":"pacote:tag-manifest:http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz:sha1-Rcijm2JsH4P4uPUwB8L2DrmO7p0=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833264868,"size":1,"metadata":{"id":"test-repo-url-http@0.0.1","manifest":{"name":"test-repo-url-http","version":"0.0.1","description":"Test repo with non-github http repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"http://gitlab.com/evanlucas/test-repo-url-http.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-http@0.0.1","dist":{"shasum":"45c8a39b626c1f83f8b8f53007c2f60eb98eee9d","tarball":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{},"_integrity":"sha1-Rcijm2JsH4P4uPUwB8L2DrmO7p0=","_shasum":"45c8a39b626c1f83f8b8f53007c2f60eb98eee9d","_resolved":"http://localhost:1337/test-repo-url-http/-/test-repo-url-http-0.0.1.tgz","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/54/c7/bd7b2edde99a50402386dc89dd492bc0e1c9c57727fbf97333ab23450cc6 b/deps/npm/test/npm_cache/_cacache/index-v5/54/c7/bd7b2edde99a50402386dc89dd492bc0e1c9c57727fbf97333ab23450cc6 deleted file mode 100644 index 43146fe8ef9cab..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/54/c7/bd7b2edde99a50402386dc89dd492bc0e1c9c57727fbf97333ab23450cc6 +++ /dev/null @@ -1,5 +0,0 @@ - -b40a8c13bae09feb6652226e83377e1ecd65aaac {"key":"make-fetch-happen:request-cache:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","integrity":"sha1-KOuEepSeceuQQf1lZ6Nsms/PK+0=","time":1547833041014,"size":55415,"metadata":{"url":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["66dfca64d34790d3"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:undefined@http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz"]},"resHeaders":{"date":["Fri, 18 Jan 2019 17:37:20 GMT"],"connection":["keep-alive"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -1e3f986dad6c99953d81d83d7938b389aa8e1793 {"key":"make-fetch-happen:request-cache:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","integrity":"sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","time":1547833041061,"size":55415,"metadata":{"url":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["66dfca64d34790d3"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:undefined@http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz"]},"resHeaders":{"date":["Fri, 18 Jan 2019 17:37:21 GMT"],"connection":["keep-alive"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -dd8f9ec163a26a6724431b7c5b5b26ffa874ebfb {"key":"make-fetch-happen:request-cache:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","integrity":"sha1-KOuEepSeceuQQf1lZ6Nsms/PK+0=","time":1547833259078,"size":55415,"metadata":{"url":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["971c11884a599dc1"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:undefined@http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz"]},"resHeaders":{"date":["Fri, 18 Jan 2019 17:40:59 GMT"],"connection":["keep-alive"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -3eb068393054e489ac2faa2394c38673a8d26073 {"key":"make-fetch-happen:request-cache:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","integrity":"sha1-KOuEepSeceuQQf1lZ6Nsms/PK+0=","time":1548718095636,"size":55415,"metadata":{"url":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.7.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["1ff276f8555c3331"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:undefined@http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz"]},"resHeaders":{"date":["Mon, 28 Jan 2019 23:28:15 GMT"],"connection":["keep-alive"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/55/94/6aae1bf2eae7384bbf56a2610deec22135ab5102d53f8dc5bb1359585a5c b/deps/npm/test/npm_cache/_cacache/index-v5/55/94/6aae1bf2eae7384bbf56a2610deec22135ab5102d53f8dc5bb1359585a5c deleted file mode 100644 index eca0f3535f784a..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/55/94/6aae1bf2eae7384bbf56a2610deec22135ab5102d53f8dc5bb1359585a5c +++ /dev/null @@ -1,5 +0,0 @@ - -a2b116d83c5946d7ea2926dc2f964775ad99c33e {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/myorg/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547832991512,"size":39,"metadata":{"url":"http://localhost:1337/-/user/myorg/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["2942fcbe6b15bc39"],"referer":["access ls-packages myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:31 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -ac58205d3eccdc2ae3c12d4fe9a36dfdbb773a1c {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/myorg/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547832992340,"size":39,"metadata":{"url":"http://localhost:1337/-/user/myorg/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["932157f8d5b366bf"],"referer":["access ls-packages myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:32 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -9912b7634d0dbaf0ca67a4b70d5f39646fb9dc6d {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/myorg/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547833215173,"size":39,"metadata":{"url":"http://localhost:1337/-/user/myorg/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["affe1fe251e4fee3"],"referer":["access ls-packages myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:15 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -ccc3fa29db9b00c42232defb85de668c64b7e566 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/myorg/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547833215718,"size":39,"metadata":{"url":"http://localhost:1337/-/user/myorg/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["d0ef5e47830054c8"],"referer":["access ls-packages myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:15 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/56/a3/d63cf88aff86698120f294331ca4785e2ef41b621d746ef1047eaf34e122 b/deps/npm/test/npm_cache/_cacache/index-v5/56/a3/d63cf88aff86698120f294331ca4785e2ef41b621d746ef1047eaf34e122 deleted file mode 100644 index 323aba91b031b4..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/56/a3/d63cf88aff86698120f294331ca4785e2ef41b621d746ef1047eaf34e122 +++ /dev/null @@ -1,3 +0,0 @@ - -b49db14b91a87711dc8285af855701bdd5ed7d31 {"key":"pacote:tarball:file:/Users/zkat/Documents/code/work/npm/test/tap/bundled-dependencies-nonarray/a-bundled-dep-2.0.0.tgz","integrity":"sha512-qoZzDskyzbDwXbLzXh5Fb8mG2xn4P7P4FApYUUEfvPRJZjKEeasoDMgK4tdAzcAfj4gINqAMZnQ1ZazS6DUueg==","time":1547833057455,"size":151} -a78edf067966dfa38715a7036b298d44373f88c2 {"key":"pacote:tarball:file:/Users/zkat/Documents/code/work/npm/test/tap/bundled-dependencies-nonarray/a-bundled-dep-2.0.0.tgz","integrity":"sha512-qoZzDskyzbDwXbLzXh5Fb8mG2xn4P7P4FApYUUEfvPRJZjKEeasoDMgK4tdAzcAfj4gINqAMZnQ1ZazS6DUueg==","time":1547833274122,"size":151} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/58/cd/24c1bfea16737029dabb2e41b34b7a019b657b6db6c972a30870f3318344 b/deps/npm/test/npm_cache/_cacache/index-v5/58/cd/24c1bfea16737029dabb2e41b34b7a019b657b6db6c972a30870f3318344 deleted file mode 100644 index 9195ed434b7115..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/58/cd/24c1bfea16737029dabb2e41b34b7a019b657b6db6c972a30870f3318344 +++ /dev/null @@ -1,4 +0,0 @@ - -45cef68fe8e13d96253fa955bb0343077d163666 {"key":"pacote:packed-dir:git+file:///Users/zkat/Documents/code/work/npm/test/tap/add-remote-git-file/child.git#244a79cc7d51cd727460a91fea694a700a414510","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547832998376,"size":143} -53a8de5d4a72e643b5d250ff17f81dbc78704e42 {"key":"pacote:packed-dir:git+file:///Users/zkat/Documents/code/work/npm/test/tap/add-remote-git-file/child.git#244a79cc7d51cd727460a91fea694a700a414510","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547832998710,"size":143} -178404c25dd4361196f30fd3a098349fe20d9e26 {"key":"pacote:packed-dir:git+file:///Users/zkat/Documents/code/work/npm/test/tap/add-remote-git-file/child.git#244a79cc7d51cd727460a91fea694a700a414510","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547832999024,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/58/fc/50f89b2f236774e4b33eda6968cde18196e800153a6162d5f73df18895fa b/deps/npm/test/npm_cache/_cacache/index-v5/58/fc/50f89b2f236774e4b33eda6968cde18196e800153a6162d5f73df18895fa deleted file mode 100644 index 9893a7fe4d8827..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/58/fc/50f89b2f236774e4b33eda6968cde18196e800153a6162d5f73df18895fa +++ /dev/null @@ -1,3 +0,0 @@ - -c46aa948cd5c228a9e7222006ced1fb23b531de9 {"key":"pacote:tag-manifest:http://localhost:1337/underscore/-/underscore-1.5.1.tgz:sha1-0r3oF9F2/63olKtxRY5oKhS4bck=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833045360,"size":1,"metadata":{"id":"underscore@1.5.1","manifest":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/jashkenas/underscore.git"},"main":"underscore.js","version":"1.5.1","devDependencies":{"phantomjs":"1.9.0-1"},"scripts":{"test":"phantomjs test/vendor/runner.js test/index.html?noglobals=true"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/jashkenas/underscore/issues"},"_id":"underscore@1.5.1","dist":{"shasum":"d2bde817d176ffade894ab71458e682a14b86dc9","tarball":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz"},"_from":".","_npmVersion":"1.2.24","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{},"_integrity":"sha1-0r3oF9F2/63olKtxRY5oKhS4bck=","_shasum":"d2bde817d176ffade894ab71458e682a14b86dc9","_resolved":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz","dependencies":{},"optionalDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null},"type":"finalized-manifest"}} -eaffa59aa3c09ecc9f1ca6b49e7b24b33cf7c78b {"key":"pacote:tag-manifest:http://localhost:1337/underscore/-/underscore-1.5.1.tgz:sha1-0r3oF9F2/63olKtxRY5oKhS4bck=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833262771,"size":1,"metadata":{"id":"underscore@1.5.1","manifest":{"name":"underscore","description":"JavaScript's functional programming helper library.","homepage":"http://underscorejs.org","keywords":["util","functional","server","client","browser"],"author":{"name":"Jeremy Ashkenas","email":"jeremy@documentcloud.org"},"repository":{"type":"git","url":"git://github.com/jashkenas/underscore.git"},"main":"underscore.js","version":"1.5.1","devDependencies":{"phantomjs":"1.9.0-1"},"scripts":{"test":"phantomjs test/vendor/runner.js test/index.html?noglobals=true"},"license":"MIT","readmeFilename":"README.md","bugs":{"url":"https://github.com/jashkenas/underscore/issues"},"_id":"underscore@1.5.1","dist":{"shasum":"d2bde817d176ffade894ab71458e682a14b86dc9","tarball":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz"},"_from":".","_npmVersion":"1.2.24","_npmUser":{"name":"jashkenas","email":"jashkenas@gmail.com"},"maintainers":[{"name":"jashkenas","email":"jashkenas@gmail.com"}],"directories":{},"_integrity":"sha1-0r3oF9F2/63olKtxRY5oKhS4bck=","_shasum":"d2bde817d176ffade894ab71458e682a14b86dc9","_resolved":"http://localhost:1337/underscore/-/underscore-1.5.1.tgz","dependencies":{},"optionalDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/59/28/f3ffadce8db4fdb922343ee79cb0ab6d1b2f500885d3a7d93bbb4b24e711 b/deps/npm/test/npm_cache/_cacache/index-v5/59/28/f3ffadce8db4fdb922343ee79cb0ab6d1b2f500885d3a7d93bbb4b24e711 deleted file mode 100644 index 54c80e1accabdd..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/59/28/f3ffadce8db4fdb922343ee79cb0ab6d1b2f500885d3a7d93bbb4b24e711 +++ /dev/null @@ -1,5 +0,0 @@ - -e24beb7df1231c201db341f46ef1f8abb7752d80 {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/v1/login","integrity":null,"time":1547833010372} -ec88b3c9343b37dbf0c6c084946610bb7835774d {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/v1/login","integrity":null,"time":1547833011560} -318f091e15c70e6f29d4f0b1e663c2807a98524b {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/v1/login","integrity":null,"time":1547833230533} -ab714759e858dd475e99aa117986a040af48252a {"key":"make-fetch-happen:request-cache:http://localhost:1338/-/v1/login","integrity":null,"time":1547833231522} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/59/5d/20f410f92d365ec2b34c98856ae075582e2842b381809c76ffd12d24c450 b/deps/npm/test/npm_cache/_cacache/index-v5/59/5d/20f410f92d365ec2b34c98856ae075582e2842b381809c76ffd12d24c450 deleted file mode 100644 index 24d3ba16166a8f..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/59/5d/20f410f92d365ec2b34c98856ae075582e2842b381809c76ffd12d24c450 +++ /dev/null @@ -1,3 +0,0 @@ - -b845de941681d8414d49bfff3b681b1c11b1ecea {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-http","integrity":"sha512-NarqKzpZAiZMFGBhF7AOIEJa8UVgwyPpKFndhvTMVSFG/AZUijHqWbpu3VabakGiAXgfajmQAIL+qsgZI6EuVw==","time":1547833047675,"size":1106,"metadata":{"url":"http://localhost:1337/test-repo-url-http","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["e139e9c1a8b0ded0"],"referer":["bugs test-repo-url-http"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:test-repo-url-http"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:27 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -3b718ed3038b2e438372411659ab06e9dc7fd729 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-http","integrity":"sha512-NarqKzpZAiZMFGBhF7AOIEJa8UVgwyPpKFndhvTMVSFG/AZUijHqWbpu3VabakGiAXgfajmQAIL+qsgZI6EuVw==","time":1547833264847,"size":1106,"metadata":{"url":"http://localhost:1337/test-repo-url-http","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["11f83a1c99f277cb"],"referer":["bugs test-repo-url-http"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:test-repo-url-http"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:04 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/59/8d/bede4978235a53fade60aedbfe40200d189691fae9d90c694f654422738c b/deps/npm/test/npm_cache/_cacache/index-v5/59/8d/bede4978235a53fade60aedbfe40200d189691fae9d90c694f654422738c deleted file mode 100644 index 56a821f840d423..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/59/8d/bede4978235a53fade60aedbfe40200d189691fae9d90c694f654422738c +++ /dev/null @@ -1,5 +0,0 @@ - -fd58a22661b0d656d8825f579b89bef2f5b48d09 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fanother/collaborators","integrity":"sha512-MshpkrpGcUCKKSuz8vrkzRBBbc7baiFMFpBUr2vMeStupW9yRTMzV8xZ5PhGYDgGBLX/M4JYrUaXMhjYZHmbXg==","time":1547832993749,"size":51,"metadata":{"url":"http://localhost:1337/-/package/%40scoped%2Fanother/collaborators?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["b43ad0fff025ebdf"],"referer":["access ls-collaborators [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:33 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -32f2da9079c97ea55aeb6068c7b0c79ed44e80f5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fanother/collaborators","integrity":"sha512-MshpkrpGcUCKKSuz8vrkzRBBbc7baiFMFpBUr2vMeStupW9yRTMzV8xZ5PhGYDgGBLX/M4JYrUaXMhjYZHmbXg==","time":1547832994448,"size":51,"metadata":{"url":"http://localhost:1337/-/package/%40scoped%2Fanother/collaborators?format=cli&user=zkat","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["e9916eb63e660f41"],"referer":["access ls-collaborators [REDACTED] zkat"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -1e7f2c2ce972add20f15798aac735bf0138599fa {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fanother/collaborators","integrity":"sha512-MshpkrpGcUCKKSuz8vrkzRBBbc7baiFMFpBUr2vMeStupW9yRTMzV8xZ5PhGYDgGBLX/M4JYrUaXMhjYZHmbXg==","time":1547833216881,"size":51,"metadata":{"url":"http://localhost:1337/-/package/%40scoped%2Fanother/collaborators?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["bb5528fa4898a9ac"],"referer":["access ls-collaborators [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:16 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -217041f7ea524bd77d46ffa7dd880e59ca6fd581 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fanother/collaborators","integrity":"sha512-MshpkrpGcUCKKSuz8vrkzRBBbc7baiFMFpBUr2vMeStupW9yRTMzV8xZ5PhGYDgGBLX/M4JYrUaXMhjYZHmbXg==","time":1547833217426,"size":51,"metadata":{"url":"http://localhost:1337/-/package/%40scoped%2Fanother/collaborators?format=cli&user=zkat","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["3d89cf1663234567"],"referer":["access ls-collaborators [REDACTED] zkat"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:17 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/5e/04/1f94a3a706d4fc86a4e28c064e5182f98631dbc1156be71fa734471d1b31 b/deps/npm/test/npm_cache/_cacache/index-v5/5e/04/1f94a3a706d4fc86a4e28c064e5182f98631dbc1156be71fa734471d1b31 deleted file mode 100644 index cd0bc97f25c395..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/5e/04/1f94a3a706d4fc86a4e28c064e5182f98631dbc1156be71fa734471d1b31 +++ /dev/null @@ -1,2 +0,0 @@ - -65f5f4d2d391adc1d0ef104079246ecffd6736ae {"key":"pacote:packed-dir:git://localhost:1234/child.git#65974106d8883632964be1da34eec5e85beead3a","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833223116,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/5e/25/544dc931f40d3c9ec02d15a7754abc281ff227d3d4436045fc19bded3abb b/deps/npm/test/npm_cache/_cacache/index-v5/5e/25/544dc931f40d3c9ec02d15a7754abc281ff227d3d4436045fc19bded3abb deleted file mode 100644 index 7699b031bf977d..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/5e/25/544dc931f40d3c9ec02d15a7754abc281ff227d3d4436045fc19bded3abb +++ /dev/null @@ -1,9 +0,0 @@ - -86bc6c29fe0adc0d0b961ebe5427c43883b896eb {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":null,"time":1547832987480} -dca685c6d7d2f7e331ebee4e67f7da67dcf622d9 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":null,"time":1547832988107} -f471c72e7ec5b592533af18b692da5adf4cabf23 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":null,"time":1547832989180} -20e661a1569f9c61f06c1e753d344f7f42f4b89b {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547832990308,"size":39,"metadata":{"url":"http://localhost:1337/-/team/myorg/myteam/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["cb9055f60b0e88f3"],"referer":["access ls-packages myorg:myteam"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:30 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -1edea5ab5acb2a3ffa7ee166e99c5a397358ed9c {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":null,"time":1547833211568} -8e5098cf2f5a2fee34d396006ea2e083396608a6 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":null,"time":1547833212080} -4c7dd36cf3e359243712dc145cbb681d713107b8 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":null,"time":1547833213058} -4d9236c47a4c5b81a22542da0187135569b5f420 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/team/myorg/myteam/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547833214108,"size":39,"metadata":{"url":"http://localhost:1337/-/team/myorg/myteam/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["a18b23cf2e1926ff"],"referer":["access ls-packages myorg:myteam"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:14 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/5f/dc/61605b7783855ffa612d4a7dbf1f5e94e01b700897b6a69b1700a9575905 b/deps/npm/test/npm_cache/_cacache/index-v5/5f/dc/61605b7783855ffa612d4a7dbf1f5e94e01b700897b6a69b1700a9575905 deleted file mode 100644 index cd047f668856f9..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/5f/dc/61605b7783855ffa612d4a7dbf1f5e94e01b700897b6a69b1700a9575905 +++ /dev/null @@ -1,5 +0,0 @@ - -ee14f65558fa8113fa92a2d1b9e51cc2eaf22abf {"key":"pacote:packed-dir:git://localhost:1234/child.git#e7cca1aeb6415ec51e938d6d26555a0aaa1a1c06","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833340517,"size":143} -42f6e39777d09e9e13f131e1484fd57ab61ac607 {"key":"pacote:packed-dir:git://localhost:1234/child.git#e7cca1aeb6415ec51e938d6d26555a0aaa1a1c06","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833340825,"size":143} -72e90600f6ae2c7fab275f68a155e0ace2ec205b {"key":"pacote:packed-dir:git://localhost:1234/child.git#e7cca1aeb6415ec51e938d6d26555a0aaa1a1c06","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833342148,"size":143} -39bafee4dfbccc66040a143fc9579626be6b6314 {"key":"pacote:packed-dir:git://localhost:1234/child.git#e7cca1aeb6415ec51e938d6d26555a0aaa1a1c06","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833342505,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/60/3b/12bd2d0346c46847789322cfa6781845b7bac7c9830246b89d040ab35bfa b/deps/npm/test/npm_cache/_cacache/index-v5/60/3b/12bd2d0346c46847789322cfa6781845b7bac7c9830246b89d040ab35bfa deleted file mode 100644 index 31528ee49d2401..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/60/3b/12bd2d0346c46847789322cfa6781845b7bac7c9830246b89d040ab35bfa +++ /dev/null @@ -1,5 +0,0 @@ - -645ac7bc79519c12afa34011d80e6d62b9018851 {"key":"make-fetch-happen:request-cache:http://localhost:1337/@scope%2fcond","integrity":"sha512-9ZHafObjCNyqZyuGJcoEkcr+1nJs7aFv+83T92YeXrWxquK9mZYKyzovzGGhTt/3nde9YQsnxX/qiv9TXbxRnw==","time":1547833095792,"size":419,"metadata":{"url":"http://localhost:1337/@scope%2fcond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["d9d4d05d4ef8b79e"],"referer":["deprecate [REDACTED] make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:15 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -742ff4bf0e34e21880b460496a4c52a0468831ec {"key":"make-fetch-happen:request-cache:http://localhost:1337/@scope%2fcond","integrity":null,"time":1547833095797} -0988bf9b72e018d90be88c7672d0cc06729a67fe {"key":"make-fetch-happen:request-cache:http://localhost:1337/@scope%2fcond","integrity":"sha512-9ZHafObjCNyqZyuGJcoEkcr+1nJs7aFv+83T92YeXrWxquK9mZYKyzovzGGhTt/3nde9YQsnxX/qiv9TXbxRnw==","time":1547833316699,"size":419,"metadata":{"url":"http://localhost:1337/@scope%2fcond?write=true","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["b7783e04af895db5"],"referer":["deprecate [REDACTED] make it dead"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:56 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -9c4251659fab821f2e477bdcfad27bd11d8a52e8 {"key":"make-fetch-happen:request-cache:http://localhost:1337/@scope%2fcond","integrity":null,"time":1547833316704} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/61/41/453946604fdfa210a19eb38d07610e8ad7007ffc3f0f3b25da20b9af281d b/deps/npm/test/npm_cache/_cacache/index-v5/61/41/453946604fdfa210a19eb38d07610e8ad7007ffc3f0f3b25da20b9af281d deleted file mode 100644 index d0bfcbb8fec4cf..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/61/41/453946604fdfa210a19eb38d07610e8ad7007ffc3f0f3b25da20b9af281d +++ /dev/null @@ -1,2 +0,0 @@ - -6f6eea4cf6aed6824de9fbea12656c898d2d35df {"key":"pacote:git-manifest:git://github.com/isaacs/node-glob.git#67bda227fd7a559cca5620307c7d30a6732a792f","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1544485144332,"size":1,"metadata":{"id":"glob@3.1.5","manifest":{"name":"glob","version":"3.1.5","engines":{"node":"*"},"dependencies":{"minimatch":"0.2","graceful-fs":"~1.1.2","inherits":"1"},"optionalDependencies":{},"devDependencies":{"tap":"~0.2.3","mkdirp":"0","rimraf":"1"},"bundleDependencies":["minimatch"],"peerDependencies":{},"deprecated":false,"_resolved":"git://github.com/isaacs/node-glob.git#67bda227fd7a559cca5620307c7d30a6732a792f","_integrity":null,"_shasum":null,"_shrinkwrap":null,"bin":null,"_id":"glob@3.1.5"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/61/5a/c55f3eb9bc8031cdde40de9f1b4244b118714d5d156afca81319c4ed13be b/deps/npm/test/npm_cache/_cacache/index-v5/61/5a/c55f3eb9bc8031cdde40de9f1b4244b118714d5d156afca81319c4ed13be deleted file mode 100644 index df333419d2869c..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/61/5a/c55f3eb9bc8031cdde40de9f1b4244b118714d5d156afca81319c4ed13be +++ /dev/null @@ -1,3 +0,0 @@ - -7b8c6ab3bd4ba738ff44663616fde10740343f61 {"key":"pacote:tag-manifest:http://localhost:1337/optimist/-/optimist-0.6.0.tgz:sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833046158,"size":1,"metadata":{"id":"optimist@0.6.0","manifest":{"name":"optimist","version":"0.6.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2","minimist":"~0.0.1"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"git+ssh://git@github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/node-optimist/issues"},"_id":"optimist@0.6.0","dist":{"shasum":"69424826f3405f79f142e6fc3d9ae58d4dbb9200","tarball":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{},"_integrity":"sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","_shasum":"69424826f3405f79f142e6fc3d9ae58d4dbb9200","_resolved":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz","optionalDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null,"homepage":"https://github.com/substack/node-optimist#readme"},"type":"finalized-manifest"}} -1540775aafe8f75c1484a63b8ffa068eb2b5a0ec {"key":"pacote:tag-manifest:http://localhost:1337/optimist/-/optimist-0.6.0.tgz:sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833263489,"size":1,"metadata":{"id":"optimist@0.6.0","manifest":{"name":"optimist","version":"0.6.0","description":"Light-weight option parsing with an argv hash. No optstrings attached.","main":"./index.js","dependencies":{"wordwrap":"~0.0.2","minimist":"~0.0.1"},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"scripts":{"test":"tap ./test/*.js"},"repository":{"type":"git","url":"git+ssh://git@github.com/substack/node-optimist.git"},"keywords":["argument","args","option","parser","parsing","cli","command"],"author":{"name":"James Halliday","email":"mail@substack.net","url":"http://substack.net"},"license":"MIT/X11","engine":{"node":">=0.4"},"readmeFilename":"readme.markdown","bugs":{"url":"https://github.com/substack/node-optimist/issues"},"_id":"optimist@0.6.0","dist":{"shasum":"69424826f3405f79f142e6fc3d9ae58d4dbb9200","tarball":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz"},"_from":".","_npmVersion":"1.3.0","_npmUser":{"name":"substack","email":"mail@substack.net"},"maintainers":[{"name":"substack","email":"mail@substack.net"}],"directories":{},"_integrity":"sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","_shasum":"69424826f3405f79f142e6fc3d9ae58d4dbb9200","_resolved":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz","optionalDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null,"homepage":"https://github.com/substack/node-optimist#readme"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/64/32/09fccfaff76a1d99becccff3c9a0701f54d94e18ea19ff39aeb0a235d833 b/deps/npm/test/npm_cache/_cacache/index-v5/64/32/09fccfaff76a1d99becccff3c9a0701f54d94e18ea19ff39aeb0a235d833 deleted file mode 100644 index 38f2d89214afe0..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/64/32/09fccfaff76a1d99becccff3c9a0701f54d94e18ea19ff39aeb0a235d833 +++ /dev/null @@ -1,4 +0,0 @@ - -9be8adb9750c1eeda100a984b4c4ba96a2f823a8 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist/-/minimist-0.0.5.tgz","integrity":"sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","time":1547833073422,"size":5977,"metadata":{"url":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:minimist@http://localhost:1337/minimist/-/minimist-0.0.5.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -d93a297ad0b70077d34ae37fb280331124cbc8a3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist/-/minimist-0.0.5.tgz","integrity":"sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","time":1547833073424,"size":5977,"metadata":{"url":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:minimist@http://localhost:1337/minimist/-/minimist-0.0.5.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -3395cf4593e324ddc0551640bbbb08ee5ffffabe {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist/-/minimist-0.0.5.tgz","integrity":"sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","time":1547833093352,"size":5977,"metadata":{"url":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:minimist@http://localhost:1337/minimist/-/minimist-0.0.5.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/69/d2/6f1c982c4935f9c4a3b7181092bc6213963acf08be267556eed18c1ffcca b/deps/npm/test/npm_cache/_cacache/index-v5/69/d2/6f1c982c4935f9c4a3b7181092bc6213963acf08be267556eed18c1ffcca deleted file mode 100644 index a4a87f51079216..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/69/d2/6f1c982c4935f9c4a3b7181092bc6213963acf08be267556eed18c1ffcca +++ /dev/null @@ -1,4 +0,0 @@ - -96c65273a5ca1e21de2ce14438e44bb84f5d6cc9 {"key":"pacote:packed-dir:git+file:///Users/zkat/Documents/code/work/npm/test/tap/add-remote-git-file/child.git#0274b9beca938a08345b32346159404f4bfa11a6","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833220799,"size":143} -d9c9328edc8966662239117fb0fb28274ec71617 {"key":"pacote:packed-dir:git+file:///Users/zkat/Documents/code/work/npm/test/tap/add-remote-git-file/child.git#0274b9beca938a08345b32346159404f4bfa11a6","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833221078,"size":143} -61d7a4e8be9f49766fa77d1b77e50bb54f489957 {"key":"pacote:packed-dir:git+file:///Users/zkat/Documents/code/work/npm/test/tap/add-remote-git-file/child.git#0274b9beca938a08345b32346159404f4bfa11a6","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833221359,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/6b/27/515478d59b0ba28fcdaffd08317ec59071d08bdedd169a5f40c3b1fbb486 b/deps/npm/test/npm_cache/_cacache/index-v5/6b/27/515478d59b0ba28fcdaffd08317ec59071d08bdedd169a5f40c3b1fbb486 deleted file mode 100644 index 6a82a8316c4e01..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/6b/27/515478d59b0ba28fcdaffd08317ec59071d08bdedd169a5f40c3b1fbb486 +++ /dev/null @@ -1,11 +0,0 @@ - -c6f1e919801eb202acec5e74928931bfc0143d31 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833009006} -81cb054ce7796a70d8eaded1dde6972fe29b8ec4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833012642} -0ceb1208bc12f21a1d651c13bf6bcad472d4a6f1 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833013368} -dca7833202363dbffe65c00831707c67a235f345 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833014038} -6ad6d7cab6ef9889434ffecfdf63caeaf80e89bf {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833015068} -94adb474d9ee1b64473f30866b78ed74e5ea17dd {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833229637} -c6f5a95c906827450801dd0a40cbe608b21e4de4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833232597} -e8203d86ee56303325ad8e3120905eb6466b63ce {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833233300} -ab06232cf2023f61b7c15b9e13d167add7978000 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833233886} -a737b363f7c939ce9cf107f81561bec15e3da935 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/v1/login","integrity":null,"time":1547833234785} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/6f/d4/db68ad12df42b50094e39edbd34fc9713c6c020ca44a5a0b426ff048428d b/deps/npm/test/npm_cache/_cacache/index-v5/6f/d4/db68ad12df42b50094e39edbd34fc9713c6c020ca44a5a0b426ff048428d deleted file mode 100644 index ca32376a4c7305..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/6f/d4/db68ad12df42b50094e39edbd34fc9713c6c020ca44a5a0b426ff048428d +++ /dev/null @@ -1,2 +0,0 @@ - -962e11576a5c5c11ed45044a865b9b2ec3e5faa0 {"key":"pacote:range-manifest:http://localhost:1337/checker/-/checker-0.5.2.tgz:sha1-wno2vwDzp6PSSo+8eFPwb85OnIY=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073433,"size":1,"metadata":{"id":"checker@0.5.2","manifest":{"name":"checker","version":"0.5.2","dependencies":{"async":"~0.2.9"},"optionalDependencies":{},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/checker/-/checker-0.5.2.tgz","_integrity":"sha1-wno2vwDzp6PSSo+8eFPwb85OnIY=","_shasum":"c27a36bf00f3a7a3d24a8fbc7853f06fce4e9c86","_shrinkwrap":null,"bin":null,"_id":"checker@0.5.2"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/6f/ed/7f64617d06ba2145efd7117d088c8431300750cd1c934e227cfecffa01f5 b/deps/npm/test/npm_cache/_cacache/index-v5/6f/ed/7f64617d06ba2145efd7117d088c8431300750cd1c934e227cfecffa01f5 deleted file mode 100644 index 382f6a83f88ca1..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/6f/ed/7f64617d06ba2145efd7117d088c8431300750cd1c934e227cfecffa01f5 +++ /dev/null @@ -1,3 +0,0 @@ - -ab2809233a72dbf06c79d9a3b11458fc00e6c239 {"key":"make-fetch-happen:request-cache:http://localhost:1337/npm-test-peer-deps","integrity":"sha512-h0Rmy0bQOcyRK9PuKb+ul6x/TdQFHNJAwbJVSHR/nxxv3DoqnmWwWKso8KIrSq7lgHXgx3/QDd9lZTa8VDKQvg==","time":1547833046941,"size":880,"metadata":{"url":"http://localhost:1337/npm-test-peer-deps","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ece3b5a000cc3f02"],"referer":["bugs npm-test-peer-deps"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:npm-test-peer-deps"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:26 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -7ffd6078274f24f79c05c5de54520938b245d5ba {"key":"make-fetch-happen:request-cache:http://localhost:1337/npm-test-peer-deps","integrity":"sha512-h0Rmy0bQOcyRK9PuKb+ul6x/TdQFHNJAwbJVSHR/nxxv3DoqnmWwWKso8KIrSq7lgHXgx3/QDd9lZTa8VDKQvg==","time":1547833264138,"size":880,"metadata":{"url":"http://localhost:1337/npm-test-peer-deps","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["836b89e1cc0594ec"],"referer":["bugs npm-test-peer-deps"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:npm-test-peer-deps"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:04 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/77/52/b7394cb3a27a44448e3ac4d6834e73ca79c301c7108c94b0ba23ca97b71c b/deps/npm/test/npm_cache/_cacache/index-v5/77/52/b7394cb3a27a44448e3ac4d6834e73ca79c301c7108c94b0ba23ca97b71c deleted file mode 100644 index 8f51fb1caabba7..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/77/52/b7394cb3a27a44448e3ac4d6834e73ca79c301c7108c94b0ba23ca97b71c +++ /dev/null @@ -1,3 +0,0 @@ - -63aa615e0b263925ea3c7db1d18d2d7bbc2a6bf1 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks","integrity":"sha512-djlLN4USxovyCbQz4Gtx3yekX357418XSg+DvOd5lii3Tb6ZPBixwS6Jmh7XsVlHCzghgNHwpcQJisYJLNoajw==","time":1547833362916,"size":206,"metadata":{"url":"http://localhost:1337/-/npm/v1/hooks?package=%40npm%2Fhooks","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ae73fff74c690e4c"],"referer":["hook ls [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Fri, 18 Jan 2019 17:42:42 GMT"],"connection":["keep-alive"],"content-length":["206"],"x-fetch-attempts":["1"]}}} -4fc4f4c828362c6649a93b7a68fc379f2154d781 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks","integrity":"sha512-8+gtagt1rVzr0JF32T9XLb2Lh37p8VBbLoTgOBD6BBLkkEBgvn0qTfQiGxu5KITbiGgmv4zSZjRmei0QOpmUOA==","time":1547833363585,"size":52,"metadata":{"url":"http://localhost:1337/-/npm/v1/hooks?package=%40npm%2Fhooks","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["a9b65a6eaec4099e"],"referer":["hook ls [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Fri, 18 Jan 2019 17:42:43 GMT"],"connection":["keep-alive"],"content-length":["52"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/80/e4/0b59aa33a0f8b0f183dcbcdf1d48b9436619bf5b6fd10474ef86e41a8c6f b/deps/npm/test/npm_cache/_cacache/index-v5/80/e4/0b59aa33a0f8b0f183dcbcdf1d48b9436619bf5b6fd10474ef86e41a8c6f deleted file mode 100644 index 9accb7b18dba92..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/80/e4/0b59aa33a0f8b0f183dcbcdf1d48b9436619bf5b6fd10474ef86e41a8c6f +++ /dev/null @@ -1,3 +0,0 @@ - -e36fdaa97d141c124f0a70c1724c460e93c338f4 {"key":"pacote:tag-manifest:http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz:sha1-4FAI8/+Cs08XselyRUoKtwomnH0=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833048539,"size":1,"metadata":{"id":"test-repo-url-https@0.0.1","manifest":{"name":"test-repo-url-https","version":"0.0.1","description":"Test repo with non-github https repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://gitlab.com/evanlucas/test-repo-url-https.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-https@0.0.1","dist":{"shasum":"e05008f3ff82b34f17b1e972454a0ab70a269c7d","tarball":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{},"_integrity":"sha1-4FAI8/+Cs08XselyRUoKtwomnH0=","_shasum":"e05008f3ff82b34f17b1e972454a0ab70a269c7d","_resolved":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null,"bugs":{"url":"https://gitlab.com/evanlucas/test-repo-url-https/issues"},"homepage":"https://gitlab.com/evanlucas/test-repo-url-https#readme"},"type":"finalized-manifest"}} -47b05a03fabaabfdcb4df36e899d517be2ea80eb {"key":"pacote:tag-manifest:http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz:sha1-4FAI8/+Cs08XselyRUoKtwomnH0=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833265549,"size":1,"metadata":{"id":"test-repo-url-https@0.0.1","manifest":{"name":"test-repo-url-https","version":"0.0.1","description":"Test repo with non-github https repository url","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://gitlab.com/evanlucas/test-repo-url-https.git"},"author":{"name":"Evan Lucas","email":"evanlucas@me.com"},"license":"ISC","_id":"test-repo-url-https@0.0.1","dist":{"shasum":"e05008f3ff82b34f17b1e972454a0ab70a269c7d","tarball":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz"},"_from":".","_npmVersion":"1.4.2","_npmUser":{"name":"evanlucas","email":"evanlucas@me.com"},"maintainers":[{"name":"evanlucas","email":"evanlucas@me.com"}],"directories":{},"_integrity":"sha1-4FAI8/+Cs08XselyRUoKtwomnH0=","_shasum":"e05008f3ff82b34f17b1e972454a0ab70a269c7d","_resolved":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_shrinkwrap":null,"bin":null,"bugs":{"url":"https://gitlab.com/evanlucas/test-repo-url-https/issues"},"homepage":"https://gitlab.com/evanlucas/test-repo-url-https#readme"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/87/c9/f8b19f8ad4e5648c18927a0d7d21e557756b443699e6929fe420d5aa82a2 b/deps/npm/test/npm_cache/_cacache/index-v5/87/c9/f8b19f8ad4e5648c18927a0d7d21e557756b443699e6929fe420d5aa82a2 deleted file mode 100644 index da95f703b8e0bb..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/87/c9/f8b19f8ad4e5648c18927a0d7d21e557756b443699e6929fe420d5aa82a2 +++ /dev/null @@ -1,2 +0,0 @@ - -30ea947fa3199c5e9fa3c7117767f9437a1bf2e4 {"key":"pacote:version-manifest:http://localhost:1337/checker/-/checker-0.5.2.tgz:sha1-wno2vwDzp6PSSo+8eFPwb85OnIY=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833093307,"size":1,"metadata":{"id":"checker@0.5.2","manifest":{"name":"checker","version":"0.5.2","dependencies":{"async":"~0.2.9"},"optionalDependencies":{},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/checker/-/checker-0.5.2.tgz","_integrity":"sha1-wno2vwDzp6PSSo+8eFPwb85OnIY=","_shasum":"c27a36bf00f3a7a3d24a8fbc7853f06fce4e9c86","_shrinkwrap":null,"bin":null,"_id":"checker@0.5.2"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/89/eb/a7a81ab3eeec3076546f7e1fce3892c4e717a9379d4ad43a7111b5dc8cc2 b/deps/npm/test/npm_cache/_cacache/index-v5/89/eb/a7a81ab3eeec3076546f7e1fce3892c4e717a9379d4ad43a7111b5dc8cc2 deleted file mode 100644 index c8a7e1cc641314..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/89/eb/a7a81ab3eeec3076546f7e1fce3892c4e717a9379d4ad43a7111b5dc8cc2 +++ /dev/null @@ -1,3 +0,0 @@ - -7adceb1265ebb2ace488f13aa3b15b59f0f01dbf {"key":"pacote:packed-dir:git://github.com/isaacs/canonical-host.git#7d5ad6eda4ca2948f890b1d8169bc1029bf62364","integrity":"sha512-LOyK+tCWYYrmCtnNHPLS2dVZe2gBDMCHyaeHZe8NrNJcE6DjaUiUkxfwn2ZydO5fpxSr3BsVjlz+pcpUAWY0JQ==","time":1544485146869,"size":5787} -98a0e48f468ef1264acc4ad8ca234465f95411af {"key":"pacote:packed-dir:git://github.com/isaacs/canonical-host.git#7d5ad6eda4ca2948f890b1d8169bc1029bf62364","integrity":"sha512-LOyK+tCWYYrmCtnNHPLS2dVZe2gBDMCHyaeHZe8NrNJcE6DjaUiUkxfwn2ZydO5fpxSr3BsVjlz+pcpUAWY0JQ==","time":1544485150074,"size":5787} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/8b/2e/99af1be8f0aa3d6223b000c96edea31a1e6d923f7f3daf1ff06e04899cbb b/deps/npm/test/npm_cache/_cacache/index-v5/8b/2e/99af1be8f0aa3d6223b000c96edea31a1e6d923f7f3daf1ff06e04899cbb deleted file mode 100644 index 8a607552072a75..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/8b/2e/99af1be8f0aa3d6223b000c96edea31a1e6d923f7f3daf1ff06e04899cbb +++ /dev/null @@ -1,3 +0,0 @@ - -2cde6a16e5c38cc59035af402d47d758775c332b {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547832990867,"size":39,"metadata":{"url":"http://localhost:1337/-/org/myorg/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["3130fc09c51bc7e6"],"referer":["access ls-packages myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:30 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -f20d476c9d4375fd8d85195b984301b7795edbf2 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547833214654,"size":39,"metadata":{"url":"http://localhost:1337/-/org/myorg/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["bb74308033dfab7e"],"referer":["access ls-packages myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:14 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/8c/cf/08c44da29714d229eaceaad1d0ca321b8e5cc8080001efa90bd6e7cf2d10 b/deps/npm/test/npm_cache/_cacache/index-v5/8c/cf/08c44da29714d229eaceaad1d0ca321b8e5cc8080001efa90bd6e7cf2d10 deleted file mode 100644 index 4c93a0cfde066c..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/8c/cf/08c44da29714d229eaceaad1d0ca321b8e5cc8080001efa90bd6e7cf2d10 +++ /dev/null @@ -1,3 +0,0 @@ - -afa0c7f53e253a126cb28e830d7a278045895c8c {"key":"pacote:file-manifest:/Users/zkat/Documents/code/work/npm/test/tap/bundled-dependencies-nonarray/a-bundled-dep-2.0.0.tgz:sha512-qoZzDskyzbDwXbLzXh5Fb8mG2xn4P7P4FApYUUEfvPRJZjKEeasoDMgK4tdAzcAfj4gINqAMZnQ1ZazS6DUueg==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833057466,"size":1,"metadata":{"id":"a-bundled-dep@2.0.0","manifest":{"name":"a-bundled-dep","version":"2.0.0","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"/Users/zkat/Documents/code/work/npm/test/tap/bundled-dependencies-nonarray/a-bundled-dep-2.0.0.tgz","_integrity":"sha512-qoZzDskyzbDwXbLzXh5Fb8mG2xn4P7P4FApYUUEfvPRJZjKEeasoDMgK4tdAzcAfj4gINqAMZnQ1ZazS6DUueg==","_shasum":"ffb9090887f8d12db11019efe29fd9c145533a64","_shrinkwrap":null,"bin":null,"_id":"a-bundled-dep@2.0.0"},"type":"finalized-manifest"}} -61b8f5be08fc715ef01e281391909246cfcbf497 {"key":"pacote:file-manifest:/Users/zkat/Documents/code/work/npm/test/tap/bundled-dependencies-nonarray/a-bundled-dep-2.0.0.tgz:sha512-qoZzDskyzbDwXbLzXh5Fb8mG2xn4P7P4FApYUUEfvPRJZjKEeasoDMgK4tdAzcAfj4gINqAMZnQ1ZazS6DUueg==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833274133,"size":1,"metadata":{"id":"a-bundled-dep@2.0.0","manifest":{"name":"a-bundled-dep","version":"2.0.0","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"/Users/zkat/Documents/code/work/npm/test/tap/bundled-dependencies-nonarray/a-bundled-dep-2.0.0.tgz","_integrity":"sha512-qoZzDskyzbDwXbLzXh5Fb8mG2xn4P7P4FApYUUEfvPRJZjKEeasoDMgK4tdAzcAfj4gINqAMZnQ1ZazS6DUueg==","_shasum":"ffb9090887f8d12db11019efe29fd9c145533a64","_shrinkwrap":null,"bin":null,"_id":"a-bundled-dep@2.0.0"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/8e/53/8602d3aab48229cac8aeeb996d0c850341d8e832b38df45ce8b79f2d7f6a b/deps/npm/test/npm_cache/_cacache/index-v5/8e/53/8602d3aab48229cac8aeeb996d0c850341d8e832b38df45ce8b79f2d7f6a deleted file mode 100644 index 865ea6d95c2fed..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/8e/53/8602d3aab48229cac8aeeb996d0c850341d8e832b38df45ce8b79f2d7f6a +++ /dev/null @@ -1,5 +0,0 @@ - -86d07b775b7611ca1aea90abb40520f70359c2db {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags/c","integrity":null,"time":1547833100971} -fb2e849aa1afeb0f116eaf13831ec87542f606ad {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags/c","integrity":null,"time":1547833102196} -043fc0b8159c4cc7a460fb822f806aae3e42f159 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags/c","integrity":null,"time":1547833321327} -eb7ad592957eaef3efa2bf494179785031af811e {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags/c","integrity":null,"time":1547833322473} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/93/4e/425c049345ed549becd9e42f3ca7ad942331f73dd73c3e6f5549e910679b b/deps/npm/test/npm_cache/_cacache/index-v5/93/4e/425c049345ed549becd9e42f3ca7ad942331f73dd73c3e6f5549e910679b deleted file mode 100644 index 6467ee12d69ddd..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/93/4e/425c049345ed549becd9e42f3ca7ad942331f73dd73c3e6f5549e910679b +++ /dev/null @@ -1,3 +0,0 @@ - -aa600b0670543e98b0c7d38abca19b04ab212c41 {"key":"make-fetch-happen:request-cache:https://codeload.github.com/substack/jsonify/legacy.tar.gz/master","integrity":"sha1-7laKKx7665W+xNnlnlMB/GMzmGY=","time":1544485146877,"size":4733,"metadata":{"url":"https://codeload.github.com/substack/jsonify/legacy.tar.gz/master","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.5.0 node/v10.14.1 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["8afff98d6d30632a"],"pacote-pkg-id":["registry:undefined@https://github.com/substack/jsonify/tarball/master"],"pacote-req-type":["tarball"],"referer":["install [REDACTED]"]},"resHeaders":{"transfer-encoding":["chunked"],"access-control-allow-origin":["https://render.githubusercontent.com"],"content-security-policy":["default-src 'none'; style-src 'unsafe-inline'; sandbox"],"strict-transport-security":["max-age=31536000"],"vary":["Authorization,Accept-Encoding"],"x-content-type-options":["nosniff"],"x-frame-options":["deny"],"x-xss-protection":["1; mode=block"],"etag":["\"7064ab53e5f73fa31e2ce7aa47d210c539662f16\""],"content-type":["application/x-gzip"],"content-disposition":["attachment; filename=substack-jsonify-7064ab5.tar.gz"],"x-geo-block-list":[""],"date":["Mon, 10 Dec 2018 23:39:06 GMT"],"x-github-request-id":["EE37:2F59:46593:BB61F:5C0EF91A"],"x-fetch-attempts":["1"]}}} -daad1e6a48c667add8dbded2d3d19d15821df7a6 {"key":"make-fetch-happen:request-cache:https://codeload.github.com/substack/jsonify/legacy.tar.gz/master","integrity":"sha512-LjZI+XaDCuq6BySzgqCaamc239THVZY6T0Yvlj+eyyEcIljwB2bcOqaGZPZtOgHLJ4myz2FK6yktvrSv4LIGzA==","time":1544485149788,"size":4733,"metadata":{"url":"https://codeload.github.com/substack/jsonify/legacy.tar.gz/master","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.5.0 node/v10.14.1 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["8afff98d6d30632a"],"pacote-pkg-id":["registry:undefined@https://github.com/substack/jsonify/tarball/master"],"pacote-req-type":["tarball"],"referer":["install [REDACTED]"]},"resHeaders":{"transfer-encoding":["chunked"],"access-control-allow-origin":["https://render.githubusercontent.com"],"content-security-policy":["default-src 'none'; style-src 'unsafe-inline'; sandbox"],"strict-transport-security":["max-age=31536000"],"vary":["Authorization,Accept-Encoding"],"x-content-type-options":["nosniff"],"x-frame-options":["deny"],"x-xss-protection":["1; mode=block"],"etag":["\"7064ab53e5f73fa31e2ce7aa47d210c539662f16\""],"content-type":["application/x-gzip"],"content-disposition":["attachment; filename=substack-jsonify-7064ab5.tar.gz"],"x-geo-block-list":[""],"date":["Mon, 10 Dec 2018 23:39:09 GMT"],"x-github-request-id":["EE37:2F59:46596:BB622:5C0EF91A"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/96/66/5a9f2d90e8428d5b30418640b55c06029c2d36a3dc34ee91b90483a9973d b/deps/npm/test/npm_cache/_cacache/index-v5/96/66/5a9f2d90e8428d5b30418640b55c06029c2d36a3dc34ee91b90483a9973d deleted file mode 100644 index 7ac314ca71ceac..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/96/66/5a9f2d90e8428d5b30418640b55c06029c2d36a3dc34ee91b90483a9973d +++ /dev/null @@ -1,3 +0,0 @@ - -7f23855ebb1664944fac018738f56c84f2dc5458 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz","integrity":"sha1-KncwfhCL+1cQfEwzSrte9Tldxoo=","time":1547833049336,"size":364,"metadata":{"url":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0057a2b51b6e5b0a"],"referer":["bugs test-repo-url-ssh"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:test-repo-url-ssh@http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:29 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -ef49c09f1ae22cfdd8adeb94e6204f473d793e39 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz","integrity":"sha1-KncwfhCL+1cQfEwzSrte9Tldxoo=","time":1547833266224,"size":364,"metadata":{"url":"http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["1b2e5a88bc1db2e9"],"referer":["bugs test-repo-url-ssh"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:test-repo-url-ssh@http://localhost:1337/test-repo-url-ssh/-/test-repo-url-ssh-0.0.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:06 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/9b/00/38d905a4cf8b1a291d0a7bca660b3b4f409bea196a8cea3f3e66c5a8e84b b/deps/npm/test/npm_cache/_cacache/index-v5/9b/00/38d905a4cf8b1a291d0a7bca660b3b4f409bea196a8cea3f3e66c5a8e84b deleted file mode 100644 index 333f93067bbb32..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/9b/00/38d905a4cf8b1a291d0a7bca660b3b4f409bea196a8cea3f3e66c5a8e84b +++ /dev/null @@ -1,5 +0,0 @@ - -81324d43613be05eddb8115659e2d90ef03496eb {"key":"pacote:packed-dir:git://localhost:1234/top.git#9e4db86f79e3dcb0cafe10d5f8f1e2de7a8cb9c9","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833003642,"size":283} -221db6f36f5ddc4a83a4249ec9a7b2ecec9b8590 {"key":"pacote:packed-dir:git://localhost:1234/top.git#9e4db86f79e3dcb0cafe10d5f8f1e2de7a8cb9c9","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833004271,"size":283} -35ea9b8ae3e33e5e3606f790fa48c1055e0b18b3 {"key":"pacote:packed-dir:git://localhost:1234/top.git#9e4db86f79e3dcb0cafe10d5f8f1e2de7a8cb9c9","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833004908,"size":283} -524e1e8e8d9a690cb02d5fbd029cf1b15b61cf9b {"key":"pacote:packed-dir:git://localhost:1234/top.git#9e4db86f79e3dcb0cafe10d5f8f1e2de7a8cb9c9","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833005495,"size":283} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/9b/03/54636aae9cb55a079d1cc7f9caf4f3e654df7abd1fc8279dde9f935c76aa b/deps/npm/test/npm_cache/_cacache/index-v5/9b/03/54636aae9cb55a079d1cc7f9caf4f3e654df7abd1fc8279dde9f935c76aa deleted file mode 100644 index bd9c30d6a2a566..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/9b/03/54636aae9cb55a079d1cc7f9caf4f3e654df7abd1fc8279dde9f935c76aa +++ /dev/null @@ -1,5 +0,0 @@ - -7b38c2b7bb46182c0bef0cad488df298d4cc4df1 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/whoami","integrity":"sha512-6DaJqcIayTwqDvx+U2klAE5Si9O/66cIz1IW25mcXvzg1xOKfm7O2xJeQ7oq60ddWViiyjH0jGoUQvFk6Qo6Ig==","time":1547833016915,"size":25,"metadata":{"url":"http://localhost:1337/-/whoami","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["1b1860266820cd60"],"referer":["adduser"],"authorization":["Bearer foo"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:56 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -827995ba80d0a09d195f4c6ba887cfbbab632a08 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/whoami","integrity":"sha512-6DaJqcIayTwqDvx+U2klAE5Si9O/66cIz1IW25mcXvzg1xOKfm7O2xJeQ7oq60ddWViiyjH0jGoUQvFk6Qo6Ig==","time":1547833018622,"size":25,"metadata":{"url":"http://localhost:1337/-/whoami","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["17b1054485dce89c"],"referer":["adduser"],"authorization":["Bearer foo"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:58 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -30d09ec90a7fc5c17cd4bf637cf0354f29bede2f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/whoami","integrity":"sha512-6DaJqcIayTwqDvx+U2klAE5Si9O/66cIz1IW25mcXvzg1xOKfm7O2xJeQ7oq60ddWViiyjH0jGoUQvFk6Qo6Ig==","time":1547833236392,"size":25,"metadata":{"url":"http://localhost:1337/-/whoami","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["883d0ceea29e732e"],"referer":["adduser"],"authorization":["Bearer foo"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:36 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -f4e40cd490abf1b55d3c5b747c37cf434fff61d1 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/whoami","integrity":"sha512-6DaJqcIayTwqDvx+U2klAE5Si9O/66cIz1IW25mcXvzg1xOKfm7O2xJeQ7oq60ddWViiyjH0jGoUQvFk6Qo6Ig==","time":1547833237880,"size":25,"metadata":{"url":"http://localhost:1337/-/whoami","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["9c397efd8f029f31"],"referer":["adduser"],"authorization":["Bearer foo"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:37 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/9c/df/2bf910aa7cba3cae28d9c34ba6cd492e2a0053b4aeea258df6763e8cd8a2 b/deps/npm/test/npm_cache/_cacache/index-v5/9c/df/2bf910aa7cba3cae28d9c34ba6cd492e2a0053b4aeea258df6763e8cd8a2 deleted file mode 100644 index 9c9e57d2dabf67..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/9c/df/2bf910aa7cba3cae28d9c34ba6cd492e2a0053b4aeea258df6763e8cd8a2 +++ /dev/null @@ -1,9 +0,0 @@ - -c8c512129461bf5bf6c12d3bf65d3db0dee072e5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833046108,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["829b1dc23689fa30"],"referer":["bugs optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:26 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -8143a4aff9dc3a1fe3e919397314168e02887d05 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833073341,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -22750763814933396f3b0af93f96699c2a461566 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833079800,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["d19ab2d4de48cace"],"referer":["install optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:59 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -a43ce8446c2bc2394574224e4eab85ca71398f2d {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833093362,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -c76762edb49942e9fd6ac9b94812e7e04c9209c2 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833263459,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["5735fc1a8674c7f7"],"referer":["bugs optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:03 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -79c9c9829c39aabe6bfb55a6b4f8f314bfca8d65 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833294122,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -832428c8a63fee4a20594fa4ed73f56f1bd686b0 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833301193,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["f4c81daeaa866c45"],"referer":["install optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:41 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -149425ba494b07fca3f55079eef5dada2525c00a {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist","integrity":"sha512-7fwtedDVW/TqArdOzDZX6oM7xtBXitsuH1rg1zOwmkhPjnKHkBV4x72qXW/TCsTepIdzphDKbuHgnjH2FH6SHQ==","time":1547833314443,"size":123815,"metadata":{"url":"http://localhost:1337/optimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ce2c0b941f6a62b8"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:optimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:54 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/9f/3f/3bc8b783702f297c0e0f134ecf35495d997ad1c67532fe520ac6709d28c5 b/deps/npm/test/npm_cache/_cacache/index-v5/9f/3f/3bc8b783702f297c0e0f134ecf35495d997ad1c67532fe520ac6709d28c5 deleted file mode 100644 index 1a67dcf697592a..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/9f/3f/3bc8b783702f297c0e0f134ecf35495d997ad1c67532fe520ac6709d28c5 +++ /dev/null @@ -1,4 +0,0 @@ - -8b72fc4a000ffb83714893ab799fbc8b84e035af {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist/-/optimist-0.6.0.tgz","integrity":"sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","time":1547833046141,"size":12142,"metadata":{"url":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["829b1dc23689fa30"],"referer":["bugs optimist"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:optimist@http://localhost:1337/optimist/-/optimist-0.6.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:26 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -3d5e00fcad8a195890beaa5ebd8191db35438d03 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist/-/optimist-0.6.0.tgz","integrity":"sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","time":1547833073368,"size":12142,"metadata":{"url":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:optimist@http://localhost:1337/optimist/-/optimist-0.6.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -cbcbecbdc61e341bbef8203ba99b22f50edcbf61 {"key":"make-fetch-happen:request-cache:http://localhost:1337/optimist/-/optimist-0.6.0.tgz","integrity":"sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","time":1547833263481,"size":12142,"metadata":{"url":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["5735fc1a8674c7f7"],"referer":["bugs optimist"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:optimist@http://localhost:1337/optimist/-/optimist-0.6.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:03 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/9f/5f/7b93b3b7f757730e79213f4cb7e73c072a15544da364e543df7bef989d9c b/deps/npm/test/npm_cache/_cacache/index-v5/9f/5f/7b93b3b7f757730e79213f4cb7e73c072a15544da364e543df7bef989d9c deleted file mode 100644 index 74398f08fb8165..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/9f/5f/7b93b3b7f757730e79213f4cb7e73c072a15544da364e543df7bef989d9c +++ /dev/null @@ -1,3 +0,0 @@ - -aa15a41bad294a56a31a8bcce8a25a879b1c5dbb {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-https","integrity":"sha512-OvWsbjQzIlnUVneciC2dDbRyvv6E/YBDrDKL9R4b3NR0N7F+/02S30rY6ZmywuFAd5zegfaUddjUWRgIEDuWSw==","time":1547833048509,"size":1871,"metadata":{"url":"http://localhost:1337/test-repo-url-https","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcfdb97957af4e03"],"referer":["bugs test-repo-url-https"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:test-repo-url-https"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:28 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -d3dc2f53b27389600b8b0dcb4ada9a6512cfc6e2 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-https","integrity":"sha512-OvWsbjQzIlnUVneciC2dDbRyvv6E/YBDrDKL9R4b3NR0N7F+/02S30rY6ZmywuFAd5zegfaUddjUWRgIEDuWSw==","time":1547833265524,"size":1871,"metadata":{"url":"http://localhost:1337/test-repo-url-https","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["e76ebb11020bbcdd"],"referer":["bugs test-repo-url-https"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:test-repo-url-https"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:05 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/a2/4a/41538002c219a054a1ecf2e6be6e66dac4d4feb5407eb6ecb26af41a4de8 b/deps/npm/test/npm_cache/_cacache/index-v5/a2/4a/41538002c219a054a1ecf2e6be6e66dac4d4feb5407eb6ecb26af41a4de8 deleted file mode 100644 index 054b7f8024c556..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/a2/4a/41538002c219a054a1ecf2e6be6e66dac4d4feb5407eb6ecb26af41a4de8 +++ /dev/null @@ -1,12 +0,0 @@ - -6c5c990934e13926b51e6ab354f42e8d0779bf8f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839103758} -c207b5deb1770f1dc3c1df34e081ffd9478e8188 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839104211} -0719d4a0a0cee9d90dd426594cac152fec62630d {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839104637} -f3843f28e872291acf6c2d1e28d7df6e87faa173 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839105071} -3cf344d77f10ce0dc25fe8de8bae90765df36f1a {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839105510} -9ed5744249929413155c6b342f8403ffc4d1c582 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839105949} -e209c7b8c5189b9a3004b4c190c1f522868a81d7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839106387} -1896b456ddf22502794469d37fc32f30684439f0 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839106824} -91a0f1ced7d89fbc18eaf0b9aa8ce8ada9e090e8 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":null,"time":1547839107252} -86e26814b6776ed9e565fb70bbff4db467688c5f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":"sha512-b8c91FCMLZ8X7rHP0ognaUihaJ699qjT9PdRbUxovmOQY+flQ373/3JUeqvoa0mmsb9cczvezjh32CvIvBqafQ==","time":1547839107274,"size":21,"metadata":{"url":"http://localhost:1337/-/org/myorg/user","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["782279b862f30d85"],"referer":["org rm myorg myuser"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Fri, 18 Jan 2019 19:18:27 GMT"],"connection":["keep-alive"],"content-length":["21"],"x-fetch-attempts":["1"]}}} -13b115c72fcda3731ffbd4076ac771992fdf690a {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/myorg/user","integrity":"sha512-/TdlwwFD2pvTZ1jk8ZzOCYSqyfamqQoqHqeauKzshIQbeyr0sg5SBR1YWsEr7xkw01I01lVjGTFdVlY5EldHLQ==","time":1547839107720,"size":38,"metadata":{"url":"http://localhost:1337/-/org/myorg/user","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["bb01753ed8b7a54a"],"referer":["org ls myorg"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Fri, 18 Jan 2019 19:18:27 GMT"],"connection":["keep-alive"],"content-length":["38"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/a2/ff/2fbedd19724625ef6060f72129b8494625e3e6fd08f7fd5886f65bf82e0d b/deps/npm/test/npm_cache/_cacache/index-v5/a2/ff/2fbedd19724625ef6060f72129b8494625e3e6fd08f7fd5886f65bf82e0d deleted file mode 100644 index 0f751b92301907..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/a2/ff/2fbedd19724625ef6060f72129b8494625e3e6fd08f7fd5886f65bf82e0d +++ /dev/null @@ -1,2 +0,0 @@ - -8754c947aa648ac5a1e7d7bd750cf206f19ddf2a {"key":"pacote:version-manifest:http://localhost:1337/clean/-/clean-2.1.6.tgz:sha1-QcgLK29UMsYM3bgZMqtWVjtET1I=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073374,"size":1,"metadata":{"id":"clean@2.1.6","manifest":{"name":"clean","version":"2.1.6","dependencies":{"checker":"~0.5.1","minimist":"~0.0.5"},"optionalDependencies":{},"devDependencies":{"mocha":"~1.13.0","chai":"~1.8.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/clean/-/clean-2.1.6.tgz","_integrity":"sha1-QcgLK29UMsYM3bgZMqtWVjtET1I=","_shasum":"41c80b2b6f5432c60cddb81932ab56563b444f52","_shrinkwrap":null,"bin":null,"_id":"clean@2.1.6"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/a6/c9/dbe7acc04b7cea7b99c68f3821cf6d7f49caba301e383b31143bd9670f28 b/deps/npm/test/npm_cache/_cacache/index-v5/a6/c9/dbe7acc04b7cea7b99c68f3821cf6d7f49caba301e383b31143bd9670f28 deleted file mode 100644 index 7aee08fdb80832..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/a6/c9/dbe7acc04b7cea7b99c68f3821cf6d7f49caba301e383b31143bd9670f28 +++ /dev/null @@ -1,5 +0,0 @@ - -3002bf2472d538dd29ea7b342d57d5df22550e1b {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks/hook/dead%40beef","integrity":null,"time":1547833361751} -8c135f20bdfb585426caf7fd49188a735d252fe0 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks/hook/dead%40beef","integrity":null,"time":1547833362326} -95ae855df601d00c050d2a0aafffcfbbe7e512bf {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks/hook/dead%40beef","integrity":null,"time":1547833364134} -7ce3a872de3f712c0df4a401f404423e8728ab90 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/npm/v1/hooks/hook/dead%40beef","integrity":null,"time":1547833364692} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/a8/15/13afeacd20fdb82b59ceeaa57b4d135c5def8209619ca09751fdae5bd803 b/deps/npm/test/npm_cache/_cacache/index-v5/a8/15/13afeacd20fdb82b59ceeaa57b4d135c5def8209619ca09751fdae5bd803 deleted file mode 100644 index 8b2d365594ab28..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/a8/15/13afeacd20fdb82b59ceeaa57b4d135c5def8209619ca09751fdae5bd803 +++ /dev/null @@ -1,3 +0,0 @@ - -30492be5d770c162fa1e38568cad83070b45d4cd {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-ssh","integrity":"sha512-zesPUGW+A+iVR6M+Bk2RGWmVPEXrBd9mTKTVN7lw3J92gSNGOm91zmuDbVDuc8GKx6Jedj8rmGlhLNv0JxldSw==","time":1547833049314,"size":1094,"metadata":{"url":"http://localhost:1337/test-repo-url-ssh","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0057a2b51b6e5b0a"],"referer":["bugs test-repo-url-ssh"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:test-repo-url-ssh"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:29 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -aab489bc027e6f7280ac70934e3147555ed2ff15 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-ssh","integrity":"sha512-zesPUGW+A+iVR6M+Bk2RGWmVPEXrBd9mTKTVN7lw3J92gSNGOm91zmuDbVDuc8GKx6Jedj8rmGlhLNv0JxldSw==","time":1547833266207,"size":1094,"metadata":{"url":"http://localhost:1337/test-repo-url-ssh","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["1b2e5a88bc1db2e9"],"referer":["bugs test-repo-url-ssh"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:test-repo-url-ssh"],"accept":["application/json"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:06 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/a8/88/3a6a0c55cde913db472fd92adee9edf0f507c4ea02b2703d926b06947341 b/deps/npm/test/npm_cache/_cacache/index-v5/a8/88/3a6a0c55cde913db472fd92adee9edf0f507c4ea02b2703d926b06947341 deleted file mode 100644 index 9a7f8a3b571c80..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/a8/88/3a6a0c55cde913db472fd92adee9edf0f507c4ea02b2703d926b06947341 +++ /dev/null @@ -1,3 +0,0 @@ - -dae0f572918acce3f6c847cef076673e992e3752 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fpkg/collaborators","integrity":"sha512-MshpkrpGcUCKKSuz8vrkzRBBbc7baiFMFpBUr2vMeStupW9yRTMzV8xZ5PhGYDgGBLX/M4JYrUaXMhjYZHmbXg==","time":1547832993103,"size":51,"metadata":{"url":"http://localhost:1337/-/package/%40scoped%2Fpkg/collaborators?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["9057e4dad1435f4e"],"referer":["access ls-collaborators"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:33 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -bf9a4b5940d5354ed240c9d19bf66aef181f6b37 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/%40scoped%2Fpkg/collaborators","integrity":"sha512-MshpkrpGcUCKKSuz8vrkzRBBbc7baiFMFpBUr2vMeStupW9yRTMzV8xZ5PhGYDgGBLX/M4JYrUaXMhjYZHmbXg==","time":1547833216272,"size":51,"metadata":{"url":"http://localhost:1337/-/package/%40scoped%2Fpkg/collaborators?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["8c53f175b90e89fb"],"referer":["access ls-collaborators"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:16 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ad/29/4a034c1908dcd263dce381384f50b395b52e2addd35285efab8ec8f5b303 b/deps/npm/test/npm_cache/_cacache/index-v5/ad/29/4a034c1908dcd263dce381384f50b395b52e2addd35285efab8ec8f5b303 deleted file mode 100644 index fdcee46164e5ca..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ad/29/4a034c1908dcd263dce381384f50b395b52e2addd35285efab8ec8f5b303 +++ /dev/null @@ -1,3 +0,0 @@ - -11e87811e2df676a2b3f709f580b0a51b7eef996 {"key":"pacote:range-manifest:http://localhost:1337/minimist/-/minimist-0.0.5.tgz:sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073431,"size":1,"metadata":{"id":"minimist@0.0.5","manifest":{"name":"minimist","version":"0.0.5","dependencies":{},"optionalDependencies":{},"devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz","_integrity":"sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","_shasum":"d7aa327bcecf518f9106ac6b8f003fa3bcea8566","_shrinkwrap":null,"bin":null,"_id":"minimist@0.0.5"},"type":"finalized-manifest"}} -cf5b45eb3a283ea7041a23ef29c08de42ae86db3 {"key":"pacote:range-manifest:http://localhost:1337/minimist/-/minimist-0.0.5.tgz:sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073432,"size":1,"metadata":{"id":"minimist@0.0.5","manifest":{"name":"minimist","version":"0.0.5","dependencies":{},"optionalDependencies":{},"devDependencies":{"tape":"~1.0.4","tap":"~0.4.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/minimist/-/minimist-0.0.5.tgz","_integrity":"sha1-16oye87PUY+RBqxrjwA/o7zqhWY=","_shasum":"d7aa327bcecf518f9106ac6b8f003fa3bcea8566","_shrinkwrap":null,"bin":null,"_id":"minimist@0.0.5"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ad/e9/1d8533ddd67b495ca9cffd992a45de09faf0f0fe2ad2c446353a58288f6b b/deps/npm/test/npm_cache/_cacache/index-v5/ad/e9/1d8533ddd67b495ca9cffd992a45de09faf0f0fe2ad2c446353a58288f6b deleted file mode 100644 index ce505cd9432c04..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ad/e9/1d8533ddd67b495ca9cffd992a45de09faf0f0fe2ad2c446353a58288f6b +++ /dev/null @@ -1,2 +0,0 @@ - -64365f703c777ce905630f8f2e6287ec0dc87d2d {"key":"pacote:version-manifest:http://localhost:1337/optimist/-/optimist-0.6.0.tgz:sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073374,"size":1,"metadata":{"id":"optimist@0.6.0","manifest":{"name":"optimist","version":"0.6.0","dependencies":{"wordwrap":"~0.0.2","minimist":"~0.0.1"},"optionalDependencies":{},"devDependencies":{"hashish":"~0.0.4","tap":"~0.4.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/optimist/-/optimist-0.6.0.tgz","_integrity":"sha1-aUJIJvNAX3nxQub8PZrljU27kgA=","_shasum":"69424826f3405f79f142e6fc3d9ae58d4dbb9200","_shrinkwrap":null,"bin":null,"_id":"optimist@0.6.0"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b1/78/4ff2f1383234ce5feb54cec21589dfd82db09bd3c7016d436760a3e94f60 b/deps/npm/test/npm_cache/_cacache/index-v5/b1/78/4ff2f1383234ce5feb54cec21589dfd82db09bd3c7016d436760a3e94f60 deleted file mode 100644 index 73d8583ab229e1..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b1/78/4ff2f1383234ce5feb54cec21589dfd82db09bd3c7016d436760a3e94f60 +++ /dev/null @@ -1,3 +0,0 @@ - -7f02995173e0bd08a3af0b45d82442eddce0e57d {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:npm_saml_auth_dummy_user","integrity":null,"time":1547833017995} -d0f3ef244b97c22054244c059d888d9abd7693ed {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:npm_saml_auth_dummy_user","integrity":null,"time":1547833237264} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b2/47/c8196ddf74a5111fedbaf5abf24d446c017f7bfba330c19d63fc24000277 b/deps/npm/test/npm_cache/_cacache/index-v5/b2/47/c8196ddf74a5111fedbaf5abf24d446c017f7bfba330c19d63fc24000277 deleted file mode 100644 index 7ce40d69c5562d..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b2/47/c8196ddf74a5111fedbaf5abf24d446c017f7bfba330c19d63fc24000277 +++ /dev/null @@ -1,2 +0,0 @@ - -c7a7b66fcdc42362855ee1ea0e4bacc86897cddb {"key":"pacote:git-manifest:git://localhost:1234/child.git#65974106d8883632964be1da34eec5e85beead3a","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833223116,"size":1,"metadata":{"id":"child@1.0.3","manifest":{"name":"child","version":"1.0.3","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"git://localhost:1234/child.git#65974106d8883632964be1da34eec5e85beead3a","_integrity":null,"_shasum":null,"_shrinkwrap":null,"bin":null,"_id":"child@1.0.3"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b3/36/c25c35e75c8973f821f5a05ce4803a44826a0112390460da66c8c3c5de69 b/deps/npm/test/npm_cache/_cacache/index-v5/b3/36/c25c35e75c8973f821f5a05ce4803a44826a0112390460da66c8c3c5de69 deleted file mode 100644 index 36144f760f2837..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b3/36/c25c35e75c8973f821f5a05ce4803a44826a0112390460da66c8c3c5de69 +++ /dev/null @@ -1,5 +0,0 @@ - -2203ec8d87dfdc33ca3f91fee36d62d7583b9fc7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","integrity":"sha512-9b2mt4/PIEsewOYGkEW0T2Zp6aq4eL/IkblG5M7LhD9Oh+Qotnca57Sizo8wPpd0Z2OwZC+viamwBCUpfceNag==","time":1547833098623,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["5fe2532912b524f2"],"referer":["dist-tag ls"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:18 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -6822b31385528e21a07e23d5a812925b3094f1b3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","integrity":"sha512-9b2mt4/PIEsewOYGkEW0T2Zp6aq4eL/IkblG5M7LhD9Oh+Qotnca57Sizo8wPpd0Z2OwZC+viamwBCUpfceNag==","time":1547833099266,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["a0862a2bfbf103a4"],"referer":["dist-tag"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:19 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -b38156acf618625f7b1386e8ba1cafc433525145 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","integrity":"sha512-9b2mt4/PIEsewOYGkEW0T2Zp6aq4eL/IkblG5M7LhD9Oh+Qotnca57Sizo8wPpd0Z2OwZC+viamwBCUpfceNag==","time":1547833319191,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["cd0330de647ee848"],"referer":["dist-tag ls"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:59 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -86f80933dda8c18895069da9865c5285038deef9 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","integrity":"sha512-9b2mt4/PIEsewOYGkEW0T2Zp6aq4eL/IkblG5M7LhD9Oh+Qotnca57Sizo8wPpd0Z2OwZC+viamwBCUpfceNag==","time":1547833319738,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fpkg/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["f98d50799fc74c0a"],"referer":["dist-tag"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:59 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b4/2c/2aec38b0351146be02fc91be78e935c68f4608824732a06091fcf7cb550a b/deps/npm/test/npm_cache/_cacache/index-v5/b4/2c/2aec38b0351146be02fc91be78e935c68f4608824732a06091fcf7cb550a deleted file mode 100644 index 8f0c7506e9b16c..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b4/2c/2aec38b0351146be02fc91be78e935c68f4608824732a06091fcf7cb550a +++ /dev/null @@ -1,3 +0,0 @@ - -20d59f6daec6eac2eb644733fe21c815e25ffaef {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/username/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547832989714,"size":39,"metadata":{"url":"http://localhost:1337/-/org/username/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["b8545df12738f01b"],"referer":["access ls-packages"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:29 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -704866f7d6302ba3b3aeca7e3260af11b4317155 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/org/username/package","integrity":"sha512-3Cqk30LNQ1Yj9MLD4nT6CBzJQv9F3PqYzfSpMktqIcNyHDS7l+aAnuKAUfwQ9XdJz/YKqXCh44x6bDVKlANVTg==","time":1547833213589,"size":39,"metadata":{"url":"http://localhost:1337/-/org/username/package?format=cli","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["29cf4d7ca0f7ff48"],"referer":["access ls-packages"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b4/a9/95ce79090bb3e6ab5e8a85aaef872bf4eca492fac6cab144fb2e45ffbd74 b/deps/npm/test/npm_cache/_cacache/index-v5/b4/a9/95ce79090bb3e6ab5e8a85aaef872bf4eca492fac6cab144fb2e45ffbd74 deleted file mode 100644 index 2ba32d7b4cfa16..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b4/a9/95ce79090bb3e6ab5e8a85aaef872bf4eca492fac6cab144fb2e45ffbd74 +++ /dev/null @@ -1,3 +0,0 @@ - -135604e7716d4c2e6bd09f4398d108fbc29895c5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u/-rev/3-deadcafebabebeef","integrity":null,"time":1547833015114} -d4d193f0e535e597bd98b501f7c5a1da3251bbbe {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/user/org.couchdb.user:u/-rev/3-deadcafebabebeef","integrity":null,"time":1547833234827} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b7/1c/f06201305985169fc251111ddb9fa636ef144ff9fad15784c1e9620b0dac b/deps/npm/test/npm_cache/_cacache/index-v5/b7/1c/f06201305985169fc251111ddb9fa636ef144ff9fad15784c1e9620b0dac deleted file mode 100644 index 0a33108574d4ac..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b7/1c/f06201305985169fc251111ddb9fa636ef144ff9fad15784c1e9620b0dac +++ /dev/null @@ -1,2 +0,0 @@ - -614363c24691f80d387b90f697b435cba6cb5ba4 {"key":"pacote:range-manifest:https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz:sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1544485144527,"size":1,"metadata":{"id":"inherits@1.0.2","manifest":{"name":"inherits","version":"1.0.2","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz","_integrity":"sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=","_shasum":"ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b","_shrinkwrap":null,"bin":null,"_id":"inherits@1.0.2"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/b8/16/bf6e49afbd1323783f2f5a63b3d871adc66f517669450807aec3b62e71b2 b/deps/npm/test/npm_cache/_cacache/index-v5/b8/16/bf6e49afbd1323783f2f5a63b3d871adc66f517669450807aec3b62e71b2 deleted file mode 100644 index 2a92a341f1b5fc..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/b8/16/bf6e49afbd1323783f2f5a63b3d871adc66f517669450807aec3b62e71b2 +++ /dev/null @@ -1,2 +0,0 @@ - -0fa6ae8d13ade52a785024d598ead22bc4a060df {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz","integrity":"sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=","time":1544485144635,"size":1519,"metadata":{"url":"https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.5.0 node/v10.14.1 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["28a99044412a2230"],"referer":["install [REDACTED]"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:inherits@https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Mon, 10 Dec 2018 23:39:04 GMT"],"content-type":["application/octet-stream"],"content-length":["1519"],"connection":["keep-alive"],"set-cookie":["__cfduid=defb20c5371b88093aa383ac8c884d4171544485144; expires=Tue, 10-Dec-19 23:39:04 GMT; path=/; domain=.registry.npmjs.org; HttpOnly"],"cf-cache-status":["HIT"],"cache-control":["max-age=432000"],"accept-ranges":["bytes"],"cf-ray":["48738c79cc526c7c-SJC"],"etag":["\"54a4d8823795a0d30b28479c10e3d486\""],"expect-ct":["max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""],"last-modified":["Sun, 27 May 2018 04:40:10 GMT"],"vary":["Accept-Encoding"],"server":["cloudflare"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ba/41/d137c2778ea0d7167fbc730827a0a2c453ffea82d07c7b1481a46f7b1194 b/deps/npm/test/npm_cache/_cacache/index-v5/ba/41/d137c2778ea0d7167fbc730827a0a2c453ffea82d07c7b1481a46f7b1194 deleted file mode 100644 index 7f2979c9e70af2..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ba/41/d137c2778ea0d7167fbc730827a0a2c453ffea82d07c7b1481a46f7b1194 +++ /dev/null @@ -1,4 +0,0 @@ - -9c2b5138ca19cd78e19d07ada8b5b3abfd0f4292 {"key":"pacote:remote-manifest:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz:sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833041019,"size":1,"metadata":{"id":"@scoped/underscore@1.3.1","manifest":{"name":"@scoped/underscore","version":"1.3.1","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","_integrity":"sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","_shasum":"28eb847a949e71eb9041fd6567a36c9acfcf2bed","_shrinkwrap":null,"bin":null,"_id":"@scoped/underscore@1.3.1"},"type":"finalized-manifest"}} -b3884f202f09e0fc0656eb1b740f68243c0a3d0b {"key":"pacote:remote-manifest:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz:sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833259082,"size":1,"metadata":{"id":"@scoped/underscore@1.3.1","manifest":{"name":"@scoped/underscore","version":"1.3.1","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","_integrity":"sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","_shasum":"28eb847a949e71eb9041fd6567a36c9acfcf2bed","_shrinkwrap":null,"bin":null,"_id":"@scoped/underscore@1.3.1"},"type":"finalized-manifest"}} -ceebf365613b857c1d00a513f871286b7575841a {"key":"pacote:remote-manifest:http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz:sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1548718095641,"size":1,"metadata":{"id":"@scoped/underscore@1.3.1","manifest":{"name":"@scoped/underscore","version":"1.3.1","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://127.0.0.1:1337/scoped-underscore/-/scoped-underscore-1.3.1.tgz","_integrity":"sha512-NycvWDeO1ZEZc3P0bTvhSL/IJknbshO+FKKxrEf1DX1IBMsQVZCTWnvNAt+uOiQhyTnK+1hrnxtsSS/f4JrKhg==","_shasum":"28eb847a949e71eb9041fd6567a36c9acfcf2bed","_shrinkwrap":null,"bin":null,"_id":"@scoped/underscore@1.3.1"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/be/6a/458105f31e845d57376ed2b2019e46a63cff8cbb76981a37eac2100c8e55 b/deps/npm/test/npm_cache/_cacache/index-v5/be/6a/458105f31e845d57376ed2b2019e46a63cff8cbb76981a37eac2100c8e55 deleted file mode 100644 index c7f616ca698625..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/be/6a/458105f31e845d57376ed2b2019e46a63cff8cbb76981a37eac2100c8e55 +++ /dev/null @@ -1,3 +0,0 @@ - -388060aca1924af6f5de8efc78b1292213e4e342 {"key":"pacote:packed-dir:github:isaacs/sax-js#5aee2163d55cff24b817bbf550bac44841f9df45","integrity":"sha512-Iv7u1C07q1/2mXITRvnF+npwrCdI7gztdbwLj26KupJPU6k0BLMPqNKODWTBSSLo8NHtHCEu8/FdAOlSexe5uQ==","time":1544485149568,"size":15108} -0e88f843ada3834c0f11764113f4441e3fd22c97 {"key":"pacote:packed-dir:github:isaacs/sax-js#5aee2163d55cff24b817bbf550bac44841f9df45","integrity":"sha512-Iv7u1C07q1/2mXITRvnF+npwrCdI7gztdbwLj26KupJPU6k0BLMPqNKODWTBSSLo8NHtHCEu8/FdAOlSexe5uQ==","time":1544485151587,"size":15108} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/c4/08/207afc5ca1803fa593124554206657c17eb6b2809df9f5ec1c10007a6465 b/deps/npm/test/npm_cache/_cacache/index-v5/c4/08/207afc5ca1803fa593124554206657c17eb6b2809df9f5ec1c10007a6465 deleted file mode 100644 index 79591a24fad5a1..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/c4/08/207afc5ca1803fa593124554206657c17eb6b2809df9f5ec1c10007a6465 +++ /dev/null @@ -1,3 +0,0 @@ - -d1bd3700ae4b819592862245ce99d2af2b6e95bb {"key":"pacote:tarball:file:/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/test-whoops-1.0.0.tgz","integrity":"sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw==","time":1547833112237,"size":184} -1703cbc1f1f6594798a79f0cdff31e60198cbb3c {"key":"pacote:tarball:file:/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/test-whoops-1.0.0.tgz","integrity":"sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw==","time":1547833333861,"size":184} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/c7/6a/1f6606232f53d41a78bcb0a155df04211a49d1fdb1b67e59ccb47e20c353 b/deps/npm/test/npm_cache/_cacache/index-v5/c7/6a/1f6606232f53d41a78bcb0a155df04211a49d1fdb1b67e59ccb47e20c353 deleted file mode 100644 index 3f8ca248851a31..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/c7/6a/1f6606232f53d41a78bcb0a155df04211a49d1fdb1b67e59ccb47e20c353 +++ /dev/null @@ -1,5 +0,0 @@ - -7b180a577935e416bdf212a54bbccaaea00610b6 {"key":"pacote:packed-dir:git://localhost:1234/top.git#ade345938057607d9e1b50afa2d6f627b911e596","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833225545,"size":283} -214d8fe56262265b542137a1a6548a62487435f8 {"key":"pacote:packed-dir:git://localhost:1234/top.git#ade345938057607d9e1b50afa2d6f627b911e596","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833226019,"size":283} -4fdb441a9fc384e4ff88825e523cacde7214daea {"key":"pacote:packed-dir:git://localhost:1234/top.git#ade345938057607d9e1b50afa2d6f627b911e596","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833226573,"size":283} -a97ab2f9669f0bc0130eab10d42898af9ee4ae09 {"key":"pacote:packed-dir:git://localhost:1234/top.git#ade345938057607d9e1b50afa2d6f627b911e596","integrity":"sha512-VJX+hA7b9dGN/CfF9NmzWeirgaR0H2Kw3rIJeTWYQ4KK5QESusTiWj/BCJ0mD9m4I25DSjpVWAt6q6Np5vi6hw==","time":1547833227081,"size":283} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ca/2f/42a626cb16aeb63c2dc04be95e67db8ea33ce033a3fadf0ba1061c174d3e b/deps/npm/test/npm_cache/_cacache/index-v5/ca/2f/42a626cb16aeb63c2dc04be95e67db8ea33ce033a3fadf0ba1061c174d3e deleted file mode 100644 index d8c2490b516c4b..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ca/2f/42a626cb16aeb63c2dc04be95e67db8ea33ce033a3fadf0ba1061c174d3e +++ /dev/null @@ -1,3 +0,0 @@ - -ce8332445d8663fd141a36216e677bd10ff6b9d7 {"key":"pacote:packed-dir:git://localhost:1234/child.git#28b560148ea11a46c70defbce4c485581ced33d1","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833007307,"size":143} -6fab7ca434f22c424fe295ff514b366202edc994 {"key":"pacote:packed-dir:git://localhost:1234/child.git#28b560148ea11a46c70defbce4c485581ced33d1","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833007721,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/d0/a2/9b5933a9df317b031c4407f0d9cae19a4d56f253f7746786597a52daa76d b/deps/npm/test/npm_cache/_cacache/index-v5/d0/a2/9b5933a9df317b031c4407f0d9cae19a4d56f253f7746786597a52daa76d deleted file mode 100644 index 1e03e6602f77b6..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/d0/a2/9b5933a9df317b031c4407f0d9cae19a4d56f253f7746786597a52daa76d +++ /dev/null @@ -1,2 +0,0 @@ - -a30822a420ac48487cedbaf87ca2a38d9813fd74 {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/graceful-fs","integrity":"sha512-XSnW4a3SU2N5q8HrpS+DgkpgkaWvn/uhR5z0BPR4828GUE9mQ9uGMeC28FflUUDYRInKzBQGJ+ASgk+gc/l1aA==","time":1544485144512,"size":24332,"metadata":{"url":"https://registry.npmjs.org/graceful-fs","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.5.0 node/v10.14.1 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["28a99044412a2230"],"referer":["install [REDACTED]"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:graceful-fs"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Mon, 10 Dec 2018 23:39:04 GMT"],"content-type":["application/vnd.npm.install-v1+json"],"content-length":["24332"],"connection":["keep-alive"],"set-cookie":["__cfduid=defb20c5371b88093aa383ac8c884d4171544485144; expires=Tue, 10-Dec-19 23:39:04 GMT; path=/; domain=.registry.npmjs.org; HttpOnly"],"cf-cache-status":["HIT"],"cache-control":["max-age=300"],"accept-ranges":["bytes"],"cf-ray":["48738c790c166c7c-SJC"],"etag":["\"a61f5e425bc37e1f2ae6fff988a7f45c\""],"expect-ct":["max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""],"last-modified":["Sun, 04 Nov 2018 20:51:58 GMT"],"vary":["accept-encoding, accept"],"x-amz-meta-rev":["204-3ea980c425725a63a5de5e3f020e8617"],"server":["cloudflare"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/d2/0a/0834f8c04d97b43d0f99901f9c56c3654221987030a0f86aac7f7caecccc b/deps/npm/test/npm_cache/_cacache/index-v5/d2/0a/0834f8c04d97b43d0f99901f9c56c3654221987030a0f86aac7f7caecccc deleted file mode 100644 index b3e16f2babeb01..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/d2/0a/0834f8c04d97b43d0f99901f9c56c3654221987030a0f86aac7f7caecccc +++ /dev/null @@ -1,3 +0,0 @@ - -f560665c954f57c14f107bba0df77c536f9ddaa4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz","integrity":"sha1-gvPMuhGRTciLyxhe47GzO1ZCcrw=","time":1547833046964,"size":220,"metadata":{"url":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ece3b5a000cc3f02"],"referer":["bugs npm-test-peer-deps"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:npm-test-peer-deps@http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:26 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -e80b143e8a12e4112be260e9e1880db7c72404f3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz","integrity":"sha1-gvPMuhGRTciLyxhe47GzO1ZCcrw=","time":1547833264155,"size":220,"metadata":{"url":"http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["836b89e1cc0594ec"],"referer":["bugs npm-test-peer-deps"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:npm-test-peer-deps@http://localhost:1337/npm-test-peer-deps/-/npm-test-peer-deps-0.0.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:04 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/d8/8f/1bf51f3ab635ab46a8693c919a915102645335a143056a5f12cafef915c0 b/deps/npm/test/npm_cache/_cacache/index-v5/d8/8f/1bf51f3ab635ab46a8693c919a915102645335a143056a5f12cafef915c0 deleted file mode 100644 index 17c9e80e488b30..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/d8/8f/1bf51f3ab635ab46a8693c919a915102645335a143056a5f12cafef915c0 +++ /dev/null @@ -1,9 +0,0 @@ - -5d6fb857bc4ef7fd6179300822ed60f39789695d {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833073399,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -5d6fb857bc4ef7fd6179300822ed60f39789695d {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833073399,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -f9f6f5b3805ab1d6047f104f2c0934da89029de3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833079826,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["d19ab2d4de48cace"],"referer":["install optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:59 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -0e670817744d3920a594bcd7a51151239cc6edb4 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833093340,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -6e3b3799d9593d6562149522f40f1bef85175ff5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833294159,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -6e3b3799d9593d6562149522f40f1bef85175ff5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833294159,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -aa4bf0541df5929840d07c70955c1ff23cfc6f5d {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833301219,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["f4c81daeaa866c45"],"referer":["install optimist"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:41 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -be227b26dd91f727946a5e8ec671f62c400c2f84 {"key":"make-fetch-happen:request-cache:http://localhost:1337/minimist","integrity":"sha512-g6TXR7gGyq5zhXeBRbz5mfrmnutvFDQ/aAG3m2t4U1OJYWlKyLR5HHZ1wnkotUldEtL5RIZ9sRBeQk1fqbHgFQ==","time":1547833314424,"size":19834,"metadata":{"url":"http://localhost:1337/minimist","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ce2c0b941f6a62b8"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:minimist"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:54 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/de/9f/35f1c704459881fb3c9e83a59e80c3482dd62f626939323f2b6bf511b53d b/deps/npm/test/npm_cache/_cacache/index-v5/de/9f/35f1c704459881fb3c9e83a59e80c3482dd62f626939323f2b6bf511b53d deleted file mode 100644 index b41bc1a9202e62..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/de/9f/35f1c704459881fb3c9e83a59e80c3482dd62f626939323f2b6bf511b53d +++ /dev/null @@ -1,3 +0,0 @@ - -7bb832e347dbc62f1198afb35f8f7551bceacd72 {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz","integrity":"sha1-4FAI8/+Cs08XselyRUoKtwomnH0=","time":1547833048530,"size":371,"metadata":{"url":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcfdb97957af4e03"],"referer":["bugs test-repo-url-https"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:test-repo-url-https@http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:28 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -ac50fa8a2ea2326ad7cf56bca893b374b5bebb2c {"key":"make-fetch-happen:request-cache:http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz","integrity":"sha1-4FAI8/+Cs08XselyRUoKtwomnH0=","time":1547833265543,"size":371,"metadata":{"url":"http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["e76ebb11020bbcdd"],"referer":["bugs test-repo-url-https"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:test-repo-url-https@http://localhost:1337/test-repo-url-https/-/test-repo-url-https-0.0.1.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:05 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/df/88/3ff6bf48df44c29ce1193e883193e034208d95b6028728ef3902b78b694d b/deps/npm/test/npm_cache/_cacache/index-v5/df/88/3ff6bf48df44c29ce1193e883193e034208d95b6028728ef3902b78b694d deleted file mode 100644 index 9ac362316b2859..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/df/88/3ff6bf48df44c29ce1193e883193e034208d95b6028728ef3902b78b694d +++ /dev/null @@ -1,5 +0,0 @@ - -5608f36aeb6a5f59d34b08079615f760039073c5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/async","integrity":"sha512-raHNkSLmvrld42u43BDCVaan17i/viG3KEOrbbQC7oy4veX7LQUKfrluozDovho5TEx8REyLVB+OGAt/ElBv6A==","time":1547833073441,"size":76163,"metadata":{"url":"http://localhost:1337/async","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:async"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -4e272da87db2d81cdf7e70054035943de9d7e693 {"key":"make-fetch-happen:request-cache:http://localhost:1337/async","integrity":"sha512-raHNkSLmvrld42u43BDCVaan17i/viG3KEOrbbQC7oy4veX7LQUKfrluozDovho5TEx8REyLVB+OGAt/ElBv6A==","time":1547833093317,"size":76163,"metadata":{"url":"http://localhost:1337/async","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:async"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -ae1039605ec582dd106d671660d7f190d91e3753 {"key":"make-fetch-happen:request-cache:http://localhost:1337/async","integrity":"sha512-raHNkSLmvrld42u43BDCVaan17i/viG3KEOrbbQC7oy4veX7LQUKfrluozDovho5TEx8REyLVB+OGAt/ElBv6A==","time":1547833294175,"size":76163,"metadata":{"url":"http://localhost:1337/async","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["0a92a1a2bc33028a"],"referer":["install"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:async"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:34 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -fb221ac87dd04ff1360ecfbe22be4df3e1033ad7 {"key":"make-fetch-happen:request-cache:http://localhost:1337/async","integrity":"sha512-raHNkSLmvrld42u43BDCVaan17i/viG3KEOrbbQC7oy4veX7LQUKfrluozDovho5TEx8REyLVB+OGAt/ElBv6A==","time":1547833314410,"size":76163,"metadata":{"url":"http://localhost:1337/async","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["ce2c0b941f6a62b8"],"referer":["install ."],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:async"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:41:54 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/e8/1b/a9b0963bde9d8cb31e0fe8762eac5e3d3c2cd27e8bb1fbcdc22399c3d89e b/deps/npm/test/npm_cache/_cacache/index-v5/e8/1b/a9b0963bde9d8cb31e0fe8762eac5e3d3c2cd27e8bb1fbcdc22399c3d89e deleted file mode 100644 index 87a7ff8957c504..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/e8/1b/a9b0963bde9d8cb31e0fe8762eac5e3d3c2cd27e8bb1fbcdc22399c3d89e +++ /dev/null @@ -1,2 +0,0 @@ - -253438baa1d440b6ce159e9f2875b750e6182cc1 {"key":"pacote:git-manifest:git://localhost:1234/child.git#aef7bbd091eeef812d6364c2e8250b1e4b39a5ba","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833000939,"size":1,"metadata":{"id":"child@1.0.3","manifest":{"name":"child","version":"1.0.3","dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"git://localhost:1234/child.git#aef7bbd091eeef812d6364c2e8250b1e4b39a5ba","_integrity":null,"_shasum":null,"_shrinkwrap":null,"bin":null,"_id":"child@1.0.3"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ec/6e/39493289897b28d06119b515a4d107ae1cd16ef94cdbbbd34a1c5687e07d b/deps/npm/test/npm_cache/_cacache/index-v5/ec/6e/39493289897b28d06119b515a4d107ae1cd16ef94cdbbbd34a1c5687e07d deleted file mode 100644 index 52c1db7db9ff26..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ec/6e/39493289897b28d06119b515a4d107ae1cd16ef94cdbbbd34a1c5687e07d +++ /dev/null @@ -1,2 +0,0 @@ - -d76e587682077896d26831eff1e0a565de513e48 {"key":"pacote:range-manifest:http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz:sha1-BweNtfY3f2Mh/Oqu30l94STclGU=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1544485144560,"size":1,"metadata":{"id":"graceful-fs@1.1.14","manifest":{"name":"graceful-fs","version":"1.1.14","engines":{"node":">=0.4.0"},"dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":"please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js","_resolved":"http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz","_integrity":"sha1-BweNtfY3f2Mh/Oqu30l94STclGU=","_shasum":"07078db5f6377f6321fceaaedf497de124dc9465","_shrinkwrap":null,"bin":null,"_id":"graceful-fs@1.1.14"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ed/27/eea30d253f59f5df5e11155392ad66e8ee2a352798e5fe782b98c941c2c6 b/deps/npm/test/npm_cache/_cacache/index-v5/ed/27/eea30d253f59f5df5e11155392ad66e8ee2a352798e5fe782b98c941c2c6 deleted file mode 100644 index ed9713ce31dcbc..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ed/27/eea30d253f59f5df5e11155392ad66e8ee2a352798e5fe782b98c941c2c6 +++ /dev/null @@ -1,3 +0,0 @@ - -eeca4d82c272dcf056ae5ccedbee1bc36d0016e5 {"key":"make-fetch-happen:request-cache:http://localhost:1337/checker/-/checker-0.5.2.tgz","integrity":"sha1-wno2vwDzp6PSSo+8eFPwb85OnIY=","time":1547833073425,"size":7954,"metadata":{"url":"http://localhost:1337/checker/-/checker-0.5.2.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["871adf8f5053357c"],"referer":["install"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:checker@http://localhost:1337/checker/-/checker-0.5.2.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:37:53 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -372d7d61d7b9afb8dc42427e73af7c095a7c0b99 {"key":"make-fetch-happen:request-cache:http://localhost:1337/checker/-/checker-0.5.2.tgz","integrity":"sha1-wno2vwDzp6PSSo+8eFPwb85OnIY=","time":1547833093304,"size":7954,"metadata":{"url":"http://localhost:1337/checker/-/checker-0.5.2.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["fcd144259ba74815"],"referer":["install ."],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:checker@http://localhost:1337/checker/-/checker-0.5.2.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:13 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ed/4a/09a226827d40ba61648afad16c456d1d0fbce7e14fc1c7a9dba42620f68a b/deps/npm/test/npm_cache/_cacache/index-v5/ed/4a/09a226827d40ba61648afad16c456d1d0fbce7e14fc1c7a9dba42620f68a deleted file mode 100644 index c60c0db4778810..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ed/4a/09a226827d40ba61648afad16c456d1d0fbce7e14fc1c7a9dba42620f68a +++ /dev/null @@ -1,3 +0,0 @@ - -57d3cd9efcea5462da06a3e9cc811ce05f70f512 {"key":"make-fetch-happen:request-cache:http://localhost:1337/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz","integrity":"sha1-NWoZK3kTsExUV00Ywo1G5jlUKKs=","time":1547832996631,"size":1,"metadata":{"url":"http://localhost:1337/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["2b49fe996267b15d"],"referer":["cache add add-named-update-protocol-port@0.0.0"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:add-named-update-protocol-port@http://localhost:1337/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:36 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -297227923865262e10cdf85969912988683723cc {"key":"make-fetch-happen:request-cache:http://localhost:1337/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz","integrity":"sha1-NWoZK3kTsExUV00Ywo1G5jlUKKs=","time":1547833219219,"size":1,"metadata":{"url":"http://localhost:1337/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["302f70336b58dfc7"],"referer":["cache add add-named-update-protocol-port@0.0.0"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:add-named-update-protocol-port@http://localhost:1337/registry/add-named-update-protocol-port/-/add-named-update-protocol-port-0.0.0.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:19 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ee/20/77825ded7fe59483cde11169fc083be6367490e46bce28208b4f7b5cb2f8 b/deps/npm/test/npm_cache/_cacache/index-v5/ee/20/77825ded7fe59483cde11169fc083be6367490e46bce28208b4f7b5cb2f8 deleted file mode 100644 index a22def52c27479..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ee/20/77825ded7fe59483cde11169fc083be6367490e46bce28208b4f7b5cb2f8 +++ /dev/null @@ -1,2 +0,0 @@ - -a18279e98f139d677e0afaef21df7110cd5d2407 {"key":"pacote:range-manifest:http://localhost:1337/async/-/async-0.2.10.tgz:sha1-trvgsGdLnXGXCMo43owjfLUmw9E=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833073453,"size":1,"metadata":{"id":"async@0.2.10","manifest":{"name":"async","version":"0.2.10","dependencies":{},"optionalDependencies":{},"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/async/-/async-0.2.10.tgz","_integrity":"sha1-trvgsGdLnXGXCMo43owjfLUmw9E=","_shasum":"b6bbe0b0674b9d719708ca38de8c237cb526c3d1","_shrinkwrap":null,"bin":null,"_id":"async@0.2.10"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/f2/8a/d9e34baa5c3e47b2bf8e975217eae2e4816c2a8e9cdee330a1e2acfbd7a6 b/deps/npm/test/npm_cache/_cacache/index-v5/f2/8a/d9e34baa5c3e47b2bf8e975217eae2e4816c2a8e9cdee330a1e2acfbd7a6 deleted file mode 100644 index b2fbe3ca37e1e5..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/f2/8a/d9e34baa5c3e47b2bf8e975217eae2e4816c2a8e9cdee330a1e2acfbd7a6 +++ /dev/null @@ -1,3 +0,0 @@ - -be8503a914b4a9eb05323f6589baa6e95ac1ace5 {"key":"pacote:packed-dir:git://localhost:1234/child.git#3c75176bfda09442604d2a1a23d56f3e73d4655d","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833228437,"size":143} -db82585066c86ab6739fbbd6d29417c3bf41b0af {"key":"pacote:packed-dir:git://localhost:1234/child.git#3c75176bfda09442604d2a1a23d56f3e73d4655d","integrity":"sha512-tIpFTFX5X6A1HMpHl2H1/3kvj3q0RI8rE5mjrDd4pgopP3H+7aKWeM4VtxcSsIA/mGbpLAy8RUm0gHQ13PenZw==","time":1547833228736,"size":143} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/f2/dd/746a6d5b6232e793f562d37f6471e6bd96641b1670b43d01fca9e23884e3 b/deps/npm/test/npm_cache/_cacache/index-v5/f2/dd/746a6d5b6232e793f562d37f6471e6bd96641b1670b43d01fca9e23884e3 deleted file mode 100644 index 6f87578c6af746..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/f2/dd/746a6d5b6232e793f562d37f6471e6bd96641b1670b43d01fca9e23884e3 +++ /dev/null @@ -1,2 +0,0 @@ - -1484b5a751a41026c82f5e15df79dad5b49ec0b0 {"key":"pacote:version-manifest:http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz:sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833093388,"size":1,"metadata":{"id":"wordwrap@0.0.2","manifest":{"name":"wordwrap","version":"0.0.2","engines":{"node":">=0.4.0"},"dependencies":{},"optionalDependencies":{},"devDependencies":{"expresso":"=0.7.x"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/wordwrap/-/wordwrap-0.0.2.tgz","_integrity":"sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=","_shasum":"b79669bb42ecb409f83d583cad52ca17eaa1643f","_shrinkwrap":null,"bin":null,"_id":"wordwrap@0.0.2"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/f6/6a/1afded1007145f766ff1dbaa948bd898062da50bed98d5b04f317278fa48 b/deps/npm/test/npm_cache/_cacache/index-v5/f6/6a/1afded1007145f766ff1dbaa948bd898062da50bed98d5b04f317278fa48 deleted file mode 100644 index 7d47a831f0eaa9..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/f6/6a/1afded1007145f766ff1dbaa948bd898062da50bed98d5b04f317278fa48 +++ /dev/null @@ -1,13 +0,0 @@ - -c496bdab66ee640e57ac94ecc9d022045efa0842 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-5wbenY5s4WFSvlN8vM3yYyGz1ng5TOQvtWqk5po3q6nVTfKEcA0Gb35tAF5GGrQdIg/W8mj/iJ5AWAkQinuGdg==","time":1547833099859,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["b2a762637ebb6243"],"referer":["dist-tag ls [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:19 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -7df52710572e8f306657a1d0dd6aabc3d8e7f5cc {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-5wbenY5s4WFSvlN8vM3yYyGz1ng5TOQvtWqk5po3q6nVTfKEcA0Gb35tAF5GGrQdIg/W8mj/iJ5AWAkQinuGdg==","time":1547833100433,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["7e0824b4d5754fe0"],"referer":["dist-tag [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:20 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -21038ebd62c8b343b8e8f462cada4028f187e1d8 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-5wbenY5s4WFSvlN8vM3yYyGz1ng5TOQvtWqk5po3q6nVTfKEcA0Gb35tAF5GGrQdIg/W8mj/iJ5AWAkQinuGdg==","time":1547833100966,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["0aee77a11a611461"],"referer":["dist-tag add [REDACTED] c"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:20 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -d11897de6f93b8ee83147e14e3e94d21cb34fd86 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-oaEHLK5hbB9keREOPj7lT6FpeMCB2AMpmdYtIH5c1sdkPkY9c9P/SyGK1xdyTJGAE+A5VPlykZLL36HQvtb9OQ==","time":1547833101529,"size":30,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["06964db6715165d3"],"referer":["dist-tag set [REDACTED] b"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:21 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -cf1322bf05e7a817e46edba40a374e330227821a {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-NTlyH3BfYhz/4w28govjh+JTxQ7QX7Co4/QYdpmWvd4d0cuK8uR9/pQXqresPSONHwNu8umtuJjDhvDNqbaGHg==","time":1547833102191,"size":54,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["988ea95f43da9d36"],"referer":["dist-tag rm [REDACTED] c"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:22 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -9d153a064fd24e83593e524e4d4fe88cf33df00d {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-oPha6LSEvHH7E+9ja5ruRfVIq2NXSINp/7AvI5+Uc8a5TFwqXvOxuW4WzmFY3AXxPviLzvMt47xBWkjNxVADVQ==","time":1547833102764,"size":18,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["b718f0bf6694646a"],"referer":["dist-tag rm [REDACTED] nonexistent"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:38:22 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -7891988ddf3d1f7d07a3b3fef3a1824bd55e7a13 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-5wbenY5s4WFSvlN8vM3yYyGz1ng5TOQvtWqk5po3q6nVTfKEcA0Gb35tAF5GGrQdIg/W8mj/iJ5AWAkQinuGdg==","time":1547833320255,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["184ec63f44d4f2af"],"referer":["dist-tag ls [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:42:00 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -30f4ec8b2f2af36098df7b3092cf8605f09a2959 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-5wbenY5s4WFSvlN8vM3yYyGz1ng5TOQvtWqk5po3q6nVTfKEcA0Gb35tAF5GGrQdIg/W8mj/iJ5AWAkQinuGdg==","time":1547833320772,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["90674af1a572a629"],"referer":["dist-tag [REDACTED]"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:42:00 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -b6c279032b629776673d4e5cdc4424181e1acc3f {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-5wbenY5s4WFSvlN8vM3yYyGz1ng5TOQvtWqk5po3q6nVTfKEcA0Gb35tAF5GGrQdIg/W8mj/iJ5AWAkQinuGdg==","time":1547833321318,"size":42,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["bfc4da9b2d97d1c7"],"referer":["dist-tag add [REDACTED] c"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:42:01 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -0fdfd60b28cb1869d83ca01b7b194e1b400a6bf3 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-oaEHLK5hbB9keREOPj7lT6FpeMCB2AMpmdYtIH5c1sdkPkY9c9P/SyGK1xdyTJGAE+A5VPlykZLL36HQvtb9OQ==","time":1547833321936,"size":30,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["576fdd8ec20fae78"],"referer":["dist-tag set [REDACTED] b"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:42:01 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -4c7b732b7c0ca0c535817874a053b602ba0ffd78 {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-NTlyH3BfYhz/4w28govjh+JTxQ7QX7Co4/QYdpmWvd4d0cuK8uR9/pQXqresPSONHwNu8umtuJjDhvDNqbaGHg==","time":1547833322468,"size":54,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["2b7cb98442d19d37"],"referer":["dist-tag rm [REDACTED] c"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:42:02 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -cbf1ecd55e1db2acc2575f79d62ab2527ff3b6ca {"key":"make-fetch-happen:request-cache:http://localhost:1337/-/package/@scoped%2fanother/dist-tags","integrity":"sha512-oPha6LSEvHH7E+9ja5ruRfVIq2NXSINp/7AvI5+Uc8a5TFwqXvOxuW4WzmFY3AXxPviLzvMt47xBWkjNxVADVQ==","time":1547833323093,"size":18,"metadata":{"url":"http://localhost:1337/-/package/@scoped%2fanother/dist-tags","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":["@scoped"],"npm-session":["d321519b8d5f7e23"],"referer":["dist-tag rm [REDACTED] nonexistent"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:42:03 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/fc/88/41f0501b29bfe9117061c190df783256e332cab7782a7484078354ddbb0f b/deps/npm/test/npm_cache/_cacache/index-v5/fc/88/41f0501b29bfe9117061c190df783256e332cab7782a7484078354ddbb0f deleted file mode 100644 index 9701c3fb55faf9..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/fc/88/41f0501b29bfe9117061c190df783256e332cab7782a7484078354ddbb0f +++ /dev/null @@ -1,3 +0,0 @@ - -e05851ada6a8b60a84358486f62dd100be2f8170 {"key":"make-fetch-happen:request-cache:http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz","integrity":"sha1-NWoZK3kTsExUV00Ywo1G5jlUKKs=","time":1547832997192,"size":1,"metadata":{"url":"http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["8cb41ddc499c27b6"],"referer":["cache add add-named-update-protocol-porti@0.0.0"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:add-named-update-protocol-porti@http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:36:37 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} -bcd7495c1e69e7cbfd7cda387abb72f8454a0a9e {"key":"make-fetch-happen:request-cache:http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz","integrity":"sha1-NWoZK3kTsExUV00Ywo1G5jlUKKs=","time":1547833219779,"size":1,"metadata":{"url":"http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.6.0 node/v11.6.0 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["87b598eff1cdd205"],"referer":["cache add add-named-update-protocol-porti@0.0.0"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:add-named-update-protocol-porti@http://127.0.0.1:1338/registry/add-named-update-protocol-porti/-/add-named-update-protocol-porti-0.0.0.tgz"]},"resHeaders":{"connection":["close"],"date":["Fri, 18 Jan 2019 17:40:19 GMT"],"transfer-encoding":["chunked"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/fd/a9/67911fbad568af62425934e3a7938145b60af92641734e54a8f50a418c03 b/deps/npm/test/npm_cache/_cacache/index-v5/fd/a9/67911fbad568af62425934e3a7938145b60af92641734e54a8f50a418c03 deleted file mode 100644 index c035c359fd6d67..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/fd/a9/67911fbad568af62425934e3a7938145b60af92641734e54a8f50a418c03 +++ /dev/null @@ -1,2 +0,0 @@ - -cf643ea07623ca00c880b88ac8d9fbb1b1c76ba6 {"key":"pacote:version-manifest:http://localhost:1337/async/-/async-0.2.10.tgz:sha1-trvgsGdLnXGXCMo43owjfLUmw9E=","integrity":"sha512-C2EkHXwXvLsbrucJTRS3xFHv7Mf/y9klmKDxPTE8yevCoH5h8Ae69Y+/lP+ahpW91crnzgO78elOk2E6APJfIQ==","time":1547833093331,"size":1,"metadata":{"id":"async@0.2.10","manifest":{"name":"async","version":"0.2.10","dependencies":{},"optionalDependencies":{},"devDependencies":{"nodeunit":">0.0.0","uglify-js":"1.2.x","nodelint":">0.0.0"},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"http://localhost:1337/async/-/async-0.2.10.tgz","_integrity":"sha1-trvgsGdLnXGXCMo43owjfLUmw9E=","_shasum":"b6bbe0b0674b9d719708ca38de8c237cb526c3d1","_shrinkwrap":null,"bin":null,"_id":"async@0.2.10"},"type":"finalized-manifest"}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/fe/7e/e4d136986019ebc5360c54baee7ae9bec37f513387665b57ac2bcd167b70 b/deps/npm/test/npm_cache/_cacache/index-v5/fe/7e/e4d136986019ebc5360c54baee7ae9bec37f513387665b57ac2bcd167b70 deleted file mode 100644 index 7d5b158124cf73..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/fe/7e/e4d136986019ebc5360c54baee7ae9bec37f513387665b57ac2bcd167b70 +++ /dev/null @@ -1,2 +0,0 @@ - -8cdd51e878b62f99bcceb9269e1a21a0fa5474c3 {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz","integrity":"sha1-BweNtfY3f2Mh/Oqu30l94STclGU=","time":1544485144557,"size":4025,"metadata":{"url":"https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.5.0 node/v10.14.1 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["28a99044412a2230"],"referer":["install [REDACTED]"],"pacote-req-type":["tarball"],"pacote-pkg-id":["registry:graceful-fs@https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.1.14.tgz"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Mon, 10 Dec 2018 23:39:04 GMT"],"content-type":["application/octet-stream"],"content-length":["4025"],"connection":["keep-alive"],"set-cookie":["__cfduid=d9119cbf97c872d57754e45bf35e112b91544485144; expires=Tue, 10-Dec-19 23:39:04 GMT; path=/; domain=.registry.npmjs.org; HttpOnly"],"cf-cache-status":["HIT"],"cache-control":["max-age=432000"],"accept-ranges":["bytes"],"cf-ray":["48738c79492b6c4c-SJC"],"etag":["\"fb46c820a063a666be04b2c416d51b29\""],"expect-ct":["max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""],"last-modified":["Sun, 27 May 2018 02:39:27 GMT"],"vary":["Accept-Encoding"],"server":["cloudflare"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_cacache/index-v5/ff/d3/eca629ba696cac5a91e13f61bb768d7cbf82072f798d17071572ab3943f2 b/deps/npm/test/npm_cache/_cacache/index-v5/ff/d3/eca629ba696cac5a91e13f61bb768d7cbf82072f798d17071572ab3943f2 deleted file mode 100644 index 2df72adaac8b1c..00000000000000 --- a/deps/npm/test/npm_cache/_cacache/index-v5/ff/d3/eca629ba696cac5a91e13f61bb768d7cbf82072f798d17071572ab3943f2 +++ /dev/null @@ -1,2 +0,0 @@ - -f958db19324fd46983256770efb05e8753aac7f6 {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/inherits","integrity":"sha512-IYLqxPg+UPO2qovqVhxd/r3B1mlB4tp4WvQG4EXeVqD8QiA0yn+iq1+pkCLGuGAgPrSFPOhfFfJrlshLjZ5zIA==","time":1544485144511,"size":1494,"metadata":{"url":"https://registry.npmjs.org/inherits","reqHeaders":{"connection":["keep-alive"],"user-agent":["npm/6.5.0 node/v10.14.1 darwin x64"],"npm-in-ci":["false"],"npm-scope":[""],"npm-session":["28a99044412a2230"],"referer":["install [REDACTED]"],"pacote-req-type":["packument"],"pacote-pkg-id":["registry:inherits"],"accept":["application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"],"authorization":["Basic dXNlcm5hbWU6cGFzc3dvcmQ="]},"resHeaders":{"date":["Mon, 10 Dec 2018 23:39:04 GMT"],"content-type":["application/vnd.npm.install-v1+json"],"content-length":["1494"],"connection":["keep-alive"],"set-cookie":["__cfduid=d9119cbf97c872d57754e45bf35e112b91544485144; expires=Tue, 10-Dec-19 23:39:04 GMT; path=/; domain=.registry.npmjs.org; HttpOnly"],"cf-cache-status":["HIT"],"cache-control":["max-age=300"],"accept-ranges":["bytes"],"cf-ray":["48738c7909076c4c-SJC"],"etag":["\"419f7e0699d401599186150793ffd002\""],"expect-ct":["max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""],"last-modified":["Fri, 03 Aug 2018 00:38:04 GMT"],"vary":["accept-encoding, accept"],"server":["cloudflare"],"x-fetch-attempts":["1"]}}} \ No newline at end of file diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_24_580Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_24_580Z-debug.log deleted file mode 100644 index c2cc5dbf59a8a0..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_24_580Z-debug.log +++ /dev/null @@ -1,54 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'install', -1 verbose cli '--engine-strict', -1 verbose cli '/Users/zkat/Documents/code/work/npm/test/tap/check-engine-reqs/from', -1 verbose cli '--loglevel', -1 verbose cli 'silly' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session cf9ef66b93f6540b -5 silly install loadCurrentTree -6 silly install readLocalPackageData -7 silly pacote directory manifest for undefined@file:/Users/zkat/Documents/code/work/npm/test/tap/check-engine-reqs/from fetched in 7ms -8 timing stage:loadCurrentTree Completed in 22ms -9 silly install loadIdealTree -10 silly install cloneCurrentTreeToIdealTree -11 timing stage:loadIdealTree:cloneCurrentTree Completed in 0ms -12 silly install loadShrinkwrap -13 timing stage:loadIdealTree:loadShrinkwrap Completed in 1ms -14 silly install loadAllDepsIntoIdealTree -15 timing stage:rollbackFailedOptional Completed in 0ms -16 timing stage:runTopLevelLifecycles Completed in 26ms -17 silly saveTree in -18 verbose stack Error: Unsupported engine for check-engine-reqs@0.0.1: wanted: {"node":"1.0.0-not-a-real-version"} (current: {"node":"11.6.0","npm":"6.6.0"}) -18 verbose stack at checkEngine (/Users/zkat/Documents/code/work/npm/node_modules/npm-install-checks/index.js:13:14) -18 verbose stack at module.exports.isInstallable (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:49:3) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:18:7 -18 verbose stack at checkSelf (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:57:72) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:18:7 -18 verbose stack at hasMinimumFields (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:30:12) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at chain (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:20:5) -18 verbose stack at /Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:16:5 -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/async-map.js:52:35 -18 verbose stack at Array.forEach () -19 verbose pkgid check-engine-reqs@0.0.1 -20 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/check-engine-reqs/in -21 verbose Darwin 18.0.0 -22 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "install" "--engine-strict" "/Users/zkat/Documents/code/work/npm/test/tap/check-engine-reqs/from" "--loglevel" "silly" -23 verbose node v11.6.0 -24 verbose npm v6.6.0 -25 error code ENOTSUP -26 error notsup Unsupported engine for check-engine-reqs@0.0.1: wanted: {"node":"1.0.0-not-a-real-version"} (current: {"node":"11.6.0","npm":"6.6.0"}) -27 error notsup Not compatible with your version of node/npm: check-engine-reqs@0.0.1 -28 error notsup Not compatible with your version of node/npm: check-engine-reqs@0.0.1 -28 error notsup Required: {"node":"1.0.0-not-a-real-version"} -28 error notsup Actual: {"npm":"6.6.0","node":"11.6.0"} -29 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_26_268Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_26_268Z-debug.log deleted file mode 100644 index b8f0a259aa8d92..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_26_268Z-debug.log +++ /dev/null @@ -1,56 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'install', -1 verbose cli '/Users/zkat/Documents/code/work/npm/test/tap/check-install-self/from' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session 61cb12d52a202aa0 -5 silly install loadCurrentTree -6 silly install readLocalPackageData -7 silly pacote directory manifest for undefined@file:/Users/zkat/Documents/code/work/npm/test/tap/check-install-self/from fetched in 5ms -8 timing stage:loadCurrentTree Completed in 27ms -9 silly install loadIdealTree -10 silly install cloneCurrentTreeToIdealTree -11 timing stage:loadIdealTree:cloneCurrentTree Completed in 1ms -12 silly install loadShrinkwrap -13 timing stage:loadIdealTree:loadShrinkwrap Completed in 0ms -14 silly install loadAllDepsIntoIdealTree -15 timing stage:rollbackFailedOptional Completed in 1ms -16 timing stage:runTopLevelLifecycles Completed in 30ms -17 silly saveTree check-install-self@0.0.1 -18 verbose stack Error: Refusing to install package with name "check-install-self" under a package -18 verbose stack also called "check-install-self". Did you name your project the same -18 verbose stack as the dependency you're installing? -18 verbose stack -18 verbose stack For more information, see: -18 verbose stack -18 verbose stack at checkSelf (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:64:14) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:18:7 -18 verbose stack at hasMinimumFields (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:30:12) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at chain (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:20:5) -18 verbose stack at /Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:16:5 -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/async-map.js:52:35 -18 verbose stack at Array.forEach () -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/async-map.js:52:11 -18 verbose stack at Array.forEach () -18 verbose stack at asyncMap (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/async-map.js:51:8) -18 verbose stack at module.exports (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:15:3) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -19 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/check-install-self/in -20 verbose Darwin 18.0.0 -21 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "install" "/Users/zkat/Documents/code/work/npm/test/tap/check-install-self/from" -22 verbose node v11.6.0 -23 verbose npm v6.6.0 -24 error code ENOSELF -25 error Refusing to install package with name "check-install-self" under a package -25 error also called "check-install-self". Did you name your project the same -25 error as the dependency you're installing? -25 error -25 error For more information, see: -25 error -26 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_28_020Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_28_020Z-debug.log deleted file mode 100644 index 27a7399a72cb36..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_28_020Z-debug.log +++ /dev/null @@ -1,53 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'install', -1 verbose cli '/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from', -1 verbose cli '--loglevel', -1 verbose cli 'silly' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session 0d53651f554c2a7e -5 silly install loadCurrentTree -6 silly install readLocalPackageData -7 silly pacote directory manifest for undefined@file:/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from fetched in 5ms -8 timing stage:loadCurrentTree Completed in 20ms -9 silly install loadIdealTree -10 silly install cloneCurrentTreeToIdealTree -11 timing stage:loadIdealTree:cloneCurrentTree Completed in 1ms -12 silly install loadShrinkwrap -13 timing stage:loadIdealTree:loadShrinkwrap Completed in 0ms -14 silly install loadAllDepsIntoIdealTree -15 timing stage:rollbackFailedOptional Completed in 1ms -16 timing stage:runTopLevelLifecycles Completed in 23ms -17 silly saveTree in -18 verbose stack Error: Unsupported platform for check-os-reqs@0.0.1: wanted {"name":"check-os-reqs","version":"0.0.1","os":["fake-os"],"dependencies":{},"optionalDependencies":{},"devDependencies":{},"bundleDependencies":false,"peerDependencies":{},"deprecated":false,"_resolved":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from","_integrity":null,"_shasum":null,"_shrinkwrap":null,"bin":null,"_id":"check-os-reqs@0.0.1","_from":"file:/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from","_requested":{"type":"directory","where":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/in","raw":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from","rawSpec":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from","saveSpec":"file:/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from","fetchSpec":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from"},"_spec":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from","_where":"/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/in"} (current: {"os":"darwin","cpu":"x64"}) -18 verbose stack at checkPlatform (/Users/zkat/Documents/code/work/npm/node_modules/npm-install-checks/index.js:45:14) -18 verbose stack at thenWarnEngineIssues (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:52:5) -18 verbose stack at a (/Users/zkat/Documents/code/work/npm/node_modules/iferr/iferr.js:3:64) -18 verbose stack at checkEngine (/Users/zkat/Documents/code/work/npm/node_modules/npm-install-checks/index.js:10:20) -18 verbose stack at module.exports.isInstallable (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:49:3) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:18:7 -18 verbose stack at checkSelf (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:57:72) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at /Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:18:7 -18 verbose stack at hasMinimumFields (/Users/zkat/Documents/code/work/npm/lib/install/validate-args.js:30:12) -18 verbose stack at Array. (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/bind-actor.js:15:8) -18 verbose stack at LOOP (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:15:14) -18 verbose stack at chain (/Users/zkat/Documents/code/work/npm/node_modules/slide/lib/chain.js:20:5) -19 verbose pkgid check-os-reqs@0.0.1 -20 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/in -21 verbose Darwin 18.0.0 -22 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "install" "/Users/zkat/Documents/code/work/npm/test/tap/check-os-reqs/from" "--loglevel" "silly" -23 verbose node v11.6.0 -24 verbose npm v6.6.0 -25 error code EBADPLATFORM -26 error notsup Unsupported platform for check-os-reqs@0.0.1: wanted {"os":"fake-os","arch":"any"} (current: {"os":"darwin","arch":"x64"}) -27 error notsup Valid OS: fake-os -27 error notsup Valid Arch: any -27 error notsup Actual OS: darwin -27 error notsup Actual Arch: x64 -28 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_39_719Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_39_719Z-debug.log deleted file mode 100644 index 078b12da87fd78..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_39_719Z-debug.log +++ /dev/null @@ -1,27 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'ci', -1 verbose cli '--registry', -1 verbose cli 'http://localhost:1337', -1 verbose cli '--loglevel', -1 verbose cli 'warn' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session ebc502d2075f4b06 -5 info prepare initializing installer -6 verbose prepare starting workers -7 verbose prepare installation prefix: /Users/zkat/Documents/code/work/npm/test/tap/ci -8 verbose checkLock verifying package-lock data -9 verbose teardown shutting down workers. -10 info teardown Done in 0s -11 verbose stack Error: cipm can only install packages with an existing package-lock.json or npm-shrinkwrap.json with lockfileVersion >= 1. Run an install with npm@5 or later to generate it, then try again. -11 verbose stack at Installer.checkLock (/Users/zkat/Documents/code/work/npm/node_modules/libcipm/index.js:184:9) -11 verbose stack at then.then.then.stat (/Users/zkat/Documents/code/work/npm/node_modules/libcipm/index.js:158:16) -12 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/ci -13 verbose Darwin 18.0.0 -14 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "ci" "--registry" "http://localhost:1337" "--loglevel" "warn" -15 verbose node v11.6.0 -16 verbose npm v6.6.0 -17 error cipm can only install packages with an existing package-lock.json or npm-shrinkwrap.json with lockfileVersion >= 1. Run an install with npm@5 or later to generate it, then try again. -18 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_40_242Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_40_242Z-debug.log deleted file mode 100644 index b88b1c08ceb40c..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_40_242Z-debug.log +++ /dev/null @@ -1,34 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'ci', -1 verbose cli '--registry', -1 verbose cli 'http://localhost:1337', -1 verbose cli '--loglevel', -1 verbose cli 'warn' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session 81dd68c6da560193 -5 info prepare initializing installer -6 verbose prepare starting workers -7 verbose prepare installation prefix: /Users/zkat/Documents/code/work/npm/test/tap/ci -8 verbose prepare using package-lock.json -9 verbose checkLock verifying package-lock data -10 verbose teardown shutting down workers. -11 info teardown Done in 0s -12 verbose stack Error: cipm can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync. Please update your lock file with `npm install` before continuing. -12 verbose stack -12 verbose stack -12 verbose stack Missing: optimist@0.6.0 -12 verbose stack -12 verbose stack at lockVerify.then.result (/Users/zkat/Documents/code/work/npm/node_modules/libcipm/index.js:191:15) -13 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/ci -14 verbose Darwin 18.0.0 -15 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "ci" "--registry" "http://localhost:1337" "--loglevel" "warn" -16 verbose node v11.6.0 -17 verbose npm v6.6.0 -18 error cipm can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync. Please update your lock file with `npm install` before continuing. -18 error -18 error -18 error Missing: optimist@0.6.0 -19 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_47_912Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_47_912Z-debug.log deleted file mode 100644 index 4013f3d68de771..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_47_912Z-debug.log +++ /dev/null @@ -1,21 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'config', -1 verbose cli 'get', -1 verbose cli '_auth' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose stack Error: ---sekretz--- -4 verbose stack at get (/Users/zkat/Documents/code/work/npm/lib/config.js:166:15) -4 verbose stack at EventEmitter.config (/Users/zkat/Documents/code/work/npm/lib/config.js:68:14) -4 verbose stack at Object.commandCache.(anonymous function) (/Users/zkat/Documents/code/work/npm/lib/npm.js:156:13) -4 verbose stack at EventEmitter. (/Users/zkat/Documents/code/work/npm/bin/npm-cli.js:131:30) -4 verbose stack at process.internalTickCallback (internal/process/next_tick.js:70:11) -5 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/config-private -6 verbose Darwin 18.0.0 -7 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "config" "get" "_auth" -8 verbose node v11.6.0 -9 verbose npm v6.6.0 -10 error ---sekretz--- -11 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_48_220Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_48_220Z-debug.log deleted file mode 100644 index 126eb27b68b912..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_48_220Z-debug.log +++ /dev/null @@ -1,21 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'config', -1 verbose cli 'get', -1 verbose cli '//registry.npmjs.org/:_password' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose stack Error: ---sekretz--- -4 verbose stack at get (/Users/zkat/Documents/code/work/npm/lib/config.js:166:15) -4 verbose stack at EventEmitter.config (/Users/zkat/Documents/code/work/npm/lib/config.js:68:14) -4 verbose stack at Object.commandCache.(anonymous function) (/Users/zkat/Documents/code/work/npm/lib/npm.js:156:13) -4 verbose stack at EventEmitter. (/Users/zkat/Documents/code/work/npm/bin/npm-cli.js:131:30) -4 verbose stack at process.internalTickCallback (internal/process/next_tick.js:70:11) -5 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/config-private -6 verbose Darwin 18.0.0 -7 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "config" "get" "//registry.npmjs.org/:_password" -8 verbose node v11.6.0 -9 verbose npm v6.6.0 -10 error ---sekretz--- -11 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_57_730Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_57_730Z-debug.log deleted file mode 100644 index 23b9aeb897e949..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_41_57_730Z-debug.log +++ /dev/null @@ -1,26 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'deprecate', -1 verbose cli 'cond@-9001', -1 verbose cli 'make it dead', -1 verbose cli '--registry', -1 verbose cli 'http://localhost:1337' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session 754b761c5653fbe8 -5 verbose stack Error: invalid version range: -9001 -5 verbose stack at BB.try (/Users/zkat/Documents/code/work/npm/lib/deprecate.js:52:13) -5 verbose stack at tryCatcher (/Users/zkat/Documents/code/work/npm/node_modules/bluebird/js/release/util.js:16:23) -5 verbose stack at Function.Promise.attempt.Promise.try (/Users/zkat/Documents/code/work/npm/node_modules/bluebird/js/release/method.js:39:29) -5 verbose stack at EventEmitter.deprecate (/Users/zkat/Documents/code/work/npm/lib/deprecate.js:42:16) -5 verbose stack at Object.commandCache.(anonymous function) (/Users/zkat/Documents/code/work/npm/lib/npm.js:156:13) -5 verbose stack at EventEmitter. (/Users/zkat/Documents/code/work/npm/bin/npm-cli.js:131:30) -5 verbose stack at process.internalTickCallback (internal/process/next_tick.js:70:11) -6 verbose cwd /Users/zkat/Documents/code/work/npm -7 verbose Darwin 18.0.0 -8 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "deprecate" "cond@-9001" "make it dead" "--registry" "http://localhost:1337" -9 verbose node v11.6.0 -10 verbose npm v6.6.0 -11 error invalid version range: -9001 -12 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/_logs/2019-01-18T17_42_14_004Z-debug.log b/deps/npm/test/npm_cache/_logs/2019-01-18T17_42_14_004Z-debug.log deleted file mode 100644 index 737b59e4b61831..00000000000000 --- a/deps/npm/test/npm_cache/_logs/2019-01-18T17_42_14_004Z-debug.log +++ /dev/null @@ -1,111 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/local/bin/node', -1 verbose cli '/Users/zkat/Documents/code/work/npm/bin/npm-cli.js', -1 verbose cli 'install', -1 verbose cli '--no-save', -1 verbose cli '../test-whoops-1.0.0.tgz' ] -2 info using npm@6.6.0 -3 info using node@v11.6.0 -4 verbose npm-session 6b1152dff5d8deaa -5 silly install loadCurrentTree -6 silly install readLocalPackageData -7 silly pacote file manifest for undefined@file:../test-whoops-1.0.0.tgz fetched in 26ms -8 timing stage:loadCurrentTree Completed in 40ms -9 silly install loadIdealTree -10 silly install cloneCurrentTreeToIdealTree -11 timing stage:loadIdealTree:cloneCurrentTree Completed in 0ms -12 silly install loadShrinkwrap -13 timing stage:loadIdealTree:loadShrinkwrap Completed in 1ms -14 silly install loadAllDepsIntoIdealTree -15 silly resolveWithNewModule @test/whoops@1.0.0 checking installable status -16 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 5ms -17 timing stage:loadIdealTree Completed in 7ms -18 silly currentTree gently-rm-overeager -19 silly idealTree gently-rm-overeager -19 silly idealTree └── @test/whoops@1.0.0 -20 silly install generateActionsToTake -21 timing stage:generateActionsToTake Completed in 4ms -22 silly diffTrees action count 1 -23 silly diffTrees add @test/whoops@1.0.0 -24 silly decomposeActions action count 8 -25 silly decomposeActions fetch @test/whoops@1.0.0 -26 silly decomposeActions extract @test/whoops@1.0.0 -27 silly decomposeActions preinstall @test/whoops@1.0.0 -28 silly decomposeActions build @test/whoops@1.0.0 -29 silly decomposeActions install @test/whoops@1.0.0 -30 silly decomposeActions postinstall @test/whoops@1.0.0 -31 silly decomposeActions finalize @test/whoops@1.0.0 -32 silly decomposeActions refresh-package-json @test/whoops@1.0.0 -33 silly install executeActions -34 silly doSerial global-install 8 -35 verbose correctMkdir /Users/zkat/Documents/code/work/npm/test/npm_cache/_locks correctMkdir not in flight; initializing -36 verbose lock using /Users/zkat/Documents/code/work/npm/test/npm_cache/_locks/staging-6ede0a15658ba472.lock for /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/.staging -37 silly doParallel extract 1 -38 silly extract @test/whoops@1.0.0 -39 silly tarball trying file:../test-whoops-1.0.0.tgz by hash: sha512-yaIGW7l0bldKVBrwYbeICUjTDkfbHcNWwxS9k0sBaYlNaW6DO9Y7bFPLlz0UuAZLWwQXfEAuNHdw3fu7x8kGyw== -40 silly extract file:../test-whoops-1.0.0.tgz extracted to /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/.staging/@test/whoops-283f4c1a (13ms) -41 timing action:extract Completed in 16ms -42 silly doReverseSerial unbuild 8 -43 silly doSerial remove 8 -44 silly doSerial move 8 -45 silly doSerial finalize 8 -46 silly finalize /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/@test/whoops -47 timing action:finalize Completed in 4ms -48 silly doParallel refresh-package-json 1 -49 silly refresh-package-json /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/@test/whoops -50 timing action:refresh-package-json Completed in 7ms -51 silly doParallel preinstall 1 -52 silly preinstall @test/whoops@1.0.0 -53 info lifecycle @test/whoops@1.0.0~preinstall: @test/whoops@1.0.0 -54 timing action:preinstall Completed in 1ms -55 silly doSerial build 8 -56 silly build @test/whoops@1.0.0 -57 info linkStuff @test/whoops@1.0.0 -58 silly linkStuff @test/whoops@1.0.0 has /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules as its parent node_modules -59 timing action:build Completed in 1ms -60 silly doSerial global-link 8 -61 silly doParallel update-linked 0 -62 silly doSerial install 8 -63 silly install @test/whoops@1.0.0 -64 info lifecycle @test/whoops@1.0.0~install: @test/whoops@1.0.0 -65 timing action:install Completed in 1ms -66 silly doSerial postinstall 8 -67 silly postinstall @test/whoops@1.0.0 -68 info lifecycle @test/whoops@1.0.0~postinstall: @test/whoops@1.0.0 -69 verbose lifecycle @test/whoops@1.0.0~postinstall: unsafe-perm in lifecycle true -70 verbose lifecycle @test/whoops@1.0.0~postinstall: PATH: /Users/zkat/Documents/code/work/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/@test/whoops/node_modules/.bin:/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/.bin:/Users/zkat/Documents/code/work/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/zkat/Documents/code/work/npm/node_modules/.bin:/Users/zkat/Documents/code/work/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/zkat/Documents/code/work/npm/node_modules/.bin:/Users/zkat/Documents/code/work/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/zkat/Documents/code/work/npm/node_modules/.bin:/Users/zkat/bin:/usr/local/opt/coreutils/libexec/gnubin:/Users/zkat/.cargo/bin:/usr/local/heroku/bin:/usr/local/bin:/Users/zkat/bin:/Applications/Postgres.app/Contents/MacOS/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/local/bin:/opt/local/sbin:/opt/X11/bin -71 verbose lifecycle @test/whoops@1.0.0~postinstall: CWD: /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/@test/whoops -72 silly lifecycle @test/whoops@1.0.0~postinstall: Args: [ '-c', "echo 'nope' && exit 1" ] -73 silly lifecycle @test/whoops@1.0.0~postinstall: Returned: code: 1 signal: null -74 info lifecycle @test/whoops@1.0.0~postinstall: Failed to exec postinstall script -75 timing action:postinstall Completed in 70ms -76 verbose unlock done using /Users/zkat/Documents/code/work/npm/test/npm_cache/_locks/staging-6ede0a15658ba472.lock for /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/node_modules/.staging -77 timing stage:rollbackFailedOptional Completed in 3ms -78 timing stage:runTopLevelLifecycles Completed in 163ms -79 warn enoent ENOENT: no such file or directory, open '/Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager/package.json' -80 verbose enoent This is related to npm not being able to find a file. -81 warn gently-rm-overeager No description -82 warn gently-rm-overeager No repository field. -83 warn gently-rm-overeager No README data -84 warn gently-rm-overeager No license field. -85 verbose stack Error: @test/whoops@1.0.0 postinstall: `echo 'nope' && exit 1` -85 verbose stack Exit status 1 -85 verbose stack at EventEmitter. (/Users/zkat/Documents/code/work/npm/node_modules/npm-lifecycle/index.js:301:16) -85 verbose stack at EventEmitter.emit (events.js:188:13) -85 verbose stack at ChildProcess. (/Users/zkat/Documents/code/work/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14) -85 verbose stack at ChildProcess.emit (events.js:188:13) -85 verbose stack at maybeClose (internal/child_process.js:978:16) -85 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:265:5) -86 verbose pkgid @test/whoops@1.0.0 -87 verbose cwd /Users/zkat/Documents/code/work/npm/test/tap/gently-rm-overeager/gently-rm-overeager -88 verbose Darwin 18.0.0 -89 verbose argv "/usr/local/bin/node" "/Users/zkat/Documents/code/work/npm/bin/npm-cli.js" "install" "--no-save" "../test-whoops-1.0.0.tgz" -90 verbose node v11.6.0 -91 verbose npm v6.6.0 -92 error code ELIFECYCLE -93 error errno 1 -94 error @test/whoops@1.0.0 postinstall: `echo 'nope' && exit 1` -94 error Exit status 1 -95 error Failed at the @test/whoops@1.0.0 postinstall script. -95 error This is probably not a problem with npm. There is likely additional logging output above. -96 verbose exit [ 1, true ] diff --git a/deps/npm/test/npm_cache/anonymous-cli-metrics.json b/deps/npm/test/npm_cache/anonymous-cli-metrics.json deleted file mode 100644 index 11494d570fed83..00000000000000 --- a/deps/npm/test/npm_cache/anonymous-cli-metrics.json +++ /dev/null @@ -1 +0,0 @@ -{"metricId":"74dc70f8-4d64-41cc-827f-aaa481242c7d","metrics":{"from":"2018-12-10T23:39:04.702Z","to":"2019-01-28T23:28:15.706Z","successfulInstalls":66,"failedInstalls":13}} \ No newline at end of file diff --git a/deps/npm/test/tap/access.js b/deps/npm/test/tap/access.js index 6a21ccc8fb3ef2..d400b4d33b134c 100644 --- a/deps/npm/test/tap/access.js +++ b/deps/npm/test/tap/access.js @@ -469,6 +469,34 @@ test('npm access ls-collaborators on package', function (t) { ) }) +test('npm access ls-collaborators on unscoped', function (t) { + var serverCollaborators = { + 'myorg:myteam': 'write', + 'myorg:anotherteam': 'read' + } + var clientCollaborators = { + 'myorg:myteam': 'read-write', + 'myorg:anotherteam': 'read-only' + } + server.get( + '/-/package/pkg/collaborators?format=cli' + ).reply(200, serverCollaborators) + common.npm( + [ + 'access', + 'ls-collaborators', + 'pkg', + '--registry', common.registry + ], + { cwd: pkg }, + function (er, code, stdout, stderr) { + t.ifError(er, 'npm access ls-collaborators') + t.same(JSON.parse(stdout), clientCollaborators) + t.end() + } + ) +}) + test('npm access ls-collaborators on current w/user filter', function (t) { var serverCollaborators = { 'myorg:myteam': 'write', diff --git a/deps/npm/test/tap/install-at-sub-path-locally.js b/deps/npm/test/tap/install-at-sub-path-locally.js new file mode 100644 index 00000000000000..e16b75179ebaf2 --- /dev/null +++ b/deps/npm/test/tap/install-at-sub-path-locally.js @@ -0,0 +1,69 @@ +var fs = require('graceful-fs') +var path = require('path') + +var mkdirp = require('mkdirp') +var osenv = require('osenv') +var rimraf = require('rimraf') +var test = require('tap').test + +var common = require('../common-tap.js') + +var pkg = path.join(__dirname, 'install-at-sub-path-locally') + +var EXEC_OPTS = { cwd: pkg, stdio: [0, 1, 2] } + +var json = { + name: 'install-at-sub-path-locally-mock', + version: '0.0.0' +} + +var target = '../package@1.2.3' + +test('setup', function (t) { + cleanup() + t.end() +}) + +test('\'npm install ../package@1.2.3\' should install local pkg from sub path', function (t) { + setup() + common.npm(['install', '--loglevel=silent', target], EXEC_OPTS, function (err, code) { + if (err) throw err + var p = path.resolve(pkg, 'node_modules/install-at-sub-path-locally-mock/package.json') + t.equal(code, 0, 'npm install exited with code') + t.ok(JSON.parse(fs.readFileSync(p, 'utf8'))) + t.end() + }) +}) + +test('\'running npm install ../package@1.2.3\' should not break on sub path re-install', function (t) { + common.npm(['install', '--loglevel=silent', target], EXEC_OPTS, function (err, code) { + if (err) throw err + var p = path.resolve(pkg, 'node_modules/install-at-sub-path-locally-mock/package.json') + t.equal(code, 0, 'npm install exited with code') + t.ok(JSON.parse(fs.readFileSync(p, 'utf8'))) + t.end() + }) +}) + +test('cleanup', function (t) { + cleanup() + t.end() +}) + +function cleanup () { + process.chdir(osenv.tmpdir()) + rimraf.sync(pkg) + rimraf.sync(path.resolve(pkg, target)) +} + +function setup () { + cleanup() + var root = path.resolve(pkg, target) + mkdirp.sync(root) + fs.writeFileSync( + path.join(root, 'package.json'), + JSON.stringify(json, null, 2) + ) + mkdirp.sync(path.resolve(pkg, 'node_modules')) + process.chdir(pkg) +} diff --git a/deps/npm/test/tap/ls-peer.js b/deps/npm/test/tap/ls-peer.js new file mode 100644 index 00000000000000..826380932a1470 --- /dev/null +++ b/deps/npm/test/tap/ls-peer.js @@ -0,0 +1,123 @@ +'use strict' +const path = require('path') +const test = require('tap').test +const Tacks = require('tacks') +const File = Tacks.File +const Dir = Tacks.Dir +const common = require('../common-tap.js') + +const basedir = path.join(__dirname, path.basename(__filename, '.js')) +const testdir = path.join(basedir, 'testdir') +const cachedir = path.join(basedir, 'cache') +const globaldir = path.join(basedir, 'global') +const tmpdir = path.join(basedir, 'tmp') + +const conf = { + cwd: testdir, + env: common.newEnv().extend({ + npm_config_cache: cachedir, + npm_config_tmp: tmpdir, + npm_config_prefix: globaldir, + npm_config_registry: common.registry, + npm_config_loglevel: 'warn' + }) +} + +const fixture = new Tacks(Dir({ + cache: Dir(), + global: Dir(), + tmp: Dir(), + testdir: Dir({ + 'package.json': File({ + name: 'fixture', + version: '1.0.0', + dependencies: { + dep: 'file:dep-1.0.0.tgz', + 'peer-dep': 'file:peer-dep-2.0.0.tgz' + } + }), + // Source dir + // dep: Dir({ + // 'package.json': File({ + // name: 'dep', + // version: '1.0.0', + // peerDependencies: { + // 'peer-dep': 'file:peer-dep-1.0.0.tgz' + // } + // }) + // }), + 'dep-1.0.0.tgz': File(Buffer.from( + '1f8b0800000000000003ed8f3d0ec2300c853be71451661a1cd166e8cc45' + + 'a2d654e1278d92c200eadd491a60ea462584946fb1f5fc9e655bd59e548f' + + '5b9b2a3ffac1142b0300b2aae8921e1152d062574b10424a08bed0d4d10f' + + '6b1fb2c4d58fca8553bedd937ea19ffa273c08a5cca80bb286b20e2ddb44' + + 'e186ceebc1444d70e090548be8f668d174685a8d3e8c63fc3529633a040e' + + 'fa8ccd5b28e7381ffb3b0bce894ce4d70f6732994c66e60975aec5690008' + + '0000', + 'hex' + )), + // Source dir + // 'peer-dep': Dir({ + // 'package.json': File({ + // name: 'peer-dep', + // version: '2.0.0' + // }) + // }), + 'peer-dep-1.0.0.tgz': File(Buffer.from( + '1f8b08000000000000032b484cce4e4c4fd52f80d07a59c5f9790c540606' + + '06066626260ad8c4c1c0d45c81c1d8d4ccc0d0d0cccc00a80ec830353500' + + 'd2d4760836505a5c925804740aa5e640bca200a78708a8e6525050ca4bcc' + + '4d55b252502a484d2dd24d492d50d2018996a5161567e6e781240cf50cf4' + + '0c94b86ab906dab9a360148c8251300aa80400c1c67f6300080000', + 'hex' + )), + 'peer-dep-2.0.0.tgz': File(Buffer.from( + '1f8b08000000000000032b484cce4e4c4fd52f80d07a59c5f9790c540606' + + '06066626260ad8c4c1c0d45c81c1d8d4ccc0d0d0cccc00a80ec830353500' + + 'd2d4760836505a5c925804740aa5e640bca200a78708a8e6525050ca4bcc' + + '4d55b252502a484d2dd24d492d50d2018996a5161567e6e781248cf40cf4' + + '0c94b86ab906dab9a360148c8251300aa80400cb30060800080000', + 'hex' + )) + }) +})) + +function setup () { + cleanup() + fixture.create(basedir) +} + +function cleanup () { + fixture.remove(basedir) +} + +test('setup', t => { + setup() + return common.fakeRegistry.listen().then(() => common.npm(['install'], conf)) +}) + +test('list warns about unmet peer dependency', t => { + return common.npm(['ls'], conf).then(([code, stdout, stderr]) => { + t.is(code, 1, 'command ran not ok') + t.comment(stdout.trim()) + t.comment(stderr.trim()) + t.match(stdout, 'UNMET PEER DEPENDENCY peer-dep@2.0.0') + t.match(stderr, 'npm ERR! peer dep missing: peer-dep@file:peer-dep-1.0.0.tgz, required by dep@1.0.0') + }) +}) + +test('list shows installed but unmet peer dependency', t => { + return common.npm(['ls', 'peer-dep'], conf).then(([code, stdout, stderr]) => { + t.is(code, 1, 'command ran not ok') + t.comment(stdout.trim()) + t.comment(stderr.trim()) + t.match(stdout, 'UNMET PEER DEPENDENCY peer-dep@2.0.0') + t.match(stderr, 'npm ERR! peer dep missing: peer-dep@file:peer-dep-1.0.0.tgz, required by dep@1.0.0') + }) +}) + +test('cleanup', t => { + common.fakeRegistry.close() + cleanup() + t.done() +}) diff --git a/deps/npm/test/tap/shrinkwrap-local-dependency.js b/deps/npm/test/tap/shrinkwrap-local-dependency.js index 58974ad72431a4..d1c33b99a5a0b1 100644 --- a/deps/npm/test/tap/shrinkwrap-local-dependency.js +++ b/deps/npm/test/tap/shrinkwrap-local-dependency.js @@ -20,8 +20,7 @@ var shrinkwrap = { version: 'file:' + unixFormatPath(path.join('mods', 'mod2')), dependencies: { mod1: { - version: 'file:' + unixFormatPath(path.join('mods', 'mod1')), - bundled: true + version: 'file:' + unixFormatPath(path.join('mods', 'mod1')) } } } diff --git a/deps/npm/test/tap/spec-local-specifiers.js b/deps/npm/test/tap/spec-local-specifiers.js index d149b7ea0ea3a6..3601eee5f3c5fc 100644 --- a/deps/npm/test/tap/spec-local-specifiers.js +++ b/deps/npm/test/tap/spec-local-specifiers.js @@ -585,9 +585,7 @@ test('save behavior', function (t) { var deps = pjson.dependencies || {} t.is(deps['sb-transitive'], 'file:../sb-transitive', 'package.json') var sdep = shrinkwrap.dependencies['sb-transitive'] || {} - var tdep = sdep.dependencies.sbta - t.like(tdep, {bundled: true, version: 'file:../sb-transitive/sbta'}, 'npm-shrinkwrap.json transitive dep') - t.like(sdep, {bundled: null, version: 'file:../sb-transitive'}, 'npm-shrinkwrap.json direct dep') + t.like(sdep, {bundled: null, dependencies: null, version: 'file:../sb-transitive'}, 'npm-shrinkwrap.json direct dep') t.done() }) }) diff --git a/deps/npm/test/tap/unit-token-validate-cidr.js b/deps/npm/test/tap/unit-token-validate-cidr.js index db963c31f386d6..cda91b8f1e0da3 100644 --- a/deps/npm/test/tap/unit-token-validate-cidr.js +++ b/deps/npm/test/tap/unit-token-validate-cidr.js @@ -1,7 +1,6 @@ 'use strict' const test = require('tap').test -const requireInject = require('require-inject') -const validateCIDRList = requireInject('../../lib/token.js', {'../../lib/npm.js': {}})._validateCIDRList +const validateCIDRList = require('../../lib/token.js')._validateCIDRList test('validateCIDRList', (t) => { t.plan(10)