public List<NugetPackageInfo> GetFlattenedDependencyPackages(NugetPackageInfo nugetPackage) { throw new NotImplementedException(); //return new List<NugetPackageInfo>(); }
private NugetPackageInfo CreateNugetPackageInfoFromIPackage(IPackage matchingPackage) { var packageInfo = new NugetPackageInfo() { Info = new VersionInfo() { Name = matchingPackage.Id, VersionNumber = matchingPackage.Version.Version } }; // sholmesby: May need to download packages to filesystem here. Then we can get the DLL version number. // sholmesby: how can we find out the version number of this assembly? //foreach(var assembly in matchingPackage.AssemblyReferences) //{ // Assembly.LoadFrom( assembly.GetStream() //} int uniqueDLLCount = matchingPackage.AssemblyReferences.Select(x => x.EffectivePath).Distinct().Count(); if (uniqueDLLCount > 1) { Console.WriteLine("---- '" + matchingPackage.Id + "' may contain more than 1 DLL."); } // sholmesby: find which package would be installed? could be any number of packages throughout a range of the VersionSpec. //matchingPackage.DependencySets.Select(package => package.Dependencies.Where(pack => pack.VersionSpec) return packageInfo; }