Vscode: Ability to install older extension

Created on 27 Sep 2016  ·  50Comments  ·  Source: microsoft/vscode

  • VSCode Version: Code - Insiders 1.6.0-insider (f62883f07422cae4b53c2a185b105091460a0a85, 2016-09-27T12:46:15.113Z)
  • OS Version: Darwin x64 16.0.0

Not sure if possible - but it would be nice if one could downgrade / install older version of extension.

extensions feature-request on-testplan

Most helpful comment

It's also useful when an extension is released that is broken in some way.

All 50 comments

We don't support this.

Downgrading is an essential tool when an end user wants to help an extension author figure out whether a regression was introduced.

It's also useful when an extension is released that is broken in some way.

This should be a very useful feature.

We absolutelty need this. I can no longer use VS Code for debugging my nativescript application because the latest (0.6.0) version of the nativescript plugin is based on the nativescript CLI 2.5.0. Sadly that version of the cli has some very serious 'live reload' bugs

Would it also be possible to 'force' extension writers to provide a change log for each version? Each time I update a vs code extension I just pray that it doesn't break anything as most of them don't maintain the change log.

I recently upgraded one extension and seems to have bug, and stuck. Love to have downgrading extension feature.

Same here. Updated a plugin which now has a bug that prevents execution of my project.

@JanBrinker - sorry to hear that I had one that made the Python extension lose intellisense but I was able to get around it with a setting. Perhaps a workaround for the future would be to back up the extensions folder in the file system and restore it if there is a bad update. This Stackoverflow answer shows where they are stored: http://stackoverflow.com/questions/35773299/how-can-you-export-vs-code-extension-list/37189011#37189011

Also came across an issue that makes my project completely unusable. I'd love to have support for this.

You can backup plugin destination folder before update it

@0versun You can backup plugin destination folder before update it

Which we learn only after we experience this for the first time...
My environment is now degraded due to a bug introduced in a plugin.

+1

Just ran into the need for this feature due to https://github.com/Microsoft/vscode-cpptools/issues/764 making my code almost unreadable. for anyone reading this and needing a workaround, as of 5/23/17:

@rynomad, we posted a guide on how to restore the previous behavior for cpptools in the latest version of the extension if the new IntelliSense and linter doesn't appeal to you. If you roll back to an older version of the extension, you will deprive yourself of fixes we are making to the old IntelliSense engine as well.

I want this feature too...
Today i updated the Theme i'm using and the newest version was now also styling the workbench which i didn't like.

I had to figure out how to download the older version and uninstall the newest to revert it,.
It seems easy to downgrade if you have all the info needed: Author, PluginName and Version
https://tpodolak.com/blog/2017/04/09/downgrading-visual-studio-code-extension/

It should be very easy to make this available using UI ?

The Nuget browser in Visual Studio 2015 has version selector - it seems so obvious that extensions for VSCode should too.

Yes i also want this feature to install from API.
As there is nothing like this that is why i have written own way to get the older version of extension from marketplace for Settings Sync. I will use CLI or API to download the extension once this feature gets implemented !

Kind of related...

I updated VSCode a few days ago and apparantly Microsoft chose to reset all settings - including AUTO UPDATE Extensions !!

I'm guessing a lot of people didn't notice like me, until it was too late..

so AGAIN i had to manually downgrade an extension 😢

Yup. All extensions upgraded. Broke a few things for me.
On Tue, Jun 13, 2017 at 17:23 Montago notifications@github.com wrote:

Kind of related...

I updated VSCode a few days ago and apparantly Microsoft chose to reset
all settings - including AUTO UPDATE Extensions !!

I'm guessing a lot of people didn't notice like me, until it was too late..

so AGAIN i had to manually downgrade an extension 😢


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/12764#issuecomment-308252797,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAGzsP9Xd1eotVZQuG1AEkaxATsp6cSrks5sDv3sgaJpZM4KHrNa
.

Is there a way to remove extensions or upgrade them w/o launching the app? I just upgraded to 1.14 and now the app freezes on the welcome window.

I ended up reloading 1.131, removing extensions, and then 1.14 started working.

I just got hit by this as well. C# OmniSharp plugin was update to only support ElCapitan because dotnet 2.0 is only supported on ElCapitan. But I am using 1.x and just want to debug some simple programs in VS Code. I just wanted to downgrade the debugger. Followed the tips by @rynomad above and downgraded to OmniSharp 1.11

@ic3guy Not even ElCapitan. The latest version of the OmniSharp plugin requires 10.12 (Sierra).

This would be nice as the vscode-go extension is not working after an update.

I would settle for a link to the older versions that the user (under instruction) can download and manually install) - I may end up putting it in my GH releases as a workaround for my customers.

I need this feature too. One of the extension broke and I can't do anything except move to other editor.

In the same boat as others. One or two of the extensions I depend on break often, I always regret upgrading. (And yet... here I am...) I'd love to just specify a version number through the CLI.

