-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Keep only latest (or next during development) version of a plug-in inside che-plugin-registry #18183
Comments
👍 to this idea |
These plugins are referenced directly from devfiles with their versions, users should be able to go back to these versions however old they may be and should get a working workspace. If we are removing versions of plugins from registry we must also not allow devfiles to reference plugins with their versions but only with |
All the devfiles in the registry are already using |
How about devfiles on user repositories? |
They have a few options:
|
I do not think any of these options fit the use case. I have a project that I modify infrequently (once in a year perhaps) . I use Che so that I do not have to setup my developer environment. With this change now we are saying that you will have to setup your workspace. |
BTW even before this issue, all older plugins were removed after few sprints so I suppose your workspace contains only 'latest' version of plugin's so it should stil work perfectly fine |
We should not let devfiles to directly reference a version of the plugin and remove them? We are breaking the instance of the devfile. By allowing devfile to directly define a version of the plugin we are establishing a contract that the version of the plugin will be available. This is not very different from maven coordinate or versions on npm registry. Both maven and npm does not allow removal of published versions. |
npm and maven registries are global. Here, each Che instance has its own registry instance. |
No, we are making a contract that the version of the plugin will be available in the version of the Che plugin registry that was deployed when that devfile was written. The user is free to:
We are not obligated to support all devfiles in perpetuity. This isn't even the case right now as I have been removing old plugins after 3 sprints for the last ~8 months. So far no one has complained. In downstream we also only ship the latest version of a plugin. In reality we cannot have the latest and greatest version of every plugin in our registry and also maintain a massive list of older plugins. Even with automation the maintenance burden is too high. It's easy for for VS Code and other IDEs to let users install/use any version of a plugin, because they don't need to maintain the dependency stack that goes with every extension. |
Fixes eclipse-che/che#18183 Signed-off-by: Eric Williams <ericwill@redhat.com>
Remove older plugin version, as only one should be in the registry. See eclipse-che/che#18183 Signed-off-by: Filip Kroupa <filip.kroupa@broadcom.com>
* hlasm-language-support 0.11.1 New version of plugin hlasm-language-support 0.11.1 Signed-off-by: Filip Kroupa <filip.kroupa@broadcom.com> * Remove hlasm-language-support 0.11.0 Remove older plugin version, as only one should be in the registry. See eclipse-che/che#18183 Signed-off-by: Filip Kroupa <filip.kroupa@broadcom.com>
Fixes eclipse-che/che#18183 Signed-off-by: Eric Williams <ericwill@redhat.com>
* hlasm-language-support 0.11.1 New version of plugin hlasm-language-support 0.11.1 Signed-off-by: Filip Kroupa <filip.kroupa@broadcom.com> * Remove hlasm-language-support 0.11.0 Remove older plugin version, as only one should be in the registry. See eclipse-che/che#18183 Signed-off-by: Filip Kroupa <filip.kroupa@broadcom.com>
Is your task related to a problem? Please describe.
For now, a lot of plug-in versions are stored in the plug-in registry.
But for example all devfiles are using only latest version of plug-ins and we ensure that all plug-ins work on their respective runtime.
Describe the solution you'd like
Keep only the
latest
and optionallynext
version of the plug-ins of the components tied to lifecycle of Eclipse Che. (machine-exec and che-theia)For example, there is no need to have
che-theia:7.17.0
in the7.20.0
plug-in registry as this version may not work on latest version of che. You may only want to try 'experimental'.It would simply contributions to the plug-in registry and drop the 'deprecation policy' and maintainability.
Additional context
It's always possible to use custom plug-ins by adding a reference in the devfile.yaml so if someone really want a specific version and a specific runtime, it can be customized.
The text was updated successfully, but these errors were encountered: