Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bcrypt 1.0.3 installation fails on Windows 10 #9049

Closed
Rhywden opened this issue Aug 28, 2017 · 3 comments
Closed

bcrypt 1.0.3 installation fails on Windows 10 #9049

Rhywden opened this issue Aug 28, 2017 · 3 comments

Comments

@Rhywden
Copy link
Contributor

Rhywden commented Aug 28, 2017

Meteor version 1.5.1
bcrypt 1.0.3

This is a new issue. Everything worked with 1.0.2 and the Visual Studio build tools. If I try to upgrade bcrypt to 1.0.3, the build process (using meteor npm install) will die a horrible death.

This is an issue with the outdated version of node included with Meteor because I had a similar error when doing npm install because then I got an actually helpful error message: The node version was out of date.

Upon updating Node to a recent version, the build process succeeded again - however, then I naturally got the console warning message that Meteor was using the "native" Javascript bcrypt implementation.

So, currently, Windows users have two options:
a) pin bcrypt to version 1.0.2 or
b) install an up-to-date version of Node, build with that Node version and live with the console message.

@Rhywden
Copy link
Contributor Author

Rhywden commented Aug 28, 2017

Oh, and I just tried it out: Node v6 (LTS) will not build either, it has to be v8.

@abernix
Copy link
Contributor

abernix commented Aug 29, 2017

On Windows 10, both bcrypt@1.0.2 and bcrypt@1.0.3 still compile fine for me, both with Meteor 1.5.1 and without Meteor (using Node 4.8.4 and npm 4.6.1, the versions included with Meteor 1.5.1), so something else must be awry here. Could you please include the output from the meteor npm install which results in the "horrible death"? If it's really not helpful, and even more ideal than just running meteor npm install, could you specifically install bcrypt@1.0.3 alone with the --verbose flag, as such:

meteor npm install bcrypt@1.0.3 --verbose

Also, was the "helpful error message" you received actually "The node version was out of date"? I hope you understand the importance of including actual error messages in issues so we more easily help debug problems like this!

And just to emphasize: Node.js 4.8.4 is still under LTS with the Node.js foundation and actively maintained, even if things are moving toward newer versions in Node.js v6 and 8. The bcrypt project has indeed recently released bcrypt@1.0.3, however it doesn't appear that they published pre-built binaries (for use with node-pre-gyp) for Windows platforms, as seen on the releases page. It's possible that your Window's ability to compile from source may not have actually been working properly before and you were just benefiting from the pre-built binaries sourced by node-pre-gyp, the --verbose output from above should shed more light on the problem.

Lastly, bcrypt recently suggested removing support for versions of Node.js prior to version 4, as those versions are no longer LTS, however I haven't seen any talk or commits which would have acted on that yet, and certainly not any that would have stopped support for Node.js v4. Both their package.json's engines field and their TravisCI configuration still suggest they are intending on working with Node.js 4.

@hwillson
Copy link
Contributor

bcrypt installation on Windows 10 is working in our tests, and we haven't heard back regarding the additionally requested info in #9049 (comment), so closing for now. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants