diff --git a/app/404.html b/app/404.html index 2fbf1e311..0dbab69a7 100644 --- a/app/404.html +++ b/app/404.html @@ -1,6 +1,6 @@ - 404 + MetaMask - -
- -

ENS resolver only support on Ethereum mainnet

-
- - \ No newline at end of file diff --git a/app/scripts/background.js b/app/scripts/background.js index fc2ad5773..672a2dcac 100644 --- a/app/scripts/background.js +++ b/app/scripts/background.js @@ -25,7 +25,7 @@ const setupMetamaskMeshMetrics = require('./lib/setupMetamaskMeshMetrics') const EdgeEncryptor = require('./edge-encryptor') const getFirstPreferredLangCode = require('./lib/get-first-preferred-lang-code') const getObjStructure = require('./lib/getObjStructure') -const pw = require('./lib/portalnetwork.js') +const ipfsContent = require('./lib/ipfsContent.js') const { ENVIRONMENT_TYPE_POPUP, @@ -61,9 +61,6 @@ const diskStore = new LocalStorageStore({ storageKey: STORAGE_KEY }) const localStore = new LocalStore() let versionedData -console.log('localStore', localStore); -console.log('diskStore', diskStore); - // initialization flow initialize().catch(log.error) @@ -161,8 +158,7 @@ async function initialize () { const initLangCode = await getFirstPreferredLangCode() await setupController(initState, initLangCode) log.debug('MetaMask initialization complete.') - // porto network init - pw(initState.NetworkController.provider); + ipfsContent(initState.NetworkController.provider) } // diff --git a/app/scripts/lib/ipfsContent.js b/app/scripts/lib/ipfsContent.js new file mode 100644 index 000000000..4d66745e9 --- /dev/null +++ b/app/scripts/lib/ipfsContent.js @@ -0,0 +1,36 @@ +const extension = require('extensionizer') +const resolver = require('./resolver.js') + +module.exports = function (provider) { + extension.webRequest.onBeforeRequest.addListener(details => { + const name = details.url.substring(7, details.url.length - 1) + let clearTime = null + extension.tabs.getSelected(null, tab => { + extension.tabs.update(tab.id, { url: 'loading.html' }) + + clearTime = setTimeout(() => { + return extension.tabs.update(tab.id, { url: '404.html' }) + }, 60000) + + resolver.resolve(name, provider).then(ipfsHash => { + clearTimeout(clearTime) + let url = 'https://gateway.ipfs.io/ipfs/' + ipfsHash + return fetch(url, { method: 'HEAD' }).then(response => response.status).then(statusCode => { + if (statusCode !== 200) return 'Local' + extension.tabs.update(tab.id, { url: url }) + }) + .catch(err => { + url = 'https://gateway.ipfs.io/ipfs/' + ipfsHash + extension.tabs.update(tab.id, {url: url}) + return err + }) + }) + .catch(err => { + clearTimeout(clearTime) + const url = err === 'unsupport' ? 'unsupport' : 'error' + extension.tabs.update(tab.id, {url: `${url}.html?name=${name}`}) + }) + }) + return { cancel: true } + }, {urls: ['*://*.eth/']}) +} diff --git a/app/scripts/lib/portalnetwork.js b/app/scripts/lib/portalnetwork.js deleted file mode 100644 index 977f17926..000000000 --- a/app/scripts/lib/portalnetwork.js +++ /dev/null @@ -1,36 +0,0 @@ -const extension = require('extensionizer') -const resolver = require('./resolver.js'); -module.exports = function (provider) { - extension.webRequest.onBeforeRequest.addListener(details => { - let name = details.url.substring(7, details.url.length - 1); - let clearTime = null; - extension.tabs.getSelected(null, tab => { - extension.tabs.update(tab.id, { url: "loading.html" }); - - clearTime = setTimeout(() => { - return extension.tabs.update(tab.id, { url: "404.html" }); - }, 60000); - - resolver.resolve(name, provider).then(ipfsHash => { - clearTimeout(clearTime); - let url = "https://gateway.ipfs.io/ipfs/" + ipfsHash; - return fetch(url, { method: "HEAD" }).then(response => response.status).then(statusCode => { - if (statusCode !== 200) return "Local" - extension.tabs.update(tab.id, { url: url }) - }) - .catch(err => { - url = "https://gateway.ipfs.io/ipfs/" + ipfsHash - extension.tabs.update(tab.id, {url: url}) - return err - }) - }) - .catch(err => { - clearTimeout(clearTime); - let nameWithoutTld = name.substring(0, name.lastIndexOf('.')) - let url = err === "no_mainnet" ? "no_mainnet" : "error" - extension.tabs.update(tab.id, {url: `${url}.html?name=${name}`}) - }) - }) - return { cancel: true } - }, {urls: ["*://*.eth/"]}) -} diff --git a/app/scripts/lib/resolver.js b/app/scripts/lib/resolver.js index 43ccec0cc..dec43c481 100644 --- a/app/scripts/lib/resolver.js +++ b/app/scripts/lib/resolver.js @@ -1,43 +1,44 @@ const namehash = require('eth-ens-namehash') const multihash = require('multihashes') -const REGISTRAR_ENS_MAIN_NET = "0x314159265dd8dbb310642f98f50c066173c1259b" +const REGISTRAR_ENS_MAIN_NET = '0x314159265dd8dbb310642f98f50c066173c1259b' const HttpProvider = require('ethjs-provider-http') const Eth = require('ethjs-query') const EthContract = require('ethjs-contract') const registrarAbi = require('./contracts/registrar') const resolverAbi = require('./contracts/resolver') -function ens(name, provider) { - // provider need mainnet - let eth = new Eth(new HttpProvider(provider.rpcTarget)) - let hash = namehash.hash(name) - let contract = new EthContract(eth) - let Registrar = contract(registrarAbi).at(REGISTRAR_ENS_MAIN_NET) + +function ens (name, provider) { + const eth = new Eth(new HttpProvider(provider.rpcTarget)) + const hash = namehash.hash(name) + const contract = new EthContract(eth) + const Registrar = contract(registrarAbi).at(REGISTRAR_ENS_MAIN_NET) return new Promise((resolve, reject) => { - if (provider.type !== "mainnet") reject('no_mainnet') + if (provider.type !== 'mainnet') reject('unsupport') Registrar.resolver(hash).then((address) => { if (address === '0x0000000000000000000000000000000000000000') { reject(null) } else { - let Resolver = contract(resolverAbi).at(address["0"]) + const Resolver = contract(resolverAbi).at(address['0']) return Resolver.content(hash) } }).then((contentHash) => { - if (contentHash["0"] === '0x0000000000000000000000000000000000000000000000000000000000000000') reject(null) - if (contentHash.ret !== "0x") { - let hex = contentHash["0"].substring(2) - let buf = multihash.fromHexString(hex) - resolve(multihash.toB58String(multihash.encode(buf, 'sha2-256'))) + if (contentHash['0'] === '0x0000000000000000000000000000000000000000000000000000000000000000') reject(null) + if (contentHash.ret !== '0x') { + const hex = contentHash['0'].substring(2) + const buf = multihash.fromHexString(hex) + resolve(multihash.toB58String(buf)) } else { - reject('fisk') + reject(null) } }) }) } + module.exports.resolve = function (name, provider) { - let path = name.split("."); - let tld = path[path.length - 1]; + const path = name.split('.') + const tld = path[path.length - 1] if (tld === 'eth') { - return ens(name, provider); + return ens(name, provider) } else { return new Promise((resolve, reject) => { reject(null) diff --git a/app/unsupport.html b/app/unsupport.html new file mode 100644 index 000000000..6f514eb17 --- /dev/null +++ b/app/unsupport.html @@ -0,0 +1,59 @@ + + + + + MetaMask + + + +
+ +

ENS resolver only support on Ethereum mainnet

+
+ + \ No newline at end of file diff --git a/npm-debug.log.2168057278 b/npm-debug.log.2168057278 deleted file mode 100644 index 1fe88a200..000000000 --- a/npm-debug.log.2168057278 +++ /dev/null @@ -1,1790 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/Users/zhiyuan/.nvm/versions/node/v8.9.1/bin/node', -1 verbose cli '/usr/local/bin/npm', -1 verbose cli 'i' ] -2 info using npm@3.10.10 -3 info using node@v8.9.1 -4 silly loadCurrentTree Starting -5 silly install loadCurrentTree -6 silly install readLocalPackageData -7 silly install normalizeTree -8 silly loadCurrentTree Finishing -9 silly loadIdealTree Starting -10 silly install loadIdealTree -11 silly cloneCurrentTree Starting -12 silly install cloneCurrentTreeToIdealTree -13 silly cloneCurrentTree Finishing -14 silly loadShrinkwrap Starting -15 silly install loadShrinkwrap -16 silly loadShrinkwrap Finishing -17 silly loadAllDepsIntoIdealTree Starting -18 silly install loadAllDepsIntoIdealTree -19 silly fetchNamedPackageData web3 -20 silly mapToRegistry name web3 -21 silly mapToRegistry using default registry -22 silly mapToRegistry registry https://registry.npmjs.org/ -23 silly mapToRegistry data Result { -23 silly mapToRegistry raw: 'web3', -23 silly mapToRegistry scope: null, -23 silly mapToRegistry escapedName: 'web3', -23 silly mapToRegistry name: 'web3', -23 silly mapToRegistry rawSpec: '', -23 silly mapToRegistry spec: 'latest', -23 silly mapToRegistry type: 'tag' } -24 silly mapToRegistry uri https://registry.npmjs.org/web3 -25 verbose request uri https://registry.npmjs.org/web3 -26 verbose request no auth needed -27 info attempt registry request try #1 at 18:56:16 -28 verbose request id fa232f2c52d33dca -29 verbose etag "5ad0c548-2f408" -30 verbose lastModified Fri, 13 Apr 2018 14:57:12 GMT -31 http request GET https://registry.npmjs.org/web3 -32 http 304 https://registry.npmjs.org/web3 -33 verbose headers { date: 'Thu, 26 Apr 2018 10:56:17 GMT', -33 verbose headers via: '1.1 varnish', -33 verbose headers 'cache-control': 'max-age=300', -33 verbose headers etag: '"5ad0c548-2f408"', -33 verbose headers age: '0', -33 verbose headers connection: 'keep-alive', -33 verbose headers 'x-served-by': 'cache-itm18829-ITM', -33 verbose headers 'x-cache': 'MISS', -33 verbose headers 'x-cache-hits': '0', -33 verbose headers 'x-timer': 'S1524740177.293484,VS0,VE282', -33 verbose headers vary: 'Accept-Encoding, Accept' } -34 silly get cb [ 304, -34 silly get { date: 'Thu, 26 Apr 2018 10:56:17 GMT', -34 silly get via: '1.1 varnish', -34 silly get 'cache-control': 'max-age=300', -34 silly get etag: '"5ad0c548-2f408"', -34 silly get age: '0', -34 silly get connection: 'keep-alive', -34 silly get 'x-served-by': 'cache-itm18829-ITM', -34 silly get 'x-cache': 'MISS', -34 silly get 'x-cache-hits': '0', -34 silly get 'x-timer': 'S1524740177.293484,VS0,VE282', -34 silly get vary: 'Accept-Encoding, Accept' } ] -35 verbose etag https://registry.npmjs.org/web3 from cache -36 verbose get saving web3 to /Users/zhiyuan/.npm/registry.npmjs.org/web3/.cache.json -37 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -38 silly resolveWithNewModule web3@1.0.0-beta.34 checking installable status -39 silly cache add args [ 'web3@^1.0.0-beta.26', null ] -40 verbose cache add spec web3@^1.0.0-beta.26 -41 silly cache add parsed spec Result { -41 silly cache add raw: 'web3@^1.0.0-beta.26', -41 silly cache add scope: null, -41 silly cache add escapedName: 'web3', -41 silly cache add name: 'web3', -41 silly cache add rawSpec: '^1.0.0-beta.26', -41 silly cache add spec: '>=1.0.0-beta.26 <2.0.0', -41 silly cache add type: 'range' } -42 silly addNamed web3@>=1.0.0-beta.26 <2.0.0 -43 verbose addNamed ">=1.0.0-beta.26 <2.0.0" is a valid semver range for web3 -44 silly addNameRange { name: 'web3', range: '>=1.0.0-beta.26 <2.0.0', hasData: false } -45 silly mapToRegistry name web3 -46 silly mapToRegistry using default registry -47 silly mapToRegistry registry https://registry.npmjs.org/ -48 silly mapToRegistry data Result { -48 silly mapToRegistry raw: 'web3', -48 silly mapToRegistry scope: null, -48 silly mapToRegistry escapedName: 'web3', -48 silly mapToRegistry name: 'web3', -48 silly mapToRegistry rawSpec: '', -48 silly mapToRegistry spec: 'latest', -48 silly mapToRegistry type: 'tag' } -49 silly mapToRegistry uri https://registry.npmjs.org/web3 -50 verbose addNameRange registry:https://registry.npmjs.org/web3 not in flight; fetching -51 verbose get https://registry.npmjs.org/web3 not expired, no request -52 silly addNameRange number 2 { name: 'web3', range: '>=1.0.0-beta.26 <2.0.0', hasData: true } -53 silly addNameRange versions [ 'web3', -53 silly addNameRange [ '0.2.5', -53 silly addNameRange '0.2.6', -53 silly addNameRange '0.2.7', -53 silly addNameRange '0.2.8', -53 silly addNameRange '0.3.0', -53 silly addNameRange '0.3.1', -53 silly addNameRange '0.3.2', -53 silly addNameRange '0.3.3', -53 silly addNameRange '0.3.4', -53 silly addNameRange '0.3.6', -53 silly addNameRange '0.4.0', -53 silly addNameRange '0.4.1', -53 silly addNameRange '0.4.2', -53 silly addNameRange '0.4.3', -53 silly addNameRange '0.5.0', -53 silly addNameRange '0.6.0', -53 silly addNameRange '0.7.0', -53 silly addNameRange '0.7.1', -53 silly addNameRange '0.8.0', -53 silly addNameRange '0.8.1', -53 silly addNameRange '0.9.0', -53 silly addNameRange '0.9.1', -53 silly addNameRange '0.9.2', -53 silly addNameRange '0.10.0', -53 silly addNameRange '0.11.0', -53 silly addNameRange '0.12.0', -53 silly addNameRange '0.12.1', -53 silly addNameRange '0.12.2', -53 silly addNameRange '0.13.0', -53 silly addNameRange '0.14.0', -53 silly addNameRange '0.14.1', -53 silly addNameRange '0.15.0', -53 silly addNameRange '0.15.1', -53 silly addNameRange '0.15.2', -53 silly addNameRange '0.15.3', -53 silly addNameRange '0.16.0', -53 silly addNameRange '0.17.0-alpha', -53 silly addNameRange '0.17.0-beta', -53 silly addNameRange '0.18.0', -53 silly addNameRange '0.18.1', -53 silly addNameRange '0.18.2', -53 silly addNameRange '0.18.4', -53 silly addNameRange '0.19.0', -53 silly addNameRange '0.19.1', -53 silly addNameRange '0.20.0', -53 silly addNameRange '0.20.1', -53 silly addNameRange '1.0.0-beta1', -53 silly addNameRange '1.0.0-beta2', -53 silly addNameRange '1.0.0-beta.1', -53 silly addNameRange '1.0.0-beta.2', -53 silly addNameRange '1.0.0-beta.3', -53 silly addNameRange '1.0.0-beta.4', -53 silly addNameRange '1.0.0-beta.5', -53 silly addNameRange '1.0.0-beta.6', -53 silly addNameRange '1.0.0-beta.7', -53 silly addNameRange '1.0.0-beta.9', -53 silly addNameRange '1.0.0-beta.10', -53 silly addNameRange '1.0.0-beta.11', -53 silly addNameRange '1.0.0-beta.12', -53 silly addNameRange '1.0.0-beta.13', -53 silly addNameRange '1.0.0-beta.14', -53 silly addNameRange '1.0.0-beta.15', -53 silly addNameRange '1.0.0-beta.16', -53 silly addNameRange '1.0.0-beta.17', -53 silly addNameRange '1.0.0-beta.18', -53 silly addNameRange '0.20.2', -53 silly addNameRange '1.0.0-beta.19', -53 silly addNameRange '1.0.0-beta.20', -53 silly addNameRange '1.0.0-beta.21', -53 silly addNameRange '1.0.0-beta.22', -53 silly addNameRange '1.0.0-beta.23', -53 silly addNameRange '1.0.0-beta.24', -53 silly addNameRange '1.0.0-beta.25', -53 silly addNameRange '1.0.0-beta.26', -53 silly addNameRange '0.20.3', -53 silly addNameRange '1.0.0-beta.27', -53 silly addNameRange '1.0.0-beta.28', -53 silly addNameRange '0.20.4', -53 silly addNameRange '1.0.0-beta.29', -53 silly addNameRange '0.20.5', -53 silly addNameRange '1.0.0-beta.30', -53 silly addNameRange '1.0.0-beta.31', -53 silly addNameRange '0.20.6', -53 silly addNameRange '1.0.0-beta.32', -53 silly addNameRange '1.0.0-beta.33', -53 silly addNameRange '1.0.0-beta.34' ] ] -54 silly addNamed web3@1.0.0-beta.34 -55 verbose addNamed "1.0.0-beta.34" is a plain semver version for web3 -56 silly cache afterAdd web3@1.0.0-beta.34 -57 verbose afterAdd /Users/zhiyuan/.npm/web3/1.0.0-beta.34/package/package.json not in flight; writing -58 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -59 verbose afterAdd /Users/zhiyuan/.npm/web3/1.0.0-beta.34/package/package.json written -60 silly fetchNamedPackageData chai -61 silly mapToRegistry name chai -62 silly mapToRegistry using default registry -63 silly mapToRegistry registry https://registry.npmjs.org/ -64 silly mapToRegistry data Result { -64 silly mapToRegistry raw: 'chai', -64 silly mapToRegistry scope: null, -64 silly mapToRegistry escapedName: 'chai', -64 silly mapToRegistry name: 'chai', -64 silly mapToRegistry rawSpec: '', -64 silly mapToRegistry spec: 'latest', -64 silly mapToRegistry type: 'tag' } -65 silly mapToRegistry uri https://registry.npmjs.org/chai -66 verbose request uri https://registry.npmjs.org/chai -67 verbose request no auth needed -68 info attempt registry request try #1 at 18:56:17 -69 verbose etag "5ab1b9cc-1a27c" -70 verbose lastModified Wed, 21 Mar 2018 1:47:56 GMT -71 http request GET https://registry.npmjs.org/chai -72 http 304 https://registry.npmjs.org/chai -73 verbose headers { date: 'Thu, 26 Apr 2018 10:56:17 GMT', -73 verbose headers via: '1.1 varnish', -73 verbose headers 'cache-control': 'max-age=300', -73 verbose headers etag: '"5ab1b9cc-1a27c"', -73 verbose headers age: '8579', -73 verbose headers connection: 'keep-alive', -73 verbose headers 'x-served-by': 'cache-itm18829-ITM', -73 verbose headers 'x-cache': 'HIT', -73 verbose headers 'x-cache-hits': '28', -73 verbose headers 'x-timer': 'S1524740178.704226,VS0,VE0', -73 verbose headers vary: 'Accept-Encoding, Accept' } -74 silly get cb [ 304, -74 silly get { date: 'Thu, 26 Apr 2018 10:56:17 GMT', -74 silly get via: '1.1 varnish', -74 silly get 'cache-control': 'max-age=300', -74 silly get etag: '"5ab1b9cc-1a27c"', -74 silly get age: '8579', -74 silly get connection: 'keep-alive', -74 silly get 'x-served-by': 'cache-itm18829-ITM', -74 silly get 'x-cache': 'HIT', -74 silly get 'x-cache-hits': '28', -74 silly get 'x-timer': 'S1524740178.704226,VS0,VE0', -74 silly get vary: 'Accept-Encoding, Accept' } ] -75 verbose etag https://registry.npmjs.org/chai from cache -76 verbose get saving chai to /Users/zhiyuan/.npm/registry.npmjs.org/chai/.cache.json -77 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -78 silly resolveWithNewModule chai@3.5.0 checking installable status -79 silly cache add args [ 'chai@^3.5.0', null ] -80 verbose cache add spec chai@^3.5.0 -81 silly cache add parsed spec Result { -81 silly cache add raw: 'chai@^3.5.0', -81 silly cache add scope: null, -81 silly cache add escapedName: 'chai', -81 silly cache add name: 'chai', -81 silly cache add rawSpec: '^3.5.0', -81 silly cache add spec: '>=3.5.0 <4.0.0', -81 silly cache add type: 'range' } -82 silly addNamed chai@>=3.5.0 <4.0.0 -83 verbose addNamed ">=3.5.0 <4.0.0" is a valid semver range for chai -84 silly addNameRange { name: 'chai', range: '>=3.5.0 <4.0.0', hasData: false } -85 silly mapToRegistry name chai -86 silly mapToRegistry using default registry -87 silly mapToRegistry registry https://registry.npmjs.org/ -88 silly mapToRegistry data Result { -88 silly mapToRegistry raw: 'chai', -88 silly mapToRegistry scope: null, -88 silly mapToRegistry escapedName: 'chai', -88 silly mapToRegistry name: 'chai', -88 silly mapToRegistry rawSpec: '', -88 silly mapToRegistry spec: 'latest', -88 silly mapToRegistry type: 'tag' } -89 silly mapToRegistry uri https://registry.npmjs.org/chai -90 verbose addNameRange registry:https://registry.npmjs.org/chai not in flight; fetching -91 verbose get https://registry.npmjs.org/chai not expired, no request -92 silly addNameRange number 2 { name: 'chai', range: '>=3.5.0 <4.0.0', hasData: true } -93 silly addNameRange versions [ 'chai', -93 silly addNameRange [ '0.0.1', -93 silly addNameRange '0.0.2', -93 silly addNameRange '0.1.0', -93 silly addNameRange '0.1.1', -93 silly addNameRange '0.1.2', -93 silly addNameRange '0.1.3', -93 silly addNameRange '0.1.4', -93 silly addNameRange '0.1.5', -93 silly addNameRange '0.1.6', -93 silly addNameRange '0.1.7', -93 silly addNameRange '0.2.0', -93 silly addNameRange '0.2.1', -93 silly addNameRange '0.2.2', -93 silly addNameRange '0.2.3', -93 silly addNameRange '0.2.4', -93 silly addNameRange '0.3.0', -93 silly addNameRange '0.3.1', -93 silly addNameRange '0.3.2', -93 silly addNameRange '0.3.3', -93 silly addNameRange '0.3.4', -93 silly addNameRange '0.4.0', -93 silly addNameRange '0.4.1', -93 silly addNameRange '0.4.2', -93 silly addNameRange '0.5.0', -93 silly addNameRange '0.5.1', -93 silly addNameRange '0.5.2', -93 silly addNameRange '0.5.3', -93 silly addNameRange '1.0.0', -93 silly addNameRange '1.0.1', -93 silly addNameRange '1.0.2', -93 silly addNameRange '1.0.3', -93 silly addNameRange '1.0.4', -93 silly addNameRange '1.1.0', -93 silly addNameRange '1.1.1', -93 silly addNameRange '1.2.0', -93 silly addNameRange '1.3.0', -93 silly addNameRange '1.4.0', -93 silly addNameRange '1.4.1', -93 silly addNameRange '1.4.2', -93 silly addNameRange '1.5.0', -93 silly addNameRange '1.6.0', -93 silly addNameRange '1.6.1', -93 silly addNameRange '1.7.0', -93 silly addNameRange '1.7.1', -93 silly addNameRange '1.7.2', -93 silly addNameRange '1.8.0', -93 silly addNameRange '1.8.1', -93 silly addNameRange '1.9.0', -93 silly addNameRange '1.9.1', -93 silly addNameRange '1.9.2', -93 silly addNameRange '1.10.0', -93 silly addNameRange '2.0.0', -93 silly addNameRange '2.1.0', -93 silly addNameRange '2.1.1', -93 silly addNameRange '2.1.2', -93 silly addNameRange '2.2.0', -93 silly addNameRange '2.3.0', -93 silly addNameRange '3.0.0', -93 silly addNameRange '3.1.0', -93 silly addNameRange '3.2.0', -93 silly addNameRange '3.3.0', -93 silly addNameRange '3.4.0', -93 silly addNameRange '3.4.1', -93 silly addNameRange '3.5.0', -93 silly addNameRange '4.0.0-canary.1', -93 silly addNameRange '4.0.0-canary.2', -93 silly addNameRange '4.0.0', -93 silly addNameRange '4.0.1', -93 silly addNameRange '4.0.2', -93 silly addNameRange '4.1.0', -93 silly addNameRange '4.1.1', -93 silly addNameRange '4.1.2' ] ] -94 silly addNamed chai@3.5.0 -95 verbose addNamed "3.5.0" is a plain semver version for chai -96 silly cache afterAdd chai@3.5.0 -97 verbose afterAdd /Users/zhiyuan/.npm/chai/3.5.0/package/package.json not in flight; writing -98 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -99 verbose afterAdd /Users/zhiyuan/.npm/chai/3.5.0/package/package.json written -100 silly fetchNamedPackageData deep-eql -101 silly mapToRegistry name deep-eql -102 silly mapToRegistry using default registry -103 silly mapToRegistry registry https://registry.npmjs.org/ -104 silly mapToRegistry data Result { -104 silly mapToRegistry raw: 'deep-eql', -104 silly mapToRegistry scope: null, -104 silly mapToRegistry escapedName: 'deep-eql', -104 silly mapToRegistry name: 'deep-eql', -104 silly mapToRegistry rawSpec: '', -104 silly mapToRegistry spec: 'latest', -104 silly mapToRegistry type: 'tag' } -105 silly mapToRegistry uri https://registry.npmjs.org/deep-eql -106 silly fetchNamedPackageData type-detect -107 silly mapToRegistry name type-detect -108 silly mapToRegistry using default registry -109 silly mapToRegistry registry https://registry.npmjs.org/ -110 silly mapToRegistry data Result { -110 silly mapToRegistry raw: 'type-detect', -110 silly mapToRegistry scope: null, -110 silly mapToRegistry escapedName: 'type-detect', -110 silly mapToRegistry name: 'type-detect', -110 silly mapToRegistry rawSpec: '', -110 silly mapToRegistry spec: 'latest', -110 silly mapToRegistry type: 'tag' } -111 silly mapToRegistry uri https://registry.npmjs.org/type-detect -112 verbose request uri https://registry.npmjs.org/deep-eql -113 verbose request no auth needed -114 info attempt registry request try #1 at 18:56:18 -115 verbose etag "5aaf3dfa-8ad2" -116 verbose lastModified Mon, 19 Mar 2018 4:35:06 GMT -117 http request GET https://registry.npmjs.org/deep-eql -118 verbose request uri https://registry.npmjs.org/type-detect -119 verbose request no auth needed -120 info attempt registry request try #1 at 18:56:18 -121 verbose etag "5aa7fe02-c438" -122 verbose lastModified Tue, 13 Mar 2018 16:36:18 GMT -123 http request GET https://registry.npmjs.org/type-detect -124 http 304 https://registry.npmjs.org/deep-eql -125 verbose headers { date: 'Thu, 26 Apr 2018 10:56:18 GMT', -125 verbose headers via: '1.1 varnish', -125 verbose headers 'cache-control': 'max-age=300', -125 verbose headers etag: '"5aaf3dfa-8ad2"', -125 verbose headers age: '3926', -125 verbose headers connection: 'keep-alive', -125 verbose headers 'x-served-by': 'cache-itm18829-ITM', -125 verbose headers 'x-cache': 'HIT', -125 verbose headers 'x-cache-hits': '1', -125 verbose headers 'x-timer': 'S1524740179.691568,VS0,VE1', -125 verbose headers vary: 'Accept-Encoding, Accept' } -126 silly get cb [ 304, -126 silly get { date: 'Thu, 26 Apr 2018 10:56:18 GMT', -126 silly get via: '1.1 varnish', -126 silly get 'cache-control': 'max-age=300', -126 silly get etag: '"5aaf3dfa-8ad2"', -126 silly get age: '3926', -126 silly get connection: 'keep-alive', -126 silly get 'x-served-by': 'cache-itm18829-ITM', -126 silly get 'x-cache': 'HIT', -126 silly get 'x-cache-hits': '1', -126 silly get 'x-timer': 'S1524740179.691568,VS0,VE1', -126 silly get vary: 'Accept-Encoding, Accept' } ] -127 verbose etag https://registry.npmjs.org/deep-eql from cache -128 verbose get saving deep-eql to /Users/zhiyuan/.npm/registry.npmjs.org/deep-eql/.cache.json -129 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -130 silly resolveWithNewModule deep-eql@0.1.3 checking installable status -131 silly cache add args [ 'deep-eql@^0.1.3', null ] -132 verbose cache add spec deep-eql@^0.1.3 -133 silly cache add parsed spec Result { -133 silly cache add raw: 'deep-eql@^0.1.3', -133 silly cache add scope: null, -133 silly cache add escapedName: 'deep-eql', -133 silly cache add name: 'deep-eql', -133 silly cache add rawSpec: '^0.1.3', -133 silly cache add spec: '>=0.1.3 <0.2.0', -133 silly cache add type: 'range' } -134 silly addNamed deep-eql@>=0.1.3 <0.2.0 -135 verbose addNamed ">=0.1.3 <0.2.0" is a valid semver range for deep-eql -136 silly addNameRange { name: 'deep-eql', range: '>=0.1.3 <0.2.0', hasData: false } -137 silly mapToRegistry name deep-eql -138 silly mapToRegistry using default registry -139 silly mapToRegistry registry https://registry.npmjs.org/ -140 silly mapToRegistry data Result { -140 silly mapToRegistry raw: 'deep-eql', -140 silly mapToRegistry scope: null, -140 silly mapToRegistry escapedName: 'deep-eql', -140 silly mapToRegistry name: 'deep-eql', -140 silly mapToRegistry rawSpec: '', -140 silly mapToRegistry spec: 'latest', -140 silly mapToRegistry type: 'tag' } -141 silly mapToRegistry uri https://registry.npmjs.org/deep-eql -142 verbose addNameRange registry:https://registry.npmjs.org/deep-eql not in flight; fetching -143 verbose get https://registry.npmjs.org/deep-eql not expired, no request -144 silly addNameRange number 2 { name: 'deep-eql', range: '>=0.1.3 <0.2.0', hasData: true } -145 silly addNameRange versions [ 'deep-eql', -145 silly addNameRange [ '0.1.0', -145 silly addNameRange '0.1.1', -145 silly addNameRange '0.1.2', -145 silly addNameRange '0.1.3', -145 silly addNameRange '1.0.0', -145 silly addNameRange '1.0.1', -145 silly addNameRange '1.0.2', -145 silly addNameRange '1.0.3', -145 silly addNameRange '2.0.0', -145 silly addNameRange '2.0.1', -145 silly addNameRange '2.0.2', -145 silly addNameRange '3.0.0', -145 silly addNameRange '3.0.1' ] ] -146 silly addNamed deep-eql@0.1.3 -147 verbose addNamed "0.1.3" is a plain semver version for deep-eql -148 silly cache afterAdd deep-eql@0.1.3 -149 verbose afterAdd /Users/zhiyuan/.npm/deep-eql/0.1.3/package/package.json not in flight; writing -150 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -151 verbose afterAdd /Users/zhiyuan/.npm/deep-eql/0.1.3/package/package.json written -152 http 304 https://registry.npmjs.org/type-detect -153 verbose headers { date: 'Thu, 26 Apr 2018 10:56:18 GMT', -153 verbose headers via: '1.1 varnish', -153 verbose headers 'cache-control': 'max-age=300', -153 verbose headers etag: '"5aa7fe02-c438"', -153 verbose headers age: '9570', -153 verbose headers connection: 'keep-alive', -153 verbose headers 'x-served-by': 'cache-itm18831-ITM', -153 verbose headers 'x-cache': 'HIT', -153 verbose headers 'x-cache-hits': '8', -153 verbose headers 'x-timer': 'S1524740179.771934,VS0,VE0', -153 verbose headers vary: 'Accept-Encoding, Accept' } -154 silly get cb [ 304, -154 silly get { date: 'Thu, 26 Apr 2018 10:56:18 GMT', -154 silly get via: '1.1 varnish', -154 silly get 'cache-control': 'max-age=300', -154 silly get etag: '"5aa7fe02-c438"', -154 silly get age: '9570', -154 silly get connection: 'keep-alive', -154 silly get 'x-served-by': 'cache-itm18831-ITM', -154 silly get 'x-cache': 'HIT', -154 silly get 'x-cache-hits': '8', -154 silly get 'x-timer': 'S1524740179.771934,VS0,VE0', -154 silly get vary: 'Accept-Encoding, Accept' } ] -155 verbose etag https://registry.npmjs.org/type-detect from cache -156 verbose get saving type-detect to /Users/zhiyuan/.npm/registry.npmjs.org/type-detect/.cache.json -157 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -158 silly resolveWithNewModule type-detect@1.0.0 checking installable status -159 silly cache add args [ 'type-detect@^1.0.0', null ] -160 verbose cache add spec type-detect@^1.0.0 -161 silly cache add parsed spec Result { -161 silly cache add raw: 'type-detect@^1.0.0', -161 silly cache add scope: null, -161 silly cache add escapedName: 'type-detect', -161 silly cache add name: 'type-detect', -161 silly cache add rawSpec: '^1.0.0', -161 silly cache add spec: '>=1.0.0 <2.0.0', -161 silly cache add type: 'range' } -162 silly addNamed type-detect@>=1.0.0 <2.0.0 -163 verbose addNamed ">=1.0.0 <2.0.0" is a valid semver range for type-detect -164 silly addNameRange { name: 'type-detect', range: '>=1.0.0 <2.0.0', hasData: false } -165 silly mapToRegistry name type-detect -166 silly mapToRegistry using default registry -167 silly mapToRegistry registry https://registry.npmjs.org/ -168 silly mapToRegistry data Result { -168 silly mapToRegistry raw: 'type-detect', -168 silly mapToRegistry scope: null, -168 silly mapToRegistry escapedName: 'type-detect', -168 silly mapToRegistry name: 'type-detect', -168 silly mapToRegistry rawSpec: '', -168 silly mapToRegistry spec: 'latest', -168 silly mapToRegistry type: 'tag' } -169 silly mapToRegistry uri https://registry.npmjs.org/type-detect -170 verbose addNameRange registry:https://registry.npmjs.org/type-detect not in flight; fetching -171 verbose get https://registry.npmjs.org/type-detect not expired, no request -172 silly addNameRange number 2 { name: 'type-detect', range: '>=1.0.0 <2.0.0', hasData: true } -173 silly addNameRange versions [ 'type-detect', -173 silly addNameRange [ '0.1.0', -173 silly addNameRange '0.1.1', -173 silly addNameRange '0.1.2', -173 silly addNameRange '1.0.0', -173 silly addNameRange '2.0.0', -173 silly addNameRange '2.0.1', -173 silly addNameRange '2.0.2', -173 silly addNameRange '3.0.0', -173 silly addNameRange '4.0.0', -173 silly addNameRange '4.0.1', -173 silly addNameRange '4.0.2', -173 silly addNameRange '4.0.3', -173 silly addNameRange '4.0.5', -173 silly addNameRange '4.0.6', -173 silly addNameRange '4.0.7', -173 silly addNameRange '4.0.8' ] ] -174 silly addNamed type-detect@1.0.0 -175 verbose addNamed "1.0.0" is a plain semver version for type-detect -176 silly cache afterAdd type-detect@1.0.0 -177 verbose afterAdd /Users/zhiyuan/.npm/type-detect/1.0.0/package/package.json not in flight; writing -178 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -179 verbose afterAdd /Users/zhiyuan/.npm/type-detect/1.0.0/package/package.json written -180 silly fetchNamedPackageData type-detect -181 silly mapToRegistry name type-detect -182 silly mapToRegistry using default registry -183 silly mapToRegistry registry https://registry.npmjs.org/ -184 silly mapToRegistry data Result { -184 silly mapToRegistry raw: 'type-detect', -184 silly mapToRegistry scope: null, -184 silly mapToRegistry escapedName: 'type-detect', -184 silly mapToRegistry name: 'type-detect', -184 silly mapToRegistry rawSpec: '', -184 silly mapToRegistry spec: 'latest', -184 silly mapToRegistry type: 'tag' } -185 silly mapToRegistry uri https://registry.npmjs.org/type-detect -186 silly resolveWithNewModule type-detect@0.1.1 checking installable status -187 silly cache add args [ 'type-detect@0.1.1', null ] -188 verbose cache add spec type-detect@0.1.1 -189 silly cache add parsed spec Result { -189 silly cache add raw: 'type-detect@0.1.1', -189 silly cache add scope: null, -189 silly cache add escapedName: 'type-detect', -189 silly cache add name: 'type-detect', -189 silly cache add rawSpec: '0.1.1', -189 silly cache add spec: '0.1.1', -189 silly cache add type: 'version' } -190 silly addNamed type-detect@0.1.1 -191 verbose addNamed "0.1.1" is a plain semver version for type-detect -192 silly mapToRegistry name type-detect -193 silly mapToRegistry using default registry -194 silly mapToRegistry registry https://registry.npmjs.org/ -195 silly mapToRegistry data Result { -195 silly mapToRegistry raw: 'type-detect', -195 silly mapToRegistry scope: null, -195 silly mapToRegistry escapedName: 'type-detect', -195 silly mapToRegistry name: 'type-detect', -195 silly mapToRegistry rawSpec: '', -195 silly mapToRegistry spec: 'latest', -195 silly mapToRegistry type: 'tag' } -196 silly mapToRegistry uri https://registry.npmjs.org/type-detect -197 verbose addNameVersion registry:https://registry.npmjs.org/type-detect not in flight; fetching -198 verbose get https://registry.npmjs.org/type-detect not expired, no request -199 silly cache afterAdd type-detect@0.1.1 -200 verbose afterAdd /Users/zhiyuan/.npm/type-detect/0.1.1/package/package.json not in flight; writing -201 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -202 verbose afterAdd /Users/zhiyuan/.npm/type-detect/0.1.1/package/package.json written -203 silly fetchNamedPackageData babelify -204 silly mapToRegistry name babelify -205 silly mapToRegistry using default registry -206 silly mapToRegistry registry https://registry.npmjs.org/ -207 silly mapToRegistry data Result { -207 silly mapToRegistry raw: 'babelify', -207 silly mapToRegistry scope: null, -207 silly mapToRegistry escapedName: 'babelify', -207 silly mapToRegistry name: 'babelify', -207 silly mapToRegistry rawSpec: '', -207 silly mapToRegistry spec: 'latest', -207 silly mapToRegistry type: 'tag' } -208 silly mapToRegistry uri https://registry.npmjs.org/babelify -209 verbose request uri https://registry.npmjs.org/babelify -210 verbose request no auth needed -211 info attempt registry request try #1 at 18:56:21 -212 verbose etag "5aa00885-7e14" -213 verbose lastModified Wed, 7 Mar 2018 15:43:01 GMT -214 http request GET https://registry.npmjs.org/babelify -215 http 304 https://registry.npmjs.org/babelify -216 verbose headers { date: 'Thu, 26 Apr 2018 10:56:21 GMT', -216 verbose headers via: '1.1 varnish', -216 verbose headers 'cache-control': 'max-age=300', -216 verbose headers etag: '"5aa00885-7e14"', -216 verbose headers age: '10141', -216 verbose headers connection: 'keep-alive', -216 verbose headers 'x-served-by': 'cache-itm18829-ITM', -216 verbose headers 'x-cache': 'HIT', -216 verbose headers 'x-cache-hits': '5', -216 verbose headers 'x-timer': 'S1524740182.895851,VS0,VE0', -216 verbose headers vary: 'Accept-Encoding, Accept' } -217 silly get cb [ 304, -217 silly get { date: 'Thu, 26 Apr 2018 10:56:21 GMT', -217 silly get via: '1.1 varnish', -217 silly get 'cache-control': 'max-age=300', -217 silly get etag: '"5aa00885-7e14"', -217 silly get age: '10141', -217 silly get connection: 'keep-alive', -217 silly get 'x-served-by': 'cache-itm18829-ITM', -217 silly get 'x-cache': 'HIT', -217 silly get 'x-cache-hits': '5', -217 silly get 'x-timer': 'S1524740182.895851,VS0,VE0', -217 silly get vary: 'Accept-Encoding, Accept' } ] -218 verbose etag https://registry.npmjs.org/babelify from cache -219 verbose get saving babelify to /Users/zhiyuan/.npm/registry.npmjs.org/babelify/.cache.json -220 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -221 silly resolveWithNewModule babelify@7.3.0 checking installable status -222 silly cache add args [ 'babelify@^7.3.0', null ] -223 verbose cache add spec babelify@^7.3.0 -224 silly cache add parsed spec Result { -224 silly cache add raw: 'babelify@^7.3.0', -224 silly cache add scope: null, -224 silly cache add escapedName: 'babelify', -224 silly cache add name: 'babelify', -224 silly cache add rawSpec: '^7.3.0', -224 silly cache add spec: '>=7.3.0 <8.0.0', -224 silly cache add type: 'range' } -225 silly addNamed babelify@>=7.3.0 <8.0.0 -226 verbose addNamed ">=7.3.0 <8.0.0" is a valid semver range for babelify -227 silly addNameRange { name: 'babelify', range: '>=7.3.0 <8.0.0', hasData: false } -228 silly mapToRegistry name babelify -229 silly mapToRegistry using default registry -230 silly mapToRegistry registry https://registry.npmjs.org/ -231 silly mapToRegistry data Result { -231 silly mapToRegistry raw: 'babelify', -231 silly mapToRegistry scope: null, -231 silly mapToRegistry escapedName: 'babelify', -231 silly mapToRegistry name: 'babelify', -231 silly mapToRegistry rawSpec: '', -231 silly mapToRegistry spec: 'latest', -231 silly mapToRegistry type: 'tag' } -232 silly mapToRegistry uri https://registry.npmjs.org/babelify -233 verbose addNameRange registry:https://registry.npmjs.org/babelify not in flight; fetching -234 verbose get https://registry.npmjs.org/babelify not expired, no request -235 silly addNameRange number 2 { name: 'babelify', range: '>=7.3.0 <8.0.0', hasData: true } -236 silly addNameRange versions [ 'babelify', -236 silly addNameRange [ '5.0.1', -236 silly addNameRange '5.0.2', -236 silly addNameRange '5.0.3', -236 silly addNameRange '5.0.4', -236 silly addNameRange '6.0.0', -236 silly addNameRange '5.0.5', -236 silly addNameRange '6.0.1', -236 silly addNameRange '6.0.2', -236 silly addNameRange '6.1.0', -236 silly addNameRange '6.1.1', -236 silly addNameRange '6.1.2', -236 silly addNameRange '6.1.3', -236 silly addNameRange '6.2.0', -236 silly addNameRange '6.3.0', -236 silly addNameRange '6.4.0', -236 silly addNameRange '7.0.0', -236 silly addNameRange '7.0.1', -236 silly addNameRange '7.0.2', -236 silly addNameRange '7.1.0', -236 silly addNameRange '7.2.0', -236 silly addNameRange '7.3.0', -236 silly addNameRange '8.0.0' ] ] -237 silly addNamed babelify@7.3.0 -238 verbose addNamed "7.3.0" is a plain semver version for babelify -239 silly cache afterAdd babelify@7.3.0 -240 verbose afterAdd /Users/zhiyuan/.npm/babelify/7.3.0/package/package.json not in flight; writing -241 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -242 verbose afterAdd /Users/zhiyuan/.npm/babelify/7.3.0/package/package.json written -243 silly fetchNamedPackageData babelify -244 silly mapToRegistry name babelify -245 silly mapToRegistry using default registry -246 silly mapToRegistry registry https://registry.npmjs.org/ -247 silly mapToRegistry data Result { -247 silly mapToRegistry raw: 'babelify', -247 silly mapToRegistry scope: null, -247 silly mapToRegistry escapedName: 'babelify', -247 silly mapToRegistry name: 'babelify', -247 silly mapToRegistry rawSpec: '', -247 silly mapToRegistry spec: 'latest', -247 silly mapToRegistry type: 'tag' } -248 silly mapToRegistry uri https://registry.npmjs.org/babelify -249 silly resolveWithNewModule babelify@7.3.0 checking installable status -250 silly fetchNamedPackageData babelify -251 silly mapToRegistry name babelify -252 silly mapToRegistry using default registry -253 silly mapToRegistry registry https://registry.npmjs.org/ -254 silly mapToRegistry data Result { -254 silly mapToRegistry raw: 'babelify', -254 silly mapToRegistry scope: null, -254 silly mapToRegistry escapedName: 'babelify', -254 silly mapToRegistry name: 'babelify', -254 silly mapToRegistry rawSpec: '', -254 silly mapToRegistry spec: 'latest', -254 silly mapToRegistry type: 'tag' } -255 silly mapToRegistry uri https://registry.npmjs.org/babelify -256 silly resolveWithNewModule babelify@7.3.0 checking installable status -257 silly fetchNamedPackageData chai -258 silly mapToRegistry name chai -259 silly mapToRegistry using default registry -260 silly mapToRegistry registry https://registry.npmjs.org/ -261 silly mapToRegistry data Result { -261 silly mapToRegistry raw: 'chai', -261 silly mapToRegistry scope: null, -261 silly mapToRegistry escapedName: 'chai', -261 silly mapToRegistry name: 'chai', -261 silly mapToRegistry rawSpec: '', -261 silly mapToRegistry spec: 'latest', -261 silly mapToRegistry type: 'tag' } -262 silly mapToRegistry uri https://registry.npmjs.org/chai -263 silly resolveWithNewModule chai@3.5.0 checking installable status -264 silly fetchNamedPackageData mocha -265 silly mapToRegistry name mocha -266 silly mapToRegistry using default registry -267 silly mapToRegistry registry https://registry.npmjs.org/ -268 silly mapToRegistry data Result { -268 silly mapToRegistry raw: 'mocha', -268 silly mapToRegistry scope: null, -268 silly mapToRegistry escapedName: 'mocha', -268 silly mapToRegistry name: 'mocha', -268 silly mapToRegistry rawSpec: '', -268 silly mapToRegistry spec: 'latest', -268 silly mapToRegistry type: 'tag' } -269 silly mapToRegistry uri https://registry.npmjs.org/mocha -270 verbose request uri https://registry.npmjs.org/mocha -271 verbose request no auth needed -272 info attempt registry request try #1 at 18:56:22 -273 verbose etag "5ae024a2-101a5b" -274 verbose lastModified Wed, 25 Apr 2018 6:48:02 GMT -275 http request GET https://registry.npmjs.org/mocha -276 http 304 https://registry.npmjs.org/mocha -277 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -277 verbose headers via: '1.1 varnish', -277 verbose headers 'cache-control': 'max-age=300', -277 verbose headers etag: '"5ae024a2-101a5b"', -277 verbose headers age: '9545', -277 verbose headers connection: 'keep-alive', -277 verbose headers 'x-served-by': 'cache-itm18831-ITM', -277 verbose headers 'x-cache': 'HIT', -277 verbose headers 'x-cache-hits': '19', -277 verbose headers 'x-timer': 'S1524740183.281515,VS0,VE0', -277 verbose headers vary: 'Accept-Encoding, Accept' } -278 silly get cb [ 304, -278 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -278 silly get via: '1.1 varnish', -278 silly get 'cache-control': 'max-age=300', -278 silly get etag: '"5ae024a2-101a5b"', -278 silly get age: '9545', -278 silly get connection: 'keep-alive', -278 silly get 'x-served-by': 'cache-itm18831-ITM', -278 silly get 'x-cache': 'HIT', -278 silly get 'x-cache-hits': '19', -278 silly get 'x-timer': 'S1524740183.281515,VS0,VE0', -278 silly get vary: 'Accept-Encoding, Accept' } ] -279 verbose etag https://registry.npmjs.org/mocha from cache -280 verbose get saving mocha to /Users/zhiyuan/.npm/registry.npmjs.org/mocha/.cache.json -281 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -282 silly resolveWithNewModule mocha@3.3.0 checking installable status -283 silly cache add args [ 'mocha@~3.3.0', null ] -284 verbose cache add spec mocha@~3.3.0 -285 silly cache add parsed spec Result { -285 silly cache add raw: 'mocha@~3.3.0', -285 silly cache add scope: null, -285 silly cache add escapedName: 'mocha', -285 silly cache add name: 'mocha', -285 silly cache add rawSpec: '~3.3.0', -285 silly cache add spec: '>=3.3.0 <3.4.0', -285 silly cache add type: 'range' } -286 silly addNamed mocha@>=3.3.0 <3.4.0 -287 verbose addNamed ">=3.3.0 <3.4.0" is a valid semver range for mocha -288 silly addNameRange { name: 'mocha', range: '>=3.3.0 <3.4.0', hasData: false } -289 silly mapToRegistry name mocha -290 silly mapToRegistry using default registry -291 silly mapToRegistry registry https://registry.npmjs.org/ -292 silly mapToRegistry data Result { -292 silly mapToRegistry raw: 'mocha', -292 silly mapToRegistry scope: null, -292 silly mapToRegistry escapedName: 'mocha', -292 silly mapToRegistry name: 'mocha', -292 silly mapToRegistry rawSpec: '', -292 silly mapToRegistry spec: 'latest', -292 silly mapToRegistry type: 'tag' } -293 silly mapToRegistry uri https://registry.npmjs.org/mocha -294 verbose addNameRange registry:https://registry.npmjs.org/mocha not in flight; fetching -295 verbose get https://registry.npmjs.org/mocha not expired, no request -296 silly addNameRange number 2 { name: 'mocha', range: '>=3.3.0 <3.4.0', hasData: true } -297 silly addNameRange versions [ 'mocha', -297 silly addNameRange [ '0.0.1-alpha1', -297 silly addNameRange '0.0.1-alpha2', -297 silly addNameRange '0.0.1-alpha3', -297 silly addNameRange '0.0.1-alpha4', -297 silly addNameRange '0.0.1-alpha5', -297 silly addNameRange '0.0.1-alpha6', -297 silly addNameRange '0.0.1', -297 silly addNameRange '0.0.2', -297 silly addNameRange '0.0.3', -297 silly addNameRange '0.0.4', -297 silly addNameRange '0.0.5', -297 silly addNameRange '0.0.6', -297 silly addNameRange '0.0.7', -297 silly addNameRange '0.0.8', -297 silly addNameRange '0.1.0', -297 silly addNameRange '0.2.0', -297 silly addNameRange '0.3.0', -297 silly addNameRange '0.3.1', -297 silly addNameRange '0.3.2', -297 silly addNameRange '0.3.3', -297 silly addNameRange '0.3.4', -297 silly addNameRange '0.3.6', -297 silly addNameRange '0.4.0', -297 silly addNameRange '0.5.0', -297 silly addNameRange '0.6.0', -297 silly addNameRange '0.7.0', -297 silly addNameRange '0.7.1', -297 silly addNameRange '0.8.0', -297 silly addNameRange '0.8.1', -297 silly addNameRange '0.9.0', -297 silly addNameRange '0.10.0', -297 silly addNameRange '0.10.1', -297 silly addNameRange '0.10.2', -297 silly addNameRange '0.11.0', -297 silly addNameRange '0.12.0', -297 silly addNameRange '0.12.1', -297 silly addNameRange '0.13.0', -297 silly addNameRange '0.14.0', -297 silly addNameRange '0.14.1', -297 silly addNameRange '1.0.0', -297 silly addNameRange '1.0.1', -297 silly addNameRange '1.0.2', -297 silly addNameRange '1.0.3', -297 silly addNameRange '1.1.0', -297 silly addNameRange '1.2.0', -297 silly addNameRange '1.2.1', -297 silly addNameRange '1.2.2', -297 silly addNameRange '1.3.0', -297 silly addNameRange '1.3.1', -297 silly addNameRange '1.3.2', -297 silly addNameRange '1.4.0', -297 silly addNameRange '1.4.1', -297 silly addNameRange '1.4.2', -297 silly addNameRange '1.4.3', -297 silly addNameRange '1.5.0', -297 silly addNameRange '1.6.0', -297 silly addNameRange '1.7.0', -297 silly addNameRange '1.7.1', -297 silly addNameRange '1.7.2', -297 silly addNameRange '1.7.3', -297 silly addNameRange '1.7.4', -297 silly addNameRange '1.8.0', -297 silly addNameRange '1.8.1', -297 silly addNameRange '1.8.2', -297 silly addNameRange '1.9.0', -297 silly addNameRange '1.10.0', -297 silly addNameRange '1.11.0', -297 silly addNameRange '1.12.0', -297 silly addNameRange '1.12.1', -297 silly addNameRange '1.13.0', -297 silly addNameRange '1.14.0', -297 silly addNameRange '1.15.0', -297 silly addNameRange '1.15.1', -297 silly addNameRange '1.16.0', -297 silly addNameRange '1.16.1', -297 silly addNameRange '1.16.2', -297 silly addNameRange '1.17.0', -297 silly addNameRange '1.17.1', -297 silly addNameRange '1.18.0', -297 silly addNameRange '1.18.1', -297 silly addNameRange '1.18.2', -297 silly addNameRange '1.19.0', -297 silly addNameRange '1.20.0', -297 silly addNameRange '1.20.1', -297 silly addNameRange '1.21.0', -297 silly addNameRange '1.21.1', -297 silly addNameRange '1.21.2', -297 silly addNameRange '1.21.3', -297 silly addNameRange '1.21.4', -297 silly addNameRange '1.21.5', -297 silly addNameRange '2.0.0', -297 silly addNameRange '2.0.1', -297 silly addNameRange '2.1.0', -297 silly addNameRange '2.2.0', -297 silly addNameRange '2.2.1', -297 silly addNameRange '2.2.3', -297 silly addNameRange '2.2.4', -297 silly addNameRange '2.2.5', -297 silly addNameRange '2.3.0', -297 silly addNameRange '2.3.1', -297 silly addNameRange ... 40 more items ] ] -298 silly addNamed mocha@3.3.0 -299 verbose addNamed "3.3.0" is a plain semver version for mocha -300 silly cache afterAdd mocha@3.3.0 -301 verbose afterAdd /Users/zhiyuan/.npm/mocha/3.3.0/package/package.json not in flight; writing -302 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -303 verbose afterAdd /Users/zhiyuan/.npm/mocha/3.3.0/package/package.json written -304 silly fetchNamedPackageData deep-eql -305 silly mapToRegistry name deep-eql -306 silly mapToRegistry using default registry -307 silly mapToRegistry registry https://registry.npmjs.org/ -308 silly mapToRegistry data Result { -308 silly mapToRegistry raw: 'deep-eql', -308 silly mapToRegistry scope: null, -308 silly mapToRegistry escapedName: 'deep-eql', -308 silly mapToRegistry name: 'deep-eql', -308 silly mapToRegistry rawSpec: '', -308 silly mapToRegistry spec: 'latest', -308 silly mapToRegistry type: 'tag' } -309 silly mapToRegistry uri https://registry.npmjs.org/deep-eql -310 silly resolveWithNewModule deep-eql@0.1.3 checking installable status -311 silly fetchNamedPackageData type-detect -312 silly mapToRegistry name type-detect -313 silly mapToRegistry using default registry -314 silly mapToRegistry registry https://registry.npmjs.org/ -315 silly mapToRegistry data Result { -315 silly mapToRegistry raw: 'type-detect', -315 silly mapToRegistry scope: null, -315 silly mapToRegistry escapedName: 'type-detect', -315 silly mapToRegistry name: 'type-detect', -315 silly mapToRegistry rawSpec: '', -315 silly mapToRegistry spec: 'latest', -315 silly mapToRegistry type: 'tag' } -316 silly mapToRegistry uri https://registry.npmjs.org/type-detect -317 silly resolveWithNewModule type-detect@1.0.0 checking installable status -318 silly fetchNamedPackageData type-detect -319 silly mapToRegistry name type-detect -320 silly mapToRegistry using default registry -321 silly mapToRegistry registry https://registry.npmjs.org/ -322 silly mapToRegistry data Result { -322 silly mapToRegistry raw: 'type-detect', -322 silly mapToRegistry scope: null, -322 silly mapToRegistry escapedName: 'type-detect', -322 silly mapToRegistry name: 'type-detect', -322 silly mapToRegistry rawSpec: '', -322 silly mapToRegistry spec: 'latest', -322 silly mapToRegistry type: 'tag' } -323 silly mapToRegistry uri https://registry.npmjs.org/type-detect -324 silly resolveWithNewModule type-detect@0.1.1 checking installable status -325 silly cache add args [ 'type-detect@0.1.1', null ] -326 verbose cache add spec type-detect@0.1.1 -327 silly cache add parsed spec Result { -327 silly cache add raw: 'type-detect@0.1.1', -327 silly cache add scope: null, -327 silly cache add escapedName: 'type-detect', -327 silly cache add name: 'type-detect', -327 silly cache add rawSpec: '0.1.1', -327 silly cache add spec: '0.1.1', -327 silly cache add type: 'version' } -328 silly addNamed type-detect@0.1.1 -329 verbose addNamed "0.1.1" is a plain semver version for type-detect -330 silly mapToRegistry name type-detect -331 silly mapToRegistry using default registry -332 silly mapToRegistry registry https://registry.npmjs.org/ -333 silly mapToRegistry data Result { -333 silly mapToRegistry raw: 'type-detect', -333 silly mapToRegistry scope: null, -333 silly mapToRegistry escapedName: 'type-detect', -333 silly mapToRegistry name: 'type-detect', -333 silly mapToRegistry rawSpec: '', -333 silly mapToRegistry spec: 'latest', -333 silly mapToRegistry type: 'tag' } -334 silly mapToRegistry uri https://registry.npmjs.org/type-detect -335 verbose addNameVersion registry:https://registry.npmjs.org/type-detect not in flight; fetching -336 verbose get https://registry.npmjs.org/type-detect not expired, no request -337 silly cache afterAdd type-detect@0.1.1 -338 verbose afterAdd /Users/zhiyuan/.npm/type-detect/0.1.1/package/package.json not in flight; writing -339 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -340 verbose afterAdd /Users/zhiyuan/.npm/type-detect/0.1.1/package/package.json written -341 silly fetchNamedPackageData browser-stdout -342 silly mapToRegistry name browser-stdout -343 silly mapToRegistry using default registry -344 silly mapToRegistry registry https://registry.npmjs.org/ -345 silly mapToRegistry data Result { -345 silly mapToRegistry raw: 'browser-stdout', -345 silly mapToRegistry scope: null, -345 silly mapToRegistry escapedName: 'browser-stdout', -345 silly mapToRegistry name: 'browser-stdout', -345 silly mapToRegistry rawSpec: '', -345 silly mapToRegistry spec: 'latest', -345 silly mapToRegistry type: 'tag' } -346 silly mapToRegistry uri https://registry.npmjs.org/browser-stdout -347 silly fetchNamedPackageData debug -348 silly mapToRegistry name debug -349 silly mapToRegistry using default registry -350 silly mapToRegistry registry https://registry.npmjs.org/ -351 silly mapToRegistry data Result { -351 silly mapToRegistry raw: 'debug', -351 silly mapToRegistry scope: null, -351 silly mapToRegistry escapedName: 'debug', -351 silly mapToRegistry name: 'debug', -351 silly mapToRegistry rawSpec: '', -351 silly mapToRegistry spec: 'latest', -351 silly mapToRegistry type: 'tag' } -352 silly mapToRegistry uri https://registry.npmjs.org/debug -353 silly fetchNamedPackageData diff -354 silly mapToRegistry name diff -355 silly mapToRegistry using default registry -356 silly mapToRegistry registry https://registry.npmjs.org/ -357 silly mapToRegistry data Result { -357 silly mapToRegistry raw: 'diff', -357 silly mapToRegistry scope: null, -357 silly mapToRegistry escapedName: 'diff', -357 silly mapToRegistry name: 'diff', -357 silly mapToRegistry rawSpec: '', -357 silly mapToRegistry spec: 'latest', -357 silly mapToRegistry type: 'tag' } -358 silly mapToRegistry uri https://registry.npmjs.org/diff -359 silly fetchNamedPackageData glob -360 silly mapToRegistry name glob -361 silly mapToRegistry using default registry -362 silly mapToRegistry registry https://registry.npmjs.org/ -363 silly mapToRegistry data Result { -363 silly mapToRegistry raw: 'glob', -363 silly mapToRegistry scope: null, -363 silly mapToRegistry escapedName: 'glob', -363 silly mapToRegistry name: 'glob', -363 silly mapToRegistry rawSpec: '', -363 silly mapToRegistry spec: 'latest', -363 silly mapToRegistry type: 'tag' } -364 silly mapToRegistry uri https://registry.npmjs.org/glob -365 silly fetchNamedPackageData growl -366 silly mapToRegistry name growl -367 silly mapToRegistry using default registry -368 silly mapToRegistry registry https://registry.npmjs.org/ -369 silly mapToRegistry data Result { -369 silly mapToRegistry raw: 'growl', -369 silly mapToRegistry scope: null, -369 silly mapToRegistry escapedName: 'growl', -369 silly mapToRegistry name: 'growl', -369 silly mapToRegistry rawSpec: '', -369 silly mapToRegistry spec: 'latest', -369 silly mapToRegistry type: 'tag' } -370 silly mapToRegistry uri https://registry.npmjs.org/growl -371 silly fetchNamedPackageData json3 -372 silly mapToRegistry name json3 -373 silly mapToRegistry using default registry -374 silly mapToRegistry registry https://registry.npmjs.org/ -375 silly mapToRegistry data Result { -375 silly mapToRegistry raw: 'json3', -375 silly mapToRegistry scope: null, -375 silly mapToRegistry escapedName: 'json3', -375 silly mapToRegistry name: 'json3', -375 silly mapToRegistry rawSpec: '', -375 silly mapToRegistry spec: 'latest', -375 silly mapToRegistry type: 'tag' } -376 silly mapToRegistry uri https://registry.npmjs.org/json3 -377 silly fetchNamedPackageData lodash.create -378 silly mapToRegistry name lodash.create -379 silly mapToRegistry using default registry -380 silly mapToRegistry registry https://registry.npmjs.org/ -381 silly mapToRegistry data Result { -381 silly mapToRegistry raw: 'lodash.create', -381 silly mapToRegistry scope: null, -381 silly mapToRegistry escapedName: 'lodash.create', -381 silly mapToRegistry name: 'lodash.create', -381 silly mapToRegistry rawSpec: '', -381 silly mapToRegistry spec: 'latest', -381 silly mapToRegistry type: 'tag' } -382 silly mapToRegistry uri https://registry.npmjs.org/lodash.create -383 silly fetchNamedPackageData supports-color -384 silly mapToRegistry name supports-color -385 silly mapToRegistry using default registry -386 silly mapToRegistry registry https://registry.npmjs.org/ -387 silly mapToRegistry data Result { -387 silly mapToRegistry raw: 'supports-color', -387 silly mapToRegistry scope: null, -387 silly mapToRegistry escapedName: 'supports-color', -387 silly mapToRegistry name: 'supports-color', -387 silly mapToRegistry rawSpec: '', -387 silly mapToRegistry spec: 'latest', -387 silly mapToRegistry type: 'tag' } -388 silly mapToRegistry uri https://registry.npmjs.org/supports-color -389 verbose request uri https://registry.npmjs.org/diff -390 verbose request no auth needed -391 info attempt registry request try #1 at 18:56:23 -392 verbose etag "5ab116ee-fcf1" -393 verbose lastModified Tue, 20 Mar 2018 14:13:02 GMT -394 http request GET https://registry.npmjs.org/diff -395 verbose request uri https://registry.npmjs.org/browser-stdout -396 verbose request no auth needed -397 info attempt registry request try #1 at 18:56:23 -398 verbose etag "5a95956a-1ece" -399 verbose lastModified Tue, 27 Feb 2018 17:29:14 GMT -400 http request GET https://registry.npmjs.org/browser-stdout -401 verbose request uri https://registry.npmjs.org/debug -402 verbose request no auth needed -403 info attempt registry request try #1 at 18:56:23 -404 verbose etag "5ae04225-1954d" -405 verbose lastModified Wed, 25 Apr 2018 8:53:57 GMT -406 http request GET https://registry.npmjs.org/debug -407 verbose request uri https://registry.npmjs.org/glob -408 verbose request no auth needed -409 info attempt registry request try #1 at 18:56:23 -410 verbose etag "5ad07458-20247" -411 verbose lastModified Fri, 13 Apr 2018 9:11:52 GMT -412 http request GET https://registry.npmjs.org/glob -413 verbose request uri https://registry.npmjs.org/growl -414 verbose request no auth needed -415 info attempt registry request try #1 at 18:56:23 -416 verbose etag "5ac4f2eb-64f9" -417 verbose lastModified Wed, 4 Apr 2018 15:44:43 GMT -418 http request GET https://registry.npmjs.org/growl -419 verbose request uri https://registry.npmjs.org/supports-color -420 verbose request no auth needed -421 info attempt registry request try #1 at 18:56:23 -422 verbose etag "5ad570bb-beb1" -423 verbose lastModified Tue, 17 Apr 2018 3:57:47 GMT -424 http request GET https://registry.npmjs.org/supports-color -425 verbose request uri https://registry.npmjs.org/json3 -426 verbose request no auth needed -427 info attempt registry request try #1 at 18:56:23 -428 verbose etag "5a5f46ca-5e53" -429 verbose lastModified Wed, 17 Jan 2018 12:51:22 GMT -430 http request GET https://registry.npmjs.org/json3 -431 verbose request uri https://registry.npmjs.org/lodash.create -432 verbose request no auth needed -433 info attempt registry request try #1 at 18:56:23 -434 verbose etag "57f67fb1-58a8" -435 verbose lastModified Thu, 6 Oct 2016 16:45:37 GMT -436 http request GET https://registry.npmjs.org/lodash.create -437 http 304 https://registry.npmjs.org/browser-stdout -438 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -438 verbose headers via: '1.1 varnish', -438 verbose headers 'cache-control': 'max-age=300', -438 verbose headers etag: '"5a95956a-1ece"', -438 verbose headers age: '4091', -438 verbose headers connection: 'keep-alive', -438 verbose headers 'x-served-by': 'cache-itm18831-ITM', -438 verbose headers 'x-cache': 'HIT', -438 verbose headers 'x-cache-hits': '3', -438 verbose headers 'x-timer': 'S1524740184.801872,VS0,VE0', -438 verbose headers vary: 'Accept-Encoding, Accept' } -439 silly get cb [ 304, -439 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -439 silly get via: '1.1 varnish', -439 silly get 'cache-control': 'max-age=300', -439 silly get etag: '"5a95956a-1ece"', -439 silly get age: '4091', -439 silly get connection: 'keep-alive', -439 silly get 'x-served-by': 'cache-itm18831-ITM', -439 silly get 'x-cache': 'HIT', -439 silly get 'x-cache-hits': '3', -439 silly get 'x-timer': 'S1524740184.801872,VS0,VE0', -439 silly get vary: 'Accept-Encoding, Accept' } ] -440 verbose etag https://registry.npmjs.org/browser-stdout from cache -441 verbose get saving browser-stdout to /Users/zhiyuan/.npm/registry.npmjs.org/browser-stdout/.cache.json -442 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -443 http 304 https://registry.npmjs.org/diff -444 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -444 verbose headers via: '1.1 varnish', -444 verbose headers 'cache-control': 'max-age=300', -444 verbose headers etag: '"5ab116ee-fcf1"', -444 verbose headers age: '10752', -444 verbose headers connection: 'keep-alive', -444 verbose headers 'x-served-by': 'cache-itm18829-ITM', -444 verbose headers 'x-cache': 'HIT', -444 verbose headers 'x-cache-hits': '20', -444 verbose headers 'x-timer': 'S1524740184.808632,VS0,VE0', -444 verbose headers vary: 'Accept-Encoding, Accept' } -445 silly get cb [ 304, -445 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -445 silly get via: '1.1 varnish', -445 silly get 'cache-control': 'max-age=300', -445 silly get etag: '"5ab116ee-fcf1"', -445 silly get age: '10752', -445 silly get connection: 'keep-alive', -445 silly get 'x-served-by': 'cache-itm18829-ITM', -445 silly get 'x-cache': 'HIT', -445 silly get 'x-cache-hits': '20', -445 silly get 'x-timer': 'S1524740184.808632,VS0,VE0', -445 silly get vary: 'Accept-Encoding, Accept' } ] -446 verbose etag https://registry.npmjs.org/diff from cache -447 verbose get saving diff to /Users/zhiyuan/.npm/registry.npmjs.org/diff/.cache.json -448 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -449 silly resolveWithNewModule browser-stdout@1.3.0 checking installable status -450 silly cache add args [ 'browser-stdout@1.3.0', null ] -451 verbose cache add spec browser-stdout@1.3.0 -452 silly cache add parsed spec Result { -452 silly cache add raw: 'browser-stdout@1.3.0', -452 silly cache add scope: null, -452 silly cache add escapedName: 'browser-stdout', -452 silly cache add name: 'browser-stdout', -452 silly cache add rawSpec: '1.3.0', -452 silly cache add spec: '1.3.0', -452 silly cache add type: 'version' } -453 silly addNamed browser-stdout@1.3.0 -454 verbose addNamed "1.3.0" is a plain semver version for browser-stdout -455 silly mapToRegistry name browser-stdout -456 silly mapToRegistry using default registry -457 silly mapToRegistry registry https://registry.npmjs.org/ -458 silly mapToRegistry data Result { -458 silly mapToRegistry raw: 'browser-stdout', -458 silly mapToRegistry scope: null, -458 silly mapToRegistry escapedName: 'browser-stdout', -458 silly mapToRegistry name: 'browser-stdout', -458 silly mapToRegistry rawSpec: '', -458 silly mapToRegistry spec: 'latest', -458 silly mapToRegistry type: 'tag' } -459 silly mapToRegistry uri https://registry.npmjs.org/browser-stdout -460 verbose addNameVersion registry:https://registry.npmjs.org/browser-stdout not in flight; fetching -461 verbose get https://registry.npmjs.org/browser-stdout not expired, no request -462 silly cache afterAdd browser-stdout@1.3.0 -463 verbose afterAdd /Users/zhiyuan/.npm/browser-stdout/1.3.0/package/package.json not in flight; writing -464 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -465 silly resolveWithNewModule diff@3.2.0 checking installable status -466 silly cache add args [ 'diff@3.2.0', null ] -467 verbose cache add spec diff@3.2.0 -468 silly cache add parsed spec Result { -468 silly cache add raw: 'diff@3.2.0', -468 silly cache add scope: null, -468 silly cache add escapedName: 'diff', -468 silly cache add name: 'diff', -468 silly cache add rawSpec: '3.2.0', -468 silly cache add spec: '3.2.0', -468 silly cache add type: 'version' } -469 silly addNamed diff@3.2.0 -470 verbose addNamed "3.2.0" is a plain semver version for diff -471 silly mapToRegistry name diff -472 silly mapToRegistry using default registry -473 silly mapToRegistry registry https://registry.npmjs.org/ -474 silly mapToRegistry data Result { -474 silly mapToRegistry raw: 'diff', -474 silly mapToRegistry scope: null, -474 silly mapToRegistry escapedName: 'diff', -474 silly mapToRegistry name: 'diff', -474 silly mapToRegistry rawSpec: '', -474 silly mapToRegistry spec: 'latest', -474 silly mapToRegistry type: 'tag' } -475 silly mapToRegistry uri https://registry.npmjs.org/diff -476 verbose addNameVersion registry:https://registry.npmjs.org/diff not in flight; fetching -477 verbose get https://registry.npmjs.org/diff not expired, no request -478 verbose afterAdd /Users/zhiyuan/.npm/browser-stdout/1.3.0/package/package.json written -479 silly cache afterAdd diff@3.2.0 -480 verbose afterAdd /Users/zhiyuan/.npm/diff/3.2.0/package/package.json not in flight; writing -481 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -482 verbose afterAdd /Users/zhiyuan/.npm/diff/3.2.0/package/package.json written -483 http 304 https://registry.npmjs.org/growl -484 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -484 verbose headers via: '1.1 varnish', -484 verbose headers 'cache-control': 'max-age=300', -484 verbose headers etag: '"5ac4f2eb-64f9"', -484 verbose headers age: '5622', -484 verbose headers connection: 'keep-alive', -484 verbose headers 'x-served-by': 'cache-itm18833-ITM', -484 verbose headers 'x-cache': 'HIT', -484 verbose headers 'x-cache-hits': '3', -484 verbose headers 'x-timer': 'S1524740184.886983,VS0,VE0', -484 verbose headers vary: 'Accept-Encoding, Accept' } -485 silly get cb [ 304, -485 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -485 silly get via: '1.1 varnish', -485 silly get 'cache-control': 'max-age=300', -485 silly get etag: '"5ac4f2eb-64f9"', -485 silly get age: '5622', -485 silly get connection: 'keep-alive', -485 silly get 'x-served-by': 'cache-itm18833-ITM', -485 silly get 'x-cache': 'HIT', -485 silly get 'x-cache-hits': '3', -485 silly get 'x-timer': 'S1524740184.886983,VS0,VE0', -485 silly get vary: 'Accept-Encoding, Accept' } ] -486 verbose etag https://registry.npmjs.org/growl from cache -487 verbose get saving growl to /Users/zhiyuan/.npm/registry.npmjs.org/growl/.cache.json -488 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -489 silly resolveWithNewModule growl@1.9.2 checking installable status -490 silly cache add args [ 'growl@1.9.2', null ] -491 verbose cache add spec growl@1.9.2 -492 silly cache add parsed spec Result { -492 silly cache add raw: 'growl@1.9.2', -492 silly cache add scope: null, -492 silly cache add escapedName: 'growl', -492 silly cache add name: 'growl', -492 silly cache add rawSpec: '1.9.2', -492 silly cache add spec: '1.9.2', -492 silly cache add type: 'version' } -493 silly addNamed growl@1.9.2 -494 verbose addNamed "1.9.2" is a plain semver version for growl -495 silly mapToRegistry name growl -496 silly mapToRegistry using default registry -497 silly mapToRegistry registry https://registry.npmjs.org/ -498 silly mapToRegistry data Result { -498 silly mapToRegistry raw: 'growl', -498 silly mapToRegistry scope: null, -498 silly mapToRegistry escapedName: 'growl', -498 silly mapToRegistry name: 'growl', -498 silly mapToRegistry rawSpec: '', -498 silly mapToRegistry spec: 'latest', -498 silly mapToRegistry type: 'tag' } -499 silly mapToRegistry uri https://registry.npmjs.org/growl -500 verbose addNameVersion registry:https://registry.npmjs.org/growl not in flight; fetching -501 verbose get https://registry.npmjs.org/growl not expired, no request -502 silly cache afterAdd growl@1.9.2 -503 verbose afterAdd /Users/zhiyuan/.npm/growl/1.9.2/package/package.json not in flight; writing -504 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -505 http 304 https://registry.npmjs.org/lodash.create -506 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -506 verbose headers via: '1.1 varnish', -506 verbose headers 'cache-control': 'max-age=300', -506 verbose headers etag: '"57f67fb1-58a8"', -506 verbose headers age: '4091', -506 verbose headers connection: 'keep-alive', -506 verbose headers 'x-served-by': 'cache-itm18822-ITM', -506 verbose headers 'x-cache': 'HIT', -506 verbose headers 'x-cache-hits': '1', -506 verbose headers 'x-timer': 'S1524740184.892490,VS0,VE0', -506 verbose headers vary: 'Accept-Encoding, Accept' } -507 silly get cb [ 304, -507 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -507 silly get via: '1.1 varnish', -507 silly get 'cache-control': 'max-age=300', -507 silly get etag: '"57f67fb1-58a8"', -507 silly get age: '4091', -507 silly get connection: 'keep-alive', -507 silly get 'x-served-by': 'cache-itm18822-ITM', -507 silly get 'x-cache': 'HIT', -507 silly get 'x-cache-hits': '1', -507 silly get 'x-timer': 'S1524740184.892490,VS0,VE0', -507 silly get vary: 'Accept-Encoding, Accept' } ] -508 verbose etag https://registry.npmjs.org/lodash.create from cache -509 verbose get saving lodash.create to /Users/zhiyuan/.npm/registry.npmjs.org/lodash.create/.cache.json -510 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -511 verbose afterAdd /Users/zhiyuan/.npm/growl/1.9.2/package/package.json written -512 http 304 https://registry.npmjs.org/glob -513 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -513 verbose headers via: '1.1 varnish', -513 verbose headers 'cache-control': 'max-age=300', -513 verbose headers etag: '"5ad07458-20247"', -513 verbose headers age: '4319', -513 verbose headers connection: 'keep-alive', -513 verbose headers 'x-served-by': 'cache-itm18826-ITM', -513 verbose headers 'x-cache': 'HIT', -513 verbose headers 'x-cache-hits': '39', -513 verbose headers 'x-timer': 'S1524740184.893438,VS0,VE0', -513 verbose headers vary: 'Accept-Encoding, Accept' } -514 silly get cb [ 304, -514 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -514 silly get via: '1.1 varnish', -514 silly get 'cache-control': 'max-age=300', -514 silly get etag: '"5ad07458-20247"', -514 silly get age: '4319', -514 silly get connection: 'keep-alive', -514 silly get 'x-served-by': 'cache-itm18826-ITM', -514 silly get 'x-cache': 'HIT', -514 silly get 'x-cache-hits': '39', -514 silly get 'x-timer': 'S1524740184.893438,VS0,VE0', -514 silly get vary: 'Accept-Encoding, Accept' } ] -515 verbose etag https://registry.npmjs.org/glob from cache -516 verbose get saving glob to /Users/zhiyuan/.npm/registry.npmjs.org/glob/.cache.json -517 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -518 http 304 https://registry.npmjs.org/debug -519 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -519 verbose headers via: '1.1 varnish', -519 verbose headers 'cache-control': 'max-age=300', -519 verbose headers etag: '"5ae04225-1954d"', -519 verbose headers age: '7181', -519 verbose headers connection: 'keep-alive', -519 verbose headers 'x-served-by': 'cache-itm18820-ITM', -519 verbose headers 'x-cache': 'HIT', -519 verbose headers 'x-cache-hits': '54', -519 verbose headers 'x-timer': 'S1524740184.901937,VS0,VE0', -519 verbose headers vary: 'Accept-Encoding, Accept' } -520 silly get cb [ 304, -520 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -520 silly get via: '1.1 varnish', -520 silly get 'cache-control': 'max-age=300', -520 silly get etag: '"5ae04225-1954d"', -520 silly get age: '7181', -520 silly get connection: 'keep-alive', -520 silly get 'x-served-by': 'cache-itm18820-ITM', -520 silly get 'x-cache': 'HIT', -520 silly get 'x-cache-hits': '54', -520 silly get 'x-timer': 'S1524740184.901937,VS0,VE0', -520 silly get vary: 'Accept-Encoding, Accept' } ] -521 verbose etag https://registry.npmjs.org/debug from cache -522 verbose get saving debug to /Users/zhiyuan/.npm/registry.npmjs.org/debug/.cache.json -523 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -524 silly resolveWithNewModule lodash.create@3.1.1 checking installable status -525 silly cache add args [ 'lodash.create@3.1.1', null ] -526 verbose cache add spec lodash.create@3.1.1 -527 silly cache add parsed spec Result { -527 silly cache add raw: 'lodash.create@3.1.1', -527 silly cache add scope: null, -527 silly cache add escapedName: 'lodash.create', -527 silly cache add name: 'lodash.create', -527 silly cache add rawSpec: '3.1.1', -527 silly cache add spec: '3.1.1', -527 silly cache add type: 'version' } -528 silly addNamed lodash.create@3.1.1 -529 verbose addNamed "3.1.1" is a plain semver version for lodash.create -530 silly mapToRegistry name lodash.create -531 silly mapToRegistry using default registry -532 silly mapToRegistry registry https://registry.npmjs.org/ -533 silly mapToRegistry data Result { -533 silly mapToRegistry raw: 'lodash.create', -533 silly mapToRegistry scope: null, -533 silly mapToRegistry escapedName: 'lodash.create', -533 silly mapToRegistry name: 'lodash.create', -533 silly mapToRegistry rawSpec: '', -533 silly mapToRegistry spec: 'latest', -533 silly mapToRegistry type: 'tag' } -534 silly mapToRegistry uri https://registry.npmjs.org/lodash.create -535 verbose addNameVersion registry:https://registry.npmjs.org/lodash.create not in flight; fetching -536 verbose get https://registry.npmjs.org/lodash.create not expired, no request -537 http 304 https://registry.npmjs.org/supports-color -538 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -538 verbose headers via: '1.1 varnish', -538 verbose headers 'cache-control': 'max-age=300', -538 verbose headers etag: '"5ad570bb-beb1"', -538 verbose headers age: '1271', -538 verbose headers connection: 'keep-alive', -538 verbose headers 'x-served-by': 'cache-itm18831-ITM', -538 verbose headers 'x-cache': 'HIT', -538 verbose headers 'x-cache-hits': '12', -538 verbose headers 'x-timer': 'S1524740184.910672,VS0,VE0', -538 verbose headers vary: 'Accept-Encoding, Accept' } -539 silly get cb [ 304, -539 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -539 silly get via: '1.1 varnish', -539 silly get 'cache-control': 'max-age=300', -539 silly get etag: '"5ad570bb-beb1"', -539 silly get age: '1271', -539 silly get connection: 'keep-alive', -539 silly get 'x-served-by': 'cache-itm18831-ITM', -539 silly get 'x-cache': 'HIT', -539 silly get 'x-cache-hits': '12', -539 silly get 'x-timer': 'S1524740184.910672,VS0,VE0', -539 silly get vary: 'Accept-Encoding, Accept' } ] -540 verbose etag https://registry.npmjs.org/supports-color from cache -541 verbose get saving supports-color to /Users/zhiyuan/.npm/registry.npmjs.org/supports-color/.cache.json -542 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -543 silly cache afterAdd lodash.create@3.1.1 -544 verbose afterAdd /Users/zhiyuan/.npm/lodash.create/3.1.1/package/package.json not in flight; writing -545 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -546 silly resolveWithNewModule debug@2.6.0 checking installable status -547 silly cache add args [ 'debug@2.6.0', null ] -548 verbose cache add spec debug@2.6.0 -549 silly cache add parsed spec Result { -549 silly cache add raw: 'debug@2.6.0', -549 silly cache add scope: null, -549 silly cache add escapedName: 'debug', -549 silly cache add name: 'debug', -549 silly cache add rawSpec: '2.6.0', -549 silly cache add spec: '2.6.0', -549 silly cache add type: 'version' } -550 silly addNamed debug@2.6.0 -551 verbose addNamed "2.6.0" is a plain semver version for debug -552 silly mapToRegistry name debug -553 silly mapToRegistry using default registry -554 silly mapToRegistry registry https://registry.npmjs.org/ -555 silly mapToRegistry data Result { -555 silly mapToRegistry raw: 'debug', -555 silly mapToRegistry scope: null, -555 silly mapToRegistry escapedName: 'debug', -555 silly mapToRegistry name: 'debug', -555 silly mapToRegistry rawSpec: '', -555 silly mapToRegistry spec: 'latest', -555 silly mapToRegistry type: 'tag' } -556 silly mapToRegistry uri https://registry.npmjs.org/debug -557 verbose addNameVersion registry:https://registry.npmjs.org/debug not in flight; fetching -558 silly resolveWithNewModule glob@7.1.1 checking installable status -559 silly cache add args [ 'glob@7.1.1', null ] -560 verbose cache add spec glob@7.1.1 -561 silly cache add parsed spec Result { -561 silly cache add raw: 'glob@7.1.1', -561 silly cache add scope: null, -561 silly cache add escapedName: 'glob', -561 silly cache add name: 'glob', -561 silly cache add rawSpec: '7.1.1', -561 silly cache add spec: '7.1.1', -561 silly cache add type: 'version' } -562 silly addNamed glob@7.1.1 -563 verbose addNamed "7.1.1" is a plain semver version for glob -564 silly mapToRegistry name glob -565 silly mapToRegistry using default registry -566 silly mapToRegistry registry https://registry.npmjs.org/ -567 silly mapToRegistry data Result { -567 silly mapToRegistry raw: 'glob', -567 silly mapToRegistry scope: null, -567 silly mapToRegistry escapedName: 'glob', -567 silly mapToRegistry name: 'glob', -567 silly mapToRegistry rawSpec: '', -567 silly mapToRegistry spec: 'latest', -567 silly mapToRegistry type: 'tag' } -568 silly mapToRegistry uri https://registry.npmjs.org/glob -569 verbose addNameVersion registry:https://registry.npmjs.org/glob not in flight; fetching -570 verbose get https://registry.npmjs.org/debug not expired, no request -571 verbose get https://registry.npmjs.org/glob not expired, no request -572 http 304 https://registry.npmjs.org/json3 -573 verbose headers { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -573 verbose headers via: '1.1 varnish', -573 verbose headers 'cache-control': 'max-age=300', -573 verbose headers etag: '"5a5f46ca-5e53"', -573 verbose headers age: '4986', -573 verbose headers connection: 'keep-alive', -573 verbose headers 'x-served-by': 'cache-itm18824-ITM', -573 verbose headers 'x-cache': 'HIT', -573 verbose headers 'x-cache-hits': '5', -573 verbose headers 'x-timer': 'S1524740184.916670,VS0,VE0', -573 verbose headers vary: 'Accept-Encoding, Accept' } -574 silly get cb [ 304, -574 silly get { date: 'Thu, 26 Apr 2018 10:56:23 GMT', -574 silly get via: '1.1 varnish', -574 silly get 'cache-control': 'max-age=300', -574 silly get etag: '"5a5f46ca-5e53"', -574 silly get age: '4986', -574 silly get connection: 'keep-alive', -574 silly get 'x-served-by': 'cache-itm18824-ITM', -574 silly get 'x-cache': 'HIT', -574 silly get 'x-cache-hits': '5', -574 silly get 'x-timer': 'S1524740184.916670,VS0,VE0', -574 silly get vary: 'Accept-Encoding, Accept' } ] -575 verbose etag https://registry.npmjs.org/json3 from cache -576 verbose get saving json3 to /Users/zhiyuan/.npm/registry.npmjs.org/json3/.cache.json -577 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -578 verbose afterAdd /Users/zhiyuan/.npm/lodash.create/3.1.1/package/package.json written -579 silly cache afterAdd debug@2.6.0 -580 verbose afterAdd /Users/zhiyuan/.npm/debug/2.6.0/package/package.json not in flight; writing -581 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -582 silly cache afterAdd glob@7.1.1 -583 verbose afterAdd /Users/zhiyuan/.npm/glob/7.1.1/package/package.json not in flight; writing -584 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -585 silly resolveWithNewModule supports-color@3.1.2 checking installable status -586 silly cache add args [ 'supports-color@3.1.2', null ] -587 verbose cache add spec supports-color@3.1.2 -588 silly cache add parsed spec Result { -588 silly cache add raw: 'supports-color@3.1.2', -588 silly cache add scope: null, -588 silly cache add escapedName: 'supports-color', -588 silly cache add name: 'supports-color', -588 silly cache add rawSpec: '3.1.2', -588 silly cache add spec: '3.1.2', -588 silly cache add type: 'version' } -589 silly addNamed supports-color@3.1.2 -590 verbose addNamed "3.1.2" is a plain semver version for supports-color -591 silly mapToRegistry name supports-color -592 silly mapToRegistry using default registry -593 silly mapToRegistry registry https://registry.npmjs.org/ -594 silly mapToRegistry data Result { -594 silly mapToRegistry raw: 'supports-color', -594 silly mapToRegistry scope: null, -594 silly mapToRegistry escapedName: 'supports-color', -594 silly mapToRegistry name: 'supports-color', -594 silly mapToRegistry rawSpec: '', -594 silly mapToRegistry spec: 'latest', -594 silly mapToRegistry type: 'tag' } -595 silly mapToRegistry uri https://registry.npmjs.org/supports-color -596 verbose addNameVersion registry:https://registry.npmjs.org/supports-color not in flight; fetching -597 verbose get https://registry.npmjs.org/supports-color not expired, no request -598 verbose afterAdd /Users/zhiyuan/.npm/glob/7.1.1/package/package.json written -599 verbose afterAdd /Users/zhiyuan/.npm/debug/2.6.0/package/package.json written -600 silly resolveWithNewModule json3@3.3.2 checking installable status -601 silly cache add args [ 'json3@3.3.2', null ] -602 verbose cache add spec json3@3.3.2 -603 silly cache add parsed spec Result { -603 silly cache add raw: 'json3@3.3.2', -603 silly cache add scope: null, -603 silly cache add escapedName: 'json3', -603 silly cache add name: 'json3', -603 silly cache add rawSpec: '3.3.2', -603 silly cache add spec: '3.3.2', -603 silly cache add type: 'version' } -604 silly addNamed json3@3.3.2 -605 verbose addNamed "3.3.2" is a plain semver version for json3 -606 silly mapToRegistry name json3 -607 silly mapToRegistry using default registry -608 silly mapToRegistry registry https://registry.npmjs.org/ -609 silly mapToRegistry data Result { -609 silly mapToRegistry raw: 'json3', -609 silly mapToRegistry scope: null, -609 silly mapToRegistry escapedName: 'json3', -609 silly mapToRegistry name: 'json3', -609 silly mapToRegistry rawSpec: '', -609 silly mapToRegistry spec: 'latest', -609 silly mapToRegistry type: 'tag' } -610 silly mapToRegistry uri https://registry.npmjs.org/json3 -611 verbose addNameVersion registry:https://registry.npmjs.org/json3 not in flight; fetching -612 silly cache afterAdd supports-color@3.1.2 -613 verbose afterAdd /Users/zhiyuan/.npm/supports-color/3.1.2/package/package.json not in flight; writing -614 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -615 verbose get https://registry.npmjs.org/json3 not expired, no request -616 verbose afterAdd /Users/zhiyuan/.npm/supports-color/3.1.2/package/package.json written -617 silly cache afterAdd json3@3.3.2 -618 verbose afterAdd /Users/zhiyuan/.npm/json3/3.3.2/package/package.json not in flight; writing -619 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -620 verbose afterAdd /Users/zhiyuan/.npm/json3/3.3.2/package/package.json written -621 silly fetchNamedPackageData ms -622 silly mapToRegistry name ms -623 silly mapToRegistry using default registry -624 silly mapToRegistry registry https://registry.npmjs.org/ -625 silly mapToRegistry data Result { -625 silly mapToRegistry raw: 'ms', -625 silly mapToRegistry scope: null, -625 silly mapToRegistry escapedName: 'ms', -625 silly mapToRegistry name: 'ms', -625 silly mapToRegistry rawSpec: '', -625 silly mapToRegistry spec: 'latest', -625 silly mapToRegistry type: 'tag' } -626 silly mapToRegistry uri https://registry.npmjs.org/ms -627 verbose request uri https://registry.npmjs.org/ms -628 verbose request no auth needed -629 info attempt registry request try #1 at 18:56:23 -630 verbose etag "5aa9402e-498a" -631 verbose lastModified Wed, 14 Mar 2018 15:30:54 GMT -632 http request GET https://registry.npmjs.org/ms -633 http 304 https://registry.npmjs.org/ms -634 verbose headers { date: 'Thu, 26 Apr 2018 10:56:24 GMT', -634 verbose headers via: '1.1 varnish', -634 verbose headers 'cache-control': 'max-age=300', -634 verbose headers etag: '"5aa9402e-498a"', -634 verbose headers age: '12605', -634 verbose headers connection: 'keep-alive', -634 verbose headers 'x-served-by': 'cache-itm18831-ITM', -634 verbose headers 'x-cache': 'HIT', -634 verbose headers 'x-cache-hits': '61', -634 verbose headers 'x-timer': 'S1524740184.022726,VS0,VE0', -634 verbose headers vary: 'Accept-Encoding, Accept' } -635 silly get cb [ 304, -635 silly get { date: 'Thu, 26 Apr 2018 10:56:24 GMT', -635 silly get via: '1.1 varnish', -635 silly get 'cache-control': 'max-age=300', -635 silly get etag: '"5aa9402e-498a"', -635 silly get age: '12605', -635 silly get connection: 'keep-alive', -635 silly get 'x-served-by': 'cache-itm18831-ITM', -635 silly get 'x-cache': 'HIT', -635 silly get 'x-cache-hits': '61', -635 silly get 'x-timer': 'S1524740184.022726,VS0,VE0', -635 silly get vary: 'Accept-Encoding, Accept' } ] -636 verbose etag https://registry.npmjs.org/ms from cache -637 verbose get saving ms to /Users/zhiyuan/.npm/registry.npmjs.org/ms/.cache.json -638 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -639 silly resolveWithNewModule ms@0.7.2 checking installable status -640 silly cache add args [ 'ms@0.7.2', null ] -641 verbose cache add spec ms@0.7.2 -642 silly cache add parsed spec Result { -642 silly cache add raw: 'ms@0.7.2', -642 silly cache add scope: null, -642 silly cache add escapedName: 'ms', -642 silly cache add name: 'ms', -642 silly cache add rawSpec: '0.7.2', -642 silly cache add spec: '0.7.2', -642 silly cache add type: 'version' } -643 silly addNamed ms@0.7.2 -644 verbose addNamed "0.7.2" is a plain semver version for ms -645 silly mapToRegistry name ms -646 silly mapToRegistry using default registry -647 silly mapToRegistry registry https://registry.npmjs.org/ -648 silly mapToRegistry data Result { -648 silly mapToRegistry raw: 'ms', -648 silly mapToRegistry scope: null, -648 silly mapToRegistry escapedName: 'ms', -648 silly mapToRegistry name: 'ms', -648 silly mapToRegistry rawSpec: '', -648 silly mapToRegistry spec: 'latest', -648 silly mapToRegistry type: 'tag' } -649 silly mapToRegistry uri https://registry.npmjs.org/ms -650 verbose addNameVersion registry:https://registry.npmjs.org/ms not in flight; fetching -651 verbose get https://registry.npmjs.org/ms not expired, no request -652 silly cache afterAdd ms@0.7.2 -653 verbose afterAdd /Users/zhiyuan/.npm/ms/0.7.2/package/package.json not in flight; writing -654 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -655 verbose afterAdd /Users/zhiyuan/.npm/ms/0.7.2/package/package.json written -656 silly fetchNamedPackageData lodash._basecreate -657 silly mapToRegistry name lodash._basecreate -658 silly mapToRegistry using default registry -659 silly mapToRegistry registry https://registry.npmjs.org/ -660 silly mapToRegistry data Result { -660 silly mapToRegistry raw: 'lodash._basecreate', -660 silly mapToRegistry scope: null, -660 silly mapToRegistry escapedName: 'lodash._basecreate', -660 silly mapToRegistry name: 'lodash._basecreate', -660 silly mapToRegistry rawSpec: '', -660 silly mapToRegistry spec: 'latest', -660 silly mapToRegistry type: 'tag' } -661 silly mapToRegistry uri https://registry.npmjs.org/lodash._basecreate -662 verbose request uri https://registry.npmjs.org/lodash._basecreate -663 verbose request no auth needed -664 info attempt registry request try #1 at 18:56:23 -665 verbose etag "57f681c8-329b" -666 verbose lastModified Thu, 6 Oct 2016 16:54:32 GMT -667 http request GET https://registry.npmjs.org/lodash._basecreate -668 http 304 https://registry.npmjs.org/lodash._basecreate -669 verbose headers { date: 'Thu, 26 Apr 2018 10:56:24 GMT', -669 verbose headers via: '1.1 varnish', -669 verbose headers 'cache-control': 'max-age=300', -669 verbose headers etag: '"57f681c8-329b"', -669 verbose headers age: '4090', -669 verbose headers connection: 'keep-alive', -669 verbose headers 'x-served-by': 'cache-itm18829-ITM', -669 verbose headers 'x-cache': 'HIT', -669 verbose headers 'x-cache-hits': '1', -669 verbose headers 'x-timer': 'S1524740184.150124,VS0,VE0', -669 verbose headers vary: 'Accept-Encoding, Accept' } -670 silly get cb [ 304, -670 silly get { date: 'Thu, 26 Apr 2018 10:56:24 GMT', -670 silly get via: '1.1 varnish', -670 silly get 'cache-control': 'max-age=300', -670 silly get etag: '"57f681c8-329b"', -670 silly get age: '4090', -670 silly get connection: 'keep-alive', -670 silly get 'x-served-by': 'cache-itm18829-ITM', -670 silly get 'x-cache': 'HIT', -670 silly get 'x-cache-hits': '1', -670 silly get 'x-timer': 'S1524740184.150124,VS0,VE0', -670 silly get vary: 'Accept-Encoding, Accept' } ] -671 verbose etag https://registry.npmjs.org/lodash._basecreate from cache -672 verbose get saving lodash._basecreate to /Users/zhiyuan/.npm/registry.npmjs.org/lodash._basecreate/.cache.json -673 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -674 silly resolveWithNewModule lodash._basecreate@3.0.3 checking installable status -675 silly cache add args [ 'lodash._basecreate@^3.0.0', null ] -676 verbose cache add spec lodash._basecreate@^3.0.0 -677 silly cache add parsed spec Result { -677 silly cache add raw: 'lodash._basecreate@^3.0.0', -677 silly cache add scope: null, -677 silly cache add escapedName: 'lodash._basecreate', -677 silly cache add name: 'lodash._basecreate', -677 silly cache add rawSpec: '^3.0.0', -677 silly cache add spec: '>=3.0.0 <4.0.0', -677 silly cache add type: 'range' } -678 silly addNamed lodash._basecreate@>=3.0.0 <4.0.0 -679 verbose addNamed ">=3.0.0 <4.0.0" is a valid semver range for lodash._basecreate -680 silly addNameRange { name: 'lodash._basecreate', -680 silly addNameRange range: '>=3.0.0 <4.0.0', -680 silly addNameRange hasData: false } -681 silly mapToRegistry name lodash._basecreate -682 silly mapToRegistry using default registry -683 silly mapToRegistry registry https://registry.npmjs.org/ -684 silly mapToRegistry data Result { -684 silly mapToRegistry raw: 'lodash._basecreate', -684 silly mapToRegistry scope: null, -684 silly mapToRegistry escapedName: 'lodash._basecreate', -684 silly mapToRegistry name: 'lodash._basecreate', -684 silly mapToRegistry rawSpec: '', -684 silly mapToRegistry spec: 'latest', -684 silly mapToRegistry type: 'tag' } -685 silly mapToRegistry uri https://registry.npmjs.org/lodash._basecreate -686 verbose addNameRange registry:https://registry.npmjs.org/lodash._basecreate not in flight; fetching -687 verbose get https://registry.npmjs.org/lodash._basecreate not expired, no request -688 silly addNameRange number 2 { name: 'lodash._basecreate', -688 silly addNameRange range: '>=3.0.0 <4.0.0', -688 silly addNameRange hasData: true } -689 silly addNameRange versions [ 'lodash._basecreate', -689 silly addNameRange [ '2.3.0', '2.4.0', '2.4.1', '3.0.0', '3.0.1', '3.0.2', '3.0.3' ] ] -690 silly addNamed lodash._basecreate@3.0.3 -691 verbose addNamed "3.0.3" is a plain semver version for lodash._basecreate -692 silly cache afterAdd lodash._basecreate@3.0.3 -693 verbose afterAdd /Users/zhiyuan/.npm/lodash._basecreate/3.0.3/package/package.json not in flight; writing -694 verbose correctMkdir /Users/zhiyuan/.npm correctMkdir not in flight; initializing -695 verbose afterAdd /Users/zhiyuan/.npm/lodash._basecreate/3.0.3/package/package.json written -696 silly fetchNamedPackageData del -697 silly mapToRegistry name del -698 silly mapToRegistry using default registry -699 silly mapToRegistry registry https://registry.npmjs.org/ -700 silly mapToRegistry data Result { -700 silly mapToRegistry raw: 'del', -700 silly mapToRegistry scope: null, -700 silly mapToRegistry escapedName: 'del', -700 silly mapToRegistry name: 'del', -700 silly mapToRegistry rawSpec: '', -700 silly mapToRegistry spec: 'latest', -700 silly mapToRegistry type: 'tag' } -701 silly mapToRegistry uri https://registry.npmjs.org/del -702 verbose stack Error: write EIO -702 verbose stack at _errnoException (util.js:1024:11) -702 verbose stack at WriteWrap.afterWrite [as oncomplete] (net.js:867:14) -703 verbose cwd /Users/zhiyuan/Desktop/www/portalnetwork-project/metamask-extension -704 error Darwin 16.7.0 -705 error argv "/Users/zhiyuan/.nvm/versions/node/v8.9.1/bin/node" "/usr/local/bin/npm" "i" -706 error node v8.9.1 -707 error npm v3.10.10 -708 error code EIO -709 error errno EIO -710 error syscall write -711 error write EIO -712 error If you need help, you may report this error at: -712 error -713 verbose exit [ 1, true ]