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

Electron 4.0.4 complains about NODE_MODULE_VERSION #762

Closed
kskalski opened this issue Mar 6, 2019 · 18 comments
Closed

Electron 4.0.4 complains about NODE_MODULE_VERSION #762

kskalski opened this issue Mar 6, 2019 · 18 comments

Comments

@kskalski
Copy link
Contributor

kskalski commented Mar 6, 2019

Problem description

The grpc_node module seems to be compiled for NODE_MODULE_VERSION=64, but Electron 4 since 4.0.4 switched (electron/electron#16687) to specifying NODE_MODULE_VERSION=69 and there is a mismatch at runtime trying to load the module.

Reproduction steps

Run project with Electron 4.0.4 (or latest 4.0.7) and grpc npm dependency on 1.19.
The following error message is shown
grpc_electron_node_module

Environment

  • Windows 10, amd64
  • Electron 4.0.4
  • gRPC 1.19

Additional context

Hopefully somewhere it's possible to specify the range of NODE_MODULE_VERSION accepted by the module... since it would be nice for the same module to work both with Electron 4.0.3 (which specifes NODE_MODULE_VERSION=64) and with newest Electron versions >=4.0.4

@nicolasnoble
Copy link
Member

This is impossible with the current tools we have. Patch releases aren't supposed to break semantic versioning like this.

@kskalski
Copy link
Contributor Author

kskalski commented Mar 6, 2019

True, I suppose the upgraded node module version was supposed to be there from the beginning and they just fixed it up in the patch release. Probably better to break compatibility with 4.0.0-4.0.3 and make it working with >=4.0.4 than what is there now.

@nicolasnoble
Copy link
Member

This might be what we end up doing, yes. We'll discuss internally first.

@sla89
Copy link

sla89 commented Mar 13, 2019

Any update on this?

@nicolasnoble
Copy link
Member

We've decided to wait for the Electron team to fix it on their end by publishing new packages.

Doing anything on our side makes little sense as we'd need to republish every single version of grpc that ever supported electron 4, whereas all they need to do is publish fixed packages.

@sla89
Copy link

sla89 commented Mar 14, 2019

@kskalski
Copy link
Contributor Author

So the next grpc release will have Electron packages for 4.1? I get this error:

node-pre-gyp WARN Tried to download(404): https://node-precompiled-binaries.grpc.io/grpc/v1.19.0/electron-v4.1-win32-ia32-unknown.tar.gz
node-pre-gyp WARN Pre-built binaries not found for grpc@1.19.0 and electron@4.1.0 (electron-v4.1 ABI, unknown) (falling back to source compile with node-gyp)```

@nicolasnoble
Copy link
Member

Right.

In this case, we might even build 4.1 binaries for 1.19 right away. We'll update this later today.

@nicolasnoble
Copy link
Member

We've been struggling with some compiler update which broke our build. We'll try posting 4.1 binaries when this is cleared up.

@HeHang0
Copy link

HeHang0 commented Mar 18, 2019

Hello, When will 4.1 binaries for 1.19 released?
Or 3.1 binaries for 1.19 released?,now I need 4.1 or 3.1. but I get 404 from https://node-precompiled-binaries.grpc.io/grpc/v1.19.0/electron-v3.1-darwin-x64-unknown.tar.gz

@CapOM
Copy link
Contributor

CapOM commented Mar 20, 2019

I am facing the same issue, is there any solution ? I am trying to use electron 4.0.8 and grpc 1.19

@nicolasnoble
Copy link
Member

The solution is to wait until we managed to get our compilation issues sorted.

@Nantris
Copy link

Nantris commented Mar 30, 2019

@nicolasnoble is there any status update on this?

I'm not sure if it's related, but I believe it is; I'm suddenly seeing my Electron build size increase by 40% (a little over 30mb) all attributable to the Build folder inside of node_modules/grpc. It looks like in recent builds that folder didn't exist on my machine as best as I can tell.

@Djiit
Copy link

Djiit commented Apr 2, 2019

This is related; your machine builds its own binaries.
We just have to wait until they can solve their compilations issues.

@nicolasnoble
Copy link
Member

We've finally sorted out the various issues plaguing our build, and we'll be releasing grpc 1.20 soon with Electron 3.1 and 4.1 prebuild binaries.

@Djiit
Copy link

Djiit commented Apr 4, 2019

Glad to here that. Thanks !

@nicolasnoble
Copy link
Member

We just published grpc-1.20.0-pre1 with hopefully electron 3.1 and 4.1 binaries. We're no longer going to produce 4.0 binaries due to the ABI instability issue on this branch.

@kskalski
Copy link
Contributor Author

kskalski commented Apr 5, 2019

thanks, works for me

@kskalski kskalski closed this as completed Apr 5, 2019
@lock lock bot locked as resolved and limited conversation to collaborators Jul 4, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants