dependabot-nuget 0.240.0 → 0.241.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/helpers/build +45 -0
- data/helpers/lib/NuGetUpdater/.editorconfig +364 -0
- data/helpers/lib/NuGetUpdater/.gitignore +5 -0
- data/helpers/lib/NuGetUpdater/Directory.Build.props +10 -0
- data/helpers/lib/NuGetUpdater/Directory.Common.props +16 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/Directory.Build.props +14 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/Directory.Build.targets +7 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/Directory.Packages.props +29 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Build.Tasks/NuGet.Build.Tasks.csproj +27 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.CommandLine/AssemblyMetadataExtractor.cs +203 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.CommandLine/NuGet.CommandLine.csproj +33 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Commands/NuGet.Commands.csproj +26 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Common/NuGet.Common.csproj +21 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Config +6 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Configuration/NuGet.Configuration.csproj +24 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Credentials/NuGet.Credentials.csproj +20 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.DependencyResolver.Core/NuGet.DependencyResolver.Core.csproj +22 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Frameworks/NuGet.Frameworks.csproj +17 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.LibraryModel/NuGet.LibraryModel.csproj +17 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.PackageManagement/NuGet.PackageManagement.csproj +27 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Packaging/NuGet.Packaging.csproj +28 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.ProjectModel/NuGet.ProjectModel.csproj +20 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Protocol/NuGet.Protocol.csproj +21 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Resolver/NuGet.Resolver.csproj +20 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/NuGet.Versioning/NuGet.Versioning.csproj +17 -0
- data/helpers/lib/NuGetUpdater/NuGetProjects/README.md +1 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/FrameworkCheckCommand.cs +35 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/UpdateCommand.cs +43 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/NuGetUpdater.Cli.csproj +20 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Program.cs +31 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.FrameworkCheck.cs +42 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Update.cs +323 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/NuGetUpdater.Cli.Test.csproj +24 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Dependency.cs +3 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/DependencyType.cs +12 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/BuildFile.cs +97 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/DotNetToolsJsonBuildFile.cs +24 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/GlobalJsonBuildFile.cs +25 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/JsonBuildFile.cs +32 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/PackagesConfigBuildFile.cs +31 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/ProjectBuildFile.cs +94 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Files/XmlBuildFile.cs +14 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/FrameworkChecker/CompatabilityChecker.cs +39 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/FrameworkChecker/FrameworkCompatibilityService.cs +73 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/FrameworkChecker/SupportedFrameworks.cs +146 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/NuGetUpdater.Core.csproj +27 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/BindingRedirectManager.cs +316 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/BindingRedirectResolver.cs +87 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/ConfigurationFile.cs +3 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/DotNetToolsJsonUpdater.cs +66 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/GlobalJsonUpdater.cs +48 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/PackagesConfigUpdater.cs +172 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/SdkPackageUpdater.cs +498 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/UpdateResult.cs +7 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/UpdaterWorker.cs +105 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/JsonHelper.cs +222 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/Logger.cs +24 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/MSBuildHelper.cs +443 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/NuGetHelper.cs +15 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/PathHelper.cs +69 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/ProcessExtensions.cs +66 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/XmlExtensions.cs +124 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Files/DotNetToolsJsonBuildFileTests.cs +52 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Files/GlobalJsonBuildFileTests.cs +63 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Files/PackagesConfigBuildFileTests.cs +63 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Files/ProjectBuildFileTests.cs +154 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/FrameworkChecker/CompatibilityCheckerFacts.cs +64 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/FrameworkChecker/FrameworkCompatibilityServiceFacts.cs +122 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/FrameworkChecker/SupportedFrameworkFacts.cs +68 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/NuGetUpdater.Core.Test.csproj +23 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/TemporaryDirectory.cs +36 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/TestExtensions.cs +15 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/PackagesConfigUpdaterTests.cs +79 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorker.DirsProj.cs +201 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTestBase.cs +147 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.DotNetTools.cs +225 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.GlobalJson.cs +217 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.Mixed.cs +94 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackagesConfig.cs +938 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.Sdk.cs +2177 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/JsonHelperTests.cs +239 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/MSBuildHelperTests.cs +394 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/SdkPackageUpdaterHelperTests.cs +179 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/SdkPackageUpdaterTests.cs +238 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.sln +152 -0
- data/helpers/lib/NuGetUpdater/xunit.runner.json +4 -0
- data/lib/dependabot/nuget/metadata_finder.rb +4 -4
- metadata +91 -5
data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/SdkPackageUpdaterHelperTests.cs
ADDED
@@ -0,0 +1,179 @@
|
|
1
|
+
using System.IO;
|
2
|
+
using System.Linq;
|
3
|
+
using System.Threading.Tasks;
|
4
|
+
|
5
|
+
using Xunit;
|
6
|
+
|
7
|
+
namespace NuGetUpdater.Core.Test.Utilities
|
8
|
+
{
|
9
|
+
public class SdkPackageUpdaterHelperTests
|
10
|
+
{
|
11
|
+
[Fact]
|
12
|
+
public async Task DirectoryBuildFilesAreOnlyPulledInFromParentDirectories()
|
13
|
+
{
|
14
|
+
using var temporaryDirectory = TemporaryDirectory.CreateWithContents(
|
15
|
+
("src/SomeProject.csproj", """
|
16
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
17
|
+
<Import Project="..\props\Versions.props" />
|
18
|
+
</Project>
|
19
|
+
"""),
|
20
|
+
("src/Directory.Build.targets", """
|
21
|
+
<Project>
|
22
|
+
</Project>
|
23
|
+
"""),
|
24
|
+
("props/Versions.props", """
|
25
|
+
<Project>
|
26
|
+
</Project>
|
27
|
+
"""),
|
28
|
+
("Directory.Build.props", """
|
29
|
+
<Project>
|
30
|
+
</Project>
|
31
|
+
"""),
|
32
|
+
("test/Directory.Build.props", """
|
33
|
+
<Project>
|
34
|
+
<!-- this file should not be loaded -->
|
35
|
+
</Project>
|
36
|
+
""")
|
37
|
+
);
|
38
|
+
var actualBuildFilePaths = await LoadBuildFilesFromTemp(temporaryDirectory, "src/SomeProject.csproj");
|
39
|
+
var expectedBuildFilePaths = new[]
|
40
|
+
{
|
41
|
+
"src/SomeProject.csproj",
|
42
|
+
"Directory.Build.props",
|
43
|
+
"props/Versions.props",
|
44
|
+
"src/Directory.Build.targets",
|
45
|
+
};
|
46
|
+
Assert.Equal(expectedBuildFilePaths, actualBuildFilePaths);
|
47
|
+
}
|
48
|
+
|
49
|
+
[Theory]
|
50
|
+
[InlineData("", "")] // everything at root
|
51
|
+
[InlineData("src/", "src/")] // everything in subdirectory
|
52
|
+
[InlineData("src/", "")] // project in subdirectory, global.json at root
|
53
|
+
public async Task BuildFileEnumerationWorksEvenWithNonSupportedSdkInGlobalJson(string projectSubpath, string globalJsonSubpath)
|
54
|
+
{
|
55
|
+
using var temporaryDirectory = TemporaryDirectory.CreateWithContents(
|
56
|
+
($"{projectSubpath}SomeProject.csproj", """
|
57
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
58
|
+
</Project>
|
59
|
+
"""),
|
60
|
+
($"{projectSubpath}Directory.Build.props", """
|
61
|
+
<Project>
|
62
|
+
</Project>
|
63
|
+
"""),
|
64
|
+
($"{globalJsonSubpath}global.json", """
|
65
|
+
{
|
66
|
+
"sdk": {
|
67
|
+
"version": "99.99.99"
|
68
|
+
}
|
69
|
+
}
|
70
|
+
""")
|
71
|
+
);
|
72
|
+
var actualBuildFilePaths = await LoadBuildFilesFromTemp(temporaryDirectory, $"{projectSubpath}/SomeProject.csproj");
|
73
|
+
var expectedBuildFilePaths = new[]
|
74
|
+
{
|
75
|
+
$"{projectSubpath}SomeProject.csproj",
|
76
|
+
$"{projectSubpath}Directory.Build.props",
|
77
|
+
};
|
78
|
+
Assert.Equal(expectedBuildFilePaths, actualBuildFilePaths);
|
79
|
+
Assert.True(File.Exists($"{temporaryDirectory.DirectoryPath}/{globalJsonSubpath}global.json"), "global.json was not restored");
|
80
|
+
}
|
81
|
+
|
82
|
+
[Fact]
|
83
|
+
public async Task BuildFileEnumerationWithNonStandardMSBuildSdkAndNonSupportedSdkVersionInGlobalJson()
|
84
|
+
{
|
85
|
+
using var temporaryDirectory = TemporaryDirectory.CreateWithContents(
|
86
|
+
("global.json", """
|
87
|
+
{
|
88
|
+
"sdk": {
|
89
|
+
"version": "99.99.99"
|
90
|
+
},
|
91
|
+
"msbuild-sdks": {
|
92
|
+
"Microsoft.Build.NoTargets": "3.7.0"
|
93
|
+
}
|
94
|
+
}
|
95
|
+
"""),
|
96
|
+
("SomeProject.csproj", """
|
97
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
98
|
+
<Import Project="NoTargets.props" />
|
99
|
+
</Project>
|
100
|
+
"""),
|
101
|
+
("NoTargets.props", """
|
102
|
+
<Project Sdk="Microsoft.Build.NoTargets">
|
103
|
+
<Import Project="Versions.props" />
|
104
|
+
</Project>
|
105
|
+
"""),
|
106
|
+
("Versions.props", """
|
107
|
+
<Project Sdk="Microsoft.Build.NoTargets">
|
108
|
+
</Project>
|
109
|
+
""")
|
110
|
+
);
|
111
|
+
var actualBuildFilePaths = await LoadBuildFilesFromTemp(temporaryDirectory, "SomeProject.csproj");
|
112
|
+
var expectedBuildFilePaths = new[]
|
113
|
+
{
|
114
|
+
"SomeProject.csproj",
|
115
|
+
"NoTargets.props",
|
116
|
+
"Versions.props",
|
117
|
+
};
|
118
|
+
Assert.Equal(expectedBuildFilePaths, actualBuildFilePaths);
|
119
|
+
var globalJsonContent = await File.ReadAllTextAsync($"{temporaryDirectory.DirectoryPath}/global.json");
|
120
|
+
Assert.Contains("99.99.99", globalJsonContent); // ensure global.json was restored
|
121
|
+
}
|
122
|
+
|
123
|
+
[Fact]
|
124
|
+
public async Task BuildFileEnumerationWithUnsuccessfulImport()
|
125
|
+
{
|
126
|
+
using var temporaryDirectory = TemporaryDirectory.CreateWithContents(
|
127
|
+
("Directory.Build.props", """
|
128
|
+
<Project>
|
129
|
+
<Import Project="file-that-does-not-exist.targets" />
|
130
|
+
</Project>
|
131
|
+
"""),
|
132
|
+
("NonBuildingProject.csproj", """
|
133
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
134
|
+
</Project>
|
135
|
+
""")
|
136
|
+
);
|
137
|
+
var actualBuildFilePaths = await LoadBuildFilesFromTemp(temporaryDirectory, "NonBuildingProject.csproj");
|
138
|
+
var expectedBuildFilePaths = new[]
|
139
|
+
{
|
140
|
+
"NonBuildingProject.csproj",
|
141
|
+
"Directory.Build.props",
|
142
|
+
};
|
143
|
+
Assert.Equal(expectedBuildFilePaths, actualBuildFilePaths);
|
144
|
+
}
|
145
|
+
|
146
|
+
[Fact]
|
147
|
+
public async Task BuildFileEnumerationWithGlobalJsonWithComments()
|
148
|
+
{
|
149
|
+
using var temporaryDirectory = TemporaryDirectory.CreateWithContents(
|
150
|
+
("global.json", """
|
151
|
+
{
|
152
|
+
// this is a comment
|
153
|
+
"msbuild-sdks": {
|
154
|
+
// this is a deep comment
|
155
|
+
"Microsoft.Build.NoTargets": "3.7.0"
|
156
|
+
}
|
157
|
+
}
|
158
|
+
"""),
|
159
|
+
("NonBuildingProject.csproj", """
|
160
|
+
<Project Sdk="Microsoft.Build.NoTargets">
|
161
|
+
</Project>
|
162
|
+
""")
|
163
|
+
);
|
164
|
+
var actualBuildFilePaths = await LoadBuildFilesFromTemp(temporaryDirectory, "NonBuildingProject.csproj");
|
165
|
+
var expectedBuildFilePaths = new[]
|
166
|
+
{
|
167
|
+
"NonBuildingProject.csproj",
|
168
|
+
};
|
169
|
+
Assert.Equal(expectedBuildFilePaths, actualBuildFilePaths);
|
170
|
+
}
|
171
|
+
|
172
|
+
private static async Task<string[]> LoadBuildFilesFromTemp(TemporaryDirectory temporaryDirectory, string relativeProjectPath)
|
173
|
+
{
|
174
|
+
var buildFiles = await MSBuildHelper.LoadBuildFiles(temporaryDirectory.DirectoryPath, $"{temporaryDirectory.DirectoryPath}/{relativeProjectPath}");
|
175
|
+
var buildFilePaths = buildFiles.Select(f => f.RepoRelativePath.NormalizePathToUnix()).ToArray();
|
176
|
+
return buildFilePaths;
|
177
|
+
}
|
178
|
+
}
|
179
|
+
}
|
@@ -0,0 +1,238 @@
|
|
1
|
+
using System.Collections.Generic;
|
2
|
+
using System.IO;
|
3
|
+
using System.Linq;
|
4
|
+
using System.Threading.Tasks;
|
5
|
+
|
6
|
+
using Xunit;
|
7
|
+
|
8
|
+
namespace NuGetUpdater.Core.Test.Utilities;
|
9
|
+
|
10
|
+
public class SdkPackageUpdaterTests
|
11
|
+
{
|
12
|
+
[Theory]
|
13
|
+
[MemberData(nameof(GetDependencyUpdates))]
|
14
|
+
public async Task UpdateDependency_UpdatesDependencies((string Path, string Contents)[] startingContents, (string Path, string Contents)[] expectedContents,
|
15
|
+
string dependencyName, string previousVersion, string newDependencyVersion, bool isTransitive)
|
16
|
+
{
|
17
|
+
// Arrange
|
18
|
+
using var directory = TemporaryDirectory.CreateWithContents(startingContents);
|
19
|
+
var projectPath = Path.Combine(directory.DirectoryPath, startingContents.First().Path);
|
20
|
+
var logger = new Logger(verbose: false);
|
21
|
+
|
22
|
+
// Act
|
23
|
+
await SdkPackageUpdater.UpdateDependencyAsync(directory.DirectoryPath, projectPath, dependencyName, previousVersion, newDependencyVersion, isTransitive, logger);
|
24
|
+
|
25
|
+
// Assert
|
26
|
+
AssertContentsEqual(expectedContents, directory);
|
27
|
+
}
|
28
|
+
|
29
|
+
public static IEnumerable<object[]> GetDependencyUpdates()
|
30
|
+
{
|
31
|
+
// Simple case
|
32
|
+
yield return new object[]
|
33
|
+
{
|
34
|
+
new []
|
35
|
+
{
|
36
|
+
(Path: "src/Project.csproj", Content: """
|
37
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
38
|
+
<PropertyGroup>
|
39
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
40
|
+
</PropertyGroup>
|
41
|
+
<ItemGroup>
|
42
|
+
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
|
43
|
+
</ItemGroup>
|
44
|
+
</Project>
|
45
|
+
""")
|
46
|
+
}, // starting contents
|
47
|
+
new []
|
48
|
+
{
|
49
|
+
(Path: "src/Project.csproj", Content: """
|
50
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
51
|
+
<PropertyGroup>
|
52
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
53
|
+
</PropertyGroup>
|
54
|
+
<ItemGroup>
|
55
|
+
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
56
|
+
</ItemGroup>
|
57
|
+
</Project>
|
58
|
+
""")
|
59
|
+
}, // expected contents
|
60
|
+
"Newtonsoft.Json", "12.0.1", "13.0.1", false // isTransitive
|
61
|
+
};
|
62
|
+
|
63
|
+
// Dependency package has version constraint
|
64
|
+
yield return new object[]
|
65
|
+
{
|
66
|
+
new[]
|
67
|
+
{
|
68
|
+
(Path: "src/Project/Project.csproj", Content: """
|
69
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
70
|
+
<PropertyGroup>
|
71
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
72
|
+
</PropertyGroup>
|
73
|
+
<ItemGroup>
|
74
|
+
<PackageReference Include="AWSSDK.S3" Version="3.3.17.3" />
|
75
|
+
<PackageReference Include="AWSSDK.Core" Version="3.3.21.19" />
|
76
|
+
</ItemGroup>
|
77
|
+
</Project>
|
78
|
+
"""),
|
79
|
+
}, // starting contents
|
80
|
+
new[]
|
81
|
+
{
|
82
|
+
// If a dependency has a version constraint outside of our new-version, we don't update anything
|
83
|
+
(Path: "src/Project/Project.csproj", Content: """
|
84
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
85
|
+
<PropertyGroup>
|
86
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
87
|
+
</PropertyGroup>
|
88
|
+
<ItemGroup>
|
89
|
+
<PackageReference Include="AWSSDK.S3" Version="3.3.17.3" />
|
90
|
+
<PackageReference Include="AWSSDK.Core" Version="3.3.21.19" />
|
91
|
+
</ItemGroup>
|
92
|
+
</Project>
|
93
|
+
"""),
|
94
|
+
},// expected contents
|
95
|
+
"AWSSDK.Core", "3.3.21.19", "3.7.300.20", false // isTransitive
|
96
|
+
};
|
97
|
+
|
98
|
+
// Dependency project has version constraint
|
99
|
+
yield return new object[]
|
100
|
+
{
|
101
|
+
new[]
|
102
|
+
{
|
103
|
+
(Path: "src/Project2/Project2.csproj", Content: """
|
104
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
105
|
+
<PropertyGroup>
|
106
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
107
|
+
</PropertyGroup>
|
108
|
+
<ItemGroup>
|
109
|
+
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
|
110
|
+
<ProjectReference Include="../Project/Project.csproj" />
|
111
|
+
</ItemGroup>
|
112
|
+
</Project>
|
113
|
+
"""),
|
114
|
+
(Path: "src/Project/Project.csproj", Content: """
|
115
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
116
|
+
<PropertyGroup>
|
117
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
118
|
+
</PropertyGroup>
|
119
|
+
<ItemGroup>
|
120
|
+
<PackageReference Include="Newtonsoft.Json" Version="[12.0.1, 13.0.0)" />
|
121
|
+
</ItemGroup>
|
122
|
+
</Project>
|
123
|
+
"""),
|
124
|
+
}, // starting contents
|
125
|
+
new[]
|
126
|
+
{
|
127
|
+
(Path: "src/Project2/Project2.csproj", Content: """
|
128
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
129
|
+
<PropertyGroup>
|
130
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
131
|
+
</PropertyGroup>
|
132
|
+
<ItemGroup>
|
133
|
+
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
134
|
+
<ProjectReference Include="../Project/Project.csproj" />
|
135
|
+
</ItemGroup>
|
136
|
+
</Project>
|
137
|
+
"""), // starting contents
|
138
|
+
(Path: "src/Project/Project.csproj", Content: """
|
139
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
140
|
+
<PropertyGroup>
|
141
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
142
|
+
</PropertyGroup>
|
143
|
+
<ItemGroup>
|
144
|
+
<PackageReference Include="Newtonsoft.Json" Version="[12.0.1, 13.0.0)" />
|
145
|
+
</ItemGroup>
|
146
|
+
</Project>
|
147
|
+
"""),
|
148
|
+
},// expected contents
|
149
|
+
"Newtonsoft.Json", "12.0.1", "13.0.1", false // isTransitive
|
150
|
+
};
|
151
|
+
|
152
|
+
// Multiple references
|
153
|
+
yield return new object[]
|
154
|
+
{
|
155
|
+
new []
|
156
|
+
{
|
157
|
+
(Path: "src/Project.csproj", Content: """
|
158
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
159
|
+
<PropertyGroup>
|
160
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
161
|
+
</PropertyGroup>
|
162
|
+
<ItemGroup>
|
163
|
+
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
|
164
|
+
<PackageReference Include="Newtonsoft.Json">
|
165
|
+
<Version>12.0.1</Version>
|
166
|
+
</PackageReference>
|
167
|
+
</ItemGroup>
|
168
|
+
</Project>
|
169
|
+
""")
|
170
|
+
}, // starting contents
|
171
|
+
new []
|
172
|
+
{
|
173
|
+
(Path: "src/Project.csproj", Content: """
|
174
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
175
|
+
<PropertyGroup>
|
176
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
177
|
+
</PropertyGroup>
|
178
|
+
<ItemGroup>
|
179
|
+
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
180
|
+
<PackageReference Include="Newtonsoft.Json">
|
181
|
+
<Version>13.0.1</Version>
|
182
|
+
</PackageReference>
|
183
|
+
</ItemGroup>
|
184
|
+
</Project>
|
185
|
+
""")
|
186
|
+
}, // expected contents
|
187
|
+
"Newtonsoft.Json", "12.0.1", "13.0.1", false // isTransitive
|
188
|
+
};
|
189
|
+
|
190
|
+
// PackageReference with Version as child element
|
191
|
+
yield return new object[]
|
192
|
+
{
|
193
|
+
new []
|
194
|
+
{
|
195
|
+
(Path: "src/Project.csproj", Content: """
|
196
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
197
|
+
<PropertyGroup>
|
198
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
199
|
+
</PropertyGroup>
|
200
|
+
<ItemGroup>
|
201
|
+
<PackageReference Include="Newtonsoft.Json">
|
202
|
+
<Version>12.0.1</Version>
|
203
|
+
</PackageReference>
|
204
|
+
</ItemGroup>
|
205
|
+
</Project>
|
206
|
+
""")
|
207
|
+
}, // starting contents
|
208
|
+
new []
|
209
|
+
{
|
210
|
+
(Path: "src/Project.csproj", Content: """
|
211
|
+
<Project Sdk="Microsoft.NET.Sdk">
|
212
|
+
<PropertyGroup>
|
213
|
+
<TargetFramework>netstandard2.0</TargetFramework>
|
214
|
+
</PropertyGroup>
|
215
|
+
<ItemGroup>
|
216
|
+
<PackageReference Include="Newtonsoft.Json">
|
217
|
+
<Version>13.0.1</Version>
|
218
|
+
</PackageReference>
|
219
|
+
</ItemGroup>
|
220
|
+
</Project>
|
221
|
+
""")
|
222
|
+
}, // expected contents
|
223
|
+
"Newtonsoft.Json", "12.0.1", "13.0.1", false // isTransitive
|
224
|
+
};
|
225
|
+
}
|
226
|
+
|
227
|
+
private static void AssertContentsEqual((string Path, string Contents)[] expectedContents, TemporaryDirectory directory)
|
228
|
+
{
|
229
|
+
var actualFiles = Directory.GetFiles(directory.DirectoryPath, "*", SearchOption.AllDirectories);
|
230
|
+
Assert.Equal(expectedContents.Length, actualFiles.Length);
|
231
|
+
foreach (var (path, contents) in expectedContents)
|
232
|
+
{
|
233
|
+
var fullPath = Path.Combine(directory.DirectoryPath, path);
|
234
|
+
Assert.True(File.Exists(fullPath));
|
235
|
+
Assert.Equal(contents, File.ReadAllText(fullPath));
|
236
|
+
}
|
237
|
+
}
|
238
|
+
}
|
@@ -0,0 +1,152 @@
|
|
1
|
+
|
2
|
+
Microsoft Visual Studio Solution File, Format Version 12.00
|
3
|
+
# Visual Studio Version 17
|
4
|
+
VisualStudioVersion = 17.5.33516.290
|
5
|
+
MinimumVisualStudioVersion = 10.0.40219.1
|
6
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGetUpdater.Cli", "NuGetUpdater.Cli\NuGetUpdater.Cli.csproj", "{DA55A30A-048A-4D8A-A3EC-4F2CF4B294B8}"
|
7
|
+
EndProject
|
8
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGetUpdater.Core", "NuGetUpdater.Core\NuGetUpdater.Core.csproj", "{82DFC908-9EA6-4339-B459-04D8B356E508}"
|
9
|
+
EndProject
|
10
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGetUpdater.Core.Test", "NuGetUpdater.Core.Test\NuGetUpdater.Core.Test.csproj", "{AE3E29CD-0F66-4A66-93C1-440D701BD4F7}"
|
11
|
+
EndProject
|
12
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.CommandLine", "NuGetProjects\NuGet.CommandLine\NuGet.CommandLine.csproj", "{8F8EF09F-DB34-46F0-8EFC-B72CA498C198}"
|
13
|
+
EndProject
|
14
|
+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet", "NuGet", "{1095100B-0857-4132-A4CF-D54C4124DED9}"
|
15
|
+
EndProject
|
16
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Build.Tasks", "NuGetProjects\NuGet.Build.Tasks\NuGet.Build.Tasks.csproj", "{C54058D4-6E8F-42B3-A35E-734CC10AC152}"
|
17
|
+
EndProject
|
18
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Commands", "NuGetProjects\NuGet.Commands\NuGet.Commands.csproj", "{FFE5164F-999F-4F09-8607-10613C51712C}"
|
19
|
+
EndProject
|
20
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Common", "NuGetProjects\NuGet.Common\NuGet.Common.csproj", "{6D050FD3-E1F4-4DDE-8313-879A86849DA8}"
|
21
|
+
EndProject
|
22
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Configuration", "NuGetProjects\NuGet.Configuration\NuGet.Configuration.csproj", "{3EE95A8E-D907-4DFA-9CBF-00C497878C42}"
|
23
|
+
EndProject
|
24
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Credentials", "NuGetProjects\NuGet.Credentials\NuGet.Credentials.csproj", "{3F764153-B736-49A7-B1E5-97446823FB8C}"
|
25
|
+
EndProject
|
26
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.DependencyResolver.Core", "NuGetProjects\NuGet.DependencyResolver.Core\NuGet.DependencyResolver.Core.csproj", "{F3AAA86A-5540-49B7-8C9C-17B18D95ADCD}"
|
27
|
+
EndProject
|
28
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Frameworks", "NuGetProjects\NuGet.Frameworks\NuGet.Frameworks.csproj", "{A9F779D8-B6EA-481D-9EA6-59D2028FF9CB}"
|
29
|
+
EndProject
|
30
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.LibraryModel", "NuGetProjects\NuGet.LibraryModel\NuGet.LibraryModel.csproj", "{304FFB77-E4CC-4997-870D-A9D8E38E19A2}"
|
31
|
+
EndProject
|
32
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.PackageManagement", "NuGetProjects\NuGet.PackageManagement\NuGet.PackageManagement.csproj", "{0C21F9AE-B44F-4EA5-8811-6207A865BCC7}"
|
33
|
+
EndProject
|
34
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Packaging", "NuGetProjects\NuGet.Packaging\NuGet.Packaging.csproj", "{4442EA58-FBF0-4DCE-9D0E-895FF44590DB}"
|
35
|
+
EndProject
|
36
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.ProjectModel", "NuGetProjects\NuGet.ProjectModel\NuGet.ProjectModel.csproj", "{4DAC0531-794B-4E0E-8A62-48FA8CB4AA5C}"
|
37
|
+
EndProject
|
38
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Protocol", "NuGetProjects\NuGet.Protocol\NuGet.Protocol.csproj", "{0AEA8D0D-6FFE-46A3-B078-B08C409C1731}"
|
39
|
+
EndProject
|
40
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Resolver", "NuGetProjects\NuGet.Resolver\NuGet.Resolver.csproj", "{F3AAC7AB-DC59-4290-8BBF-59EF80BA6DB3}"
|
41
|
+
EndProject
|
42
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGet.Versioning", "NuGetProjects\NuGet.Versioning\NuGet.Versioning.csproj", "{0DCEEE7C-C53C-446C-A3BC-D5C254A952F4}"
|
43
|
+
EndProject
|
44
|
+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NuGetUpdater.Cli.Test", "NuGetUpdater.Cli.Test\NuGetUpdater.Cli.Test.csproj", "{BDBEBF91-F5FD-4589-B4FB-B3DE3103B04B}"
|
45
|
+
EndProject
|
46
|
+
Global
|
47
|
+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
48
|
+
Debug|Any CPU = Debug|Any CPU
|
49
|
+
Release|Any CPU = Release|Any CPU
|
50
|
+
EndGlobalSection
|
51
|
+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
52
|
+
{DA55A30A-048A-4D8A-A3EC-4F2CF4B294B8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
53
|
+
{DA55A30A-048A-4D8A-A3EC-4F2CF4B294B8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
54
|
+
{DA55A30A-048A-4D8A-A3EC-4F2CF4B294B8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
55
|
+
{DA55A30A-048A-4D8A-A3EC-4F2CF4B294B8}.Release|Any CPU.Build.0 = Release|Any CPU
|
56
|
+
{82DFC908-9EA6-4339-B459-04D8B356E508}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
57
|
+
{82DFC908-9EA6-4339-B459-04D8B356E508}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
58
|
+
{82DFC908-9EA6-4339-B459-04D8B356E508}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
59
|
+
{82DFC908-9EA6-4339-B459-04D8B356E508}.Release|Any CPU.Build.0 = Release|Any CPU
|
60
|
+
{AE3E29CD-0F66-4A66-93C1-440D701BD4F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
61
|
+
{AE3E29CD-0F66-4A66-93C1-440D701BD4F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
62
|
+
{AE3E29CD-0F66-4A66-93C1-440D701BD4F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
63
|
+
{AE3E29CD-0F66-4A66-93C1-440D701BD4F7}.Release|Any CPU.Build.0 = Release|Any CPU
|
64
|
+
{8F8EF09F-DB34-46F0-8EFC-B72CA498C198}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
65
|
+
{8F8EF09F-DB34-46F0-8EFC-B72CA498C198}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
66
|
+
{8F8EF09F-DB34-46F0-8EFC-B72CA498C198}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
67
|
+
{8F8EF09F-DB34-46F0-8EFC-B72CA498C198}.Release|Any CPU.Build.0 = Release|Any CPU
|
68
|
+
{C54058D4-6E8F-42B3-A35E-734CC10AC152}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
69
|
+
{C54058D4-6E8F-42B3-A35E-734CC10AC152}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
70
|
+
{C54058D4-6E8F-42B3-A35E-734CC10AC152}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
71
|
+
{C54058D4-6E8F-42B3-A35E-734CC10AC152}.Release|Any CPU.Build.0 = Release|Any CPU
|
72
|
+
{FFE5164F-999F-4F09-8607-10613C51712C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
73
|
+
{FFE5164F-999F-4F09-8607-10613C51712C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
74
|
+
{FFE5164F-999F-4F09-8607-10613C51712C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
75
|
+
{FFE5164F-999F-4F09-8607-10613C51712C}.Release|Any CPU.Build.0 = Release|Any CPU
|
76
|
+
{6D050FD3-E1F4-4DDE-8313-879A86849DA8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
77
|
+
{6D050FD3-E1F4-4DDE-8313-879A86849DA8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
78
|
+
{6D050FD3-E1F4-4DDE-8313-879A86849DA8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
79
|
+
{6D050FD3-E1F4-4DDE-8313-879A86849DA8}.Release|Any CPU.Build.0 = Release|Any CPU
|
80
|
+
{3EE95A8E-D907-4DFA-9CBF-00C497878C42}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
81
|
+
{3EE95A8E-D907-4DFA-9CBF-00C497878C42}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
82
|
+
{3EE95A8E-D907-4DFA-9CBF-00C497878C42}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
83
|
+
{3EE95A8E-D907-4DFA-9CBF-00C497878C42}.Release|Any CPU.Build.0 = Release|Any CPU
|
84
|
+
{3F764153-B736-49A7-B1E5-97446823FB8C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
85
|
+
{3F764153-B736-49A7-B1E5-97446823FB8C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
86
|
+
{3F764153-B736-49A7-B1E5-97446823FB8C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
87
|
+
{3F764153-B736-49A7-B1E5-97446823FB8C}.Release|Any CPU.Build.0 = Release|Any CPU
|
88
|
+
{F3AAA86A-5540-49B7-8C9C-17B18D95ADCD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
89
|
+
{F3AAA86A-5540-49B7-8C9C-17B18D95ADCD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
90
|
+
{F3AAA86A-5540-49B7-8C9C-17B18D95ADCD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
91
|
+
{F3AAA86A-5540-49B7-8C9C-17B18D95ADCD}.Release|Any CPU.Build.0 = Release|Any CPU
|
92
|
+
{A9F779D8-B6EA-481D-9EA6-59D2028FF9CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
93
|
+
{A9F779D8-B6EA-481D-9EA6-59D2028FF9CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
94
|
+
{A9F779D8-B6EA-481D-9EA6-59D2028FF9CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
95
|
+
{A9F779D8-B6EA-481D-9EA6-59D2028FF9CB}.Release|Any CPU.Build.0 = Release|Any CPU
|
96
|
+
{304FFB77-E4CC-4997-870D-A9D8E38E19A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
97
|
+
{304FFB77-E4CC-4997-870D-A9D8E38E19A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
98
|
+
{304FFB77-E4CC-4997-870D-A9D8E38E19A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
99
|
+
{304FFB77-E4CC-4997-870D-A9D8E38E19A2}.Release|Any CPU.Build.0 = Release|Any CPU
|
100
|
+
{0C21F9AE-B44F-4EA5-8811-6207A865BCC7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
101
|
+
{0C21F9AE-B44F-4EA5-8811-6207A865BCC7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
102
|
+
{0C21F9AE-B44F-4EA5-8811-6207A865BCC7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
103
|
+
{0C21F9AE-B44F-4EA5-8811-6207A865BCC7}.Release|Any CPU.Build.0 = Release|Any CPU
|
104
|
+
{4442EA58-FBF0-4DCE-9D0E-895FF44590DB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
105
|
+
{4442EA58-FBF0-4DCE-9D0E-895FF44590DB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
106
|
+
{4442EA58-FBF0-4DCE-9D0E-895FF44590DB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
107
|
+
{4442EA58-FBF0-4DCE-9D0E-895FF44590DB}.Release|Any CPU.Build.0 = Release|Any CPU
|
108
|
+
{4DAC0531-794B-4E0E-8A62-48FA8CB4AA5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
109
|
+
{4DAC0531-794B-4E0E-8A62-48FA8CB4AA5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
110
|
+
{4DAC0531-794B-4E0E-8A62-48FA8CB4AA5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
111
|
+
{4DAC0531-794B-4E0E-8A62-48FA8CB4AA5C}.Release|Any CPU.Build.0 = Release|Any CPU
|
112
|
+
{0AEA8D0D-6FFE-46A3-B078-B08C409C1731}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
113
|
+
{0AEA8D0D-6FFE-46A3-B078-B08C409C1731}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
114
|
+
{0AEA8D0D-6FFE-46A3-B078-B08C409C1731}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
115
|
+
{0AEA8D0D-6FFE-46A3-B078-B08C409C1731}.Release|Any CPU.Build.0 = Release|Any CPU
|
116
|
+
{F3AAC7AB-DC59-4290-8BBF-59EF80BA6DB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
117
|
+
{F3AAC7AB-DC59-4290-8BBF-59EF80BA6DB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
118
|
+
{F3AAC7AB-DC59-4290-8BBF-59EF80BA6DB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
119
|
+
{F3AAC7AB-DC59-4290-8BBF-59EF80BA6DB3}.Release|Any CPU.Build.0 = Release|Any CPU
|
120
|
+
{0DCEEE7C-C53C-446C-A3BC-D5C254A952F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
121
|
+
{0DCEEE7C-C53C-446C-A3BC-D5C254A952F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
122
|
+
{0DCEEE7C-C53C-446C-A3BC-D5C254A952F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
123
|
+
{0DCEEE7C-C53C-446C-A3BC-D5C254A952F4}.Release|Any CPU.Build.0 = Release|Any CPU
|
124
|
+
{BDBEBF91-F5FD-4589-B4FB-B3DE3103B04B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
125
|
+
{BDBEBF91-F5FD-4589-B4FB-B3DE3103B04B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
126
|
+
{BDBEBF91-F5FD-4589-B4FB-B3DE3103B04B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
127
|
+
{BDBEBF91-F5FD-4589-B4FB-B3DE3103B04B}.Release|Any CPU.Build.0 = Release|Any CPU
|
128
|
+
EndGlobalSection
|
129
|
+
GlobalSection(SolutionProperties) = preSolution
|
130
|
+
HideSolutionNode = FALSE
|
131
|
+
EndGlobalSection
|
132
|
+
GlobalSection(NestedProjects) = preSolution
|
133
|
+
{8F8EF09F-DB34-46F0-8EFC-B72CA498C198} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
134
|
+
{C54058D4-6E8F-42B3-A35E-734CC10AC152} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
135
|
+
{FFE5164F-999F-4F09-8607-10613C51712C} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
136
|
+
{6D050FD3-E1F4-4DDE-8313-879A86849DA8} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
137
|
+
{3EE95A8E-D907-4DFA-9CBF-00C497878C42} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
138
|
+
{3F764153-B736-49A7-B1E5-97446823FB8C} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
139
|
+
{F3AAA86A-5540-49B7-8C9C-17B18D95ADCD} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
140
|
+
{A9F779D8-B6EA-481D-9EA6-59D2028FF9CB} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
141
|
+
{304FFB77-E4CC-4997-870D-A9D8E38E19A2} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
142
|
+
{0C21F9AE-B44F-4EA5-8811-6207A865BCC7} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
143
|
+
{4442EA58-FBF0-4DCE-9D0E-895FF44590DB} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
144
|
+
{4DAC0531-794B-4E0E-8A62-48FA8CB4AA5C} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
145
|
+
{0AEA8D0D-6FFE-46A3-B078-B08C409C1731} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
146
|
+
{F3AAC7AB-DC59-4290-8BBF-59EF80BA6DB3} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
147
|
+
{0DCEEE7C-C53C-446C-A3BC-D5C254A952F4} = {1095100B-0857-4132-A4CF-D54C4124DED9}
|
148
|
+
EndGlobalSection
|
149
|
+
GlobalSection(ExtensibilityGlobals) = postSolution
|
150
|
+
SolutionGuid = {3DAF2124-E0B2-45D5-9059-3E5516C2531C}
|
151
|
+
EndGlobalSection
|
152
|
+
EndGlobal
|
@@ -32,7 +32,7 @@ module Dependabot
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def src_repo_from_project
|
35
|
-
source = dependency.requirements.find { |r| r
|
35
|
+
source = dependency.requirements.find { |r| r.fetch(:source) }&.fetch(:source)
|
36
36
|
return unless source
|
37
37
|
|
38
38
|
# Query the service index e.g. https://nuget.pkg.github.com/ORG/index.json
|
@@ -123,14 +123,14 @@ module Dependabot
|
|
123
123
|
|
124
124
|
def dependency_nuspec_url
|
125
125
|
source = dependency.requirements
|
126
|
-
.find { |r| r
|
126
|
+
.find { |r| r.fetch(:source) }&.fetch(:source)
|
127
127
|
|
128
128
|
source.fetch(:nuspec_url) if source&.key?(:nuspec_url)
|
129
129
|
end
|
130
130
|
|
131
131
|
def dependency_source_url
|
132
132
|
source = dependency.requirements
|
133
|
-
.find { |r| r
|
133
|
+
.find { |r| r.fetch(:source) }&.fetch(:source)
|
134
134
|
|
135
135
|
return unless source
|
136
136
|
return source.fetch(:source_url) if source.key?(:source_url)
|
@@ -141,7 +141,7 @@ module Dependabot
|
|
141
141
|
# rubocop:disable Metrics/PerceivedComplexity
|
142
142
|
def auth_header
|
143
143
|
source = dependency.requirements
|
144
|
-
.find { |r| r
|
144
|
+
.find { |r| r.fetch(:source) }&.fetch(:source)
|
145
145
|
url = source&.fetch(:url, nil) || source&.fetch("url")
|
146
146
|
|
147
147
|
token = credentials
|