Closed itsbang closed 8 years ago
Please let us know if you figure out what the problem is/was
I'm still unable to hold of this issue. Any suggestions?
I had the same error and changing from git:// to https:// seemed to fix the issue
git config --global url."https://".insteadOf git://
http://stackoverflow.com/questions/31744852/npm-install-giving-error-while-accessing-git-url
I'm trying to install PhantomCSS, however I receive the above message. I tried pulling PhantomCSS through Git - git clone https://github.com/Huddle/PhantomCSS.git Then 0 info it worked if it ends with ok 1 verbose cli [ 'C:\Program Files (x86)\nodejs\node.exe', 1 verbose cli 'C:\Program Files (x86)\nodejs\node_modules\npm\bin\npm-cli.js', 1 verbose cli 'install', 1 verbose cli '-g', 1 verbose cli 'phantomcss' ] 2 info using npm@2.14.20 3 info using node@v4.4.0 4 verbose install initial load of C:\Users\hello\AppData\Roaming\npm\package.json 5 verbose readDependencies loading dependencies from C:\Users\hello\AppData\Roaming\npm\package.json 6 silly cache add args [ 'phantomcss', null ] 7 verbose cache add spec phantomcss 8 silly cache add parsed spec Result { 8 silly cache add raw: 'phantomcss', 8 silly cache add scope: null, 8 silly cache add name: null, 8 silly cache add rawSpec: 'phantomcss', 8 silly cache add spec: 'C:\Users\hello\phantomcss', 8 silly cache add type: 'directory' } 9 verbose addLocalDirectory C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package.tgz not in flight; packing 10 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 11 verbose tar pack [ 'C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package.tgz', 11 verbose tar pack 'C:\Users\hello\phantomcss' ] 12 verbose tarball C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package.tgz 13 verbose folder C:\Users\hello\phantomcss 14 info prepublish phantomcss@1.0.0 15 verbose addLocalTarball adding from inside cache C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package.tgz 16 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 17 silly cache afterAdd phantomcss@1.0.0 18 verbose afterAdd C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package\package.json not in flight; writing 19 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 20 verbose afterAdd C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package\package.json written 21 silly install resolved [ { name: 'phantomcss', 21 silly install resolved version: '1.0.0', 21 silly install resolved description: 'A CasperJS module for automating visual regression testing of Web apps, live style guides and responsive layouts.', 21 silly install resolved repository: 21 silly install resolved { type: 'git', 21 silly install resolved url: 'git+https://github.com/Huddle/PhantomCSS.git' }, 21 silly install resolved main: 'phantomcss.js', 21 silly install resolved keywords: 21 silly install resolved [ 'css', 21 silly install resolved 'phantomjs', 21 silly install resolved 'casperjs', 21 silly install resolved 'testing', 21 silly install resolved 'visual regression', 21 silly install resolved 'responsive' ], 21 silly install resolved author: { name: 'James Cryer / Huddle' }, 21 silly install resolved license: 'MIT', 21 silly install resolved bugs: { url: 'https://github.com/Huddle/PhantomCSS/issues' }, 21 silly install resolved dependencies: 21 silly install resolved { 'phantomjs-prebuilt': '^2.1.4', 21 silly install resolved casperjs: 'git://github.com/n1k0/casperjs.git', 21 silly install resolved resemblejs: '^2.2.0' }, 21 silly install resolved readme: 'Huddle is Hiring! We\'re always looking for talented Developers and Test Engineers. Visit https://talentcommunity.huddle.com/ for open vacancies now, or register your interest for the future.\r\n\r\nPhantomCSS\r\n==========\r\n\r\nCSS regression testing. A CasperJS module for automating visual regression testing with PhantomJS 2 or SlimerJS and Resemble.js. For testing Web apps, live style guides and responsive layouts. Read more on Huddle\'s Engineering blog: CSS Regression Testing.\r\n\r\n### What?\r\n\r\nPhantomCSS takes screenshots captured by CasperJS and compares them to baseline images using Resemble.js to test for rgb pixel differences. PhantomCSS then generates image diffs to help you find the cause.\r\n\r\n\r\n\r\nScreenshot based regression testing can only work when UI is predictable. It\'s possible to hide mutable UI components with PhantomCSS but it would be better to test static pages or drive the UI with faked data during test runs.\r\n\r\n### Example\r\n\r\n
javascript\r\ncasper.\r\n\tstart( url ).\r\n\tthen(function(){\r\n\t\t\r\n\t\t// do something\r\n\t\tcasper.click(\'button#open-dialog\');\r\n\t\t\r\n\t\t// Take a screenshot of the UI component\r\n\t\tphantomcss.screenshot(\'#the-dialog\', \'a screenshot of my dialog\');\r\n\r\n\t});\r\n
\r\n\r\nFrom the command line/terminal run:\r\n\r\n*casperjs test demo/testsuite.js
\r\n\r\nor\r\n\r\n*casperjs test demo/testsuite.js --verbose --log-level=debug
\r\n\r\n### Warning\r\n\r\nThis project is currently tracking the HEAD of the CasperJS master branch to enable Phantomjs 2 support.\r\nIf you are unable to lock down your dependency chain, or would rather use a more stable version of PhantomCSS, please see the v0 branch;\r\n\r\n### Updating from PhantomCSS v0 to v1\r\n\r\nRendering is quite different with PhantomJS 2, so when you update, old visual tests will start failing.\r\nIf you\'re tests are green and passing before updating, I would recommend rebasing the visual tests, i.e. delete them, and run the test suite to create a new baseline.\r\n\r\n### Download\r\n\r\nPhantomCSS can be downloaded in various ways:\r\n\r\n*npm install phantomcss
(PhantomCSS is not itself a Node.js module)\r\n*bower install phantomcss
\r\n*git clone git://github.com/Huddle/PhantomCSS.git
\r\n\r\nIf you are not installing via NPM, you will need to runnpm install
in the PhantomCSS root folder.\r\n\r\n### Getting started, try the demo\r\n\r\n* For convenience I\'ve included CasperJS.bat for Windows users. If you are not a Windows user, you will have to install the latest version of\r\n* Download or clone this repo and runcasperjs test demo/testsuite.js
in command/terminal from the PhantomCSS folder. PhantomJS is the only binary dependency - this should just work\r\n* Find the screenshot folder and have a look at the (baseline) images\r\n* Run the tests again withcasperjs test demo/testsuite.js
. New screenshots will be created to compare against the baseline images. These new images can be ignored, they will be replaced every test run.\r\n* To test failure, add/change some CSS in the file demo/coffeemachine.html e.g. make.mug
bright green\r\n* Run the tests again, you should see some reported failures\r\n* In the failures folder some images should have been created. The images should show bright pink where the screenshot has visually changed\r\n* If you want to manually compare the images, go to the screenshot folder to see the original/baseline and latest screenshots\r\n\r\n### SlimerJS\r\n\r\nSlimerJS uses the Gecko browser engine rather than Webkit. This has some advantages over PhantomJS, such as a non-headless view. If this is of interest to you, please follow the download and install instructions and ensure SlimerJS is installed globally.\r\n\r\n*casperjs test demo/testsuite.js --engine=slimerjs
\r\n\r\n### Options and setup\r\n\r\nIf you are using SlimerJS, you will need to specify absolute paths (see \'demo\').\r\n\r\njavascript\r\nphantomcss.init({\r\n\t/*\r\n\t\tlibraryRoot is relative to this file and must point to your \r\n\t\tphantomcss folder (not lib or node_modules). If you are using \r\n\t\tNPM, this will be \'./node_modules/phantomcss\'.\r\n\t*/\r\n\tlibraryRoot: \'./modules/PhantomCSS\',\r\n\t\r\n\tscreenshotRoot: \'./screenshots\',\r\n\r\n\t/*\r\n\t\tBy default, failure images are put in the \'./failures\' folder. \r\n\t\tIf failedComparisonsRoot is set to false a separate folder will \r\n\t\tnot be created but failure images can still be found alongside \r\n\t\tthe original and new images.\r\n\t*/\r\n\tfailedComparisonsRoot: \'./failures\',\r\n\r\n\t/*\r\n\t\tRemove results directory tree after run. Use in conjunction \r\n\t\twith failedComparisonsRoot to see failed comparisons.\r\n\t*/\r\n\tcleanupComparisonImages: true,\r\n\r\n\t/*\r\n\t\tA reference to a particular Casper instance. Required for SlimerJS.\r\n\t*/\r\n\tcasper: specific_instance_of_casper,\r\n\r\n\t/*\r\n\t\tYou might want to keep master/baseline images in a completely \r\n\t\tdifferent folder to the diffs/failures. Useful when working \r\n\t\twith version control systems. By default this resolves to the \r\n\t\tscreenshotRoot folder.\r\n\t*/\r\n\tcomparisonResultRoot: \'./results\',\r\n\r\n\t/* \r\n\t\tDon\'t add count number to images. If set to false, a filename is \r\n\t\trequired when capturing screenshots.\r\n\t*/\r\n\taddIteratorToImage: false,\r\n\r\n\t/*\r\n\t\tDon\'t add label to generated failure image\r\n\t*/\r\n\taddLabelToFailedImage: false,\r\n\r\n\t/*\r\n\t\tMismatch tolerance defaults to 0.05%. Increasing this value \r\n\t\twill decrease test coverage\r\n\t*/\r\n\tmismatchTolerance: 0.05,\r\n\r\n\t/*\r\n\t\tCallbacks for your specific integration\r\n\t*/\r\n\tonFail: function(test){ console.log(test.filename, test.mismatch); },\r\n\t\r\n\tonPass: function(test){ console.log(test.filename); },\r\n\t\r\n\t/* \r\n\t\tCalled when creating new baseline images\r\n\t*/\r\n\tonNewImage: function(){ console.log(test.filename); },\r\n\t\r\n\tonTimeout: function(){ console.log(test.filename); },\r\n\t\r\n\tonComplete: function(allTests, noOfFails, noOfErrors){\r\n\t\tallTests.forEach(function(test){\r\n\t\t\tif(test.fail){\r\n\t\t\t\tconsole.log(test.filename, test.mismatch);\r\n\t\t\t}\r\n\t\t});\r\n\t},\r\n\r\n\t/*\r\n\t\tChange the output screenshot filenames for your specific \r\n\t\tintegration\r\n\t*/\r\n\tfileNameGetter: function(root,filename){ \r\n\t\t// globally override output filename\r\n\t\t// files must exist under root\r\n\t\t// and use the .diff convention\r\n\t\tvar name = root+\'/somewhere/\'+filename;\r\n\t\tif(fs.isFile(name+\'.png\')){\r\n\t\t\treturn name+\'.diff.png\';\r\n\t\t} else {\r\n\t\t\treturn name+\'.png\';\r\n\t\t}\r\n\t},\r\n\r\n\t/*\r\n\t\tPrefix the screenshot number to the filename, instead of suffixing it\r\n\t*/\r\n\tprefixCount: true,\r\n\r\n\t/*\r\n\t\tOutput styles for image failure outputs genrated by \r\n\t\tResemble.js\r\n\t*/\r\n\toutputSettings: {\r\n\t\terrorColor: {\r\n\t\t\tred: 255,\r\n\t\t\tgreen: 255,\r\n\t\t\tblue: 0\r\n\t\t},\r\n\t\terrorType: \'movement\',\r\n\t\ttransparency: 0.3\r\n\t},\r\n\r\n\t/*\r\n\t\tRebase is useful when you want to create new baseline \r\n\t\timages without manually deleting the files\r\n\t\tcasperjs demo/test.js --rebase\r\n\t*/\r\n\trebase: casper.cli.get("rebase")\r\n});\r\n\r\n/*\r\n\tTurn off CSS transitions and jQuery animations\r\n*/\r\nphantomcss.turnOffAnimations();\r\n
\r\n\r\n### Don\'t like pink?\r\n\r\n\r\n\r\njavascript\r\nphantomcss.init({\r\n\t/*\r\n\t\tOutput styles for image failure outputs genrated by Resemble.js\r\n\t*/\r\n\toutputSettings: {\r\n\r\n\t\t/*\r\n\t\t\tError pixel color, RGB, anything you want, \r\n\t\t\tthough bright and ugly works best!\r\n\t\t*/\r\n\t\terrorColor: {\r\n\t\t\tred: 255,\r\n\t\t\tgreen: 255,\r\n\t\t\tblue: 0\r\n\t\t},\r\n\t\t\r\n\t\t/*\r\n\t\t\tErrorType values include \'flat\', or \'movement\'. \r\n\t\t\tThe latter merges error color with base image\r\n\t\t\twhich makes it a little easier to spot movement.\r\n\t\t*/\r\n\t\terrorType: \'movement\',\r\n\t\t\r\n\t\t/*\r\n\t\t\tFade unchanged areas to make changed areas more apparent.\r\n\t\t*/\r\n\t\ttransparency: 0.3\r\n\t}\r\n});\r\n
\r\n\r\n### There are different ways to take a screenshot\r\n\r\njavascript\r\nvar delay = 10;\r\nvar hideElements = \'input[type=file]\';\r\nvar screenshotName = \'the_dialog\'\r\n\r\nphantomcss.screenshot( "#CSS .selector", screenshotName);\r\n\r\n// phantomcss.screenshot({\r\n// \t\'Screenshot 1 File name\': {selector: \'.screenshot1\', ignore: \'.selector\'},\r\n// \t\'Screenshot 2 File name\': \'#screenshot2\'\r\n// });\r\n// phantomcss.screenshot( "#CSS .selector" );\r\n// phantomcss.screenshot( "#CSS .selector", delay, hideElements, screenshotName);\r\n\r\n// phantomcss.screenshot({\r\n// top: 100,\r\n// left: 100,\r\n// width: 500,\r\n// height: 400\r\n// }, screenshotName);\r\n
\r\n\r\n### Compare the images when and how you want\r\n\r\njavascript\r\n/*\r\n\tString is converted into a Regular expression that matches on full image path\r\n*/\r\nphantomcss.compareAll(\'exclude.test\'); \r\n\r\n// phantomcss.compareMatched(\'include.test\', \'exclude.test\');\r\n// phantomcss.compareMatched( new RegExp(\'include.test\'), new RegExp(\'exclude.test\'));\r\n\r\n/*\r\n\tCompare image diffs generated in this test run only\r\n*/\r\n// phantomcss.compareSession();\r\n\r\n/*\r\n\tExplicitly define what files you want to compare\r\n*/\r\n// phantomcss.compareExplicit([\'/dialog.diff.png\', \'/header.diff.png\']);\r\n\r\n/*\r\n\tGet a list of image diffs generated in this test run\r\n*/\r\n// phantomcss.getCreatedDiffFiles();\r\n\r\n/*\r\n\tCompare any two images, and wait for the results to complete\r\n*/\r\n// phantomcss.compareFiles(baseFile, diffFile);\r\n// phantomcss.waitForTests();\r\n\r\n
\r\n\r\n### Best Practices\r\n\r\n##### Name your screenshots!\r\n\r\nBy default PhantomCSS creates a file called screenshot_0.png, not very helpful. You can name your screenshot by passing a string to either the second or forth parameter.\r\n\r\njavascript\r\nvar delay, hideElementsSelector;\r\n\r\nphantomcss.screenshot("#feedback-form", delay, hideElementsSelector, "Responsive Feedback Form");\r\n\r\nphantomcss.screenshot("#feedback-form", "Responsive Feedback Form");\r\n\r\n
\r\n\r\nPerhaps a better way is to use the ‘fileNameGetter’ callback property on the ‘init’ method. This does involve having a bit more structure around your tests. See: https://github.com/Huddle/PhantomFlow/blob/master/lib/phantomCSSAdaptor.js#L41\r\n\r\n##### CSS3 selectors for testing\r\n\r\nTry not to use complex CSS3 selectors for asserting or creating screenshots. In the same way that CSS should be written with good content/container separation, so should your test selectors be agnostic of location/context. This might mean you need to add more ID\'s or data- attributes into your mark-up, but it\'s worth it, your tests will be more stable and more explicit.\r\nThis is not a good idea:\r\n\r\njavascript\r\nphantomcss.screenshot("#sidebar li:nth-child(3) > div form");\r\n
\r\n\r\nBut this is:\r\n\r\njavascript\r\nphantomcss.screenshot("#feedback-form");\r\n
\r\n\r\n##### PhantomCSS should not be used to replace functional tests\r\n\r\nIf you needed functional tests before, then you still need them. Automated visual regression testing gives us coverage of CSS and design in a way we didn\'t have before, but that doesn\'t mean that conventional test assertions are now invalid. Feedback time is crucial with test automation, the longer it takes the easier it is to ignore; the easier it is to ignore the sooner trust is lost from the team. Unfortunately comparing images is not, and never will be as fast as simple DOM assertion.\r\n\r\n##### Don\'t try to test all the visuals\r\n\r\nI\'d argue this applies to all automated testing approaches. As a rule, try to maximise coverage with fewer tests. This is a difficult balancing act because granular feedback/reporting is very important for debugging and build analysis. Testing many things in one assert/screenshot might tell you there is a problem, but makes it harder to get to the root of the bug. As a CSS/HTML Dev you\'ll know what components are more fragile than others, which are reused and which aren\'t, concentrate your visual tests on these areas.\r\n\r\n##### Full page screenshots are a bad idea\r\n\r\nIf you try to test too much in one screenshot then you could end up with lots of failing tests every time someone makes a small change. Say you\'ve set up full-page visual regression tests for your 50 page website, and someone adds 2px padding to the footer - that’s 50 failed tests because of one change. It\'s better to test UI components individually; in this example the footer could have its own test.\r\nThere is also a technical problem with this approach, the larger the image, the longer it takes to process. An added pixel padding on the page body will offset everything, at best you\'ll have a sea of pink in the failed diff, at worse you\'ll get a TIMEOUT because it took too long to analyse.\r\n\r\n##### Scaling visual regression testing within a large team\r\n\r\nScaling your test suite for many contributors may not be easy. Resemble.js (the core analysis engine of PhantomCSS) tries to consider image differences caused by different operating systems and graphics cards, but it\'s only so good, you are likely to see problems as more people contribute baseline screenshots. You can mitigate this by hiding problematic elements such as select elements, file upload inputs etc. as so.\r\n\r\njavascript\r\nphantomcss.screenshot("#feedback-form", undefined, \'input[type=file]\');\r\n
\r\n\r\nBelow is an example of a false-negative caused by antialiasing differences on different machines. How can we solve this? Contributions welcome!\r\n\r\n\r\n\r\n##### Scaling visual regression testing with Git\r\n\r\nIf your using a version control system like Git to store the baseline screenshots the repository size becomes increasingly relevant as your test suite grows. I\'d recommend using a tool like https://github.com/joeyh/git-annex or https://github.com/schacon/git-media to store the images outside of the repo.\r\n\r\n### ...You might also be interested in\r\n\r\nPhantomFlow and grunt-phantomflow wrap PhantomCSS and provides an experimental way of describing and visualising user flows through tests with CasperJS. As well as providing a terse readable structure for UI testing, it also produces intriguing graph visualisations that can be used to present PhantomCSS screenshots and failed diffs. We\'re actively using it at Huddle and it\'s changing the way we think about UI for the better.\r\n\r\nAlso, take a look at PhantomXHR for stubbing and mocking XHR requests. Isolated UI testing IS THE FUTURE!\r\n\r\n### Huddle Careers\r\n\r\nHuddle strongly believe in innovation and give you 20% of work time to spend on innovative projects of your choosing.\r\n\r\nIf you like what you see and would like to work on this kind of stuff for a job then get in touch.\r\n\r\nVisit http://www.huddle.com/careers for open vacancies now, or register your interest for the future.\r\n\r\n--------------------------------------\r\n\r\nPhantomCSS was created by James Cryer and the Huddle development team.\r\n', 21 silly install resolved readmeFilename: 'README.md', 21 silly install resolved gitHead: '85b484a1dad6b7eab9e80498709bbacc4066181f', 21 silly install resolved homepage: 'https://github.com/Huddle/PhantomCSS#readme', 21 silly install resolved _id: 'phantomcss@1.0.0', 21 silly install resolved scripts: {}, 21 silly install resolved _shasum: '15a911a49d5c8c2332649b3cd2d3c669e4eebbc4', 21 silly install resolved _from: '......\phantomcss', 21 silly install resolved _resolved: 'file:......\phantomcss' } ] 22 info install phantomcss@1.0.0 into C:\Users\hello\AppData\Roaming\npm 23 info installOne phantomcss@1.0.0 24 verbose installOne of phantomcss to C:\Users\hello\AppData\Roaming\npm not in flight; installing 25 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache_locks correctMkdir not in flight; initializing 26 verbose lock using C:\Users\hello\AppData\Roaming\npm-cache_locks\phantomcss-4070a71efacbcac5.lock for C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 27 silly install write writing phantomcss 1.0.0 to C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 28 verbose unbuild node_modules\phantomcss 29 silly gentlyRm C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss is being purged from base C:\Users\hello\AppData\Roaming\npm 30 verbose gentlyRm don't care about contents; nuking C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 31 verbose tar unpack C:\Users\hello\AppData\Roaming\npm-cache\phantomcss\1.0.0\package.tgz 32 verbose tar unpacking to C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 33 silly gentlyRm C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss is being purged 34 verbose gentlyRm don't care about contents; nuking C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 35 silly gunzTarPerm modes [ '777', '666' ] 36 silly gunzTarPerm extractEntry package.json 37 silly gunzTarPerm extractEntry .npmignore 38 silly gunzTarPerm extractEntry README.md 39 silly gunzTarPerm extractEntry LICENSE 40 silly gunzTarPerm extractEntry phantomcss.js 41 silly gunzTarPerm extractEntry .gitattributes 42 silly gunzTarPerm extractEntry resemblejscontainer.html 43 verbose write writing to C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss\package.json 44 info preinstall phantomcss@1.0.0 45 verbose readDependencies loading dependencies from C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss\package.json 46 silly prepareForInstallMany adding phantomjs-prebuilt@^2.1.4 from phantomcss dependencies 47 silly prepareForInstallMany adding casperjs@git://github.com/n1k0/casperjs.git from phantomcss dependencies 48 silly prepareForInstallMany adding resemblejs@^2.2.0 from phantomcss dependencies 49 verbose readDependencies loading dependencies from C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss\package.json 50 silly cache add args [ 'phantomjs-prebuilt@^2.1.4', null ] 51 verbose cache add spec phantomjs-prebuilt@^2.1.4 52 silly cache add args [ 'casperjs@git://github.com/n1k0/casperjs.git', null ] 53 verbose cache add spec casperjs@git://github.com/n1k0/casperjs.git 54 silly cache add parsed spec Result { 54 silly cache add raw: 'phantomjs-prebuilt@^2.1.4', 54 silly cache add scope: null, 54 silly cache add name: 'phantomjs-prebuilt', 54 silly cache add rawSpec: '^2.1.4', 54 silly cache add spec: '>=2.1.4 <3.0.0', 54 silly cache add type: 'range' } 55 silly addNamed phantomjs-prebuilt@>=2.1.4 <3.0.0 56 verbose addNamed ">=2.1.4 <3.0.0" is a valid semver range for phantomjs-prebuilt 57 silly addNameRange { name: 'phantomjs-prebuilt', 57 silly addNameRange range: '>=2.1.4 <3.0.0', 57 silly addNameRange hasData: false } 58 silly mapToRegistry name phantomjs-prebuilt 59 silly mapToRegistry using default registry 60 silly mapToRegistry registry https://registry.npmjs.org/ 61 silly mapToRegistry uri https://registry.npmjs.org/phantomjs-prebuilt 62 verbose addNameRange registry:https://registry.npmjs.org/phantomjs-prebuilt not in flight; fetching 63 silly cache add args [ 'resemblejs@^2.2.0', null ] 64 verbose cache add spec resemblejs@^2.2.0 65 silly cache add parsed spec Result { 65 silly cache add raw: 'resemblejs@^2.2.0', 65 silly cache add scope: null, 65 silly cache add name: 'resemblejs', 65 silly cache add rawSpec: '^2.2.0', 65 silly cache add spec: '>=2.2.0 <3.0.0', 65 silly cache add type: 'range' } 66 silly addNamed resemblejs@>=2.2.0 <3.0.0 67 verbose addNamed ">=2.2.0 <3.0.0" is a valid semver range for resemblejs 68 silly addNameRange { name: 'resemblejs', range: '>=2.2.0 <3.0.0', hasData: false } 69 silly mapToRegistry name resemblejs 70 silly mapToRegistry using default registry 71 silly mapToRegistry registry https://registry.npmjs.org/ 72 silly mapToRegistry uri https://registry.npmjs.org/resemblejs 73 verbose addNameRange registry:https://registry.npmjs.org/resemblejs not in flight; fetching 74 silly cache add parsed spec Result { 74 silly cache add raw: 'casperjs@git://github.com/n1k0/casperjs.git', 74 silly cache add scope: null, 74 silly cache add name: 'casperjs', 74 silly cache add rawSpec: 'git://github.com/n1k0/casperjs.git', 74 silly cache add spec: 'git://github.com/n1k0/casperjs.git', 74 silly cache add type: 'hosted', 74 silly cache add hosted: 74 silly cache add { type: 'github', 74 silly cache add ssh: 'git@github.com:n1k0/casperjs.git', 74 silly cache add sshUrl: 'git+ssh://git@github.com/n1k0/casperjs.git', 74 silly cache add httpsUrl: 'git+https://github.com/n1k0/casperjs.git', 74 silly cache add gitUrl: 'git://github.com/n1k0/casperjs.git', 74 silly cache add shortcut: 'github:n1k0/casperjs', 74 silly cache add directUrl: 'https://raw.githubusercontent.com/n1k0/casperjs/master/package.json' } } 75 verbose addRemoteGit caching git://github.com/n1k0/casperjs.git 76 verbose addRemoteGit git://github.com/n1k0/casperjs.git is a repository hosted by github 77 silly tryClone cloning git://github.com/n1k0/casperjs.git via git://github.com/n1k0/casperjs.git 78 verbose tryClone git-github-com-n1k0-casperjs-git-b77a9670 not in flight; caching 79 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache_git-remotes correctMkdir not in flight; initializing 80 verbose request uri https://registry.npmjs.org/phantomjs-prebuilt 81 verbose request no auth needed 82 info attempt registry request try #1 at 2:46:23 PM 83 verbose request id 81a83858b3f111a3 84 verbose etag "2Z8OJQPB7PDFSJ90VEGIYPFCT" 85 http request GET https://registry.npmjs.org/phantomjs-prebuilt 86 verbose request uri https://registry.npmjs.org/resemblejs 87 verbose request no auth needed 88 info attempt registry request try #1 at 2:46:23 PM 89 verbose etag "EZSRVRD01TBGE92ABY0IRMTVJ" 90 http request GET https://registry.npmjs.org/resemblejs 91 info git [ 'config', '--get', 'remote.origin.url' ] 92 warn addRemoteGit Error: Command failed: git -c core.longpaths=true config --get remote.origin.url 92 warn addRemoteGit 92 warn addRemoteGit at ChildProcess.exithandler (child_process.js:213:12) 92 warn addRemoteGit at emitTwo (events.js:87:13) 92 warn addRemoteGit at ChildProcess.emit (events.js:172:7) 92 warn addRemoteGit at maybeClose (internal/child_process.js:827:16) 92 warn addRemoteGit at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5) 92 warn addRemoteGit git://github.com/n1k0/casperjs.git resetting remote C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 because of error: { [Error: Command failed: git -c core.longpaths=true config --get remote.origin.url 92 warn addRemoteGit ] 92 warn addRemoteGit killed: false, 92 warn addRemoteGit code: 1, 92 warn addRemoteGit signal: null, 92 warn addRemoteGit cmd: 'git -c core.longpaths=true config --get remote.origin.url' } 93 info resetRemote resetting C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 for git://github.com/n1k0/casperjs.git 94 silly gentlyRm C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 is being purged 95 verbose gentlyRm don't care about contents; nuking C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 96 silly vacuum-fs purging C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 97 silly vacuum-fs quitting because other entries in C:\Users\hello\AppData\Roaming\npm-cache_git-remotes 98 info git [ 'clone', 98 info git '--template=C:\Users\hello\AppData\Roaming\npm-cache\_git-remotes\_templates', 98 info git '--mirror', 98 info git 'git://github.com/n1k0/casperjs.git', 98 info git 'C:\Users\hello\AppData\Roaming\npm-cache\_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670' ] 99 http 304 https://registry.npmjs.org/phantomjs-prebuilt 100 verbose headers { date: 'Mon, 04 Apr 2016 09:16:27 GMT', 100 verbose headers via: '1.1 varnish', 100 verbose headers 'cache-control': 'max-age=300', 100 verbose headers etag: '"2Z8OJQPB7PDFSJ90VEGIYPFCT"', 100 verbose headers age: '54', 100 verbose headers connection: 'keep-alive', 100 verbose headers 'x-served-by': 'cache-sin6924-SIN', 100 verbose headers 'x-cache': 'HIT', 100 verbose headers 'x-cache-hits': '1', 100 verbose headers 'x-timer': 'S1459761387.536372,VS0,VE0', 100 verbose headers vary: 'Accept' } 101 silly get cb [ 304, 101 silly get { date: 'Mon, 04 Apr 2016 09:16:27 GMT', 101 silly get via: '1.1 varnish', 101 silly get 'cache-control': 'max-age=300', 101 silly get etag: '"2Z8OJQPB7PDFSJ90VEGIYPFCT"', 101 silly get age: '54', 101 silly get connection: 'keep-alive', 101 silly get 'x-served-by': 'cache-sin6924-SIN', 101 silly get 'x-cache': 'HIT', 101 silly get 'x-cache-hits': '1', 101 silly get 'x-timer': 'S1459761387.536372,VS0,VE0', 101 silly get vary: 'Accept' } ] 102 verbose etag https://registry.npmjs.org/phantomjs-prebuilt from cache 103 verbose get saving phantomjs-prebuilt to C:\Users\hello\AppData\Roaming\npm-cache\registry.npmjs.org\phantomjs-prebuilt.cache.json 104 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 105 silly addNameRange number 2 { name: 'phantomjs-prebuilt', 105 silly addNameRange range: '>=2.1.4 <3.0.0', 105 silly addNameRange hasData: true } 106 silly addNameRange versions [ 'phantomjs-prebuilt', 106 silly addNameRange [ '2.1.2', '2.1.3', '2.1.4', '2.1.5', '2.1.6', '2.1.7' ] ] 107 silly addNamed phantomjs-prebuilt@2.1.7 108 verbose addNamed "2.1.7" is a plain semver version for phantomjs-prebuilt 109 silly cache afterAdd phantomjs-prebuilt@2.1.7 110 verbose afterAdd C:\Users\hello\AppData\Roaming\npm-cache\phantomjs-prebuilt\2.1.7\package\package.json not in flight; writing 111 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 112 verbose afterAdd C:\Users\hello\AppData\Roaming\npm-cache\phantomjs-prebuilt\2.1.7\package\package.json written 113 http 304 https://registry.npmjs.org/resemblejs 114 verbose headers { date: 'Mon, 04 Apr 2016 09:16:27 GMT', 114 verbose headers via: '1.1 varnish', 114 verbose headers 'cache-control': 'max-age=300', 114 verbose headers etag: '"EZSRVRD01TBGE92ABY0IRMTVJ"', 114 verbose headers age: '0', 114 verbose headers connection: 'keep-alive', 114 verbose headers 'x-served-by': 'cache-sin6922-SIN', 114 verbose headers 'x-cache': 'HIT', 114 verbose headers 'x-cache-hits': '1', 114 verbose headers 'x-timer': 'S1459761387.533646,VS0,VE242', 114 verbose headers vary: 'Accept' } 115 silly get cb [ 304, 115 silly get { date: 'Mon, 04 Apr 2016 09:16:27 GMT', 115 silly get via: '1.1 varnish', 115 silly get 'cache-control': 'max-age=300', 115 silly get etag: '"EZSRVRD01TBGE92ABY0IRMTVJ"', 115 silly get age: '0', 115 silly get connection: 'keep-alive', 115 silly get 'x-served-by': 'cache-sin6922-SIN', 115 silly get 'x-cache': 'HIT', 115 silly get 'x-cache-hits': '1', 115 silly get 'x-timer': 'S1459761387.533646,VS0,VE242', 115 silly get vary: 'Accept' } ] 116 verbose etag https://registry.npmjs.org/resemblejs from cache 117 verbose get saving resemblejs to C:\Users\hello\AppData\Roaming\npm-cache\registry.npmjs.org\resemblejs.cache.json 118 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 119 silly addNameRange number 2 { name: 'resemblejs', range: '>=2.2.0 <3.0.0', hasData: true } 120 silly addNameRange versions [ 'resemblejs', 120 silly addNameRange [ '1.0.0', 120 silly addNameRange '1.0.1', 120 silly addNameRange '1.1.1', 120 silly addNameRange '1.1.2', 120 silly addNameRange '1.1.3', 120 silly addNameRange '1.2.0', 120 silly addNameRange '1.2.1', 120 silly addNameRange '1.3.0', 120 silly addNameRange '1.3.1', 120 silly addNameRange '2.0.1', 120 silly addNameRange '2.1.0', 120 silly addNameRange '2.2.0' ] ] 121 silly addNamed resemblejs@2.2.0 122 verbose addNamed "2.2.0" is a plain semver version for resemblejs 123 silly cache afterAdd resemblejs@2.2.0 124 verbose afterAdd C:\Users\hello\AppData\Roaming\npm-cache\resemblejs\2.2.0\package\package.json not in flight; writing 125 verbose correctMkdir C:\Users\hello\AppData\Roaming\npm-cache correctMkdir not in flight; initializing 126 verbose afterAdd C:\Users\hello\AppData\Roaming\npm-cache\resemblejs\2.2.0\package\package.json written 127 error git clone --template=C:\Users\hello\AppData\Roaming\npm-cache_git-remotes_templates --mirror git://github.com/n1k0/casperjs.git C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670: Cloning into bare repository 'C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670'... 127 error git clone --template=C:\Users\hello\AppData\Roaming\npm-cache_git-remotes_templates --mirror git://github.com/n1k0/casperjs.git C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670: fatal: unable to connect to github.com: 127 error git clone --template=C:\Users\hello\AppData\Roaming\npm-cache_git-remotes_templates --mirror git://github.com/n1k0/casperjs.git C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670: github.com[0: 192.30.252.128]: errno=No error 128 verbose about to build C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 129 verbose unlock done using C:\Users\hello\AppData\Roaming\npm-cache_locks\phantomcss-4070a71efacbcac5.lock for C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 130 verbose stack Error: Command failed: git -c core.longpaths=true clone --template=C:\Users\hello\AppData\Roaming\npm-cache_git-remotes_templates --mirror git://github.com/n1k0/casperjs.git C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 130 verbose stack Cloning into bare repository 'C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670'... 130 verbose stack fatal: unable to connect to github.com: 130 verbose stack github.com[0: 192.30.252.128]: errno=No error 130 verbose stack 130 verbose stack 130 verbose stack at ChildProcess.exithandler (child_process.js:213:12) 130 verbose stack at emitTwo (events.js:87:13) 130 verbose stack at ChildProcess.emit (events.js:172:7) 130 verbose stack at maybeClose (internal/child_process.js:827:16) 130 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5) 131 verbose cwd C:\Users\hello 132 error Windows_NT 6.1.7601 133 error argv "C:\Program Files (x86)\nodejs\node.exe" "C:\Program Files (x86)\nodejs\node_modules\npm\bin\npm-cli.js" "install" "-g" "phantomcss" 134 error node v4.4.0 135 error npm v2.14.20 136 error code 128 137 error Command failed: git -c core.longpaths=true clone --template=C:\Users\hello\AppData\Roaming\npm-cache_git-remotes_templates --mirror git://github.com/n1k0/casperjs.git C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670 137 error Cloning into bare repository 'C:\Users\hello\AppData\Roaming\npm-cache_git-remotes\git-github-com-n1k0-casperjs-git-b77a9670'... 137 error fatal: unable to connect to github.com: 137 error github.com[0: 192.30.252.128]: errno=No error 138 error If you need help, you may report this error at: 138 error https://github.com/npm/npm/issues 139 verbose exit [ 1, true ] 140 verbose unbuild node_modules\phantomcss 141 info preuninstall phantomcss@1.0.0 142 info uninstall phantomcss@1.0.0 143 verbose unbuild rmStuff phantomcss@1.0.0 from C:\Users\hello\AppData\Roaming\npm\node_modules 144 info postuninstall phantomcss@1.0.0 145 silly gentlyRm C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss is being purged from base C:\Users\hello\AppData\Roaming\npm 146 verbose gentlyRm don't care about contents; nuking C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 147 silly vacuum-fs purging C:\Users\hello\AppData\Roaming\npm\node_modules\phantomcss 148 silly vacuum-fs quitting because other entries in C:\Users\hello\AppData\Roaming\npm\node_modules