theia
theia copied to clipboard
Consider what default API should be supported for Headless Plugins
Feature Description:
Now that Headless Plugins are implemented per #12946, initially they
- provide no default API object (analogue of
vscode
ortheia
object) on the expectation that for the most part the extensibility use cases for these plugins will be entirely application-specific and there is little known of such use cases to anticipate what common needs there will be that the Theia platform can satisfy - support no contribution points via the
"contributions"
property in the package manifest. Again, this is because there are no common use cases identified yet but only the understanding that applications will have their own specific capabilities that they need plugins to extend - support only the
'*'
and'onStartupFinished'
activation events because any others would be expected to rely on contributions being triggered and, per the previous item, there are no contribution points defined as yet
This feature request is for consideration of what default API the Theia platform can and should provide out-of-the-box to Headless Plugins, that can be supported by backend services that are not tied to frontend connections. Examples might include access to environment variables, some levels of user preferences, etc.
Another resolution could be a definitive declaration that there is not and will not be any such default API for Headless Plugins, that it will always be the application's responsibility to provide whatever access is needed to Theia's own backend services.
I'm a firm believer that requirements should come from users. If the Theia project itself does not consume any "headless" plugins, we are not competent to formulate those requirements. Let's just sit on our hands for a while and let actual clients of the API formulate the needs.
Indeed, I did not make it clear that this issue is intended to gather such requirements from the community!