Some installed packages could not be loaded because they contain native modules that were compiled for an earlier version of Atom. #19780
Comments
👋 Hi @bjce: I'm sorry that you're running into this issue. I see that you're using Atom 1.40.0, which was just released today. To determine whether this might be a regression Atom 1.40.0, would you be willing to try reproducing this issue with Atom 1.39.1? You can download Atom 1.39.1 at https://github.com/atom/atom/releases/tag/v1.39.1. |
many thanks for your answer @jasonrudolph. So in the link you provided, I just tried to download the following: |
@bjce: I recommend trying |
Ok many thanks @jasonrudolph. In the meantime I installed Atom successfully with |
And what's strange is that there is a |
Thanks for checking the previous version of Atom @bjce, not sure why you're getting the same error when it worked previously? For what it's worth, I installed Hydrogen on Windows 10 and Atom 1.39.1 and then updated to 1.40.0 and didn't see the same error. Since this issue is related in particular to the Hydrogen package, can you open an issue on the Hydrogen package repository so its maintainers can take a look? I think they would be the best people to help if it's a general issue related to the package, but if they believe the problem is with Atom, they can share more details on what they think the issue is on our side which would be super helpful for us. |
We have reports on hydrogen that downgrading to 1.39.x fixes the issue, so there does seem to be some change upstream. If there is anything we can do on hydrogen to fix we will work on it. |
@rsese And it may not be related, but just FYI, there is also the issue report with this cc: @pfitzseb |
Maybe Hydrogen implicitly used the logic which was abandoned in this PR ? |
As @aviatesk mentioned already mentioned: Juno's prebuilds for What might be happening here (I didn't look at any code, so just guessing) is that atom/apm#845 means that prebuild-install can't figure out what prebuilt binary it should download and then tries to build from source. |
I don't, but I also only apm-installed Hydrogen, I didn't install any kernels or try to use it so I wonder if I would have just hit the same errors later on.
Thanks @pfitzseb - so just to summarize (and please correct me anywhere I'm wrong), your theory is that though the correct prebuilt binaries are available, as of 1.40.0 Atom can't figure out which binary to use so has to fallback to building a module (e.g. zeromq in the case of this report). Then if someone hasn't setup the build tools on their machine, they're running into errors like this report where node-gyp requires Python 2. And maybe atom/apm#845 is related though that's a guess at the moment. Does that sound right? I just want to make sure I share the best information with our engineers - any additional specifics of course would be super helpful. |
Yes, except that it (probably) isn't Atom that can't figure out the right thing to do but prebuild-install (which is the both zeromq and Juno are using to download and install the prebuilt binaries). I'll also dig into this tomorrow if you guys haven't made any further progress, and @aviatesk said that he'll try building Atom without atom/apm#845 if he finds the time. |
Thanks so much @pfitzseb and @aviatesk, the help would be super appreciated 🙇 |
Okay, so atom/apm is to blame: I experimented the installations of the packages switching atom/apm's version.
The same goes for Hydrogen as well. |
The runtime should be Edit: It found prebuilt binaries when I had that change applied. So I think atom/apm#862 should fix this issue. And I'll take this opportunity to advertise |
@Aerijo Thanks for you here too.
Python stuff actually happens as a fallback, thus it's not an error from the beginning, maybe. |
The next nightly build of Atom will include atom/apm#862, which we believe resolves this issue. We'll do additional testing to verify that the nightly build doesn't have the problems described in this issue, and once we're confident that all is well, we'll ship a patch release of Atom 1.40 and 1.41-beta including this fix. Stay tuned. 📺 |
In my testing of the latest Atom nightly release (1.42.0-nightly3), the changes from atom/apm#862 seemed to resolve this issue for some packages, but others are still having the same problem (as shown below). With this in mind, I'm going to re-open this issue. I'm not sure where we should go from here, so if anyone has ideas, I'd love to hear them. In the meantime, I'm going to assess the feasibility of reverting atom/apm#845. If that resolves the issue, that may be our most pragmatic option for the near term. Before and after atom/apm#862Comparing 1.42.0-nightly2 (which does not include atom/apm#862) to 1.42.0-nightly3 (which does include atom/apm#862), here's what I'm seeing:
Some example failure logsjulia-client before atom/apm#862Installing “julia-client@0.9.4” failed. hydrogen before atom/apm#862Installing “Hydrogen@2.10.3” failed. hydrogen after atom/apm#862Installing “Hydrogen@2.10.3” failed.Hide output… |
The Hydrogen/zeromq failure happens because zeromq.js doesn't provide any prebuilt binaries for Electron > v4.0.4 (i.e. with ABI v69). Short of downgrading to older Electron versions there's nothing that can be done on the Atom side in that case. |
Thanks for pointing that out, @pfitzseb. I should have compared Atom 1.40.0 to a candidate build of 1.40.1 that includes atom/apm#862. When I perform that comparison, things look much better. 😅
We'll work on getting a 1.40.1 release published with this fix in place. |
1.40.1 is now available with this fix. 1.41.0-beta1 is out with this fix as well, but it's important to note that Atom 1.41.x uses Electron 4, whereas Atom 1.40.x uses Electron 3. As @pfitzseb notes in #19780 (comment), this distinction matters because some modules don't yet have prebuilt binaries for Electron 4. For example, the hydrogen package depends on zeromq, which has not yet published a prebuilt binary compatible with Electron 4. Until the zeromq team publishes a prebuilt binary for Electron 4, you won't be able to rely on prebuilt binaries for installing/using hydrogen in Atom 1.41.x. |
zeromq/zeromq.js#310 is tracking the request for the zeromq team to publish a prebuilt binary for Electron 4. |
I tried: npm config set strict-ssl false . Then all problem solved. |
This issue has been automatically locked since there has not been any recent activity after it was closed. If you can still reproduce this issue in Safe Mode then please open a new issue and fill out the entire issue template to ensure that we have enough information to address your issue. Thanks! |
Atom 1.40.0
Windows 10
Hydrogen 2.8.0
I tried to launch Atom, but a red bug appeared with the following message regarding Hydrogen 2.8.0:
with the following Details:
What I tried:
I saw 2 similar issures: #308 , #11, but I could not solve the problem
The text was updated successfully, but these errors were encountered: