Again: Endless loop with conflict that isn´t one
Description
When paket tries to resolve a 3rd party dependency conflict it does not find any resolution. But actually the conflict isn´t one, as it has no contradiction in paket.dependencies
Repro steps
Please provide the steps required to reproduce the problem
-
Set up a direct dependency to log4net without version restriction
-
Have another 2 direct dependencies, which also reference log4net. One of them has a precise version number as a restriction, the other has >= restriction
Expected behavior
Paket gives a warning but uses the precise version number to resolve.
Actual behavior
Paket is running for over 30mins with that warning:
The process is taking longer than expected.
Paket may still find a valid resolution, but this might take a while.
Conflict detected:
- Dependencies file requested package log4net: >= 0
- Common.Logging 31.0.8 requested package log4net: 2.0.12
- DistributionBase 15.0.142 requested package log4net: >= 2.0.12
It´s actually fully saturating a CPU core in that state...
And also to note this was without a paket.lock file, we discovered that thing accidentially. If I restore paket.lock all is fine.
WORKAROUND: resolve "conflict" yourself, add fixed version to paket.dependencies, run paket install, remove fixed version from paket.dependencies (paket.lock will contain forced resolution until "next time")
We see this issue in different projecs and cases without a clear conflict. Is the message wrong? Our a bug in solving the constraints?