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

Publish Visual Studio version number associated with each Roslyn release #10514

Closed
JoshVarty opened this issue Apr 12, 2016 · 9 comments
Closed

Comments

@JoshVarty
Copy link
Contributor

I have an Visual Studio extension that depends on Roslyn. We've chosen not to move our Roslyn references forward with each release because we're worried that our users might not have installed Update 1 or Update 2.

@jmarolf suggested that we could target specific Visual Studio versions in our .vsixmanifest that would prevent our extension from auto-updating for users who are stuck using older versions of VS 2015.

Can the versions of Visual Studio that correspond with each Roslyn release be posted somewhere?

@jasonmalinowski
Copy link
Member

jasonmalinowski commented Aug 25, 2016

We (somewhat unofficially) post this on http://versionof.net.

@JoshVarty
Copy link
Contributor Author

👍

Thanks :)

@JoshVarty
Copy link
Contributor Author

Although now that I look at it I still don't see which version of Roslyn ships with VS.

For example:

Visual Studio 2015 Update 3

  • Micro Update 1 (6/27/2016) - 14.0.25421.03 - [Installer Server Path]
  • RTM (6/27/2016) - 14.0.25420.00 D14Rel - [Installer Server Path]
  • RC (6/7/2016) - 14.0.25402.00 D14Rel - [Installer Server Path]

This tells me each version of VS but not which version of Roslyn is shipped with each.

@jmarolf
Copy link
Contributor

jmarolf commented Aug 25, 2016

@JoshVarty
You're going to want to look at the RTM versions. Each RTM release maps to a non-beta nuget package.

Product Visual Studio Version Roslyn Version
Visual Studio 2015 RTM 14.0.23107.0 Roslyn 1.0
Visual Studio 2015 Update 1 RTM 14.0.24720 Roslyn 1.1
Visual Studio 2015 Update 2 RTM 14.0.25123.00 Roslyn 1.2
Visual Studio 2015 Update 3 RTM 14.0.25420.00 Roslyn 1.3

So if you are using Roslyn 1.0 and don't want anyone to use your extension on Update 1 you could add the following to you vsix manifest to ensure it can only be installed on RTM

<Installation>
 <InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="[14.0, 14.0.23107.0]" />
</Installation>

More realistically, if you want to publish an updated extension that references Roslyn 1.2 you can use this to ensure they have Update 2 or higher installed

<Installation>
 <InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="[14.0.25123.00,)" />
</Installation>

If someone has a higher version of VS installed than what you've built against the binary redirects will take care of it, but if for some reason you only wanted an extension to install on Update 3 you could write:

<Installation>
 <InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="(14.0.25123.00, 14.0.25420.00]" />
</Installation>

rules for Version are:
[ – minimum version inclusive.
] – maximum version inclusive.
( - minimum version exclusive.
) – maximum version exclusive.
Single version # - only the specified version.

Anyway, sounds like we should send a PR to https://github.com/dpoeschl/versionof.net with this info. Anything else you feel should be there?

@JoshVarty
Copy link
Contributor Author

JoshVarty commented Sep 9, 2016

I think that's pretty much all the info I'd need, quick double check:

What version of Roslyn maps to the current version of VS 2015 Update 3 (14.0.545.01)?

Is it Roslyn version 1.3.0 or the latest 1.3.2?

@JoshVarty
Copy link
Contributor Author

Also one more question: Do you know which versions of Roslyn map to VS "15" releases?

@jmarolf
Copy link
Contributor

jmarolf commented Sep 10, 2016

VS "15" will be 2.0. I believe we shipped 3 micro updates in update 3 so the version should be 1.3.3

@Pilchie
Copy link
Member

Pilchie commented Sep 10, 2016

1.3.0 maps to the .NET Core RC release.
1.3.1 maps to the Update 3 release.
1.3.2-1.3.5 map to the micro-updates

@DavidArno
Copy link

@jmarolf,

I did wonder what all the talk of "v2" was about here. Never occurred to me that it referred to the Roslyn version, as I tend to (wrongly) think of Roslyn as a C#-only compiler, thus expected v7. Thanks for answering that question for me, without even knowing you did so. 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants