diff --git a/src/Paket/InstallProcess.fs b/src/Paket/InstallProcess.fs index 2036037606..8a4b4a8f93 100644 --- a/src/Paket/InstallProcess.fs +++ b/src/Paket/InstallProcess.fs @@ -101,6 +101,7 @@ let Install(regenerate, force, hard, dependenciesFilename) = let directPackages = extractReferencesFromListFile proj.FullName let project = ProjectFile.Load proj.FullName + if directPackages |> Array.isEmpty |> not then verbosefn " - direct packages: %A" directPackages let usedPackages = new HashSet<_>() let usedSourceFiles = new HashSet<_>() @@ -110,12 +111,12 @@ let Install(regenerate, force, hard, dependenciesFilename) = |> Map.ofArray let rec addPackage (name:string) = - if name.ToLower().StartsWith "file:" then + let identity = name.ToLower() + if identity.StartsWith "file:" then let sourceFile = name.Split(':').[1] usedSourceFiles.Add sourceFile |> ignore else - let name = name.ToLower() - match allPackages |> Map.tryFind name with + match allPackages |> Map.tryFind identity with | Some package -> if usedPackages.Add name then if not lockFile.Strict then @@ -126,6 +127,8 @@ let Install(regenerate, force, hard, dependenciesFilename) = directPackages |> Array.iter addPackage + if usedPackages.Count > 0 then verbosefn " - all packages: %A" (usedPackages |> Seq.toArray) + project.UpdateReferences(extractedPackages,usedPackages,hard) lockFile.SourceFiles diff --git a/src/Paket/Paket.fsproj b/src/Paket/Paket.fsproj index c8949e39a7..10fc105394 100644 --- a/src/Paket/Paket.fsproj +++ b/src/Paket/Paket.fsproj @@ -30,7 +30,7 @@ paket.exe - D:\code\Paket + D:\code\paket pdbonly diff --git a/src/Paket/ProjectFile.fs b/src/Paket/ProjectFile.fs index 0cc06c8dfc..18b5925ed4 100644 --- a/src/Paket/ProjectFile.fs +++ b/src/Paket/ProjectFile.fs @@ -17,7 +17,7 @@ type private InstallInfo = { module private InstallRules = let groupDLLs (usedPackages : HashSet) extracted projectPath = [ for (package:ResolvedPackage), libraries in extracted do - if usedPackages.Contains(package.Name.ToLower()) then + if usedPackages.Contains(package.Name) then let libraries = libraries |> Seq.toArray for (lib : FileInfo) in libraries do match FrameworkIdentifier.DetectFromPath lib.FullName with