Use an exact match from the first repository that finds a package.
This commit is contained in:
parent
bca4474dd2
commit
84b038498a
|
|
@ -5,7 +5,7 @@
|
||||||
<_BuildGraphFile>$(BuildDir)BuildGraph.proj</_BuildGraphFile>
|
<_BuildGraphFile>$(BuildDir)BuildGraph.proj</_BuildGraphFile>
|
||||||
<_CloneRepositoryRoot>$(RepositoryRoot).r\</_CloneRepositoryRoot>
|
<_CloneRepositoryRoot>$(RepositoryRoot).r\</_CloneRepositoryRoot>
|
||||||
<_DependencyBuildDirectory>$(RepositoryRoot).deps\build\</_DependencyBuildDirectory>
|
<_DependencyBuildDirectory>$(RepositoryRoot).deps\build\</_DependencyBuildDirectory>
|
||||||
<_DependencyPackagesDirectory>$(_DependencyBuildDirectory)></_DependencyPackagesDirectory>
|
<_DependencyPackagesDirectory>$(_DependencyBuildDirectory)</_DependencyPackagesDirectory>
|
||||||
<_RepositoryListFileName>Repositories.props</_RepositoryListFileName>
|
<_RepositoryListFileName>Repositories.props</_RepositoryListFileName>
|
||||||
<_DependencyRepositoryList>$(_DependencyBuildDirectory)$(_RepositoryListFileName)</_DependencyRepositoryList>
|
<_DependencyRepositoryList>$(_DependencyBuildDirectory)$(_RepositoryListFileName)</_DependencyRepositoryList>
|
||||||
<_RestoreGraphSpecsDirectory>$(RepositoryRoot)obj\package-specs\</_RestoreGraphSpecsDirectory>
|
<_RestoreGraphSpecsDirectory>$(RepositoryRoot)obj\package-specs\</_RestoreGraphSpecsDirectory>
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,7 @@ namespace PinVersions
|
||||||
.Concat(specProject.TargetFrameworks.SelectMany(tfm => tfm.Dependencies.Select(dependency => new { Dependency = dependency, tfm.FrameworkName })))
|
.Concat(specProject.TargetFrameworks.SelectMany(tfm => tfm.Dependencies.Select(dependency => new { Dependency = dependency, tfm.FrameworkName })))
|
||||||
.Where(d => d.Dependency.LibraryRange.TypeConstraintAllows(LibraryDependencyTarget.Package));
|
.Where(d => d.Dependency.LibraryRange.TypeConstraintAllows(LibraryDependencyTarget.Package));
|
||||||
|
|
||||||
|
Console.WriteLine($"Pinning package versions for {specProject.FilePath}.");
|
||||||
var packageReferencesItemGroup = new XElement("ItemGroup");
|
var packageReferencesItemGroup = new XElement("ItemGroup");
|
||||||
foreach (var dependency in allDependencies)
|
foreach (var dependency in allDependencies)
|
||||||
{
|
{
|
||||||
|
|
@ -80,6 +81,7 @@ namespace PinVersions
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Console.WriteLine($"Pinning reference {reference.Name}({reference.LibraryRange.VersionRange} to {exactVersion}.");
|
||||||
var metadata = new List<XAttribute>
|
var metadata = new List<XAttribute>
|
||||||
{
|
{
|
||||||
new XAttribute("Update", reference.Name),
|
new XAttribute("Update", reference.Name),
|
||||||
|
|
@ -125,7 +127,7 @@ namespace PinVersions
|
||||||
switch (matchingVersions.Count)
|
switch (matchingVersions.Count)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
return null;
|
continue;
|
||||||
case 1:
|
case 1:
|
||||||
return matchingVersions[0];
|
return matchingVersions[0];
|
||||||
default:
|
default:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue