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

Move plugins to user folder during resolution #11466

Conversation

colin-grant-work
Copy link
Contributor

@colin-grant-work colin-grant-work commented Jul 26, 2022

What it does

Fixes #11463 by changing the sequence of events involved in handling .vsix files to place them in the user plugin folder during the resolution stage rather than the handling phase. As a consequence, 'original' source files (for example in the resolution of an 'Install from VSIX' command) are not deleted on uninstallation.

How to test

  1. Run the Install from VSIX command and select a VSIX file outside of your user plugin folders.
  2. The plugin should be installed and work as expected. The original file should remain in place, and a copy should appear in the user plugins folder.
  3. Uninstall the plugin in the UI.
  4. You should see the 'Reload Required' message, the copy of the plugin in the user plugin folder should be deleted, and the original source should remain on disk.

  1. Install a plugin from Open VSX.
  2. A vsix file should appear in your user plugin directory, and the plugin should be available.
  3. Uninstall the plugin.
  4. You should see Reload Required in the UI, and the vsix file should be removed from your user plugin folder.
  5. Click Reload Required to restart the front end (don't restart the backend)
  6. Install the plugin again from Open VSX.
  7. You should be back at step (2) with a successful installation.

In particular, no message should be logged indicating that installation failed because the plugin was already installed at the required version.

Review checklist

Reminder for reviewers

@colin-grant-work colin-grant-work added plug-in system issues related to the plug-in system open-vsx issues related to the open-vsx registry labels Jul 26, 2022
Copy link
Member

@vince-fugnitto vince-fugnitto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I confirm that the changes work well for me, and resolve the bug 👍

  • install from vsix works, and uninstall works - original vsix is untouched
  • installing from open-vsx works, and the plugins can be successfully unsinstalled
  • install another version works

@colin-grant-work colin-grant-work force-pushed the bugfix/deletion-of-ur-source branch from 19eda86 to e0ff2ca Compare July 27, 2022 16:41
@colin-grant-work colin-grant-work merged commit 1a5bc7a into eclipse-theia:master Jul 27, 2022
@colin-grant-work colin-grant-work deleted the bugfix/deletion-of-ur-source branch July 27, 2022 18:36
@colin-grant-work colin-grant-work added this to the 1.28.0 milestone Jul 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
open-vsx issues related to the open-vsx registry plug-in system issues related to the plug-in system
Projects
None yet
Development

Successfully merging this pull request may close these issues.

VSIX Extension deleted from system on uninstall
2 participants