-
Notifications
You must be signed in to change notification settings - Fork 31k
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
Suggestion: Allow extension packs to not be defined by dependencies #48430
Comments
I do not think we can go away from using dependencies for extension packs as it has become a sort of API. Your requirement looks like asking for optional dependencies ? |
I'd like to echo this one. #48873 was logged against the similar issue. |
My use case for this would be a recommended language colorizer. Most users will be happy with the language colorizer I provide, but I don't want to force them to use it if they prefer another. My plan was to have the colorizer as an extensionDependency, but it sounds like that would override any other extensions. |
Here is another scenario where the current model is problematic:
Result:
But they are actually disabled on reload. |
@chrisdias Above scenario is a bug. Please file a separate issue for that. |
ok, filed: #49929 |
+1 to this. I have an extension pack, and people like portions of it but want to be able to disable one or two of the extensions if they chose not to have them. There should be an "optional dependency" system instead? Perhaps installs by default and/or asks, but then allows disabling/uninstalling? |
Agree - I too would like to see optional dependencies for packs. |
Good to see it's in the June plan. Can't wait! |
Sorry could not make this in June. Deferring to July. |
Introducing an
The way to define an optional dependency would be as follows "extensionDependencies": [
{
"id": "pub.a",
"optional": true
},
"pub.b" // mandatory
] |
As the maintainer of VS Code for Node.js - Development Pack, I'd like to give a HUGE +1 to this. If this were shipped, it would enable me to ship a bunch of additional extensions as "optional" – Node.js developers are pretty diverse in their interests, and it would be great to be able to send a larger additional set of optional extensions over the wire. |
Took a different solution than what I proposed previously (introducing an optional property). We though mixing extension pack and extension dependencies is confusing and does not express what we want to do. Similarities between Extension pack and Extension dependencies:
Differences between Extension pack and Extension dependencies:
Hence introduced a new property called "extensionPack": [
"pub.a",
"pub.b",
"pub.c"
] |
This solves our problem perfectly. Thank you so much. |
An "extension pack" is generally a curated collection of extensions targeted at a specific scenario. The Azure extension pack installs 10+ extensions all related to Azure. As a user I might be interested in 8 of the extensions and want to uninstall the rest.
However, it is hard to uninstall a subset of the pack because those extensions are defined as dependencies of the extension pack extension.
Suggest that we introduce a mechanism where I can define a collection of extensions (an extension pack), but they are not dependencies of the root extension. That way I can (as a user) install an extension pack for Python or Azure or [fill in the blank], see all the cool extensions, and then manage individual ones more easily.
The text was updated successfully, but these errors were encountered: