On July 28th, we released Roaming Extension Manager, an extension that will help you better manage your Visual Studio extensions across multiple machines. Hold the applause! For those of you who are unfamiliar, the Roaming Extension Manager “roams” your list of extensions, so now when you are setting up a new development environment or simply trying to push a few extensions from one machine to another, you don’t have to remember the names of the extensions or take screen shots. Instead, we provide you with a list displaying all of your extensions installed across all of your environments and allow you to download directly from that list.
How does this actually work? We create a cloud based Roaming List that tracks the extensions you have installed across all of your Visual Studio development environments looking just like this:
Extensions in your Roaming List can be in 3 different statuses. At the top of the list shown in the above screenshot you see, Roamed Extensions . These are extensions that are set to be roamed, but have not yet been downloaded onto this machine. In other words, these extensions are being roamed from another machine, and are available for download on this machine. In the middle, , are extensions that have been installed on this machine and are roaming to other machines. If another machine is missing this extension it will appear in that machine's list as a Roamed extension . The last icon you see in the list above, , indicates extensions that are installed on this machine, but are not set as roamed. These will not appear on any other machine as they are not being roamed.
Autonomy without loss of control
While developing this tool we focused on creating an extension that provides you with not only autonomy, but also the ability to fully self-manage your extensions as needed.
From our earlier conversations with you, we learned that it’s best to automatically set all downloaded extensions to roam by default. That is, any extension that you download while signed in will automatically be added to your Roaming List as Roamed-Installed (). If you download an extension when not signed into the IDE, on your next sign in we will add these extensions to your Roaming List.
At this point you can just sit back and let us handle the rest. When you want to add an already installed extension onto another machine, just go to the Roaming Extension Manager to download your extension.
Now, every so often you might have an extension you don't want to be roamed to other machines. Controlling what is and isn't being roamed is easy to do, via Stop Roaming/Start Roaming buttons. An extension changes from to when Stop Roaming is applied; conversely an extension will change from to when Start Roaming is applied. Don’t worry if you accidentally stop roaming an extension by mistake, all installed extensions will be viewable in your Roaming List for you to easily start roaming at any time.
Not on the Gallery, Not a Problem
We have you covered in the case when you have created your own extension or are using an extension not currently available on the gallery. Any such extensions will also be roamed for you, with the caveat that the Roaming Extension Manager cannot download them for you. What you will see instead is a name and description of the extension, so you can easily search for it and install it.
Moving Forward
We plan on continuing to update and iterate on this extension. In fact we are already getting ready to release some additional functionality in the coming week, so stay tuned! Additionally, if you have any bugs, possible improvements, or additional functionality you would like to see in the extension let us know by adding suggestions on UserVoice, visit us on Stack Overflow with tag “visual-studio-extensions”, or leave a comment below.