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

1.55.1 Community release has inversify runtime errors #14652

Open
tortmayr opened this issue Dec 19, 2024 · 2 comments
Open

1.55.1 Community release has inversify runtime errors #14652

tortmayr opened this issue Dec 19, 2024 · 2 comments

Comments

@tortmayr
Copy link
Contributor

tortmayr commented Dec 19, 2024

Bug Description:

Theia products using the current community release (1.55.1) fail to start due to an inversify error.
This is caused by a breaking change introduced with inversify 6.1.x.
For Theia >= 1.56 this is fixed with #14435.
This change should probably be backported to ensure that the community release is working.
Currently adopters need to manually lock the version via resolutions as a workaround.

Steps to Reproduce:

  1. Use the yeoman generator to generate a new example project (yo theia-extension -> hello world)
  2. Manually change the theia versions in the browser/electron package.json to 1.55.1
  3. Build with yarn && yarn build:browser
  4. Start with yarn start:browser
  5. The start will fail with the following error:
yarn start:browser  
yarn run v1.22.22
$ yarn --cwd browser-app start
$ theia start
Error: The number of constructor arguments in the derived class NodeStopwatch must be >= than the number of constructor arguments of its base class.
    at /home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25822:27
    at Array.forEach (<anonymous>)
    at _createSubRequests (/home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25801:20)
    at /home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25826:17
    at Array.forEach (<anonymous>)
    at /home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25825:26
    at Array.forEach (<anonymous>)
    at _createSubRequests (/home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25801:20)
    at plan (/home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25847:9)
    at /home/tobias/temp/test-theia/browser-app/lib/backend/vendors-node_modules_theia_core_lib_common_index_js.js:25011:46

Additional Information

  • Operating System:
  • Theia Version:

@jfaltermeier @sgraband FYI

@tsmaeder
Copy link
Contributor

This issue reveals a general problem we have in that we can't prevent adopters from picking up updates to dependencies that fit our version expressions. Another instance of this problem is #14586.
I don't think it's a good policy to backport fixes each time an updated dependency might break adopters. We would be investing sometimes a lot of time for something that can be trivally fixed by adding a yarn resolution to the adopters product package.json. So unless you can argue that this case is special, IMO a message to @theia-dev is the right "fix".
In the context of the scrollbar issue, I've been thinking that maybe we should have a dedicated channel for adopters where such issues may be communicated.

@sdirix
Copy link
Member

sdirix commented Dec 23, 2024

I generally agree with @tsmaeder that preventing this kind of breakage entirely is not feasible, and we should focus on documenting and communicating such occurrences effectively.

That said, if a fix for an ongoing issue is available, I believe there’s a strong case for backporting it to the latest community release to enhance the adopter experience as long as the effort required is reasonable.

Let’s include this in the agenda for the next dev meeting to discuss further.

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