-
Notifications
You must be signed in to change notification settings - Fork 29.1k
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
Node 12.16.3 broke grpc precompiled native addon installation on Windows #33254
Comments
@richardlau closing the loop here, it looks like this is potentially related to a regression between Could it be this actually? |
https://docs.python.org/2/library/fpformat.html Removed in Python 3. Do you have a test case where the old and new disagree? |
@cclauss I'm working on a git bisect right now ... it seems unlikely that changing formatting would be the culprit, I will come back with more information. |
Unlikely as |
Do you know why node-pre-gyp thinks that the prebuilt binaries are not installable? |
$ python2
|
Looking at the source code of |
If I install |
Is this a problem on v14 as well? I assume OSX and Linux can't reproduce it? If you build it on VS2017 and/or VS2019 do you have the same problem? @bcoe: Hm, I'm sceptical whether that change in itself is the direct cause, though it might have indirectly triggered another bug. |
@ronag it does crop up in v14 as well. I am able to reproduce on my Linux work computer: with bencoe@bencoe:~/oss/node$ /usr/local/google/home/bencoe/.nvm/versions/node/v10.15.3/bin/npm i grpc
> [email protected] install /usr/local/google/home/bencoe/oss/node/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using needle for node-pre-gyp https download
node-pre-gyp WARN Pre-built binaries not installable for [email protected] and [email protected] (node-v72 ABI, glibc) (falling back to source compile with node-gyp)
node-pre-gyp WARN Hit error bad download resetting to bencoe@bencoe:~/oss/node$ /usr/local/google/home/bencoe/.nvm/versions/node/v10.15.3/bin/npm i grpc
> [email protected] install /usr/local/google/home/bencoe/oss/node/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using needle for node-pre-gyp https download
[grpc] Success: "/usr/local/google/home/bencoe/oss/node/node_modules/grpc/src/node/extension_binary/node-v72-linux-x64-glibc/grpc_node.node" is installed via remote |
clarification, @murgatroid99 points out that grpc does not have precompiled binaries for Node 14, so the failing Windows tests on 14 would be unrelated. |
What exactly does:
Mean? Isn't this just a case of pre-built binaries missing? |
Building in docker, but will take a while. Will try to get back to this tomorrow evening. |
@ronag for what it's worth, if I remove the > [email protected] install /usr/local/google/home/bencoe/oss/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using needle for node-pre-gyp https download
node-pre-gyp WARN Pre-built binaries not installable for [email protected] and [email protected] (node-v72 ABI, glibc) (falling back to source compile with node-gyp)
node-pre-gyp WARN Hit error bad download
make: Entering directory '/usr/local/google/home/bencoe/oss/node_modules/grpc/build'
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/avl/avl.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/backoff/backoff.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_args.o ☝️ I still get the "error bad download", and rather than downloading the binary it falls back to compiling (which I think wouldn't happen if the binary had come down okay). If I rollback to I think what's happening is that we fail to download the binary on all platforms, but then the fallback to compiling works on Linux, on Windows |
Is it possible to get the actual error from needle? |
This seems to have something to do with needle. Do you think you could create a simple repro using needle? Based on what node-pre-gyp does https://github.com/mapbox/node-pre-gyp/blob/590da5603bb77df9583bfdc54d05d2267cadb364/lib/install.js. I suspect we hit this path for some reason after 'response'. |
This looks wrong to me in needle. The socket is not destroyed even if |
Yes, tomas/needle#312. It looks like it will be sorted in needle. |
@ronag awesome, I'm glad we tracked it down. Sorry if I flagged you in error (and appreciate the help digging). |
Workaround for issue discussed here: nodejs/node#33254 Should be possible to revert once Node.js 12.16.3 is released.
Workaround for issue discussed here: nodejs/node#33254 Should be possible to revert once Node.js 12.16.3 is released.
This sounds like it was fixed in needle. |
What steps will reproduce the bug?
npm install grpc --verbose
How often does it reproduce? Is there a required condition?
It's consistent. I have only seen it happen on Windows.
What is the expected behavior?
When running that command on Node 12.16.2, I see these log lines:
What do you see instead?
When I run the same command on Node 12.16.3, I see these log lines:
Additional information
The text was updated successfully, but these errors were encountered: