Skip to content
Next Next commit
Moving the pinned warning block next to availableVersions
  • Loading branch information
mrinaldi committed Aug 25, 2015
commit 9ab7a7c661894f0b4c45f7e85c606ff006bb2cbf
31 changes: 16 additions & 15 deletions src/Paket.Core/PackageResolver.fs
Original file line number Diff line number Diff line change
Expand Up @@ -223,21 +223,6 @@ let Resolve(getVersionsF, getPackageDetailsF, globalFrameworkRestrictions, rootD
package
| _ -> package
| false,_ ->
let getPinnedVersion d =
match d.Parent with
| DependenciesFile _ ->
match d.VersionRequirement.Range with
| Specific v -> Some v
| OverrideAll v -> Some v
| _ -> None
| Package _ -> None
requirements
|> Set.filter (fun r -> NormalizedPackageName dependency.Name = NormalizedPackageName r.Name)
|> Set.map getPinnedVersion
|> Seq.choose id
|> Seq.tryHead
|> Option.iter (traceWarnfn " %O is pinned to version %O" dependency.Name)

tracefn " - %s %A" name version
let packageDetails : PackageDetails = getPackageDetailsF dependency.Sources dependency.Name version
let restrictedDependencies = DependencySetFilter.filterByRestrictions (dependency.Settings.FrameworkRestrictions @ globalFrameworkRestrictions) packageDetails.DirectDependencies
Expand Down Expand Up @@ -325,6 +310,22 @@ let Resolve(getVersionsF, getPackageDetailsF, globalFrameworkRestrictions, rootD
|> Seq.fold (&&) ((map currentRequirement).VersionRequirement.IsInRange(ver))

availableVersions := getAllVersions(currentRequirement.Sources,currentRequirement.Name,currentRequirement.VersionRequirement.Range)

let getPinnedVersion d =
match d.Parent with
| DependenciesFile _ ->
match d.VersionRequirement.Range with
| Specific v -> Some v
| OverrideAll v -> Some v
| _ -> None
| Package _ -> None
requirements
|> Set.filter (fun r -> NormalizedPackageName currentRequirement.Name = NormalizedPackageName r.Name)
|> Set.map getPinnedVersion
|> Seq.choose id
|> Seq.tryHead
|> Option.iter (traceWarnfn " %O is pinned to version %O" currentRequirement.Name)

compatibleVersions := List.filter (isInRange id) (!availableVersions)
if currentRequirement.VersionRequirement.Range.IsGlobalOverride then
globalOverride := true
Expand Down