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

Prerequisites need to be updated #15139

Open
fipro78 opened this issue Mar 6, 2025 · 6 comments
Open

Prerequisites need to be updated #15139

fipro78 opened this issue Mar 6, 2025 · 6 comments
Labels
dependencies pull requests that update a dependency file electron issues related to the electron target

Comments

@fipro78
Copy link
Contributor

fipro78 commented Mar 6, 2025

The documentation says that the prerequisites are Node.js >= 18.17.0 and < 21

But trying to run a build created with the latest version of Theia fails with the following message:

error [email protected]: the engine "node" is incompatible with this module. expected version ">=22.12.0".

So it seems a transitive dependency introduced an update in the required Node.js version.
This should be updated in the docs.

@msujew
Copy link
Member

msujew commented Mar 6, 2025

@fipro78 I don't think the prerequisites should be updated, as our Electron version still requires us to use 18.17.0 (as that's the node version that comes with our Electron version). Instead, we should probably adjust our version constraint for node-abi (assuming that's even possible for us).

@msujew
Copy link
Member

msujew commented Mar 6, 2025

@fipro78 On second look, how do you even get node-abi to that version? We only depend on [email protected], but that uses node-abi": "^3.0.0", so version 4.1.0 should not be retrieved by Theia. Can you run yarn why node-abi or npm list node-abi?

@msujew msujew added electron issues related to the electron target 🤔 needs more info issues that require more info from the author dependencies pull requests that update a dependency file labels Mar 6, 2025
@fipro78
Copy link
Contributor Author

fipro78 commented Mar 6, 2025

This is the output:

theia@ /workspaces/vscode_theia_cookbook/theia
└─┬ [email protected] -> ./browser-app
  ├─┬ @theia/[email protected]
  │ └─┬ @theia/[email protected]
  │   ├─┬ [email protected]
  │   │ └── [email protected]
  │   └── [email protected]
  └─┬ @theia/[email protected]
    └─┬ [email protected]
      └─┬ [email protected]
        └── [email protected] deduped

I have created I new project using yo theia-extension and used No Extension (just a Theia application)

@msujew
Copy link
Member

msujew commented Mar 6, 2025

Huh, apparently we're using * as a version for node-abi:

I would assume it should reuse the version that is available from electron-rebuild, but it does not seem to do that. We should stick to a specific version. cc @tsmaeder.

@msujew msujew removed the 🤔 needs more info issues that require more info from the author label Mar 6, 2025
@tsmaeder
Copy link
Contributor

tsmaeder commented Mar 7, 2025

Maybe I'm naive, but I don't find any uses of the node-abi package in @theia/application-manager. Why do we have that dependency?

@msujew
Copy link
Member

msujew commented Mar 7, 2025

Maybe a leftover from some previous work? Anyway, we should probably remove it, if it's not directly in use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies pull requests that update a dependency file electron issues related to the electron target
Projects
None yet
Development

No branches or pull requests

3 participants