As of Visual Studio 2015 Update 2, the included NuGet client is version 22.214.171.1247. Starting with 3.4, the NuGet client introduces some breaking changes in the version handling department: Normalized Version Numbers
I have an issue where if I install an internal package version 126.96.36.199 and then try to update it to the latest version (188.8.131.52), the client will try to do the following:
Notice the missing ".0" at the end of the version. When I run this query manually, ProGet returns "Package not found.". The NuGet client does not receive a 404 and tries to parse the response as XML, but fails miserably as you can see here:
OK http://feeds.X.com/nuget/Packages(Id='X.Common',Version='1.0.61') 7ms
Update-Package : Error downloading 'X.Client.Common 184.108.40.206' from 'http://feeds.X.com/nuget'.
Data at the root level is invalid. Line 1, position 1.
At line:1 char:1
+ Update-Package X.Client.Common
+ CategoryInfo : NotSpecified: (:) [Update-Package], Exception
+ FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.UpdatePackageCommand
Install failed. Rolling back...
Package 'X.Client.Common 220.127.116.11' does not exist in project 'X.Common.NuGet'
So there are two issues here:
ProGet doesn't seem to support the new version handling
ProGet does not return a 404 when a package isn't found
If you need more info, don't hesitate to ask.