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

Communicate an extension's deprecated status #10551

Closed
waderyan opened this issue Aug 15, 2016 · 16 comments
Closed

Communicate an extension's deprecated status #10551

waderyan opened this issue Aug 15, 2016 · 16 comments
Assignees
Labels
feature-request Request for new features or functionality

Comments

@waderyan
Copy link

The Marketplace is adding functionality to deprecate extensions.

We'll want to indicate something to the user in product. Something like

This extension is deprecated and is no longer maintained, however, you are free to continue using it.

@joaomoreno any way you would change the messaging? any thoughts on the UI?

I was thinking something along these lines.

image

Ping @hamenon

@AkashGutha
Copy link
Contributor

How about a deprecation badge update ?

this should remove the necessity of manually checking the extensions every time.

untitled

@joaomoreno
Copy link
Member

@waderyan We should probably also add a decoration to the extension in the list, not only in the editor. I'd make it less prominent, yet still catchy. I can sketch something up.

@AkashGutha I'd not make it into a badge notification since it's not really urgent to the user.

@joaomoreno joaomoreno added this to the September 2016 milestone Aug 16, 2016
@joaomoreno joaomoreno added the feature-request Request for new features or functionality label Aug 16, 2016
@waderyan
Copy link
Author

From MP mail it looks like there is no difference to them between unpublish and deprecate. This means we can keep vsce the same, as the language is a sufficient warning.

read(`This will FOREVER delete '${ fullName }'! Are you sure? [y/N] `)

A UI change here will communicate the unpublish status.

I'd make it less prominent, yet still catchy. I can sketch something up.

Sounds great.

@waderyan
Copy link
Author

FYI - this is what Atom does.

image

@waderyan
Copy link
Author

waderyan commented Sep 1, 2016

Ping @hamenon

Note:
API is providing an unpublished flag in the JSON response
Marketplace will use the language of "unpublished" so to stay consistent we should use "unpublished" and not use "deprecated."

@joaomoreno
Copy link
Member

So... when people search for extensions, the unpublished ones will still appear in the results?

@hamenon
Copy link

hamenon commented Sep 6, 2016

The API will still give all extension in the result. The ones that are unpublished will include an unpublished flag as Wade mentioned. On the website we have logic to not display an extension in the results if it is unpublished. Ideally I think we should do so for the search on the editor side of things as well so that the results are consistent across the site and the editor.

@waderyan
Copy link
Author

@hamenon can you provide the exact syntax of the unpublished flag so we can get this in on our end?

@hamenon
Copy link

hamenon commented Sep 27, 2016

In the extension query response there is a field called flags for each extensions. If an extension is unpublished the word "unpublished" will be present in the flags.
Ex: flags picked from another extension "flags": "validated, public, unpublished",

@joaomoreno
Copy link
Member

Thanks!

@joaomoreno
Copy link
Member

@hamenon Is there any way I can query for all non unpublished extensions?

@joaomoreno
Copy link
Member

@hamenon Ping. Today's the last chance we could get it in the September release.

@AkashGutha
Copy link
Contributor

@joaomoreno as @hamenon said . it would better to implement the same kind of filtering on client side since the API doesn't provide a way to filter data on server side.

@joaomoreno
Copy link
Member

That's not so great.

Client filtering works terribly in a paging UI. If the server says there are 10000 items, and we render a paging view for 10000 items, and it turns out that 100 need to be filtered out, how will they render when coming into view? An empty rectangle? An uninstallable extension?

Additionally, why would the server waste its time collecting and sending us data for which we have no use?

Server-side filtering is necessary for this to happen.

@AkashGutha
Copy link
Contributor

@joaomoreno yes ! that is true. but the feature to be implemented this would be the only way till the visualstudio marketplace code is fixed.

Can't we do the filtering before rendering the UI. that should do the work.
Check each extension for unpublished flag, only add to the collection if it is is published.

@hamenon
Copy link

hamenon commented Sep 30, 2016

Copying @modigrv response here as well.
We can query to get just the published extensions, ie. exclude unpublished extensions.

For every extension which is unpublished, has a flag named Unpublished (0x1000).
In the extensions query we have made a separate filter named ExcludeWithFlags ( FilterType : 12) with value as the flag value to be excluded (Integer equivalent in string form) as “4096”, or if there are multiple flags to be excluded OR all of them and then use that integer value as value for the filter.

I think for your case only the FilterType : 12 and value : “4096” will do the work and exclude all extensions which are marked with unpublished flag.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature-request Request for new features or functionality
Projects
None yet
Development

No branches or pull requests

4 participants