Closed georgecrawford closed 6 years ago
Try adding a npm rebuild bcrypt --build-from-source
just after npm install and please let me know the results.
Yep, that works:
Is this my problem then? Or should the npm install
either not be downloading the built file for this architecture, or be rebuilding from source?
Or should the npm install either not be downloading the built file for this architecture, or be rebuilding from source?
Yes, node-pre-gyp should be building this binary from source, by detecting ABI incompatibility of pre-built binary. Earlier we did not have Linux binaries at all, so no one faced this issue. I had filed a bug https://github.com/mapbox/node-pre-gyp/issues/265
I have added a note to the installation instructions wiki here: https://github.com/kelektiv/node.bcrypt.js/wiki/Installation-Instructions#alpine-linux-based-images
Is there an earlier version I can use for which there are no prebuilt binaries, so I don't have to rebuild the module?
@marcbachmann You can use npm install --build-from-source=bcrypt
to force bcrypt to install from source.
There are no bug-free versions without pre-built binaries.
Rebuilding isn't a simple workaround when you use bcrypyt in a module which is a dependency of other modules. They would have to do the same. I'll have to check wether npm rebuild
also triggers the npm postinstall hook. If not, I can run it in there. 👍
Hmm npm rebuild bcrypt --build-from-source
did not seem to work for me.
The code bcrypt.compare(/* ... */)
segfaults :/ I've been trying to figure it out, but I eded up using bcryptjs for now.
Did you install the dependencies for bcrypt source compiling inside Docker ?
Yeah, make
, gcc
etc are installed. There were no errors when running npm rebuild bcrypt --build-from-source
. I've had to run npm rebuild bcrypt
before on previous version on the Docker container, and it worked then.
It's something about the latest version of bcrypt, apline, and docker that is causing it to seg fault. It started happening around 4 to 6 days ago as well.
Could you attach the output of docker build ? Also mention your base image.
This is quite strange. I cannot reproduce your problem in the latest version of nodejs:6-alpine or nodejs:8-alpine
Same here, the image I use mhart/alpine-node:8.1.2
This is the only log output related to bcrypt
> bcrypt@1.0.2 install /my_app/node_modules/bcrypt
> node-pre-gyp install --fallback-to-build
[bcrypt] Success: "/my_app/node_modules/bcrypt/lib/binding/bcrypt_lib.node" is installed via remote
Fortunately running npm rebuild bcrypt --build-from-source
worked for me this time.
Looks like there are two kind of errors. I haven't experienced the segfault.
Only this one, which is fixable by npm rebuild bcrypt --build-from-source
.
$ docker run -it --rm mhart/alpine-node:6 /bin/sh -c 'npm install bcrypt && node -e "require(\"bcrypt\")"'
[bcrypt] Success: "/node_modules/bcrypt/lib/binding/bcrypt_lib.node" is installed via remote
/
`-- bcrypt@1.0.2
+-- bindings@1.2.1
+-- nan@2.5.0
`-- node-pre-gyp@0.6.32
+-- mkdirp@0.5.1
| `-- minimist@0.0.8
+-- nopt@3.0.6
| `-- abbrev@1.1.0
+-- npmlog@4.1.2
| +-- are-we-there-yet@1.1.4
.... list of modules
module.js:597
return process.dlopen(module, path._makeLong(filename));
^
Error: Error relocating /node_modules/bcrypt/lib/binding/bcrypt_lib.node: __snprintf_chk: symbol not found
at Error (native)
at Object.Module._extensions..node (module.js:597:18)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/node_modules/bcrypt/bcrypt.js:6:16)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
@marcbachmann @teckays We are aware of the segfault issue. We have #530 to track this. Currently this issue is due to https://github.com/mapbox/node-pre-gyp/issues/309
@marcbachmann Node 6 and Node 8 are demonstrating the same issue. It is sad that Node 8 segfaults, This is due to the result of providing glibC linked pre-built modules (as it is the most used libC), while Alpine uses musl-libC.
As per node-pre-gyp docs, using npm install --build-from-source=bcrypt
in place of normal npm install
should fix this.
hi, I have a similar issue here, but I use Dockerfile to build
image, and there is an error when I run
the image:
sudo docker run c1
npm info it worked if it ends with ok
npm info using npm@5.3.0
npm info using node@v8.4.0
> node app.js
module.js:602
return process.dlopen(module, path._makeLong(filename));
^
Error: The module '/usr/src/app/node_modules/bcrypt/lib/binding/bcrypt_lib.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 51. This version of Node.js requires
NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
...
the Dockerfile
here:
# Use an official Python runtime as parent image
FROM node:8.4
# Set the working directory to /usr/src/app
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
# Copy the current directory contents into the container at /usr/src/app
COPY back-end-sourse/ /usr/src/app
# Make port 9090 available to the world
EXPOSE 9090
# Run "npm start" when then container launches
CMD ["npm", "start"]
After I found here, I also tried sudo docker run c1 && npm rebuild bcrypt --build-from-source
or in the Dockerfile
:
...
CMD ["npm", "install", "--build-from-source=bcrypt"]
CMD ["npm", "start"]
But there is the same issue coming. Are those solutions good at this situation or I write those command at the wrong position.... Please give me some advises.
@XidongHuang Your error is here:
Error: The module '/usr/src/app/node_modules/bcrypt/lib/binding/bcrypt_lib.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 51. This version of Node.js requires NODE_MODULE_VERSION 57. Please try re-compiling or re-installing the module (for instance, using
npm rebuild
ornpm install
).
Are you including the node_modules folder from your host ? You may need to add a .dockerignore
with node_modules
to exclude that folder.
@agathver thinks for your quick reply!
And as the discussion above, I need to re-install bcrypt
in the container, so in the Dockerfile
, I add:
....
COPY back-end/ /usr/src/app
RUN apt-get update
RUN npm install
...
Then can run it as expected. Thanks again.
First - I'm fairly new so please forgive if I am making a rookie error.
Second - Trying to install bcrypt on a new computer, but getting:
node-pre-gyp install --fallback-to-build
....and then further down.....
npm ERR! Tell the author that this fails on your system:
npm ERR! node-pre-gyp install --fallback-to-build
I tried npm install --build-from-source=bcrypt
as referenced above, but that failed also.
Any direction is greatly appreciated!
@scooterbee Your error is unrelated to this one. It's due to unavailablitly of compilers on your system and compiled modules on our part. #540 is tracking this. I have triggered a build so installing bcrypt on windows should work fine in ~30 mins.
@agathver Thank you so much!
I also had this issue, here is my Dockerfile
using rebuild for anyone having issues.
FROM node:8.5.0-alpine
ENV NPM_CONFIG_LOGLEVEL warn
WORKDIR /usr/src/app
COPY package.json package-lock*.json npm-shrinkwrap*.json /usr/src/app/
RUN apk --no-cache add --virtual native-deps \
git g++ gcc libgcc libstdc++ linux-headers make python && \
npm install node-gyp -g &&\
npm install &&\
npm rebuild bcrypt --build-from-source && \
npm cache clean --force &&\
apk del native-deps
COPY . /usr/src/app
USER node
ENTRYPOINT ["node", "src/index"]
CMD []
EXPOSE 5000
For all those you didn't get it to work after adding --build-from-source=bcrypt
(or equivalent rebuild
command after install) - make sure you're not copying your local node_modules
into the image by adding .dockerignore
file with contents:
node_modules/
cc @idmontie
@scooterbee
I'm running a node.js app inside docker,
when I run this line of code:
var ibmdb = require('ibm_db');
I'm getting this error:
Segmentation fault
npm ERR! code ELIFECYCLE
npm ERR! errno 139
here are the relevant parts of my dockerfile:
FROM node:alpine
WORKDIR /src
# install libraries that are needed for ibm_db node package
RUN apk add --no-cache --virtual .odbc-rundeps \
libgcrypt \
linux-pam \
libxml2 \
&& ln -s -f /usr/lib/libgcrypt.so.20 /usr/lib/libcrypt.so.1
# install python
RUN apk add --no-cache --virtual .build-deps \
python make g++
RUN apk add --no-cache gcc curl
# Add package.json and npm install before app code to
ADD package.json ./
RUN npm install --unsafe-perm
RUN npm install --build-from-source=bcrypt
# Add the application code last
ADD . .
# ENTRYPOINT will be the command that runs, CMD the default parameter
EXPOSE 8080
CMD [ "npm", "start"]
What am I missing? note that I have the .dockerignore file setup correctly
@arivatibm There are so many points of failure in this such as symlinking gcrypt into crypt. You are getting error in requiring ibm_db
, you should raise your concern there. ibm_db
does not depend on bcrypt
.
However, are you getting a segfault on require('bcrypt')
?
Looks like https://github.com/mapbox/node-pre-gyp/issues/309 has been closed. Can we make progress on this now?
in the meantime, https://github.com/dcodeIO/bcrypt.js has the same interface
@jwalton PRs welcome. It will take me a while to write code for that, given my state now.
Kind of fix could possibly be the following addition in your Dockerfiles. Fix: https://github.com/nodejs/docker-node/issues/588
People replacing native bcrypt with JS bcrypt seems really bad... The whole point of bcrypt is to "do a hard thing" a number of times such that it's much harder for an attacker to replicate. If you make it intentionally slower (by probably a great deal) you materially hurt the security. Right?
@djMax - I'm not 100% sure what that has to do with this PR, but I don't think you are correct. The bcrypt algorithm is no different whether it's written JS or C++ or brainfuck. Using the same number of rounds will yield the same security, regardless of the language, as long as the random number sources are of equivalent quality.
Sure, if they use the same rounds that's a fair point. Though those rounds will be significantly slower and thus encourage them to reduce the rounds or not raise them with "the times." Of all the things to do native, though, this is high up on the list.
Ah yes, I see what you mean. I do agree that this is a great use case for a native driver, but I also think there are good reasons why a pure-JS implementation could be desirable. It's not obvious to me that it would be that much slower, and it would alleviate an entire class of issues. For most programs, bcrypt is only used during authentication; adding an extra half-second to that step probably won't even be noticeable.
Anyhow, the entire category of js-vs-native tradeoffs is about to become a non-issue with WebASM making great progress :)
Since this bug is closed, does it mean that the wiki section for Installation-Instructions for Alpine is slightly outdated and there is no need to run npm rebuild bcrypt --build-from-source
after npm i
because it's already rebuilt during the installation?
The docs mention
From version 4.0.1 we have started to provide pre-build library for musl libc and following recompiling step would be unnecessary. However, it's still experimental release and you may want to have recompiling step to make sure it works for your environment.
I'm using version 5
"dependencies": {
...
"bcrypt": "^5.0.0",
...
But I'm still seeing this issue, do I need to install python and compile bcrypt myself even though I'm on a major version beyond the one which experimentally introduced the bindings for alpine?
If you are still seeing this issue, just double check if you are including glibc binaries from the host by any chance.
It's no longer experimental.
How do I check if I'm including those libraries @recrsn?
Here's my full Dockerfile and .dockerignore:
FROM node:16-alpine
WORKDIR tripvector
COPY package.json package-lock.json ./
RUN npm install
COPY . .
CMD ["npm", "run", "production"]
.data
dist
node_modules
.dockerignore
.Dockerfile
.gitignore
If I alter my dockerfile to not run npm install
and additionally RUN ls
after copying everything, I see that there's no node_modules
folder. Here's the Dockerfile
FROM node:16-alpine
WORKDIR tripvector
COPY package.json package-lock.json ./
#RUN npm install
COPY . .
RUN ls
CMD ["npm", "run", "production"]
and the output when building of just the ls
command
#9 [5/5] RUN ls
#9 sha256:b9045c9b9114c4f1df0e078a57eecb2b3270f4c978f62ff50cb51342e24fcfa3
#9 0.436 Dockerfile
#9 0.436 README.md
#9 0.436 api
#9 0.436 index.js
#9 0.436 lib
#9 0.436 middleware
#9 0.436 package-lock.json
#9 0.436 package.json
#9 0.436 public
#9 0.436 webpack.config.js
#9 DONE 0.5s
Is there something else I should check for to verify when the glibc libraries are being included? Do I need to use a more modern version of node?
if anyone using node:16-alpine docker use this command:
apk --no-cache add --virtual builds-dependencies build-base python3 make && npm i bcrypt && npm rebuild bcrypt --build-from-source
Forgive me if I've missed something obvious, but I have a reproducible segmentation fault using the latest Docker alpine image for Node:
Output:
Click to expand
```bash docker run -it node:8.1.3-alpine /bin/sh -c 'apk --no-cache add --virtual builds-deps build-base python && npm i bcrypt && node -e '"'"'require("bcrypt").genSalt(10)'"'" fetch http://dl-cdn.alpinelinux.org/alpine/v3.6/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.6/community/x86_64/APKINDEX.tar.gz (1/27) Installing binutils-libs (2.28-r2) (2/27) Installing binutils (2.28-r2) (3/27) Installing gmp (6.1.2-r0) (4/27) Installing isl (0.17.1-r0) (5/27) Installing libgomp (6.3.0-r4) (6/27) Installing libatomic (6.3.0-r4) (7/27) Installing pkgconf (1.3.7-r0) (8/27) Installing mpfr3 (3.1.5-r0) (9/27) Installing mpc1 (1.0.3-r0) (10/27) Installing gcc (6.3.0-r4) (11/27) Installing musl-dev (1.1.16-r13) (12/27) Installing libc-dev (0.7.1-r0) (13/27) Installing g++ (6.3.0-r4) (14/27) Installing make (4.2.1-r0) (15/27) Installing fortify-headers (0.8-r0) (16/27) Installing build-base (0.5-r0) (17/27) Installing libbz2 (1.0.6-r5) (18/27) Installing expat (2.2.0-r1) (19/27) Installing libffi (3.2.1-r3) (20/27) Installing gdbm (1.12-r0) (21/27) Installing ncurses-terminfo-base (6.0-r7) (22/27) Installing ncurses-terminfo (6.0-r7) (23/27) Installing ncurses-libs (6.0-r7) (24/27) Installing readline (6.3.008-r5) (25/27) Installing sqlite-libs (3.18.0-r0) (26/27) Installing python2 (2.7.13-r1) (27/27) Installing builds-deps (0) Executing busybox-1.26.2-r5.trigger OK: 206 MiB in 40 packages npm info it worked if it ends with ok npm info using npm@5.0.3 npm info using node@v8.1.3 npm http fetch GET 200 https://registry.npmjs.org/bcrypt 266ms npm http fetch GET 200 https://registry.npmjs.org/bindings 39ms npm http fetch GET 200 https://registry.npmjs.org/node-pre-gyp 77ms npm http fetch GET 200 https://registry.npmjs.org/nan 83ms npm http fetch GET 200 https://registry.npmjs.org/mkdirp 47ms npm http fetch GET 200 https://registry.npmjs.org/nopt 92ms npm http fetch GET 200 https://registry.npmjs.org/npmlog 104ms npm http fetch GET 200 https://registry.npmjs.org/semver 103ms npm http fetch GET 200 https://registry.npmjs.org/tar 111ms npm http fetch GET 200 https://registry.npmjs.org/tar-pack 124ms npm http fetch GET 200 https://registry.npmjs.org/rimraf 154ms npm http fetch GET 200 https://registry.npmjs.org/rc 159ms npm http fetch GET 200 https://registry.npmjs.org/request 164ms npm http fetch GET 200 https://registry.npmjs.org/minimist 616ms npm http fetch GET 200 https://registry.npmjs.org/abbrev 23ms npm http fetch GET 200 https://registry.npmjs.org/set-blocking 34ms npm http fetch GET 200 https://registry.npmjs.org/are-we-there-yet 36ms npm http fetch GET 200 https://registry.npmjs.org/console-control-strings 37ms npm http fetch GET 200 https://registry.npmjs.org/gauge 37ms npm http fetch GET 200 https://registry.npmjs.org/delegates 22ms npm http fetch GET 200 https://registry.npmjs.org/readable-stream 30ms npm http fetch GET 200 https://registry.npmjs.org/core-util-is 46ms npm http fetch GET 200 https://registry.npmjs.org/isarray 47ms npm http fetch GET 200 https://registry.npmjs.org/util-deprecate 47ms npm http fetch GET 200 https://registry.npmjs.org/safe-buffer 47ms npm http fetch GET 200 https://registry.npmjs.org/process-nextick-args 49ms npm http fetch GET 200 https://registry.npmjs.org/inherits 51ms npm http fetch GET 200 https://registry.npmjs.org/string_decoder 52ms npm http fetch GET 200 https://registry.npmjs.org/string-width 35ms npm http fetch GET 200 https://registry.npmjs.org/has-unicode 42ms npm http fetch GET 200 https://registry.npmjs.org/signal-exit 42ms npm http fetch GET 200 https://registry.npmjs.org/aproba 44ms npm http fetch GET 200 https://registry.npmjs.org/object-assign 44ms npm http fetch GET 200 https://registry.npmjs.org/wide-align 44ms npm http fetch GET 200 https://registry.npmjs.org/strip-ansi 47ms npm http fetch GET 200 https://registry.npmjs.org/code-point-at 25ms npm http fetch GET 200 https://registry.npmjs.org/is-fullwidth-code-point 26ms npm http fetch GET 200 https://registry.npmjs.org/number-is-nan 22ms npm http fetch GET 200 https://registry.npmjs.org/ansi-regex 21ms npm http fetch GET 200 https://registry.npmjs.org/ini 29ms npm http fetch GET 200 https://registry.npmjs.org/deep-extend 32ms npm http fetch GET 200 https://registry.npmjs.org/strip-json-comments 32ms npm http fetch GET 200 https://registry.npmjs.org/form-data 46ms npm http fetch GET 200 https://registry.npmjs.org/combined-stream 47ms npm http fetch GET 200 https://registry.npmjs.org/caseless 51ms npm http fetch GET 200 https://registry.npmjs.org/aws4 53ms npm http fetch GET 200 https://registry.npmjs.org/extend 55ms npm http fetch GET 200 https://registry.npmjs.org/aws-sign2 57ms npm http fetch GET 200 https://registry.npmjs.org/forever-agent 57ms npm http fetch GET 200 https://registry.npmjs.org/har-validator 58ms npm http fetch GET 200 https://registry.npmjs.org/hawk 59ms npm http fetch GET 200 https://registry.npmjs.org/is-typedarray 28ms npm http fetch GET 200 https://registry.npmjs.org/isstream 27ms npm http fetch GET 200 https://registry.npmjs.org/json-stringify-safe 30ms npm http fetch GET 200 https://registry.npmjs.org/mime-types 41ms npm http fetch GET 200 https://registry.npmjs.org/oauth-sign 41ms npm http fetch GET 200 https://registry.npmjs.org/stringstream 41ms npm http fetch GET 200 https://registry.npmjs.org/qs 42ms npm http fetch GET 200 https://registry.npmjs.org/tough-cookie 45ms npm http fetch GET 200 https://registry.npmjs.org/performance-now 56ms npm http fetch GET 200 https://registry.npmjs.org/http-signature 150ms npm http fetch GET 200 https://registry.npmjs.org/uuid 29ms npm http fetch GET 200 https://registry.npmjs.org/tunnel-agent 31ms npm http fetch GET 200 https://registry.npmjs.org/delayed-stream 31ms npm http fetch GET 200 https://registry.npmjs.org/asynckit 22ms npm http fetch GET 200 https://registry.npmjs.org/mime-db 49ms npm http fetch GET 200 https://registry.npmjs.org/har-schema 21ms npm http fetch GET 200 https://registry.npmjs.org/ajv 48ms npm http fetch GET 200 https://registry.npmjs.org/json-stable-stringify 22ms npm http fetch GET 200 https://registry.npmjs.org/co 24ms npm http fetch GET 200 https://registry.npmjs.org/jsonify 20ms npm http fetch GET 200 https://registry.npmjs.org/cryptiles 26ms npm http fetch GET 200 https://registry.npmjs.org/sntp 28ms npm http fetch GET 200 https://registry.npmjs.org/hoek 30ms npm http fetch GET 200 https://registry.npmjs.org/boom 37ms npm http fetch GET 200 https://registry.npmjs.org/assert-plus 35ms npm http fetch GET 200 https://registry.npmjs.org/sshpk 37ms npm http fetch GET 200 https://registry.npmjs.org/jsprim 42ms npm http fetch GET 200 https://registry.npmjs.org/json-schema 27ms npm http fetch GET 200 https://registry.npmjs.org/extsprintf 29ms npm http fetch GET 200 https://registry.npmjs.org/verror 30ms npm http fetch GET 200 https://registry.npmjs.org/dashdash 40ms npm http fetch GET 200 https://registry.npmjs.org/bcrypt-pbkdf 41ms npm http fetch GET 200 https://registry.npmjs.org/tweetnacl 42ms npm http fetch GET 200 https://registry.npmjs.org/jsbn 43ms npm http fetch GET 200 https://registry.npmjs.org/ecc-jsbn 43ms npm http fetch GET 200 https://registry.npmjs.org/asn1 47ms npm http fetch GET 200 https://registry.npmjs.org/getpass 49ms npm http fetch GET 200 https://registry.npmjs.org/punycode 23ms npm http fetch GET 200 https://registry.npmjs.org/glob 22ms npm http fetch GET 200 https://registry.npmjs.org/path-is-absolute 28ms npm http fetch GET 200 https://registry.npmjs.org/once 31ms npm http fetch GET 200 https://registry.npmjs.org/inflight 33ms npm http fetch GET 200 https://registry.npmjs.org/minimatch 32ms npm http fetch GET 200 https://registry.npmjs.org/fs.realpath 36ms npm http fetch GET 200 https://registry.npmjs.org/wrappy 21ms npm http fetch GET 200 https://registry.npmjs.org/brace-expansion 22ms npm http fetch GET 200 https://registry.npmjs.org/balanced-match 23ms npm http fetch GET 200 https://registry.npmjs.org/concat-map 23ms npm http fetch GET 200 https://registry.npmjs.org/block-stream 27ms npm http fetch GET 200 https://registry.npmjs.org/fstream 29ms npm http fetch GET 200 https://registry.npmjs.org/graceful-fs 21ms npm http fetch GET 200 https://registry.npmjs.org/uid-number 30ms npm http fetch GET 200 https://registry.npmjs.org/fstream-ignore 31ms npm http fetch GET 200 https://registry.npmjs.org/debug 34ms npm http fetch GET 200 https://registry.npmjs.org/ms 35ms npm http fetch GET 200 https://registry.npmjs.org/buffer-shims 37ms npm http fetch GET 200 https://registry.npmjs.org/aproba/-/aproba-1.1.2.tgz 308ms npm http fetch GET 200 https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz 308ms npm http fetch GET 200 https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz 309ms npm http fetch GET 200 https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz 311ms npm http fetch GET 200 https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz 310ms npm http fetch GET 200 https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz 311ms npm http fetch GET 200 https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz 379ms npm http fetch GET 200 https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz 379ms npm http fetch GET 200 https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz 385ms npm http fetch GET 200 https://registry.npmjs.org/abbrev/-/abbrev-1.1.0.tgz 388ms npm http fetch GET 200 https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz 389ms npm http fetch GET 200 https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz 392ms npm http fetch GET 200 https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz 398ms npm http fetch GET 200 https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz 394ms npm http fetch GET 200 https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz 391ms npm http fetch GET 200 https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz 393ms npm http fetch GET 200 https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz 396ms npm http fetch GET 200 https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz 410ms npm http fetch GET 200 https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz 407ms npm http fetch GET 200 https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz 412ms npm http fetch GET 200 https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz 414ms npm http fetch GET 200 https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz 409ms npm http fetch GET 200 https://registry.npmjs.org/co/-/co-4.6.0.tgz 418ms npm http fetch GET 200 https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz 434ms npm http fetch GET 200 https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz 445ms npm http fetch GET 200 https://registry.npmjs.org/extend/-/extend-3.0.1.tgz 451ms npm http fetch GET 200 https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz 446ms npm http fetch GET 200 https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz 458ms npm http fetch GET 200 https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz 456ms npm http fetch GET 200 https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz 461ms npm http fetch GET 200 https://registry.npmjs.org/boom/-/boom-2.10.1.tgz 462ms npm http fetch GET 200 https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz 468ms npm http fetch GET 200 https://registry.npmjs.org/ini/-/ini-1.3.4.tgz 472ms npm http fetch GET 200 https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz 473ms npm http fetch GET 200 https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz 480ms npm http fetch GET 200 https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz 473ms npm http fetch GET 200 https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz 479ms npm http fetch GET 200 https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz 482ms npm http fetch GET 200 https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz 488ms npm http fetch GET 200 https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz 489ms npm http fetch GET 200 https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz 492ms npm http fetch GET 200 https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz 493ms npm http fetch GET 200 https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz 494ms npm http fetch GET 200 https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz 504ms npm http fetch GET 200 https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz 496ms npm http fetch GET 200 https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz 497ms npm http fetch GET 200 https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz 500ms npm http fetch GET 200 https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz 500ms npm http fetch GET 200 https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz 507ms npm http fetch GET 200 https://registry.npmjs.org/bcrypt/-/bcrypt-1.0.2.tgz 149ms npm http fetch GET 200 https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz 168ms npm http fetch GET 200 https://registry.npmjs.org/nan/-/nan-2.5.0.tgz 190ms npm http fetch GET 200 https://registry.npmjs.org/fstream-ignore/-/fstream-ignore-1.0.5.tgz 167ms npm http fetch GET 200 https://registry.npmjs.org/tar-pack/-/tar-pack-3.3.0.tgz 198ms npm http fetch GET 200 https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz 143ms npm http fetch GET 200 https://registry.npmjs.org/rimraf/-/rimraf-2.5.4.tgz 166ms npm http fetch GET 200 https://registry.npmjs.org/once/-/once-1.4.0.tgz 163ms npm http fetch GET 200 https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz 179ms npm http fetch GET 200 https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz 168ms npm http fetch GET 200 https://registry.npmjs.org/glob/-/glob-7.1.2.tgz 168ms npm http fetch GET 200 https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz 128ms npm http fetch GET 200 https://registry.npmjs.org/once/-/once-1.3.3.tgz 205ms npm http fetch GET 200 https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz 146ms npm http fetch GET 200 https://registry.npmjs.org/tar/-/tar-2.2.1.tgz 191ms npm http fetch GET 200 https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz 220ms npm http fetch GET 200 https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz 130ms npm http fetch GET 200 https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz 126ms npm http fetch GET 200 https://registry.npmjs.org/jsprim/-/jsprim-1.4.0.tgz 115ms npm http fetch GET 200 https://registry.npmjs.org/request/-/request-2.81.0.tgz 148ms npm http fetch GET 200 https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz 132ms npm http fetch GET 200 https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz 132ms npm http fetch GET 200 https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz 137ms npm http fetch GET 200 https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz 114ms npm http fetch GET 200 https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz 115ms npm http fetch GET 200 https://registry.npmjs.org/verror/-/verror-1.3.6.tgz 152ms npm http fetch GET 200 https://registry.npmjs.org/readable-stream/-/readable-stream-2.1.5.tgz 166ms npm http fetch GET 200 https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz 142ms npm http fetch GET 200 https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz 194ms npm http fetch GET 200 https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz 176ms npm http fetch GET 200 https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz 187ms npm http fetch GET 200 https://registry.npmjs.org/rc/-/rc-1.1.7.tgz 166ms npm http fetch GET 200 https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz 172ms npm http fetch GET 200 https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz 168ms npm http fetch GET 200 https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.2.tgz 194ms npm http fetch GET 200 https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz 164ms npm http fetch GET 200 https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz 173ms npm http fetch GET 200 https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz 174ms npm http fetch GET 200 https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz 116ms npm http fetch GET 200 https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz 136ms npm http fetch GET 200 https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz 103ms npm http fetch GET 200 https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz 90ms npm http fetch GET 200 https://registry.npmjs.org/semver/-/semver-5.3.0.tgz 116ms npm http fetch GET 200 https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz 124ms npm http fetch GET 200 https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz 139ms npm http fetch GET 200 https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz 124ms npm http fetch GET 200 https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz 87ms npm http fetch GET 200 https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz 77ms npm http fetch GET 200 https://registry.npmjs.org/qs/-/qs-6.4.0.tgz 140ms npm http fetch GET 200 https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz 80ms npm http fetch GET 200 https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz 89ms npm http fetch GET 200 https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz 81ms npm http fetch GET 200 https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz 99ms npm http fetch GET 200 https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz 86ms npm http fetch GET 200 https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz 95ms npm http fetch GET 200 https://registry.npmjs.org/ms/-/ms-0.7.1.tgz 85ms npm http fetch GET 200 https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz 86ms npm http fetch GET 200 https://registry.npmjs.org/debug/-/debug-2.2.0.tgz 101ms npm http fetch GET 200 https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz 91ms npm http fetch GET 200 https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz 82ms npm http fetch GET 200 https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz 58ms npm http fetch GET 200 https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz 56ms npm http fetch GET 200 https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz 54ms npm http fetch GET 200 https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz 342ms npm http fetch GET 200 https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz 1301ms npm info lifecycle bcrypt@1.0.2~preinstall: bcrypt@1.0.2 npm info lifecycle node-pre-gyp@0.6.32~preinstall: node-pre-gyp@0.6.32 npm info lifecycle nan@2.5.0~preinstall: nan@2.5.0 npm info lifecycle bindings@1.2.1~preinstall: bindings@1.2.1 npm info lifecycle tar-pack@3.3.0~preinstall: tar-pack@3.3.0 npm info lifecycle once@1.3.3~preinstall: once@1.3.3 npm info lifecycle tar@2.2.1~preinstall: tar@2.2.1 npm info lifecycle fstream-ignore@1.0.5~preinstall: fstream-ignore@1.0.5 npm info lifecycle fstream@1.0.11~preinstall: fstream@1.0.11 npm info lifecycle rimraf@2.5.4~preinstall: rimraf@2.5.4 npm info lifecycle glob@7.1.2~preinstall: glob@7.1.2 npm info lifecycle inflight@1.0.6~preinstall: inflight@1.0.6 npm info lifecycle once@1.4.0~preinstall: once@1.4.0 npm info lifecycle wrappy@1.0.2~preinstall: wrappy@1.0.2 npm info lifecycle npmlog@4.1.2~preinstall: npmlog@4.1.2 npm info lifecycle gauge@2.7.4~preinstall: gauge@2.7.4 npm info lifecycle wide-align@1.1.2~preinstall: wide-align@1.1.2 npm info lifecycle request@2.81.0~preinstall: request@2.81.0 npm info lifecycle http-signature@1.1.1~preinstall: http-signature@1.1.1 npm info lifecycle jsprim@1.4.0~preinstall: jsprim@1.4.0 npm info lifecycle verror@1.3.6~preinstall: verror@1.3.6 npm info lifecycle uuid@3.1.0~preinstall: uuid@3.1.0 npm info lifecycle readable-stream@2.1.5~preinstall: readable-stream@2.1.5 npm info lifecycle are-we-there-yet@1.1.4~preinstall: are-we-there-yet@1.1.4 npm info lifecycle readable-stream@2.3.3~preinstall: readable-stream@2.3.3 npm info lifecycle util-deprecate@1.0.2~preinstall: util-deprecate@1.0.2 npm info lifecycle uid-number@0.0.6~preinstall: uid-number@0.0.6 npm info lifecycle sshpk@1.13.1~preinstall: sshpk@1.13.1 npm info lifecycle bcrypt-pbkdf@1.0.1~preinstall: bcrypt-pbkdf@1.0.1 npm info lifecycle tweetnacl@0.14.5~preinstall: tweetnacl@0.14.5 npm info lifecycle tunnel-agent@0.6.0~preinstall: tunnel-agent@0.6.0 npm info lifecycle tough-cookie@2.3.2~preinstall: tough-cookie@2.3.2 npm info lifecycle string_decoder@0.10.31~preinstall: string_decoder@0.10.31 npm info lifecycle rc@1.1.7~preinstall: rc@1.1.7 npm info lifecycle strip-json-comments@2.0.1~preinstall: strip-json-comments@2.0.1 npm info lifecycle string-width@1.0.2~preinstall: string-width@1.0.2 npm info lifecycle strip-ansi@3.0.1~preinstall: strip-ansi@3.0.1 npm info lifecycle stringstream@0.0.5~preinstall: stringstream@0.0.5 npm info lifecycle string_decoder@1.0.3~preinstall: string_decoder@1.0.3 npm info lifecycle assert-plus@1.0.0~preinstall: assert-plus@1.0.0 npm info lifecycle hawk@3.1.3~preinstall: hawk@3.1.3 npm info lifecycle sntp@1.0.9~preinstall: sntp@1.0.9 npm info lifecycle signal-exit@3.0.2~preinstall: signal-exit@3.0.2 npm info lifecycle set-blocking@2.0.0~preinstall: set-blocking@2.0.0 npm info lifecycle semver@5.3.0~preinstall: semver@5.3.0 npm info lifecycle safe-buffer@5.1.1~preinstall: safe-buffer@5.1.1 npm info lifecycle minimist@1.2.0~preinstall: minimist@1.2.0 npm info lifecycle qs@6.4.0~preinstall: qs@6.4.0 npm info lifecycle punycode@1.4.1~preinstall: punycode@1.4.1 npm info lifecycle process-nextick-args@1.0.7~preinstall: process-nextick-args@1.0.7 npm info lifecycle abbrev@1.1.0~preinstall: abbrev@1.1.0 npm info lifecycle ansi-regex@2.1.1~preinstall: ansi-regex@2.1.1 npm info lifecycle aproba@1.1.2~preinstall: aproba@1.1.2 npm info lifecycle asn1@0.2.3~preinstall: asn1@0.2.3 npm info lifecycle assert-plus@0.2.0~preinstall: assert-plus@0.2.0 npm info lifecycle asynckit@0.4.0~preinstall: asynckit@0.4.0 npm info lifecycle aws-sign2@0.6.0~preinstall: aws-sign2@0.6.0 npm info lifecycle aws4@1.6.0~preinstall: aws4@1.6.0 npm info lifecycle balanced-match@1.0.0~preinstall: balanced-match@1.0.0 npm info lifecycle buffer-shims@1.0.0~preinstall: buffer-shims@1.0.0 npm info lifecycle caseless@0.12.0~preinstall: caseless@0.12.0 npm info lifecycle co@4.6.0~preinstall: co@4.6.0 npm info lifecycle code-point-at@1.1.0~preinstall: code-point-at@1.1.0 npm info lifecycle concat-map@0.0.1~preinstall: concat-map@0.0.1 npm info lifecycle brace-expansion@1.1.8~preinstall: brace-expansion@1.1.8 npm info lifecycle console-control-strings@1.1.0~preinstall: console-control-strings@1.1.0 npm info lifecycle core-util-is@1.0.2~preinstall: core-util-is@1.0.2 npm info lifecycle assert-plus@1.0.0~preinstall: assert-plus@1.0.0 npm info lifecycle dashdash@1.14.1~preinstall: dashdash@1.14.1 npm info lifecycle deep-extend@0.4.2~preinstall: deep-extend@0.4.2 npm info lifecycle delayed-stream@1.0.0~preinstall: delayed-stream@1.0.0 npm info lifecycle combined-stream@1.0.5~preinstall: combined-stream@1.0.5 npm info lifecycle delegates@1.0.0~preinstall: delegates@1.0.0 npm info lifecycle extend@3.0.1~preinstall: extend@3.0.1 npm info lifecycle extsprintf@1.0.2~preinstall: extsprintf@1.0.2 npm info lifecycle forever-agent@0.6.1~preinstall: forever-agent@0.6.1 npm info lifecycle fs.realpath@1.0.0~preinstall: fs.realpath@1.0.0 npm info lifecycle assert-plus@1.0.0~preinstall: assert-plus@1.0.0 npm info lifecycle getpass@0.1.7~preinstall: getpass@0.1.7 npm info lifecycle graceful-fs@4.1.11~preinstall: graceful-fs@4.1.11 npm info lifecycle har-schema@1.0.5~preinstall: har-schema@1.0.5 npm info lifecycle has-unicode@2.0.1~preinstall: has-unicode@2.0.1 npm info lifecycle hoek@2.16.3~preinstall: hoek@2.16.3 npm info lifecycle boom@2.10.1~preinstall: boom@2.10.1 npm info lifecycle cryptiles@2.0.5~preinstall: cryptiles@2.0.5 npm info lifecycle inherits@2.0.3~preinstall: inherits@2.0.3 npm info lifecycle block-stream@0.0.9~preinstall: block-stream@0.0.9 npm info lifecycle ini@1.3.4~preinstall: ini@1.3.4 npm info lifecycle is-typedarray@1.0.0~preinstall: is-typedarray@1.0.0 npm info lifecycle isarray@1.0.0~preinstall: isarray@1.0.0 npm info lifecycle isstream@0.1.2~preinstall: isstream@0.1.2 npm info lifecycle jsbn@0.1.1~preinstall: jsbn@0.1.1 npm info lifecycle ecc-jsbn@0.1.1~preinstall: ecc-jsbn@0.1.1 npm info lifecycle json-schema@0.2.3~preinstall: json-schema@0.2.3 npm info lifecycle json-stringify-safe@5.0.1~preinstall: json-stringify-safe@5.0.1 npm info lifecycle jsonify@0.0.0~preinstall: jsonify@0.0.0 npm info lifecycle json-stable-stringify@1.0.1~preinstall: json-stable-stringify@1.0.1 npm info lifecycle ajv@4.11.8~preinstall: ajv@4.11.8 npm info lifecycle har-validator@4.2.1~preinstall: har-validator@4.2.1 npm info lifecycle assert-plus@1.0.0~preinstall: assert-plus@1.0.0 npm info lifecycle mime-db@1.27.0~preinstall: mime-db@1.27.0 npm info lifecycle mime-types@2.1.15~preinstall: mime-types@2.1.15 npm info lifecycle form-data@2.1.4~preinstall: form-data@2.1.4 npm info lifecycle minimatch@3.0.4~preinstall: minimatch@3.0.4 npm info lifecycle minimist@0.0.8~preinstall: minimist@0.0.8 npm info lifecycle mkdirp@0.5.1~preinstall: mkdirp@0.5.1 npm info lifecycle ms@0.7.1~preinstall: ms@0.7.1 npm info lifecycle debug@2.2.0~preinstall: debug@2.2.0 npm info lifecycle nopt@3.0.6~preinstall: nopt@3.0.6 npm info lifecycle number-is-nan@1.0.1~preinstall: number-is-nan@1.0.1 npm info lifecycle is-fullwidth-code-point@1.0.0~preinstall: is-fullwidth-code-point@1.0.0 npm info lifecycle oauth-sign@0.8.2~preinstall: oauth-sign@0.8.2 npm info lifecycle object-assign@4.1.1~preinstall: object-assign@4.1.1 npm info lifecycle path-is-absolute@1.0.1~preinstall: path-is-absolute@1.0.1 npm info lifecycle performance-now@0.2.0~preinstall: performance-now@0.2.0 npm info linkStuff bcrypt@1.0.2 npm info linkStuff node-pre-gyp@0.6.32 npm info linkStuff nan@2.5.0 npm info linkStuff bindings@1.2.1 npm info linkStuff tar-pack@3.3.0 npm info linkStuff once@1.3.3 npm info linkStuff tar@2.2.1 npm info linkStuff fstream-ignore@1.0.5 npm info linkStuff fstream@1.0.11 npm info linkStuff rimraf@2.5.4 npm info linkStuff glob@7.1.2 npm info linkStuff inflight@1.0.6 npm info linkStuff once@1.4.0 npm info linkStuff wrappy@1.0.2 npm info linkStuff npmlog@4.1.2 npm info linkStuff gauge@2.7.4 npm info linkStuff wide-align@1.1.2 npm info linkStuff request@2.81.0 npm info linkStuff http-signature@1.1.1 npm info linkStuff jsprim@1.4.0 npm info linkStuff verror@1.3.6 npm info linkStuff uuid@3.1.0 npm info linkStuff readable-stream@2.1.5 npm info linkStuff are-we-there-yet@1.1.4 npm info linkStuff readable-stream@2.3.3 npm info linkStuff util-deprecate@1.0.2 npm info linkStuff uid-number@0.0.6 npm info linkStuff sshpk@1.13.1 npm info linkStuff bcrypt-pbkdf@1.0.1 npm info linkStuff tweetnacl@0.14.5 npm info linkStuff tunnel-agent@0.6.0 npm info linkStuff tough-cookie@2.3.2 npm info linkStuff string_decoder@0.10.31 npm info linkStuff rc@1.1.7 npm info linkStuff strip-json-comments@2.0.1 npm info linkStuff string-width@1.0.2 npm info linkStuff strip-ansi@3.0.1 npm info linkStuff stringstream@0.0.5 npm info linkStuff string_decoder@1.0.3 npm info linkStuff assert-plus@1.0.0 npm info linkStuff hawk@3.1.3 npm info linkStuff sntp@1.0.9 npm info linkStuff signal-exit@3.0.2 npm info linkStuff set-blocking@2.0.0 npm info linkStuff semver@5.3.0 npm info linkStuff safe-buffer@5.1.1 npm info linkStuff minimist@1.2.0 npm info linkStuff qs@6.4.0 npm info linkStuff punycode@1.4.1 npm info linkStuff process-nextick-args@1.0.7 npm info linkStuff performance-now@0.2.0 npm info linkStuff path-is-absolute@1.0.1 npm info linkStuff object-assign@4.1.1 npm info linkStuff oauth-sign@0.8.2 npm info linkStuff is-fullwidth-code-point@1.0.0 npm info linkStuff number-is-nan@1.0.1 npm info linkStuff nopt@3.0.6 npm info linkStuff debug@2.2.0 npm info linkStuff ms@0.7.1 npm info linkStuff mkdirp@0.5.1 npm info linkStuff minimist@0.0.8 npm info linkStuff minimatch@3.0.4 npm info linkStuff form-data@2.1.4 npm info linkStuff mime-types@2.1.15 npm info linkStuff mime-db@1.27.0 npm info linkStuff assert-plus@1.0.0 npm info linkStuff har-validator@4.2.1 npm info linkStuff ajv@4.11.8 npm info linkStuff json-stable-stringify@1.0.1 npm info linkStuff jsonify@0.0.0 npm info linkStuff json-stringify-safe@5.0.1 npm info linkStuff json-schema@0.2.3 npm info linkStuff ecc-jsbn@0.1.1 npm info linkStuff jsbn@0.1.1 npm info linkStuff isstream@0.1.2 npm info linkStuff isarray@1.0.0 npm info linkStuff is-typedarray@1.0.0 npm info linkStuff ini@1.3.4 npm info linkStuff block-stream@0.0.9 npm info linkStuff inherits@2.0.3 npm info linkStuff cryptiles@2.0.5 npm info linkStuff boom@2.10.1 npm info linkStuff hoek@2.16.3 npm info linkStuff has-unicode@2.0.1 npm info linkStuff har-schema@1.0.5 npm info linkStuff graceful-fs@4.1.11 npm info linkStuff getpass@0.1.7 npm info linkStuff assert-plus@1.0.0 npm info linkStuff fs.realpath@1.0.0 npm info linkStuff forever-agent@0.6.1 npm info linkStuff extsprintf@1.0.2 npm info linkStuff extend@3.0.1 npm info linkStuff delegates@1.0.0 npm info linkStuff combined-stream@1.0.5 npm info linkStuff delayed-stream@1.0.0 npm info linkStuff deep-extend@0.4.2 npm info linkStuff dashdash@1.14.1 npm info linkStuff assert-plus@1.0.0 npm info linkStuff core-util-is@1.0.2 npm info linkStuff console-control-strings@1.1.0 npm info linkStuff brace-expansion@1.1.8 npm info linkStuff concat-map@0.0.1 npm info linkStuff code-point-at@1.1.0 npm info linkStuff co@4.6.0 npm info linkStuff caseless@0.12.0 npm info linkStuff buffer-shims@1.0.0 npm info linkStuff balanced-match@1.0.0 npm info linkStuff aws4@1.6.0 npm info linkStuff aws-sign2@0.6.0 npm info linkStuff asynckit@0.4.0 npm info linkStuff assert-plus@0.2.0 npm info linkStuff asn1@0.2.3 npm info linkStuff aproba@1.1.2 npm info linkStuff ansi-regex@2.1.1 npm info linkStuff abbrev@1.1.0 npm info lifecycle bcrypt@1.0.2~install: bcrypt@1.0.2 > bcrypt@1.0.2 install /node_modules/bcrypt > node-pre-gyp install --fallback-to-build node-pre-gyp info it worked if it ends with ok node-pre-gyp info using node-pre-gyp@0.6.32 node-pre-gyp info using node@8.1.3 | linux | x64 node-pre-gyp info check checked for "/node_modules/bcrypt/lib/binding/bcrypt_lib.node" (not found) node-pre-gyp http GET https://github.com/kelektiv/node.bcrypt.js/releases/download/v1.0.2/bcrypt_lib-v1.0.2-node-v57-linux-x64.tar.gz node-pre-gyp http 200 https://github.com/kelektiv/node.bcrypt.js/releases/download/v1.0.2/bcrypt_lib-v1.0.2-node-v57-linux-x64.tar.gz node-pre-gyp info install unpacking bcrypt_lib.node node-pre-gyp info tarball done parsing tarball node-pre-gyp info validate Running test command: '/usr/local/bin/node --eval 'require(\'/node_modules/bcrypt/lib/binding/bcrypt_lib.node\')'' [bcrypt] Success: "/node_modules/bcrypt/lib/binding/bcrypt_lib.node" is installed via remote node-pre-gyp info ok npm info lifecycle node-pre-gyp@0.6.32~install: node-pre-gyp@0.6.32 npm info lifecycle nan@2.5.0~install: nan@2.5.0 npm info lifecycle bindings@1.2.1~install: bindings@1.2.1 npm info lifecycle tar-pack@3.3.0~install: tar-pack@3.3.0 npm info lifecycle once@1.3.3~install: once@1.3.3 npm info lifecycle tar@2.2.1~install: tar@2.2.1 npm info lifecycle fstream-ignore@1.0.5~install: fstream-ignore@1.0.5 npm info lifecycle fstream@1.0.11~install: fstream@1.0.11 npm info lifecycle rimraf@2.5.4~install: rimraf@2.5.4 npm info lifecycle glob@7.1.2~install: glob@7.1.2 npm info lifecycle inflight@1.0.6~install: inflight@1.0.6 npm info lifecycle once@1.4.0~install: once@1.4.0 npm info lifecycle wrappy@1.0.2~install: wrappy@1.0.2 npm info lifecycle npmlog@4.1.2~install: npmlog@4.1.2 npm info lifecycle gauge@2.7.4~install: gauge@2.7.4 npm info lifecycle wide-align@1.1.2~install: wide-align@1.1.2 npm info lifecycle request@2.81.0~install: request@2.81.0 npm info lifecycle http-signature@1.1.1~install: http-signature@1.1.1 npm info lifecycle jsprim@1.4.0~install: jsprim@1.4.0 npm info lifecycle verror@1.3.6~install: verror@1.3.6 npm info lifecycle uuid@3.1.0~install: uuid@3.1.0 npm info lifecycle readable-stream@2.1.5~install: readable-stream@2.1.5 npm info lifecycle are-we-there-yet@1.1.4~install: are-we-there-yet@1.1.4 npm info lifecycle readable-stream@2.3.3~install: readable-stream@2.3.3 npm info lifecycle util-deprecate@1.0.2~install: util-deprecate@1.0.2 npm info lifecycle uid-number@0.0.6~install: uid-number@0.0.6 npm info lifecycle sshpk@1.13.1~install: sshpk@1.13.1 npm info lifecycle bcrypt-pbkdf@1.0.1~install: bcrypt-pbkdf@1.0.1 npm info lifecycle tweetnacl@0.14.5~install: tweetnacl@0.14.5 npm info lifecycle tunnel-agent@0.6.0~install: tunnel-agent@0.6.0 npm info lifecycle tough-cookie@2.3.2~install: tough-cookie@2.3.2 npm info lifecycle string_decoder@0.10.31~install: string_decoder@0.10.31 npm info lifecycle rc@1.1.7~install: rc@1.1.7 npm info lifecycle strip-json-comments@2.0.1~install: strip-json-comments@2.0.1 npm info lifecycle string-width@1.0.2~install: string-width@1.0.2 npm info lifecycle strip-ansi@3.0.1~install: strip-ansi@3.0.1 npm info lifecycle stringstream@0.0.5~install: stringstream@0.0.5 npm info lifecycle string_decoder@1.0.3~install: string_decoder@1.0.3 npm info lifecycle assert-plus@1.0.0~install: assert-plus@1.0.0 npm info lifecycle hawk@3.1.3~install: hawk@3.1.3 npm info lifecycle sntp@1.0.9~install: sntp@1.0.9 npm info lifecycle signal-exit@3.0.2~install: signal-exit@3.0.2 npm info lifecycle set-blocking@2.0.0~install: set-blocking@2.0.0 npm info lifecycle semver@5.3.0~install: semver@5.3.0 npm info lifecycle safe-buffer@5.1.1~install: safe-buffer@5.1.1 npm info lifecycle minimist@1.2.0~install: minimist@1.2.0 npm info lifecycle qs@6.4.0~install: qs@6.4.0 npm info lifecycle punycode@1.4.1~install: punycode@1.4.1 npm info lifecycle process-nextick-args@1.0.7~install: process-nextick-args@1.0.7 npm info lifecycle performance-now@0.2.0~install: performance-now@0.2.0 npm info lifecycle path-is-absolute@1.0.1~install: path-is-absolute@1.0.1 npm info lifecycle object-assign@4.1.1~install: object-assign@4.1.1 npm info lifecycle oauth-sign@0.8.2~install: oauth-sign@0.8.2 npm info lifecycle is-fullwidth-code-point@1.0.0~install: is-fullwidth-code-point@1.0.0 npm info lifecycle number-is-nan@1.0.1~install: number-is-nan@1.0.1 npm info lifecycle nopt@3.0.6~install: nopt@3.0.6 npm info lifecycle debug@2.2.0~install: debug@2.2.0 npm info lifecycle ms@0.7.1~install: ms@0.7.1 npm info lifecycle mkdirp@0.5.1~install: mkdirp@0.5.1 npm info lifecycle minimist@0.0.8~install: minimist@0.0.8 npm info lifecycle minimatch@3.0.4~install: minimatch@3.0.4 npm info lifecycle form-data@2.1.4~install: form-data@2.1.4 npm info lifecycle mime-types@2.1.15~install: mime-types@2.1.15 npm info lifecycle mime-db@1.27.0~install: mime-db@1.27.0 npm info lifecycle assert-plus@1.0.0~install: assert-plus@1.0.0 npm info lifecycle har-validator@4.2.1~install: har-validator@4.2.1 npm info lifecycle ajv@4.11.8~install: ajv@4.11.8 npm info lifecycle json-stable-stringify@1.0.1~install: json-stable-stringify@1.0.1 npm info lifecycle jsonify@0.0.0~install: jsonify@0.0.0 npm info lifecycle json-stringify-safe@5.0.1~install: json-stringify-safe@5.0.1 npm info lifecycle json-schema@0.2.3~install: json-schema@0.2.3 npm info lifecycle ecc-jsbn@0.1.1~install: ecc-jsbn@0.1.1 npm info lifecycle jsbn@0.1.1~install: jsbn@0.1.1 npm info lifecycle isstream@0.1.2~install: isstream@0.1.2 npm info lifecycle isarray@1.0.0~install: isarray@1.0.0 npm info lifecycle is-typedarray@1.0.0~install: is-typedarray@1.0.0 npm info lifecycle ini@1.3.4~install: ini@1.3.4 npm info lifecycle block-stream@0.0.9~install: block-stream@0.0.9 npm info lifecycle inherits@2.0.3~install: inherits@2.0.3 npm info lifecycle cryptiles@2.0.5~install: cryptiles@2.0.5 npm info lifecycle boom@2.10.1~install: boom@2.10.1 npm info lifecycle hoek@2.16.3~install: hoek@2.16.3 npm info lifecycle has-unicode@2.0.1~install: has-unicode@2.0.1 npm info lifecycle har-schema@1.0.5~install: har-schema@1.0.5 npm info lifecycle graceful-fs@4.1.11~install: graceful-fs@4.1.11 npm info lifecycle getpass@0.1.7~install: getpass@0.1.7 npm info lifecycle assert-plus@1.0.0~install: assert-plus@1.0.0 npm info lifecycle fs.realpath@1.0.0~install: fs.realpath@1.0.0 npm info lifecycle forever-agent@0.6.1~install: forever-agent@0.6.1 npm info lifecycle extsprintf@1.0.2~install: extsprintf@1.0.2 npm info lifecycle extend@3.0.1~install: extend@3.0.1 npm info lifecycle delegates@1.0.0~install: delegates@1.0.0 npm info lifecycle combined-stream@1.0.5~install: combined-stream@1.0.5 npm info lifecycle delayed-stream@1.0.0~install: delayed-stream@1.0.0 npm info lifecycle deep-extend@0.4.2~install: deep-extend@0.4.2 npm info lifecycle dashdash@1.14.1~install: dashdash@1.14.1 npm info lifecycle assert-plus@1.0.0~install: assert-plus@1.0.0 npm info lifecycle core-util-is@1.0.2~install: core-util-is@1.0.2 npm info lifecycle console-control-strings@1.1.0~install: console-control-strings@1.1.0 npm info lifecycle brace-expansion@1.1.8~install: brace-expansion@1.1.8 npm info lifecycle concat-map@0.0.1~install: concat-map@0.0.1 npm info lifecycle code-point-at@1.1.0~install: code-point-at@1.1.0 npm info lifecycle co@4.6.0~install: co@4.6.0 npm info lifecycle caseless@0.12.0~install: caseless@0.12.0 npm info lifecycle buffer-shims@1.0.0~install: buffer-shims@1.0.0 npm info lifecycle balanced-match@1.0.0~install: balanced-match@1.0.0 npm info lifecycle aws4@1.6.0~install: aws4@1.6.0 npm info lifecycle aws-sign2@0.6.0~install: aws-sign2@0.6.0 npm info lifecycle asynckit@0.4.0~install: asynckit@0.4.0 npm info lifecycle assert-plus@0.2.0~install: assert-plus@0.2.0 npm info lifecycle asn1@0.2.3~install: asn1@0.2.3 npm info lifecycle aproba@1.1.2~install: aproba@1.1.2 npm info lifecycle ansi-regex@2.1.1~install: ansi-regex@2.1.1 npm info lifecycle abbrev@1.1.0~install: abbrev@1.1.0 npm info lifecycle bcrypt@1.0.2~postinstall: bcrypt@1.0.2 npm info lifecycle node-pre-gyp@0.6.32~postinstall: node-pre-gyp@0.6.32 npm info lifecycle nan@2.5.0~postinstall: nan@2.5.0 npm info lifecycle bindings@1.2.1~postinstall: bindings@1.2.1 npm info lifecycle tar-pack@3.3.0~postinstall: tar-pack@3.3.0 npm info lifecycle once@1.3.3~postinstall: once@1.3.3 npm info lifecycle tar@2.2.1~postinstall: tar@2.2.1 npm info lifecycle fstream-ignore@1.0.5~postinstall: fstream-ignore@1.0.5 npm info lifecycle fstream@1.0.11~postinstall: fstream@1.0.11 npm info lifecycle rimraf@2.5.4~postinstall: rimraf@2.5.4 npm info lifecycle glob@7.1.2~postinstall: glob@7.1.2 npm info lifecycle inflight@1.0.6~postinstall: inflight@1.0.6 npm info lifecycle once@1.4.0~postinstall: once@1.4.0 npm info lifecycle wrappy@1.0.2~postinstall: wrappy@1.0.2 npm info lifecycle npmlog@4.1.2~postinstall: npmlog@4.1.2 npm info lifecycle gauge@2.7.4~postinstall: gauge@2.7.4 npm info lifecycle wide-align@1.1.2~postinstall: wide-align@1.1.2 npm info lifecycle request@2.81.0~postinstall: request@2.81.0 npm info lifecycle http-signature@1.1.1~postinstall: http-signature@1.1.1 npm info lifecycle jsprim@1.4.0~postinstall: jsprim@1.4.0 npm info lifecycle verror@1.3.6~postinstall: verror@1.3.6 npm info lifecycle uuid@3.1.0~postinstall: uuid@3.1.0 npm info lifecycle readable-stream@2.1.5~postinstall: readable-stream@2.1.5 npm info lifecycle are-we-there-yet@1.1.4~postinstall: are-we-there-yet@1.1.4 npm info lifecycle readable-stream@2.3.3~postinstall: readable-stream@2.3.3 npm info lifecycle util-deprecate@1.0.2~postinstall: util-deprecate@1.0.2 npm info lifecycle uid-number@0.0.6~postinstall: uid-number@0.0.6 npm info lifecycle sshpk@1.13.1~postinstall: sshpk@1.13.1 npm info lifecycle bcrypt-pbkdf@1.0.1~postinstall: bcrypt-pbkdf@1.0.1 npm info lifecycle tweetnacl@0.14.5~postinstall: tweetnacl@0.14.5 npm info lifecycle tunnel-agent@0.6.0~postinstall: tunnel-agent@0.6.0 npm info lifecycle tough-cookie@2.3.2~postinstall: tough-cookie@2.3.2 npm info lifecycle string_decoder@0.10.31~postinstall: string_decoder@0.10.31 npm info lifecycle rc@1.1.7~postinstall: rc@1.1.7 npm info lifecycle strip-json-comments@2.0.1~postinstall: strip-json-comments@2.0.1 npm info lifecycle string-width@1.0.2~postinstall: string-width@1.0.2 npm info lifecycle strip-ansi@3.0.1~postinstall: strip-ansi@3.0.1 npm info lifecycle stringstream@0.0.5~postinstall: stringstream@0.0.5 npm info lifecycle string_decoder@1.0.3~postinstall: string_decoder@1.0.3 npm info lifecycle assert-plus@1.0.0~postinstall: assert-plus@1.0.0 npm info lifecycle hawk@3.1.3~postinstall: hawk@3.1.3 npm info lifecycle sntp@1.0.9~postinstall: sntp@1.0.9 npm info lifecycle signal-exit@3.0.2~postinstall: signal-exit@3.0.2 npm info lifecycle set-blocking@2.0.0~postinstall: set-blocking@2.0.0 npm info lifecycle semver@5.3.0~postinstall: semver@5.3.0 npm info lifecycle safe-buffer@5.1.1~postinstall: safe-buffer@5.1.1 npm info lifecycle minimist@1.2.0~postinstall: minimist@1.2.0 npm info lifecycle qs@6.4.0~postinstall: qs@6.4.0 npm info lifecycle punycode@1.4.1~postinstall: punycode@1.4.1 npm info lifecycle process-nextick-args@1.0.7~postinstall: process-nextick-args@1.0.7 npm info lifecycle performance-now@0.2.0~postinstall: performance-now@0.2.0 npm info lifecycle path-is-absolute@1.0.1~postinstall: path-is-absolute@1.0.1 npm info lifecycle object-assign@4.1.1~postinstall: object-assign@4.1.1 npm info lifecycle oauth-sign@0.8.2~postinstall: oauth-sign@0.8.2 npm info lifecycle is-fullwidth-code-point@1.0.0~postinstall: is-fullwidth-code-point@1.0.0 npm info lifecycle number-is-nan@1.0.1~postinstall: number-is-nan@1.0.1 npm info lifecycle nopt@3.0.6~postinstall: nopt@3.0.6 npm info lifecycle debug@2.2.0~postinstall: debug@2.2.0 npm info lifecycle ms@0.7.1~postinstall: ms@0.7.1 npm info lifecycle mkdirp@0.5.1~postinstall: mkdirp@0.5.1 npm info lifecycle minimist@0.0.8~postinstall: minimist@0.0.8 npm info lifecycle minimatch@3.0.4~postinstall: minimatch@3.0.4 npm info lifecycle form-data@2.1.4~postinstall: form-data@2.1.4 npm info lifecycle mime-types@2.1.15~postinstall: mime-types@2.1.15 npm info lifecycle mime-db@1.27.0~postinstall: mime-db@1.27.0 npm info lifecycle assert-plus@1.0.0~postinstall: assert-plus@1.0.0 npm info lifecycle har-validator@4.2.1~postinstall: har-validator@4.2.1 npm info lifecycle ajv@4.11.8~postinstall: ajv@4.11.8 npm info lifecycle json-stable-stringify@1.0.1~postinstall: json-stable-stringify@1.0.1 npm info lifecycle jsonify@0.0.0~postinstall: jsonify@0.0.0 npm info lifecycle json-stringify-safe@5.0.1~postinstall: json-stringify-safe@5.0.1 npm info lifecycle json-schema@0.2.3~postinstall: json-schema@0.2.3 npm info lifecycle ecc-jsbn@0.1.1~postinstall: ecc-jsbn@0.1.1 npm info lifecycle jsbn@0.1.1~postinstall: jsbn@0.1.1 npm info lifecycle isstream@0.1.2~postinstall: isstream@0.1.2 npm info lifecycle isarray@1.0.0~postinstall: isarray@1.0.0 npm info lifecycle is-typedarray@1.0.0~postinstall: is-typedarray@1.0.0 npm info lifecycle ini@1.3.4~postinstall: ini@1.3.4 npm info lifecycle block-stream@0.0.9~postinstall: block-stream@0.0.9 npm info lifecycle inherits@2.0.3~postinstall: inherits@2.0.3 npm info lifecycle cryptiles@2.0.5~postinstall: cryptiles@2.0.5 npm info lifecycle boom@2.10.1~postinstall: boom@2.10.1 npm info lifecycle hoek@2.16.3~postinstall: hoek@2.16.3 npm info lifecycle has-unicode@2.0.1~postinstall: has-unicode@2.0.1 npm info lifecycle har-schema@1.0.5~postinstall: har-schema@1.0.5 npm info lifecycle graceful-fs@4.1.11~postinstall: graceful-fs@4.1.11 npm info lifecycle getpass@0.1.7~postinstall: getpass@0.1.7 npm info lifecycle assert-plus@1.0.0~postinstall: assert-plus@1.0.0 npm info lifecycle fs.realpath@1.0.0~postinstall: fs.realpath@1.0.0 npm info lifecycle forever-agent@0.6.1~postinstall: forever-agent@0.6.1 npm info lifecycle extsprintf@1.0.2~postinstall: extsprintf@1.0.2 npm info lifecycle extend@3.0.1~postinstall: extend@3.0.1 npm info lifecycle delegates@1.0.0~postinstall: delegates@1.0.0 npm info lifecycle combined-stream@1.0.5~postinstall: combined-stream@1.0.5 npm info lifecycle delayed-stream@1.0.0~postinstall: delayed-stream@1.0.0 npm info lifecycle deep-extend@0.4.2~postinstall: deep-extend@0.4.2 npm info lifecycle dashdash@1.14.1~postinstall: dashdash@1.14.1 npm info lifecycle assert-plus@1.0.0~postinstall: assert-plus@1.0.0 npm info lifecycle core-util-is@1.0.2~postinstall: core-util-is@1.0.2 npm info lifecycle console-control-strings@1.1.0~postinstall: console-control-strings@1.1.0 npm info lifecycle brace-expansion@1.1.8~postinstall: brace-expansion@1.1.8 npm info lifecycle concat-map@0.0.1~postinstall: concat-map@0.0.1 npm info lifecycle code-point-at@1.1.0~postinstall: code-point-at@1.1.0 npm info lifecycle co@4.6.0~postinstall: co@4.6.0 npm info lifecycle caseless@0.12.0~postinstall: caseless@0.12.0 npm info lifecycle buffer-shims@1.0.0~postinstall: buffer-shims@1.0.0 npm info lifecycle balanced-match@1.0.0~postinstall: balanced-match@1.0.0 npm info lifecycle aws4@1.6.0~postinstall: aws4@1.6.0 npm info lifecycle aws-sign2@0.6.0~postinstall: aws-sign2@0.6.0 npm info lifecycle asynckit@0.4.0~postinstall: asynckit@0.4.0 npm info lifecycle assert-plus@0.2.0~postinstall: assert-plus@0.2.0 npm info lifecycle asn1@0.2.3~postinstall: asn1@0.2.3 npm info lifecycle aproba@1.1.2~postinstall: aproba@1.1.2 npm info lifecycle ansi-regex@2.1.1~postinstall: ansi-regex@2.1.1 npm info lifecycle abbrev@1.1.0~postinstall: abbrev@1.1.0 npm WARN saveError ENOENT: no such file or directory, open '/package.json' npm info lifecycle undefined~preshrinkwrap: undefined npm info lifecycle undefined~shrinkwrap: undefined npm notice created a lockfile as package-lock.json. You should commit this file. npm info lifecycle undefined~postshrinkwrap: undefined npm WARN enoent ENOENT: no such file or directory, open '/package.json' npm WARN !invalid#1 No description npm WARN !invalid#1 No repository field. npm WARN !invalid#1 No README data npm WARN !invalid#1 No license field. + bcrypt@1.0.2 added 115 packages in 7.191s npm info ok Segmentation fault ```Seems to affect older Alpine versions too. It seems possible it's related to https://github.com/nodejs/node/issues/14069. The default Node image using
buildpack-deps
doesn't exhibit the problem.