When SolveParameters.RootManifest contains a ProjectConstraint for a project that is present in any of the imports described in SolveParameters.RootPackageTree, that ProjectConstraint should not be included when computing the input hash, as it will have no bearing on the solver, and thus is equivalent to not being present at all. As a rule, we try to reduce all cases that we can determine will not bear on solving to the same base/zero case, in order to minimize the possibility of spurious hash conflicts.
When
SolveParameters.RootManifest
contains aProjectConstraint
for a project that is present in any of the imports described inSolveParameters.RootPackageTree
, thatProjectConstraint
should not be included when computing the input hash, as it will have no bearing on the solver, and thus is equivalent to not being present at all. As a rule, we try to reduce all cases that we can determine will not bear on solving to the same base/zero case, in order to minimize the possibility of spurious hash conflicts.