Turn off Auto Update.
Use Settings Sync and download the exact version of extensions.

Yes, settings sync do the job perfectly. Recently I got issues with the update of _vscodevim_ plugin to version 0.10.12. So to downgrade it, just followed these steps:

  • Go to GitHub to gist created by the plugin, change the version of the plugin to the previous one in the file extensions.json:
  {
    "metadata": {
      "id": "d96e79c6-8b25-4be3-8545-0e0ecefcae03",
      "publisherId": "vscodevim.vim",
      "publisherDisplayName": "vscodevim"
    },
    "name": "vim",
    "publisher": "vscodevim",
    "version": "0.10.11"
  }
  • Still, in the gist, go to file settings.json and disconnect the plugins auto-update adding the following line:
  "extensions.autoUpdate": false,
  • Then go to VIS Code, and uninstall the plugin you want to downgrade ( in my case _vscodevim_ ).
  • Reload the Editor, so we have the plugin fully uninstalled.
  • Then just to load the new configuration: Sync: Advanced Options > Sync: Toggle Force Download, and then Sync: Download Settings ( not sure if we need to turn this Force Download to true but just to be sure we are downloading the configuration from the gist ).
  • And with this action, we should have the old version of our plugin installed.

I hope it helps!

Yep, I need this too! 1.20.0 breaks xdebug breakpoints in php-xdebug, an essential tool for my work!!

For folks who just want to downgrade extensions one at a time, take a look at this link after disabling "extensions.autoUpdate": false: https://github.com/Microsoft/vscode-docs/blob/master/docs/editor/extension-gallery.md#common-questions

vscode-go is broken again and I too would really appreciate this feature. I shouldn't be completely out of options when the author of an extension makes a bad release.

Edit: it turns out the issue I found wasn't new, but I just invoked it recently before posting this. I still think my point stands though - the user shouldn't be out of options if a release breaks something

After installing the update for VSC 1.23.0, my Live Server 3.2.1 is acting up. It auto refresh on its own. Is there a way to turn off auto refresh?

Hit by this too – phpfmt introduced a feature that stops me from formatting my files the way I need them to be formatted. It's not a massive issue given the context, but a quick rollback would be really fantastic.

This is essential functionality. If you're not going to allow users to manually install older versions of extensions, then you need to only present the latest version of extensions that have passing builds.

It'd be great to just lock version numbers in a json config, similar to dependencies in package.json.

Adding my voice to this feature as well. Just now, the new version of stylelint extension came up, and it breaks badly (pop-up error on ever keystroke in any of my JS files). In such times, it would be REALLY nice to be able to downgrade to the previous version.

Please! This issue causes many users waste a lot of time, and it reduces the trust we have for VS Code, since every time you update extensions you just have to pray that everything still works...

It seems the API may have a way to get it, see this example for the link to an old version of the python extension:

https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ms-python/vsextensions/python/2018.4.0/vspackage

I need this feature.

I can install the previous version by following this article. https://tpodolak.com/blog/2017/04/09/downgrading-visual-studio-code-extension/

For example, these are the steps to downgrade PowerShell extension to a previous version.

output
image

  • Thanks.

Thanks @aaronamm. That helped a lot. 👍

My existing setup of VSCode+python extension stopped working suddenly after upgrading the Python Extension.

This feature would have made solving a problem w/ VSCodeVim easy. https://github.com/VSCodeVim/Vim/issues/3143

@joaomoreno Can we make this happen? Bugs are inevitable and sometimes I need the old version of extensions because they are essential to my workflow. It can also be just making past versions available for download on marketplace website.

As an extension publisher for https://marketplace.visualstudio.com/items?itemName=octref.vetur I run into this problem every day.
As a user of the Vim extension I had to revert to old versions sometime and finding URL for an old release is cumbersome.

I found a simpler API for MarketPlace:

https://marketplace.visualstudio.com/_apis/public/gallery/publishers/${publisher}/vsextensions/${extname}/${ver}/vspackage

For my extension Vetur, I made a script to generate VSIX links for my changelog. Feel free to adapt the script for your own needs.

the last python update 2018.10 break my debugger again :(

Now Vetur pushed a breaking change. Where is the downgrade button for extension?

From today's insiders, you can now downgrade or install a different version of extension from VS Code UI and also from VS Code CLI.

UI

downgrade extension

When you install a specific older version, then VS Code will remember that and will not apply automatic updates to it. Auto update on this extension is resumed only after you install the latest version of this extension.

CLI

You can also use CLI to install specific version of an extension. Syntax is as follows

vscode --install-extension [email protected]

Note: Due to technical limitation auto updates cannot be stopped when you use CLI to install specific version. But we are planning to lift this in next milestone.

so... this took 2 hours to fix ?

WOW! Fantastic! Thank you :)

This came out exactly the day I needed it! Thanks @sandy081!

I will add support for this in Settings Sync in coming months using CLI version specific installations.
(or anyone can send PR)

Was this page helpful?
0 / 5 - 0 ratings