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

Define compatible platform for extensions #4801

Closed
alefragnani opened this issue Mar 30, 2016 · 8 comments
Closed

Define compatible platform for extensions #4801

alefragnani opened this issue Mar 30, 2016 · 8 comments
Labels
extensions Issues concerning extensions feature-request Request for new features or functionality
Milestone

Comments

@alefragnani
Copy link

It would be interesting to be able to define the platforms (Windows, Linux, Mac) that an extension is compatible, and then, be filtered in Command Palette, to present only the compatibles.

Sometimes the extension is developed explicit for specific platforms, and sometimes it is not ready (yet) for all platforms, or present temporary issues, and could be turned off until it is fixed.

Thanks in advance

@bgse
Copy link
Contributor

bgse commented Mar 31, 2016

A problem I can see with this is that it could encourage to take the easy way out. Given most extensions probably start out as a tool someone needs for their personal use, I could already see my lazy self:

"Hmm, this will probably run on Windows just fine, but I should test it first."

Now testing it will require me to reboot my computer, but because I am a lazy person I just mark the extension as incompatible and be done with it. It already does everything I personally need it to do after all.

Since Windows users do not even see the extension, there is little chance for a PR to come in, or even just a comment like "it works without problems, just mark it as compatible".

Not saying I can't see your point of view, just there is the potential of such a thing ending up being harmful to the extension ecosystem.

@Tyriar Tyriar added the *question Issue represents a question, should be posted to StackOverflow (VS Code) label Mar 31, 2016
@Tyriar Tyriar added the feature-request Request for new features or functionality label Mar 31, 2016
@alefragnani
Copy link
Author

I understand your point, but I think that the same way that a lazy developer could choose the easier path and activate and extension only for selected platforms, he/she could publish an unfinished extension with known issues, and maybe, never fix it.

At least being able to define compatible platforms, it prevents the users from installing extensions that will not work.

@joaomoreno
Copy link
Member

@modigrv Is there any such concept? Maybe accessible through version properties, which vsce would properly map from our package.json?

@modigrv
Copy link

modigrv commented Jul 7, 2016

Sent the request to Marketplace PM.

@hamenon
Copy link

hamenon commented Jul 8, 2016

We don't have support for adding platform dependency in the manifest on Marketplace. Primarily because the current thinking is the extension should ideally be supported on all platforms that the product is supported. But yes I have seen a few instances of where an extension is supported only on particular platforms. Will work with @waderyan to see what can be done here.

@joaomoreno joaomoreno added this to the Backlog milestone Jul 8, 2016
@joaomoreno joaomoreno added extensions Issues concerning extensions and removed *question Issue represents a question, should be posted to StackOverflow (VS Code) labels Apr 26, 2017
@joaomoreno joaomoreno removed their assignment Jun 19, 2017
@fabiospampinato
Copy link
Contributor

fabiospampinato commented May 8, 2018

This would be useful, I made some extensions that interact with apps that are macOS-only (like Finder), there's no point in installing said extensions for a non-macOS user. Currently if an extension defines a keybinding for mac, one for non-mac systems must be provided as well, which doesn't make sense in these scenarios.

@nschonni
Copy link
Contributor

nschonni commented Jun 4, 2018

Another example of stuff like native modules only being required on particular platforms in fsevents https://github.com/strongloop/fsevents/blob/master/binding.gyp#L6
For native/C++ NodeJS stuff, it is expressed through the binding.gyp

@isidorn
Copy link
Contributor

isidorn commented Dec 6, 2022

We have platform specific extensions thus closing this as done
https://code.visualstudio.com/api/working-with-extensions/publishing-extension#platformspecific-extensions

@isidorn isidorn closed this as completed Dec 6, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Jan 27, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
extensions Issues concerning extensions feature-request Request for new features or functionality
Projects
None yet
Development

No branches or pull requests

9 participants