Skip to content
This repository has been archived by the owner on Jan 15, 2024. It is now read-only.

Allow semver version definition for unwantedRecommendations #1

Closed
Cyclodex opened this issue Jul 25, 2023 · 11 comments
Closed

Allow semver version definition for unwantedRecommendations #1

Cyclodex opened this issue Jul 25, 2023 · 11 comments
Assignees
Labels
enhancement New feature or request

Comments

@Cyclodex
Copy link
Owner

After reading some comments, it seems that we are not progressing to get better support for defining extensions to recommend or not recommend.

microsoft/vscode#138048 (comment)

There seems to be the need, that specific versions of extensions should be marked as unwantedRecommendation.
We could try to start with notification as this extension already does it, but adding support for semver in addition to the extension.

So with this feature, we could define a specific version or a semver version, which is not recommended to be installed.

  1. This issue would be part 1 of the whole game, also because this was and is the main focus of this extension. Notifications.
  2. However we maybe could go further and also support the recommendations, so instead of leaving it to VSCode only, we could also check the installed extensions and also support and verify specific semver versions on it. This would drastically improve the UX for some devs so it looks.
  3. Further we could verify and check if there is the need, to also try to install these versions, if they are not installed or the semver does not match. But this needs to be checked and verified what is possible and how the UX should be done.
@Cyclodex
Copy link
Owner Author

Current progress, supports and notifies for defined semver versions.

However, because the .vscode/extensions.json does throw warnings if we do it in there, I introduced a new file .vscode/extensionsVersionCheck.json (actually every .vscode/extensions*.json) will be supported.

It allows to search for ^1.8 version ranges as per semver.
Or direct version matching 0.1.0. If multiple versions of 1 extension should be marked, just make multiple entries of that package.

image

@BananaAcid
Copy link

BananaAcid commented Dec 18, 2023

Is defining version numbers included in the published extension yet?

I can't seem to get it to trigger with @^2.6.2 ... without a version, it shows a dialog window.

@Cyclodex
Copy link
Owner Author

Unfortunately not...
I dont have extension publishing permission anymore, because i am not working for the same company anymore.
I have to check if i make a new extension, or if they allow me to transfer the extension to myself...

@Cyclodex
Copy link
Owner Author

Cyclodex commented Jan 5, 2024

We are progressing here, got permission to migrate extension.
The extensions is moving on to a new instance, because publisher can't be changed.

I will first release the exact same version but with a new name, before we start introducing the new semver feature, as I would like to make sure all is fine before we publish new release.

Next step will be to deprecate the old one, in case of early adopters, feel free to already jump over to the new extension.

The new repo is located here: https://github.com/SoulcodeAgency/vscode-unwanted-extensions

@BananaAcid
Copy link

Wow, that is wonderful news!!!

@Cyclodex
Copy link
Owner Author

Cyclodex commented Jan 5, 2024

@BananaAcid what is your use case regarding the version number feature and how would it help you? Just to understand the situation better, thanks ;)

@BananaAcid
Copy link

BananaAcid commented Jan 5, 2024

There are extensions out there, that have changed either license or introduced a paywall. Or became incompatible with older projects by handling files/whatever differently. We do have all 3 cases. Using an older version and thereby the same in the student teams here where I teach (and additionally at the company where I work as well), is mandatory. Having it in the project config, would save me a lot of manual work.

@Cyclodex
Copy link
Owner Author

Cyclodex commented Jan 5, 2024 via email

@BananaAcid
Copy link

BananaAcid commented Jan 6, 2024

ThunderClient

like: https://github.com/rangav/thunder-client-support/releases

Install: https://marketplace.visualstudio.com/items?itemName=rangav.vscode-thunder-client

Version 2.6.2 was the last to not put "save config files to project" behind a paywall. --> https://github.com/rangav/thunder-client-support/blob/master/LICENSE.txt#L40-L41

thunderclient/thunder-client-support@01013ec

thunderclient/thunder-client-support@v2.6.1...v2.7.4#diff-d0ed4cc3fb70489fe51c7e0ac180cba2a7472124f9f9e9ae67b01a37fbd580b7

and somewhere was the license change ... before it was free for all, then subscription.

  • The old projects still having all the config files, need the old versions to be able to look up something.

Btw: for the newer projects, we use FlashPost. (until that will be gone as well ;) )

I don't recall the extension names right now.

@Cyclodex
Copy link
Owner Author

Cyclodex commented Jan 15, 2024

@BananaAcid goooooood news here.

image

Check out the "Unwanted Extensions"-extension. I just published a "pre-release" (1.1.1), where you should be able to create the mentioned file .vscode/extensionsVersionCheck.json and put the version numbers with your extension you want to block.

Insights:

image image

Please check the extension Description which should explain it all and has an example.

Let me know if it works for you, or if there are any issues with it.

If all is fine, I will make a public release, and close this ticket.

@Cyclodex
Copy link
Owner Author

Actually lets continue here please: SoulcodeAgency#2

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants