Giter VIP home page Giter VIP logo

bcrypt.js's People

Contributors

adrianblynch avatar axelpale avatar dcodeio avatar delanni avatar ftaiolivista avatar gh-naylor avatar hellsan631 avatar mdhishaamakhtar avatar richterdennis avatar telokis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bcrypt.js's Issues

`bcrypt.compare` very slow on production servers

I am using the bcryptjs library in a Node project and am comparing a password that has been salted with 15 rounds. On any of my computers, this comparison is done in about 150ms. However, on Heroku servers, this comparison takes 8-9 seconds (for a 18 character password):

Sep 9 10:09:58 app[web] info Comparing password: 8967.025ms
Sep 9 10:12:25 app[web] info Comparing password: 8562.370ms

After switching to bcrypt for comparison, it reduced to about 2.5 seconds:

Sep 9 10:15:38 app[web] info Comparing password: 2635.010ms

While about 3.5 times faster, this still seems rather long compared to running on a local machine. Is it memory or processing power that affects this duration?

setRandomFallback doesn't work in environments that support commonJS but are not Node.js

I am working on a React Native project to build a mobile app. React Native essentially runs on JavaScriptCore for iOS and Android devices which is the JS engine that powers Safari (https://facebook.github.io/react-native/docs/javascript-environment.html).

The problem is, this environment does support commonJS style requires & exports, but since it doesn't run on Node.js environment, it doesn't have Node's core modules like crypto. This causes the setRandomFallback to not work even if I set it and throw a module not found error for crypto. This is because the way fallback is defined within random function, the first check looks for this: (typeof module !== 'undefined' && module && module['exports'])

I'm not sure if you'd like me to add React Native specific check because this is a generic library, but I think we should do this check in a way that supports such environments.

What is hash algorithm?

Tables usually have password_hash_algorithm column. Any chances to know what hash algorithm is used by bcrypt.js when bcrypt.hash? What can I save in that column? For the situation when bcrypt.js is not possible to use I want to be able to check passwords.

bcrypt compare is always returning false

I am storing the hashed password in the mongodb and then trying to compare the password in db with the user input password but this function is always returning false no matter whatever be the case.

  var mongoose = require('mongoose');
  var bcrypt = require('bcryptjs');
  var express = require('express');
  var router = express.Router();
  var passport = require('passport');
  var LocalStrategy = require('passport-local').Strategy;

  module.exports.comparePassword = function(candidatePassword, hash, callback){
   // Load hash from your password DB.

   bcrypt.compare(candidatePassword, hash, function(err, isMatch) {
    // res === true
       if(err) throw err;
       else return callback(null, isMatch);
   });
   }

getUserByUsername is working fine but the compare password is returning always "Invalid password"

   passport.use(new LocalStrategy(
      function(username, password, done) {
      User.getUserByUsername(username, function(err, user){
         if(err) throw err;
         if(!user){
         return done(null, false, {message: 'Unknown User'});
      }

      User.comparePassword(password, user.password, function(err, isMatch){
         if(err) throw err;
         //(this isMatch is always false)
         if(!isMatch) {

             return done(null, false, {message: 'Invalid password'});
          }
        return done(null, user);
        });
      });
    }));

bcryptjs fails on browser context

I got the error Neither WebCryptoAPI nor a crypto module is available. Use bcrypt.setRandomFallback to set an alternative when I was trying to generate salt with bcryptjs. After taking a brief look at the source, I've found that global variable is actually not defined on browser context.

Error: Invalid salt version: nu

Experienced on production server.

Error: Invalid salt version: nu
    at Error (<anonymous>)
    at w (/path/to/app/node_modules/bcryptjs/bcrypt.min.js:11:43)
    at Object.m.hash (/path/to/app/node_modules/bcryptjs/bcrypt.min.js:39:173)
    at Object.m.compare (/path/to/app/node_modules/bcryptjs/bcrypt.min.js:40:133)
    at /path/to/app/src/routes/authentication.js:201:13
    at /path/to/app/src/database/redis/hash.js:43:4
    at /path/to/app/src/database/redis/hash.js:69:4
    at /path/to/app/node_modules/redis/index.js:1077:13
    at try_callback (/path/to/app/node_modules/redis/index.js:532:9)
    at RedisClient.return_reply (/path/to/app/node_modules/redis/index.js:614:13)

Change log

This project could use a change log. GitHub Releases seems to be used sporadically? But not all the entries are there and those that are aren't very detailed. So a proper change log would be nice.

<3

See http://keepachangelog.com

2.4.0

Hey 👋

Travis builds are broken in the last master commits. And there is no tag for 2.4.0.

Thanks
Kate

fallback random number generators considered insecure

I've read a lot of things since the LibreSSL fork about not using a userland CSPRNG, simply because secure randomness can only be assured by the kernel [1][2][3][4].

I'm wondering why these rules would not apply to JavaScript programs. I suspect that this library would be more secure if it by default hard fails if neither Web Crypto nor Nodejs crypto are available, instead of falling back to the "userland" ISAACs PRNG.

[1] http://sockpuppet.org/blog/2014/02/25/safely-generate-random-numbers/
[2] https://news.ycombinator.com/item?id=8034710
[3] http://news.sixgun.org/2014/07/21/linux-kernel-libressl/
[4] http://lwn.net/Articles/606141/

genSalt (async) with no arguments throws callback error instead of returning promise

I am using bcryptjs in a node/express application and received an error about an undefined argument when trying to run the callback for genSalt although the documentation specifies that since 2.4.0 (which is the version I have) an omitted callback means genSalt will return a promise. I have to specify the number of rounds in order to get a promise back; I cannot use genSalt() with no arguments.

`dcodeIO.bcrypt.setRandomFallback` not in minified distribution build

I'm used this fabulous library to build a quick hashing playground page for my students, but I ran into a little snag when I tried to call setRandomFallback() using the minified distribution build. I included bcrypt.min.js from your dist folder in my page, but trying to call this setRandomFallback() method generated a runtime error saying that the function didn't exist. I switched to the unminified bcrypt.js and everything ran fine without errors.

To be sure, I also did a console.log(dcodeIO.bcrypt) to see what was on the object, and when using the minified version, there was no setRandomFallback() method available. With the unminified version, there was.

I noticed that you said the minified version "has been compiled with Closure Compiler using advanced optimizations." Is it possible that those optimizations are stripping out this method since it's never called by your own code?

compare always returns success

no matter what password I pass, compare always returns success. Am I doing something wrong?
Here's an example of very primitive app:

var bcrypt = require('bcryptjs');

var mypass = 'B4c0/\/';
var mysalt = '';
var myhash = '';

mysalt = bcrypt.genSaltSync(10);
myhash = bcrypt.hashSync(mypass, mysalt);

bcrypt.compare(mypass + 'a', myhash)
.then(() => {console.log("Comparison was true")})
.catch(() => {console.log("Comparison was false")});

OS: Win x64
npm: 4.0.5
node: 7.4.0

random

image
getting this error, but everything works if new uintarray is replaced with new array
please answer what is wrong

progress callback

Feature request for a progress callback, preferably one that binds the counter as an argument to the callback.

Promisify

Does anyone know an easy way to Promisify this library? If not, would you be open to a pull request that provided promisification capability, via wrapper, to this library?

Naming of hashSync result

I notice when calling hashSync() in various part of this repo, the variable name for the result is called 'hash'. Because a salt is supplied, isn't the result a actually a salted hash, as opposed to a regular hash? If so, shouldn't the variable be named saltedHash instead?

Unable to compare password

So I've looked over the documentation for a couple of hours and been looking over examples and tutorials for quite sometime and nothing seems to work. All I want to do is salt and hash a users password and store it. Then have the user login, compare the passwords, and then send a JSON Web Token.

Test Credentials:
email: [email protected]
password: password

user.routes.js

var express     = require('express');
var router      = express.Router();
var jwt         = require('jsonwebtoken');
var bcrypt      = require('bcryptjs');
var config      = require('../config/database');

// POST create user
...
bcrypt.genSalt(10, function(err, salt) {
    bcrypt.hash("superSecret", salt, function(err, hash) {
      user.password = hash;
      user.save();
      res.json({success: true, message: 'Create user successful'});
    });
  });
...

// POST login
...
bcrypt.compare(req.body.password, "superSecret", function(err, res) {
    if(user.password != req.body.password){
      console.log('password incorrect');
      //res.send('password incorrect');
    } else {
      console.log('password is correct send JWT');
      //res.send('password correct send JWT');
    }
  });
...

I'm not quite sure what actually is supposed to be passed in the compare method. The documentation has bcrypt.compare("B4c0/\/", hash, function(err, res){..}) but hash is undefined.

So should I be declaring var hash = ... initially and if I am doesn't that defeat the purpose of `bcrypt.hash("superSecret", salt, function(err, hash){...}); from the Create user?

Is it possible to set the number of rounds for hashing?

Firstly, thank you for saving my bacon with this library! Having suggested bcrypt last week and then totally forgetting I was in React land and not node, a panic-Google search on Friday returned this! Yes! :)

