Why is NuGet forcing an upgrade of a dependency that's already met?
I'm trying to install Spring.Testing.NUnit with NuGet, and it's forcing me to update a dependency, even though I already have an acceptable version. It's not even updating it to the latest version, which is 2.6.0.
I can install with -IgnoreDependencies, but when I do, I error out running tests with the error Could not load file or assembly 'nunit.framework, Version=22.214.171.12451 Is the Spring.Testing.NUnit package wrong about what version of NUnit it requires?
PM> Install-Package NUnit -Version 126.96.36.19913 'NUnit 188.8.131.5213' already installed. Successfully added 'NUnit 184.108.40.20613' to Services.Tests.Unit. PM> Install-Package Spring.Testing.NUnit Attempting to resolve dependency 'Common.Logging (= 1.2.0)'. Attempting to resolve dependency 'NUnit (= 2.5.7)'. Attempting to resolve dependency 'Spring.Core (= 1.3.2)'. Attempting to resolve dependency 'Spring.Data (= 1.3.2)'. Attempting to resolve dependency 'Spring.Aop (= 1.3.2)'. Successfully installed 'NUnit 220.127.116.1192'. Successfully installed 'Spring.Testing.NUnit 1.3.2'. Successfully removed 'NUnit 18.104.22.16813' from Services.Tests.Unit. Successfully added 'NUnit 22.214.171.12492' to Services.Tests.Unit. Successfully added 'Spring.Testing.NUnit 1.3.2' to Services.Tests.Unit.
Spring.Testing.Packages requires NUnit >= 2.5.7. NuGet considers the third part of the version string to be safe to update to (in general, it's not specific to this package). In this case, NuGet will pick the highest possible case where the version is at least 2.5.7 and lower than 2.6.