Home: Visual Studio 2015 with NuGet 3.6.0 fails to install packages with minClientVersion="3.6"

Created on 9 Jan 2018  路  22Comments  路  Source: NuGet/Home

Details about Problem

NuGet product used (NuGet.exe | VS UI | Package Manager Console | dotnet.exe):

NuGet version (x.x.x.xxx): 3.6.0-rtm-2511

VS version (if appropriate): VS2015, 14.0.25431.01 Update 3

OS version (i.e. win10 v1607 (14393.321)): Windows 10 v1607 (14393.2007)

Worked before? If so, with which NuGet version: n/a

Detailed repro steps so we can see the same problem

  1. Install last NuGet 3.6 for VS2015

  2. create a .net 4.5.2 Winforms project and try to install Firebird Provider

here I get this message:

grafik

where Nuget manager tells me I need client 3.6.0 installed when I have 3.6.0-rtm-2511 installed and I should update.

The 'FirebirdSql.Data.FirebirdClient 5.12.1' package requires NuGet client version '3.6.0' or above, but the current NuGet version is '3.6.0-rtm-2511'. To upgrade NuGet, please go to http://docs.nuget.org/consume/installing-nuget

Restore Icebox 2 VS.Client Bug

Most helpful comment

Microsoft deleted the 3.6.0 code branch, so they don't care and will never fix the issue for 2015 users.

All 22 comments

Does it work if you create a nupkg with a minClientVersion of 3.6.0-a?

I haven't tested it. I got a confusing message about "already has a dependency defined for Microsoft.Extensions.PlatformAbstractions" for the first time I tried to update Firebird provider at version 5.11.0.0 (with .NET Standard 2.0 support):

So the developer added the minClientVersion="3.6" entry as you suggested for packages with .net standard 2.0 support and I've updated to 5.12 via VS2017 and for whatever reason I tried to update to 5.12.1 via 2015 and saw this strange error message

this doesn't work. Nuget.exe pack fails when I set it to your value "3.6.0-a" :

The 'minClientVersion' attribute in the package manifest has invalid value. It must be a valid version string.

There's an issue with 3.6.0 where the prerelease label is not stripped out.
https://github.com/NuGet/NuGet.Client/blob/release-3.6.0-rtm/src/NuGet.Core/NuGet.Packaging/MinClientVersionUtility.cs#L78

To workaround this, one could use a version like 3.5.9, because we will not service 3.5.x.

This is fixed in 4.x, so we might only need to update the guidance.

but 3.6 is last version for VS2015, so the fix is not available in VS2015

ok, the issue is similar to https://github.com/NuGet/Home/issues/4492 and here @emgarten fixed it in Nuget for VS2017. So please backport this change to 3.6. so that VS2015 users can consume nuget packages with minClientVersion=3.6

@nkolev92 any statement about backporting this simple fix to 3.6 branch so that VS2015 users can still use NuGet. The more packages get updated to support .net standard 2.0 the more developers run into this issue on VS2015. Some must stay at VS2015 because 2017 removed development support for Phone 8.1, but devs want to still support and maintain their code.

@emgarten can you please fix this for 3.6 and provide the hotfix for 2015 users? I tried to compile 3.6.0 tag wit the fix on my own, but this fails. I have no idea how to compile nuget on my own.

The team will consider a fix. At this time there are no plans to release a new version of NuGet for VS 2015.

@emgarten how to compile it? I cloned the repo, checked out 3.6.0-rtm tag and add your fix from 4.x but compiling fails with tons of errors which are unrelated to the fix. even without the fix, I can't compile it

We have an application based on VS 2015 Isolated Shell that we can maintain only with VS 2015. We have no upgrade path to VS 2017 as Isolated Shell is not supported any more. We are dead in the water until and unless this gets fixed.

@Monte-Christo it looks like Microsoft no longer cares about VS2015 users.

I'm dead in the water too. I'm stuck with VS 2015 for a project. I need to install Microsoft.EntityFrameworkCore.Tools and am unable to do so because of this version mismatch.

Install-Package : The 'Microsoft.EntityFrameworkCore.Abstractions 2.1.1' package requires NuGet client version '3.6.0' or above, but the current NuGet version is '3.6.0-rtm-2511'.

Microsoft, please help!!!

Same problem here. I'm stuck with VS 2015, and can't install netstandard2.0 packages. I need to develop new libraries and dotnet core API's, but I must keep compatibility with legacy systems. Using netstandard would be the best solution, but this 3.6.0 version mismatch is a real problem.

it looks like Microsoft no longer cares about VS2015 users.

agree

I have tried to reinstall nuget from VS tools and extensions with no luck

I hit the same wall here.

@emgarten - We are hitting this same issue trying to work with the Firebird .Net Libraries. The fix seems simple enough. What can be done to move this up to a top priority?

Same problem
Try to install:
Install-Package Microsoft.EntityFrameworkCore.Tools

and have the message:
"nstall-Package : The 'Microsoft.EntityFrameworkCore.Tools 2.1.4' package requires NuGet client version '3.6.0' or above, but the current NuGet version is '3.6.0-rtm-2511'. To upgrade NuGet, please go to http:/
/docs.nuget.org/consume/installing-nuget"

Microsoft deleted the 3.6.0 code branch, so they don't care and will never fix the issue for 2015 users.

Same problem here. We are stuck on VS2015 because we have to support Silverlight, and in VS2017, Silverlight is no longer supported.
Nuget version is 3.5.0.1484 - the latest. Cannot upgrade package Microsoft.ApplicationInsights from version 2.8.1 to 2.9.1. Getting error:
Package 'Microsoft.ApplicationInsights 2.9.1' uses features that are not supported by the current version of NuGet. To upgrade NuGet, see http://docs.nuget.org/consume/installing-nuget.
It's a real shame that MS does not support its own software in the software it creates. Developers are stuck without functionality that worked previously, and without a replacement. MS keeps doing this all the time, for example also with Azure Alerts vs. Azure Monitor - Alerts will be dropped but Monitor is still beta and non-functional for the same purpose we used Alerts previously.
Please refrain from removing support from your own software without a replacement!!! 馃憥

@MatejQ

use this extension to get unofficial Silverlight support, but it has some issue from what I can read on the download page.

I'm experiencing this as well. I'm trying to install Microsoft.EntityFranmeworkCore.SQLServer and it requires NuGet 3.6. I installed NuGet 3.6 and get an error '3.6.0-rtm-2511' < 3.6. Microsoft acquired Github recently and it's common to have previous working versions. Why is the NuGet browser showing me incompatible packages? Why can't I downgrade package versions to install? IMO not the best user experience.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

vsfeedback picture vsfeedback  路  3Comments

skofman1 picture skofman1  路  3Comments

rrelyea picture rrelyea  路  3Comments

clairernovotny picture clairernovotny  路  3Comments

livarcocc picture livarcocc  路  3Comments