My question is: I see that I can control the number of rounds used to generate a salt, but I can't see if it's possible to set the rounds for actually hashing. Is this configurable anywhere? (i.e. I can getRounds(hash) but not setRounds().

Thanks

Clare

Why is there a limit on input length?

The original javascript-bcrypt library on which this is based doesn't have that limitation, as far as I'm aware. None is documented for it that I've seen, and I've tested it successfully with much longer inputs.

Password length is a basic difficulty multiplier for brute force crack attempts, so ideally long passwords are allowed, even encouraged.

Threads - sync vs async

I'm trying to understand the benefit of using the async methods in this lib.

In node.bcrypt.js, the async methods use threads under the hood to keep the expensive computations out of the main Node process.

By contrast this lib uses nextTick/setImmediate which just delays the expensive computation until the current call stack has completed. Doesn't this mean that several users logging in in quick succession could lock up the application?

If so is there a recommended way to mitigate this issue (e.g. using child_process or similar)?

Not giving the results from hashSync on Yosemite

I use the hashSync function on creating the users on my local Mac book. I does not giving the output, instead it waits without any output.
The genSaltSync() function works fine and give the salt.
Please provide assistance regarding this issue.
I have installed node-gyp, python.

bcrypt.compare ceases unexpectedly

I have a strange issue that I'm trying to debug and I've come to a bit of a wall.

I am using bcrypt for password hashing. Our tests are being run with Mocha and in one of the test suites we are logging in, calling bcrypt.compare multiple times.

One of the tests is failing with an uncaught error. Mocha only give a top level clue as to where the problem is.

Tracing the code I have got to the call to bcrypt.compare:

console.log(pw, hash);

bcrypt.compare(pw, hash, function(err, result) {

    console.log("Inside bcrypt.compare()", err, result);

    if (err) {
        return callback(err);
    }

    return callback(null, result);

}, function(t) {
    console.log(t);
});

I've simplified the code a little bit but the error (if that's what it is) still persists.

The process callback is added as an aid to debugging and wasn't originally included.

After a few calls of the above code, bcrypt seems to stop partway through camparing.

The console.log(t); gets to around a third of the way through and then everything stops.

Output from the previous call is:

0
0.102294921875
0.204345703125
0.306640625
0.391845703125
0.48681640625
0.58935546875
0.692138671875
0.79443359375
0.89697265625
0.99951171875
1

Output from the failing call is:

0
0.097412109375
0.198974609375
0.30029296875

The test suite calls bcrypt.compare a total of 16 times, including the failing one. The prior calls have a few that return false by design.

The good news is I can repeat this every time.

I've taken the offending hash and password and they work as expected with a single call to bcrypt.compare.

I thought I might try:

  • Reduce the number of calls in the test suite
  • Switch to compareSync
  • Pull all the hashes and passwords into a test file and run them asyncronously
  • Start placing debug code in bcrypt.js
  • Switch to another bcrypt module to see if the problem persists.

Any other suggestions?

saltrounds and hash

hello!
I am new in hashing of passwords. Just have readed some articles about it and some things from them not match for your api.
The mentioned things
1)** in articles**: hash=hashFunc(password+uniqueSalt). And if salt is unique, so i need to save in DB hash and unique salt
by you: hash=hashFunc(password+uniqueSalt). But as result hash="salt+something". This something is hash or not? So i dont need save in DB hash and uniqueSalt, i.e. salt saving with hash in one string?
2) in articles: rounds quantity is used by gen hash
by you: rounds quantity is used by gen salt

Can you explain mentioned difference?

[Question] - Why setting number of rounds to 1 is not supported?

While a cost factor of 1 deceives the purpose of bcrypt, I think it makes sense for running automated tests without unnecessarily slowing them down. In my case, a cost factor of 4 run in a test suite with large pct of tests using bcrypt slowed the whole process down by 39%.
thanks

ERROR: Invalid salt version: 2

Error: Invalid salt version: 2
at Error ()
at _hash (/var/www/bokeyy_ghost/node_modules/bcryptjs/dist/bcrypt.js:1083:19)
at Object.bcrypt.hash (/var/www/bokeyy_ghost/node_modules/bcryptjs/dist/bcrypt.js:172:13)
at bcrypt.compare (/var/www/bokeyy_ghost/node_modules/bcryptjs/dist/bcrypt.js:218:16)
at ret (eval at makeNodePromisifiedEval (/var/www/bokeyy_ghost/node_modules/bluebird/js/main/promisify.js:201:12), :15:26)
at /var/www/bokeyy_ghost/core/server/models/user.js:667:24
at tryCatch1 (/var/www/bokeyy_ghost/node_modules/bluebird/js/main/util.js:45:21)
at Promise._callHandler (/var/www/bokeyy_ghost/node_modules/bluebird/js/main/promise.js:571:13)
at Promise._settlePromiseFromHandler (/var/www/bokeyy_ghost/node_modules/bluebird/js/main/promise.js:581:18)
at Promise._settlePromiseAt (/var/www/bokeyy_ghost/node_modules/bluebird/js/main/promise.js:713:18)

