-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
refactor plugin system to use DI instead of new operators #5761
Comments
Hi! I'm going to see how far I can take this in this sprint :) I'm going to start with doing similar refactorings like #6148 and then go from there! |
@JPinkney I though to have the following:
It's quite a big refactoring. We should also decide how to deal with the plugin host process, since the protocol is used there. I would be fine to make it extensible with DI as well. cc @eclipse-theia/plugin-system |
@akosyakov let's make PR's with chunks that are individually consumable rather than one big one that covers everything. The way it's easier to review and there will be less conflicts to resolve. |
@akosyakov What do you mean by services? Do you mean classes that are made inside of main-context? i.e.
I think I kind of understand what you mean but I just want to clarify: Do you mean that instead of setUpPluginAPI in main-context we should make a contribution provider that allows to contribute CommandRegistryMain, QuickOpenMain etc and then those are all created and the RPCProtocol set inside of this new method? |
Yes I meant this, in such way we don't pass |
Couple of thoughts:
The way to implement compile-time extensibility right now is to include extensions in a package manifes (like in @akosyakov @benoitf opinions? |
I would say that we should first bring DI and then iterate to not mix problems. |
I don't think we're going to merge this one any time soon. Once we decide to revive this one, I suspect we'll have to do more than a simple rebase anyway. Closing (for now). |
See for the motivation: #5760 (comment)
The text was updated successfully, but these errors were encountered: