Bcrypt warnings in console - following instructions crashes app


#1

Hey guys :slight_smile:

Note: you are using a pure-JavaScript implementation of bcrypt.
While this implementation will work correctly, it is known to be
approximately three times slower than the native implementation.
In order to use the native implementation instead, run

   meteor npm install --save bcrypt

in the root directory of your application.

Is the nag screen that was annoying me so much that I followed the instructions, which resulted in :

W20180731-22:54:29.738(1)? (STDERR) /Users/spice/.meteor/packages/meteor-tool/.1.7.0_3.w8zcf.uowlh++os.osx.x86_64+web.browser+web.browser.legacy+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:280
W20180731-22:54:29.739(1)? (STDERR) 						throw(ex);
W20180731-22:54:29.739(1)? (STDERR) 						^
W20180731-22:54:29.739(1)? (STDERR) 
W20180731-22:54:29.739(1)? (STDERR) AssertionError [ERR_ASSERTION]: 'undefined' === 'function'
W20180731-22:54:29.739(1)? (STDERR)     at packages/npm-bcrypt.js:55:10
W20180731-22:54:29.739(1)? (STDERR)     at Array.forEach (<anonymous>)
W20180731-22:54:29.740(1)? (STDERR)     at wrapper.js (packages/npm-bcrypt.js:54:22)
W20180731-22:54:29.740(1)? (STDERR)     at fileEvaluate (packages/modules-runtime.js:322:7)
W20180731-22:54:29.740(1)? (STDERR)     at Module.require (packages/modules-runtime.js:224:14)
W20180731-22:54:29.740(1)? (STDERR)     at require (packages/modules-runtime.js:244:21)
W20180731-22:54:29.740(1)? (STDERR)     at packages/npm-bcrypt.js:92:15
W20180731-22:54:29.740(1)? (STDERR)     at packages/npm-bcrypt.js:99:3
W20180731-22:54:29.740(1)? (STDERR)     at /Users/spice/Desktop/m-tests/appv3/.meteor/local/build/programs/server/boot.js:411:36
W20180731-22:54:29.740(1)? (STDERR)     at Array.forEach (<anonymous>)
W20180731-22:54:29.740(1)? (STDERR)     at /Users/spice/Desktop/m-tests/appv3/.meteor/local/build/programs/server/boot.js:220:19
W20180731-22:54:29.740(1)? (STDERR)     at /Users/spice/Desktop/m-tests/appv3/.meteor/local/build/programs/server/boot.js:471:5
W20180731-22:54:29.740(1)? (STDERR)     at Function.run (/Users/spice/Desktop/m-tests/appv3/.meteor/local/build/programs/server/profile.js:510:12)
W20180731-22:54:29.741(1)? (STDERR)     at /Users/spice/Desktop/m-tests/appv3/.meteor/local/build/programs/server/boot.js:470:11
=> Exited with code: 1

Any ideas how to fix this?

If it helps I also saw this after running the install command, looks like it tried to build the binaries itself :

> bcrypt@3.0.0 install /Users/spice/Desktop/m-tests/appv3/node_modules/bcrypt
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Tried to download(404): https://github.com/kelektiv/node.bcrypt.js/releases/download/v3.0.0/bcrypt_lib-v3.0.0-node-v57-darwin-x64-unknown.tar.gz 
node-pre-gyp WARN Pre-built binaries not found for bcrypt@3.0.0 and node@8.11.3 (node-v57 ABI, unknown) (falling back to source compile with node-gyp) 
  CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o
  CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt.o
  CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt_node.o
  SOLINK_MODULE(target) Release/bcrypt_lib.node
  COPY /Users/spice/Desktop/m-tests/appv3/node_modules/bcrypt/lib/binding/bcrypt_lib.node
  TOUCH Release/obj.target/action_after_build.stamp
+ bcrypt@3.0.0
added 71 packages from 49 contributors in 7.025s
[+] no known vulnerabilities found [828 packages audited]

#2

Maybe there was an issue with the install?

try deleting node_modules and running meteor npm install again

If that doesn’t work, it could be an issue with bcrypt@3.0.0, try:
meteor npm install bcrypt@2