POST /ghost/api/v0.1/authentication/token 500 17.652 ms - 79

Typings ??

Hello there, are you ever going to create a typings definition for your library ?

Performance vs. C++ bcrypt?

It would be nice to have a table where you list a comparison of the performance of this package vs. bcrypt on the same machine, in the readme.

It doesn't need to be too precise, only something like a header "performance" and a table with different iteration counts and timing of both packages.

Create a non-doted salt with browserify

Here's the script:

    var bcrypt = require('bcryptjs');
    var isaac= require('isaac');     
    var mySeed= 0.1;
    isaac.seed(mySeed);
    bcrypt.setRandomFallback(isaac.rand);
    var salt = bcrypt.genSaltSync(12);
    console.log(salt);

Here's the result:

$2a$12$......................

Here's the command line:

browserify app\myScript.js -o app\myOutput.js -d
node app\myOutput.js

I need to do this for an offline PhoneGap app. Also, I'm currently using the latest of node, npm, isaac, bcryptjs.
So, how to create a non-doted salt with browserify?

compareSync with specified salt value

My understanding is that salt value is also required to compare hash properly.
Why is there none in the compareSync parameters?

Usecase taken from https://crackstation.net/hashing-security.htm:
[To Store a Password]

  1. Generate a long random salt using a CSPRNG.
  2. Prepend the salt to the password and hash it with a standard password hashing function like Argon2, bcrypt, scrypt, or PBKDF2.
  3. Save both the salt and the hash in the user's database record.

[To Validate a Password]

  1. Retrieve the user's salt and hash from the database.
  2. Prepend the salt to the given password and hash it using the same hash function.
  3. Compare the hash of the given password with the hash from the database. If they match, the password is correct. Otherwise, the password is incorrect.

Document bcrypt Vs bcryptjs

I tried to persuade a project to adopt bcryptjs over bcrypt see:
https://github.com/jedireza/drywall/wiki/bcrypt-Installation-Trouble

But the project is putting forward an argument this project "has the same functionality as node.bcrypt.js expect for a few tiny differences. Mainly, it(bcryptjs) doesn't let you set the seed length for creating the random byte array."

The project maintainer is claiming it might effect security. Can you document what this means for security and maybe put a wiki page so when others ask this question it's easy to reference?

Thanks!

compareSync throwing error

in a mongoose schema

const bcrypt = require('bcryptjs');

//schema definition, etc

UserSchema.methods.comparePassword = function(candidatePassword) {
    // because this is called as a method of u, the password will be the result
    if (bcrypt.compareSync(candidatePassword, this.password)) {
        return true;
    };
    return false;
};

elsewhere calling it:

let salt = bcrypt.genSaltSync(10),
    u = new user({
          username: 'someUser',
          password: bcrypt.hashSync('astring', salt)
    });
authentic = u.comparePassword('astring');

this gives me Error: Illegal arguments: string, object in the line that calls bcrypt.compareSync

some notes: in this example, when comparePassword is called candidatePassword will be 'astring'. Since it is called as a method of` u, that means ``this.password`` will be the result of the hashSync function, which a console.log shows me is a buffer. Seems pretty straightforward to me. What am I doing wrong?

String Length Support

It would be nice if you could clear up a few things for me - and possibly mention them in the documentation.

Is there a maximum length for the string to be encrypted? Also, does the length of the output depend on the length of the string input?

I am currently using a database field of length 64 characters and it looks like the encrypted strings are always 60 characters - but that implies that there is a limit on the number of characters in the string can be accepted.

Thanks.

Should `catch` be used for non-match with promise?

Regarding this promise example in the readme:

bcrypt.compare("mypassword", hash)
.then(() => {console.log("Comparison was true")})
.catch(() => {console.log("Comparison was false")})

Is it a good idea to call catch for a non-match? It isn't really an error if the comparison was false - is it? I'd have expected something like:

bcrypt.compare("mypassword", hash)
.then((match) => {
  if(match) console.log("Comparison was true");
  else console.log("Comparison was false");
});

If an error is thrown for a non-match, then (using async/await) we need to do this:

let match;
try {
  await bcrypt.compare("mypassword", hash);
  match = true;
} catch() {
  match = false;
}

Rather than simply:

let match = await bcrypt.compare("mypassword", hash);

I might have misunderstood the readme though - haven't actually used this lib yet. Cheers :)

Unable to install

I have been try to install bcrypt package on my laptop
windows 10, node : v6.6.0, npm : 3.10.3

but its always failed. I have add npm log and console output so please let me know how i can install

[email protected] install E:\mean\quorrablog\node_modules\bcrypt
node-gyp rebuild

E:\mean\quorrablog\node_modules\bcrypt>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "" rebuild )
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
E:\mean\quorrablog\node_modules\bcrypt\build\bcrypt_lib.vcxproj(20,3): error MSB4019: The imported project "E:\Microsof
t.Cpp.Default.props" was not found. Confirm that the path in the declaration is correct, and that the file exi
sts on disk.
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd E:\mean\quorrablog\node_modules\bcrypt
gyp ERR! node -v v6.6.0
gyp ERR! node-gyp -v v3.3.1
gyp ERR! not ok
npm WARN [email protected] No repository field.
npm WARN [email protected] No license field.
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "bcrypt"
npm ERR! node v6.6.0
npm ERR! npm v3.10.3
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the bcrypt package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs bcrypt
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls bcrypt
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! E:\mean\quorrablog\npm-debug.log

------------------------------------------------------------------------ here is content of log

0 info it worked if it ends with ok
1 verbose cli [ 'C:\Program Files\nodejs\node.exe',
1 verbose cli 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',
1 verbose cli 'install',
1 verbose cli 'bcrypt' ]
2 info using [email protected]
3 info using [email protected]
4 silly loadCurrentTree Starting
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 silly fetchPackageMetaData bcrypt
8 silly fetchNamedPackageData bcrypt
9 silly mapToRegistry name bcrypt
10 silly mapToRegistry using default registry
11 silly mapToRegistry registry https://registry.npmjs.org/
12 silly mapToRegistry data Result {
12 silly mapToRegistry raw: 'bcrypt',
12 silly mapToRegistry scope: null,
12 silly mapToRegistry escapedName: 'bcrypt',
12 silly mapToRegistry name: 'bcrypt',
12 silly mapToRegistry rawSpec: '',
12 silly mapToRegistry spec: 'latest',
12 silly mapToRegistry type: 'tag' }
13 silly mapToRegistry uri https://registry.npmjs.org/bcrypt
14 verbose request uri https://registry.npmjs.org/bcrypt
15 verbose request no auth needed
16 info attempt registry request try #1 at 5:57:04 PM
17 verbose request id 77e73c3f4045a217
18 verbose etag "2W7CTWO1ETKY4R5XARYMM9SFN"
19 http request GET https://registry.npmjs.org/bcrypt
20 http 304 https://registry.npmjs.org/bcrypt
21 verbose headers { date: 'Sun, 09 Oct 2016 12:27:02 GMT',
21 verbose headers via: '1.1 varnish',
21 verbose headers 'cache-control': 'max-age=300',
21 verbose headers etag: '"2W7CTWO1ETKY4R5XARYMM9SFN"',
21 verbose headers age: '1',
21 verbose headers connection: 'keep-alive',
21 verbose headers 'x-served-by': 'cache-sin6922-SIN',
21 verbose headers 'x-cache': 'HIT',
21 verbose headers 'x-cache-hits': '1',
21 verbose headers 'x-timer': 'S1476016022.528536,VS0,VE0',
21 verbose headers vary: 'Accept-Encoding' }
22 silly get cb [ 304,
22 silly get { date: 'Sun, 09 Oct 2016 12:27:02 GMT',
22 silly get via: '1.1 varnish',
22 silly get 'cache-control': 'max-age=300',
22 silly get etag: '"2W7CTWO1ETKY4R5XARYMM9SFN"',
22 silly get age: '1',
22 silly get connection: 'keep-alive',
22 silly get 'x-served-by': 'cache-sin6922-SIN',
22 silly get 'x-cache': 'HIT',
22 silly get 'x-cache-hits': '1',
22 silly get 'x-timer': 'S1476016022.528536,VS0,VE0',
22 silly get vary: 'Accept-Encoding' } ]
23 verbose etag https://registry.npmjs.org/bcrypt from cache
24 verbose get saving bcrypt to C:\Users\Vipan\AppData\Roaming\npm-cache\registry.npmjs.org\bcrypt.cache.json
25 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
26 silly install normalizeTree
27 silly loadCurrentTree Finishing
28 silly loadIdealTree Starting
29 silly install loadIdealTree
30 silly cloneCurrentTree Starting
31 silly install cloneCurrentTreeToIdealTree
32 silly cloneCurrentTree Finishing
33 silly loadShrinkwrap Starting
34 silly install loadShrinkwrap
35 silly loadShrinkwrap Finishing
36 silly loadAllDepsIntoIdealTree Starting
37 silly install loadAllDepsIntoIdealTree
38 silly resolveWithNewModule [email protected] checking installable status
39 silly cache add args [ 'bcrypt', null ]
40 verbose cache add spec bcrypt
41 silly cache add parsed spec Result {
41 silly cache add raw: 'bcrypt',
41 silly cache add scope: null,
41 silly cache add escapedName: 'bcrypt',
41 silly cache add name: 'bcrypt',
41 silly cache add rawSpec: '',
41 silly cache add spec: 'latest',
41 silly cache add type: 'tag' }
42 silly addNamed bcrypt@latest
43 verbose addNamed "latest" is being treated as a dist-tag for bcrypt
44 info addNameTag [ 'bcrypt', 'latest' ]
45 silly mapToRegistry name bcrypt
46 silly mapToRegistry using default registry
47 silly mapToRegistry registry https://registry.npmjs.org/
48 silly mapToRegistry data Result {
48 silly mapToRegistry raw: 'bcrypt',
48 silly mapToRegistry scope: null,
48 silly mapToRegistry escapedName: 'bcrypt',
48 silly mapToRegistry name: 'bcrypt',
48 silly mapToRegistry rawSpec: '',
48 silly mapToRegistry spec: 'latest',
48 silly mapToRegistry type: 'tag' }
49 silly mapToRegistry uri https://registry.npmjs.org/bcrypt
50 verbose addNameTag registry:https://registry.npmjs.org/bcrypt not in flight; fetching
51 verbose get https://registry.npmjs.org/bcrypt not expired, no request
52 silly addNameTag next cb for bcrypt with tag latest
53 silly addNamed [email protected]
54 verbose addNamed "0.8.7" is a plain semver version for bcrypt
55 silly cache afterAdd [email protected]
56 verbose afterAdd C:\Users\Vipan\AppData\Roaming\npm-cache\bcrypt\0.8.7\package\package.json not in flight; writing
57 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
58 verbose afterAdd C:\Users\Vipan\AppData\Roaming\npm-cache\bcrypt\0.8.7\package\package.json written
59 silly fetchNamedPackageData bindings
60 silly mapToRegistry name bindings
61 silly mapToRegistry using default registry
62 silly mapToRegistry registry https://registry.npmjs.org/
63 silly mapToRegistry data Result {
63 silly mapToRegistry raw: 'bindings',
63 silly mapToRegistry scope: null,
63 silly mapToRegistry escapedName: 'bindings',
63 silly mapToRegistry name: 'bindings',
63 silly mapToRegistry rawSpec: '',
63 silly mapToRegistry spec: 'latest',
63 silly mapToRegistry type: 'tag' }
64 silly mapToRegistry uri https://registry.npmjs.org/bindings
65 silly fetchNamedPackageData nan
66 silly mapToRegistry name nan
67 silly mapToRegistry using default registry
68 silly mapToRegistry registry https://registry.npmjs.org/
69 silly mapToRegistry data Result {
69 silly mapToRegistry raw: 'nan',
69 silly mapToRegistry scope: null,
69 silly mapToRegistry escapedName: 'nan',
69 silly mapToRegistry name: 'nan',
69 silly mapToRegistry rawSpec: '',
69 silly mapToRegistry spec: 'latest',
69 silly mapToRegistry type: 'tag' }
70 silly mapToRegistry uri https://registry.npmjs.org/nan
71 verbose request uri https://registry.npmjs.org/bindings
72 verbose request no auth needed
73 info attempt registry request try #1 at 5:57:05 PM
74 verbose etag "C1AW6UVQGY4VZQGFC1WTIGMDV"
75 http request GET https://registry.npmjs.org/bindings
76 verbose request uri https://registry.npmjs.org/nan
77 verbose request no auth needed
78 info attempt registry request try #1 at 5:57:05 PM
79 verbose etag "1YJEPM5V4XH0MZT0HV3B8R9BB"
80 http request GET https://registry.npmjs.org/nan
81 http 304 https://registry.npmjs.org/bindings
82 verbose headers { date: 'Sun, 09 Oct 2016 12:27:03 GMT',
82 verbose headers via: '1.1 varnish',
82 verbose headers 'cache-control': 'max-age=300',
82 verbose headers etag: '"C1AW6UVQGY4VZQGFC1WTIGMDV"',
82 verbose headers age: '103',
82 verbose headers connection: 'keep-alive',
82 verbose headers 'x-served-by': 'cache-sin6922-SIN',
82 verbose headers 'x-cache': 'HIT',
82 verbose headers 'x-cache-hits': '1',
82 verbose headers 'x-timer': 'S1476016023.151727,VS0,VE0',
82 verbose headers vary: 'Accept-Encoding' }
83 silly get cb [ 304,
83 silly get { date: 'Sun, 09 Oct 2016 12:27:03 GMT',
83 silly get via: '1.1 varnish',
83 silly get 'cache-control': 'max-age=300',
83 silly get etag: '"C1AW6UVQGY4VZQGFC1WTIGMDV"',
83 silly get age: '103',
83 silly get connection: 'keep-alive',
83 silly get 'x-served-by': 'cache-sin6922-SIN',
83 silly get 'x-cache': 'HIT',
83 silly get 'x-cache-hits': '1',
83 silly get 'x-timer': 'S1476016023.151727,VS0,VE0',
83 silly get vary: 'Accept-Encoding' } ]
84 verbose etag https://registry.npmjs.org/bindings from cache
85 verbose get saving bindings to C:\Users\Vipan\AppData\Roaming\npm-cache\registry.npmjs.org\bindings.cache.json
86 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
87 silly resolveWithNewModule [email protected] checking installable status
88 silly cache add args [ '[email protected]', null ]
89 verbose cache add spec [email protected]
90 silly cache add parsed spec Result {
90 silly cache add raw: '[email protected]',
90 silly cache add scope: null,
90 silly cache add escapedName: 'bindings',
90 silly cache add name: 'bindings',
90 silly cache add rawSpec: '1.2.1',
90 silly cache add spec: '1.2.1',
90 silly cache add type: 'version' }
91 silly addNamed [email protected]
92 verbose addNamed "1.2.1" is a plain semver version for bindings
93 silly mapToRegistry name bindings
94 silly mapToRegistry using default registry
95 silly mapToRegistry registry https://registry.npmjs.org/
96 silly mapToRegistry data Result {
96 silly mapToRegistry raw: 'bindings',
96 silly mapToRegistry scope: null,
96 silly mapToRegistry escapedName: 'bindings',
96 silly mapToRegistry name: 'bindings',
96 silly mapToRegistry rawSpec: '',
96 silly mapToRegistry spec: 'latest',
96 silly mapToRegistry type: 'tag' }
97 silly mapToRegistry uri https://registry.npmjs.org/bindings
98 verbose addNameVersion registry:https://registry.npmjs.org/bindings not in flight; fetching
99 verbose get https://registry.npmjs.org/bindings not expired, no request
100 silly cache afterAdd [email protected]
101 verbose afterAdd C:\Users\Vipan\AppData\Roaming\npm-cache\bindings\1.2.1\package\package.json not in flight; writing
102 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
103 verbose afterAdd C:\Users\Vipan\AppData\Roaming\npm-cache\bindings\1.2.1\package\package.json written
104 http 304 https://registry.npmjs.org/nan
105 verbose headers { date: 'Sun, 09 Oct 2016 12:27:03 GMT',
105 verbose headers via: '1.1 varnish',
105 verbose headers 'cache-control': 'max-age=300',
105 verbose headers etag: '"1YJEPM5V4XH0MZT0HV3B8R9BB"',
105 verbose headers age: '202',
105 verbose headers connection: 'keep-alive',
105 verbose headers 'x-served-by': 'cache-sin6927-SIN',
105 verbose headers 'x-cache': 'HIT',
105 verbose headers 'x-cache-hits': '7',
105 verbose headers 'x-timer': 'S1476016023.666311,VS0,VE0',
105 verbose headers vary: 'Accept-Encoding' }
106 silly get cb [ 304,
106 silly get { date: 'Sun, 09 Oct 2016 12:27:03 GMT',
106 silly get via: '1.1 varnish',
106 silly get 'cache-control': 'max-age=300',
106 silly get etag: '"1YJEPM5V4XH0MZT0HV3B8R9BB"',
106 silly get age: '202',
106 silly get connection: 'keep-alive',
106 silly get 'x-served-by': 'cache-sin6927-SIN',
106 silly get 'x-cache': 'HIT',
106 silly get 'x-cache-hits': '7',
106 silly get 'x-timer': 'S1476016023.666311,VS0,VE0',
106 silly get vary: 'Accept-Encoding' } ]
107 verbose etag https://registry.npmjs.org/nan from cache
108 verbose get saving nan to C:\Users\Vipan\AppData\Roaming\npm-cache\registry.npmjs.org\nan.cache.json
109 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
110 silly resolveWithNewModule [email protected] checking installable status
111 silly cache add args [ '[email protected]', null ]
112 verbose cache add spec [email protected]
113 silly cache add parsed spec Result {
113 silly cache add raw: '[email protected]',
113 silly cache add scope: null,
113 silly cache add escapedName: 'nan',
113 silly cache add name: 'nan',
113 silly cache add rawSpec: '2.3.5',
113 silly cache add spec: '2.3.5',
113 silly cache add type: 'version' }
114 silly addNamed [email protected]
115 verbose addNamed "2.3.5" is a plain semver version for nan
116 silly mapToRegistry name nan
117 silly mapToRegistry using default registry
118 silly mapToRegistry registry https://registry.npmjs.org/
119 silly mapToRegistry data Result {
119 silly mapToRegistry raw: 'nan',
119 silly mapToRegistry scope: null,
119 silly mapToRegistry escapedName: 'nan',
119 silly mapToRegistry name: 'nan',
119 silly mapToRegistry rawSpec: '',
119 silly mapToRegistry spec: 'latest',
119 silly mapToRegistry type: 'tag' }
120 silly mapToRegistry uri https://registry.npmjs.org/nan
121 verbose addNameVersion registry:https://registry.npmjs.org/nan not in flight; fetching
122 verbose get https://registry.npmjs.org/nan not expired, no request
123 silly cache afterAdd [email protected]
124 verbose afterAdd C:\Users\Vipan\AppData\Roaming\npm-cache\nan\2.3.5\package\package.json not in flight; writing
125 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache correctMkdir not in flight; initializing
126 verbose afterAdd C:\Users\Vipan\AppData\Roaming\npm-cache\nan\2.3.5\package\package.json written
127 silly loadAllDepsIntoIdealTree Finishing
128 silly loadIdealTree Finishing
129 silly currentTree [email protected]
129 silly currentTree +-- @positron/[email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree | +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree | +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree | +-- [email protected] 129 silly currentTree | +-- [email protected] 129 silly currentTree | +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree | +-- [email protected]
129 silly currentTree | -- [email protected] 129 silly currentTree +-- [email protected] 129 silly currentTree |-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree +-- [email protected]
129 silly currentTree -- [email protected] 130 silly idealTree [email protected] 130 silly idealTree +-- @positron/[email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | +-- [email protected]
130 silly idealTree | +-- [email protected]
130 silly idealTree | +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree | +-- [email protected] 130 silly idealTree |-- [email protected]
130 silly idealTree +-- [email protected]
130 silly idealTree | -- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree +-- [email protected] 130 silly idealTree-- [email protected]
131 silly generateActionsToTake Starting
132 silly install generateActionsToTake
133 silly generateActionsToTake Finishing
134 silly diffTrees action count 3
135 silly diffTrees add [email protected]
136 silly diffTrees add [email protected]
137 silly diffTrees add [email protected]
138 silly decomposeActions action count 24
139 silly decomposeActions fetch [email protected]
140 silly decomposeActions extract [email protected]
141 silly decomposeActions test [email protected]
142 silly decomposeActions preinstall [email protected]
143 silly decomposeActions build [email protected]
144 silly decomposeActions install [email protected]
145 silly decomposeActions postinstall [email protected]
146 silly decomposeActions finalize [email protected]
147 silly decomposeActions fetch [email protected]
148 silly decomposeActions extract [email protected]
149 silly decomposeActions test [email protected]
150 silly decomposeActions preinstall [email protected]
151 silly decomposeActions build [email protected]
152 silly decomposeActions install [email protected]
153 silly decomposeActions postinstall [email protected]
154 silly decomposeActions finalize [email protected]
155 silly decomposeActions fetch [email protected]
156 silly decomposeActions extract [email protected]
157 silly decomposeActions test [email protected]
158 silly decomposeActions preinstall [email protected]
159 silly decomposeActions build [email protected]
160 silly decomposeActions install [email protected]
161 silly decomposeActions postinstall [email protected]
162 silly decomposeActions finalize [email protected]
163 silly executeActions Starting
164 silly install executeActions
165 silly doSerial global-install 0
166 silly doParallel fetch 3
167 verbose correctMkdir C:\Users\Vipan\AppData\Roaming\npm-cache_locks correctMkdir not in flight; initializing
168 verbose lock using C:\Users\Vipan\AppData\Roaming\npm-cache_locks\staging-cb93c9af682397c4.lock for E:\mean\quorrablog\node_modules.staging
169 silly doParallel extract 3
170 silly extract [email protected]
171 silly extract [email protected]
172 silly extract [email protected]
173 verbose unbuild node_modules.staging\bindings-a2830999
174 verbose unbuild node_modules.staging\nan-1520efbb
175 verbose unbuild node_modules.staging\bcrypt-314efdef
176 silly gentlyRm E:\mean\quorrablog\node_modules.staging\bindings-a2830999 is being purged from base E:\mean\quorrablog
177 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\bindings-a2830999
178 silly gentlyRm E:\mean\quorrablog\node_modules.staging\nan-1520efbb is being purged from base E:\mean\quorrablog
179 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\nan-1520efbb
180 silly gentlyRm E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef is being purged from base E:\mean\quorrablog
181 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef
182 verbose tar unpack C:\Users\Vipan\AppData\Roaming\npm-cache\bindings\1.2.1\package.tgz
183 verbose tar unpacking to E:\mean\quorrablog\node_modules.staging\bindings-a2830999
184 silly gentlyRm E:\mean\quorrablog\node_modules.staging\bindings-a2830999 is being purged
185 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\bindings-a2830999
186 verbose tar unpack C:\Users\Vipan\AppData\Roaming\npm-cache\nan\2.3.5\package.tgz
187 verbose tar unpacking to E:\mean\quorrablog\node_modules.staging\nan-1520efbb
188 silly gentlyRm E:\mean\quorrablog\node_modules.staging\nan-1520efbb is being purged
189 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\nan-1520efbb
190 verbose tar unpack C:\Users\Vipan\AppData\Roaming\npm-cache\bcrypt\0.8.7\package.tgz
191 verbose tar unpacking to E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef
192 silly gentlyRm E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef is being purged
193 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef
194 silly gunzTarPerm modes [ '777', '666' ]
195 silly gunzTarPerm modes [ '777', '666' ]
196 silly gunzTarPerm modes [ '777', '666' ]
197 silly gunzTarPerm extractEntry package.json
198 silly gunzTarPerm modified mode [ 'package.json', 420, 438 ]
199 silly gunzTarPerm extractEntry package.json
200 silly gunzTarPerm modified mode [ 'package.json', 436, 438 ]
201 silly gunzTarPerm extractEntry package.json
202 silly gunzTarPerm modified mode [ 'package.json', 420, 438 ]
203 silly gunzTarPerm extractEntry README.md
204 silly gunzTarPerm modified mode [ 'README.md', 420, 438 ]
205 silly gunzTarPerm extractEntry bindings.js
206 silly gunzTarPerm modified mode [ 'bindings.js', 420, 438 ]
207 silly gunzTarPerm extractEntry README.md
208 silly gunzTarPerm modified mode [ 'README.md', 436, 438 ]
209 silly gunzTarPerm extractEntry .npmignore
210 silly gunzTarPerm modified mode [ '.npmignore', 420, 438 ]
211 silly gunzTarPerm extractEntry README.md
212 silly gunzTarPerm modified mode [ 'README.md', 420, 438 ]
213 silly gunzTarPerm extractEntry include_dirs.js
214 silly gunzTarPerm modified mode [ 'include_dirs.js', 436, 438 ]
215 silly gunzTarPerm extractEntry nan_converters.h
216 silly gunzTarPerm modified mode [ 'nan_converters.h', 436, 438 ]
217 silly gunzTarPerm extractEntry LICENSE.md
218 silly gunzTarPerm modified mode [ 'LICENSE.md', 436, 438 ]
219 silly gunzTarPerm extractEntry doc/node_misc.md
220 silly gunzTarPerm modified mode [ 'doc/node_misc.md', 436, 438 ]
221 silly gunzTarPerm extractEntry LICENSE
222 silly gunzTarPerm modified mode [ 'LICENSE', 420, 438 ]
223 silly gunzTarPerm extractEntry bcrypt.js
224 silly gunzTarPerm modified mode [ 'bcrypt.js', 420, 438 ]
225 silly gunzTarPerm extractEntry Makefile
226 silly gunzTarPerm modified mode [ 'Makefile', 420, 438 ]
227 silly gunzTarPerm extractEntry .travis.yml
228 silly gunzTarPerm modified mode [ '.travis.yml', 420, 438 ]
229 silly gunzTarPerm extractEntry CHANGELOG.md
230 silly gunzTarPerm modified mode [ 'CHANGELOG.md', 420, 438 ]
231 silly gunzTarPerm extractEntry binding.gyp
232 silly gunzTarPerm modified mode [ 'binding.gyp', 420, 438 ]
233 silly gunzTarPerm extractEntry examples/async_compare.js
234 silly gunzTarPerm modified mode [ 'examples/async_compare.js', 420, 438 ]
235 silly gunzTarPerm extractEntry examples/forever_gen_salt.js
236 silly gunzTarPerm modified mode [ 'examples/forever_gen_salt.js', 420, 438 ]
237 silly gunzTarPerm extractEntry test/async.js
238 silly gunzTarPerm modified mode [ 'test/async.js', 420, 438 ]
239 silly gunzTarPerm extractEntry test/repetitions.js
240 silly gunzTarPerm modified mode [ 'test/repetitions.js', 420, 438 ]
241 silly gunzTarPerm extractEntry test/sync.js
242 silly gunzTarPerm modified mode [ 'test/sync.js', 420, 438 ]
243 silly gunzTarPerm extractEntry ISSUE_TEMPLATE.md
244 silly gunzTarPerm modified mode [ 'ISSUE_TEMPLATE.md', 420, 438 ]
245 silly gunzTarPerm extractEntry src/bcrypt.cc
246 silly gunzTarPerm modified mode [ 'src/bcrypt.cc', 420, 438 ]
247 silly gunzTarPerm extractEntry src/bcrypt_node.cc
248 silly gunzTarPerm modified mode [ 'src/bcrypt_node.cc', 420, 438 ]
249 silly gunzTarPerm extractEntry src/blowfish.cc
250 silly gunzTarPerm modified mode [ 'src/blowfish.cc', 420, 438 ]
251 silly gunzTarPerm extractEntry src/node_blf.h
252 silly gunzTarPerm modified mode [ 'src/node_blf.h', 420, 438 ]
253 silly gunzTarPerm extractEntry werker.yml
254 silly gunzTarPerm modified mode [ 'werker.yml', 420, 438 ]
255 silly gunzTarPerm extractEntry doc/asyncworker.md
256 silly gunzTarPerm modified mode [ 'doc/asyncworker.md', 436, 438 ]
257 silly gunzTarPerm extractEntry doc/callback.md
258 silly gunzTarPerm modified mode [ 'doc/callback.md', 436, 438 ]
259 silly gunzTarPerm extractEntry doc/converters.md
260 silly gunzTarPerm modified mode [ 'doc/converters.md', 436, 438 ]
261 silly gentlyRm E:\mean\quorrablog\node_modules.staging\bindings-a2830999\node_modules is being purged
262 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\bindings-a2830999\node_modules
263 silly gunzTarPerm extractEntry doc/errors.md
264 silly gunzTarPerm modified mode [ 'doc/errors.md', 436, 438 ]
265 silly gunzTarPerm extractEntry doc/maybe_types.md
266 silly gunzTarPerm modified mode [ 'doc/maybe_types.md', 436, 438 ]
267 silly gunzTarPerm extractEntry doc/methods.md
268 silly gunzTarPerm modified mode [ 'doc/methods.md', 436, 438 ]
269 silly gunzTarPerm extractEntry doc/new.md
270 silly gunzTarPerm modified mode [ 'doc/new.md', 436, 438 ]
271 silly gunzTarPerm extractEntry doc/buffers.md
272 silly gunzTarPerm modified mode [ 'doc/buffers.md', 436, 438 ]
273 silly gunzTarPerm extractEntry doc/object_wrappers.md
274 silly gunzTarPerm modified mode [ 'doc/object_wrappers.md', 436, 438 ]
275 silly gunzTarPerm extractEntry doc/persistent.md
276 silly gunzTarPerm modified mode [ 'doc/persistent.md', 436, 438 ]
277 silly gunzTarPerm extractEntry doc/scopes.md
278 silly gunzTarPerm modified mode [ 'doc/scopes.md', 436, 438 ]
279 silly gunzTarPerm extractEntry doc/script.md
280 silly gunzTarPerm modified mode [ 'doc/script.md', 436, 438 ]
281 silly gunzTarPerm extractEntry doc/string_bytes.md
282 silly gunzTarPerm modified mode [ 'doc/string_bytes.md', 436, 438 ]
283 silly gunzTarPerm extractEntry doc/v8_internals.md
284 silly gunzTarPerm modified mode [ 'doc/v8_internals.md', 436, 438 ]
285 silly gunzTarPerm extractEntry doc/v8_misc.md
286 silly gunzTarPerm modified mode [ 'doc/v8_misc.md', 436, 438 ]
287 silly gunzTarPerm extractEntry nan.h
288 silly gunzTarPerm modified mode [ 'nan.h', 436, 438 ]
289 silly gunzTarPerm extractEntry nan_callbacks.h
290 silly gunzTarPerm modified mode [ 'nan_callbacks.h', 436, 438 ]
291 silly gunzTarPerm extractEntry nan_callbacks_12_inl.h
292 silly gunzTarPerm modified mode [ 'nan_callbacks_12_inl.h', 436, 438 ]
293 silly gunzTarPerm extractEntry nan_callbacks_pre_12_inl.h
294 silly gunzTarPerm modified mode [ 'nan_callbacks_pre_12_inl.h', 436, 438 ]
295 silly gunzTarPerm extractEntry nan_converters_43_inl.h
296 silly gunzTarPerm modified mode [ 'nan_converters_43_inl.h', 436, 438 ]
297 silly gunzTarPerm extractEntry nan_converters_pre_43_inl.h
298 silly gunzTarPerm modified mode [ 'nan_converters_pre_43_inl.h', 436, 438 ]
299 silly gunzTarPerm extractEntry nan_implementation_12_inl.h
300 silly gunzTarPerm modified mode [ 'nan_implementation_12_inl.h', 436, 438 ]
301 silly gunzTarPerm extractEntry nan_implementation_pre_12_inl.h
302 silly gunzTarPerm modified mode [ 'nan_implementation_pre_12_inl.h', 436, 438 ]
303 silly gunzTarPerm extractEntry nan_maybe_43_inl.h
304 silly gunzTarPerm modified mode [ 'nan_maybe_43_inl.h', 436, 438 ]
305 silly gunzTarPerm extractEntry nan_maybe_pre_43_inl.h
306 silly gunzTarPerm modified mode [ 'nan_maybe_pre_43_inl.h', 436, 438 ]
307 silly gunzTarPerm extractEntry nan_new.h
308 silly gunzTarPerm modified mode [ 'nan_new.h', 436, 438 ]
309 silly gunzTarPerm extractEntry nan_object_wrap.h
310 silly gunzTarPerm modified mode [ 'nan_object_wrap.h', 436, 438 ]
311 silly gunzTarPerm extractEntry nan_persistent_12_inl.h
312 silly gunzTarPerm modified mode [ 'nan_persistent_12_inl.h', 436, 438 ]
313 silly gunzTarPerm extractEntry nan_persistent_pre_12_inl.h
314 silly gunzTarPerm modified mode [ 'nan_persistent_pre_12_inl.h', 436, 438 ]
315 silly gunzTarPerm extractEntry nan_string_bytes.h
316 silly gunzTarPerm modified mode [ 'nan_string_bytes.h', 436, 438 ]
317 silly gunzTarPerm extractEntry nan_typedarray_contents.h
318 silly gunzTarPerm modified mode [ 'nan_typedarray_contents.h', 436, 438 ]
319 silly gunzTarPerm extractEntry nan_weak.h
320 silly gunzTarPerm modified mode [ 'nan_weak.h', 436, 438 ]
321 silly gunzTarPerm extractEntry CHANGELOG.md
322 silly gunzTarPerm modified mode [ 'CHANGELOG.md', 436, 438 ]
323 silly gunzTarPerm extractEntry tools/package.json
324 silly gunzTarPerm modified mode [ 'tools/package.json', 436, 438 ]
325 silly gunzTarPerm extractEntry tools/README.md
326 silly gunzTarPerm modified mode [ 'tools/README.md', 436, 438 ]
327 silly gunzTarPerm extractEntry tools/1to2.js
328 silly gunzTarPerm modified mode [ 'tools/1to2.js', 509, 511 ]
329 silly gentlyRm E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef\node_modules is being purged
330 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef\node_modules
331 silly gentlyRm E:\mean\quorrablog\node_modules.staging\nan-1520efbb\node_modules is being purged
332 verbose gentlyRm don't care about contents; nuking E:\mean\quorrablog\node_modules.staging\nan-1520efbb\node_modules
333 silly doParallel preinstall 3
334 silly preinstall [email protected] E:\mean\quorrablog\node_modules.staging\bindings-a2830999
335 info lifecycle [email protected]preinstall: [email protected]
336 silly preinstall [email protected] E:\mean\quorrablog\node_modules.staging\nan-1520efbb
337 info lifecycle [email protected]
preinstall: [email protected]
338 silly preinstall [email protected] E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef
339 info lifecycle [email protected]preinstall: [email protected]
340 silly lifecycle [email protected]
preinstall: no script for preinstall, continuing
341 silly lifecycle [email protected]preinstall: no script for preinstall, continuing
342 silly lifecycle [email protected]
preinstall: no script for preinstall, continuing
343 silly doReverseSerial remove 0
344 silly doSerial move 0
345 silly doSerial finalize 3
346 silly finalize E:\mean\quorrablog\node_modules\bindings
347 silly finalize E:\mean\quorrablog\node_modules\nan
348 silly finalize E:\mean\quorrablog\node_modules\bcrypt
349 silly doSerial build 3
350 silly build [email protected]
351 info linkStuff [email protected]
352 silly linkStuff [email protected] has E:\mean\quorrablog\node_modules as its parent node_modules
353 verbose linkBins [email protected]
354 verbose linkMans [email protected]
355 silly build [email protected]
356 info linkStuff [email protected]
357 silly linkStuff [email protected] has E:\mean\quorrablog\node_modules as its parent node_modules
358 verbose linkBins [email protected]
359 verbose linkMans [email protected]
360 silly build [email protected]
361 info linkStuff [email protected]
362 silly linkStuff [email protected] has E:\mean\quorrablog\node_modules as its parent node_modules
363 verbose linkBins [email protected]
364 verbose linkMans [email protected]
365 silly doSerial global-link 0
366 silly doParallel update-linked 0
367 silly doSerial install 3
368 silly install [email protected] E:\mean\quorrablog\node_modules.staging\bindings-a2830999
369 info lifecycle [email protected]install: [email protected]
370 silly lifecycle [email protected]
install: no script for install, continuing
371 silly install [email protected] E:\mean\quorrablog\node_modules.staging\nan-1520efbb
372 info lifecycle [email protected]install: [email protected]
373 silly lifecycle [email protected]
install: no script for install, continuing
374 silly install [email protected] E:\mean\quorrablog\node_modules.staging\bcrypt-314efdef
375 info lifecycle [email protected]install: [email protected]
376 verbose lifecycle [email protected]
install: unsafe-perm in lifecycle true
377 verbose lifecycle [email protected]install: PATH: C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin;E:\mean\quorrablog\node_modules\bcrypt\node_modules.bin;E:\mean\quorrablog\node_modules.bin;C:\Program Files\nodejs;E:\Python27;E:\Python27\Scripts;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Skype\Phone;C:\HashiCorp\Vagrant\bin;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;e:\xampp\php;C:\Program Files\java\jdk1.8.0_101\bin;C:\Devkit;C:\Devkit\bin;C:\Program Files\nodejs;C:\Program Files\MongoDB\Server\3.2\bin;C:\Program Files (x86)\Heroku\bin;C:\Program Files (x86)\git\cmd;C:\Program Files (x86)\Git\cmd;e:\Python34;C:\Ruby23\bin;C:\Ruby22-x64\bin;C:\Users\Vipan\AppData\Local\Microsoft\WindowsApps;e:\apache-ant-1.9.6\bin;C:\Users\Vipan\AppData\Roaming\npm
378 verbose lifecycle [email protected]
install: CWD: E:\mean\quorrablog\node_modules\bcrypt
379 silly lifecycle [email protected]install: Args: [ '/d /s /c', 'node-gyp rebuild' ]
380 silly lifecycle [email protected]
install: Returned: code: 1 signal: null
381 info lifecycle [email protected]~install: Failed to exec install script
382 verbose unlock done using C:\Users\Vipan\AppData\Roaming\npm-cache_locks\staging-cb93c9af682397c4.lock for E:\mean\quorrablog\node_modules.staging
383 silly rollbackFailedOptional Starting
384 silly rollbackFailedOptional Finishing
385 silly runTopLevelLifecycles Starting
386 silly runTopLevelLifecycles Finishing
387 silly install printInstalled
388 warn [email protected] No repository field.
389 warn [email protected] No license field.
390 verbose stack Error: [email protected] install: node-gyp rebuild
390 verbose stack Exit status 1
390 verbose stack at EventEmitter. (C:\Program Files\nodejs\node_modules\npm\lib\utils\lifecycle.js:242:16)
390 verbose stack at emitTwo (events.js:106:13)
390 verbose stack at EventEmitter.emit (events.js:191:7)
390 verbose stack at ChildProcess. (C:\Program Files\nodejs\node_modules\npm\lib\utils\spawn.js:40:14)
390 verbose stack at emitTwo (events.js:106:13)
390 verbose stack at ChildProcess.emit (events.js:191:7)
390 verbose stack at maybeClose (internal/child_process.js:877:16)
390 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
391 verbose pkgid [email protected]
392 verbose cwd E:\mean\quorrablog
393 error Windows_NT 10.0.14393
394 error argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "bcrypt"
395 error node v6.6.0
396 error npm v3.10.3
397 error code ELIFECYCLE
398 error [email protected] install: node-gyp rebuild
398 error Exit status 1
399 error Failed at the [email protected] install script 'node-gyp rebuild'.
399 error Make sure you have the latest version of node.js and npm installed.
399 error If you do, this is most likely a problem with the bcrypt package,
399 error not with npm itself.
399 error Tell the author that this fails on your system:
399 error node-gyp rebuild
399 error You can get information on how to open an issue for this project with:
399 error npm bugs bcrypt
399 error Or if that isn't available, you can get their info via:
399 error npm owner ls bcrypt
399 error There is likely additional logging output above.
400 verbose exit [ 1, true ]

Update Repo to Version 2.4.0

Hello

Can you please update repo to the newest version (2.4.0) so we be able to install it via npm?

Thank you

"RangeError: Maximum call stack size exceeded" on Raspberry Pi

Using bcryptjs 0.7.10, we are experiencing troubles using .hash() and .compare() on the Raspberry Pi.

Specifically, the operation crashes with a RangeError: Maximum call stack size exceeded error, but before it does that, it churns for about 2 minutes, and then outputs 100+ of these:

(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.

Of note: Ghost has run into this issue as well (they ran into it 4 months ago when they switched from bcrypt-nodejs to bcryptjs), but they don't exhibit the same errors, the hashing/comparing process just takes a really long time.

In both cases, a simple npm i bcrypt followed by replacing all instances of require('bcryptjs'); with require('bcrypt'); is an acceptable workaround, although people are left wondering why a pure JS implementation of bcrypt would take several orders of magnitude longer to hash or compare a password than a native implementation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.