dependabot-nuget 0.283.0 → 0.285.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/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/CloneCommand.cs +40 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Program.cs +1 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Run.cs +0 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/CloneWorker.cs +144 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/IGitCommandHandler.cs +6 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/ShellGitCommandHandler.cs +37 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/DependencyFileNotFound.cs +5 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/Job.cs +1 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobErrorBase.cs +9 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobRepoNotFound.cs +13 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobSource.cs +2 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/MarkAsProcessed.cs +6 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/PrivateSourceAuthenticationFailure.cs +5 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/UnknownError.cs +5 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/UpdateNotPossible.cs +5 -1
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/HttpApiHandler.cs +8 -2
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/RunWorker.cs +73 -31
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/BindingRedirectManager.cs +30 -9
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/PackagesConfigUpdater.cs +3 -3
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/PathHelper.cs +2 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/CloneWorkerTests.cs +183 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/TestGitCommandHandler.cs +16 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/RunWorkerTests.cs +640 -17
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/SerializationTests.cs +10 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/UpdatedDependencyListTests.cs +53 -6
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/BindingRedirectsTests.cs +225 -0
- data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackagesConfig.cs +106 -0
- metadata +13 -5
@@ -1,4 +1,5 @@
|
|
1
1
|
using NuGetUpdater.Core.Run;
|
2
|
+
using NuGetUpdater.Core.Run.ApiModel;
|
2
3
|
|
3
4
|
using Xunit;
|
4
5
|
|
@@ -57,4 +58,13 @@ public class SerializationTests
|
|
57
58
|
Assert.Equal("some-org/some-repo", jobWrapper.Job.Source.Repo);
|
58
59
|
Assert.Equal("specific-sdk", jobWrapper.Job.Source.Directory);
|
59
60
|
}
|
61
|
+
|
62
|
+
[Fact]
|
63
|
+
public void SerializeError()
|
64
|
+
{
|
65
|
+
var error = new JobRepoNotFound("some message");
|
66
|
+
var actual = HttpApiHandler.Serialize(error);
|
67
|
+
var expected = """{"data":{"error-type":"job_repo_not_found","error-details":{"message":"some message"}}}""";
|
68
|
+
Assert.Equal(expected, actual);
|
69
|
+
}
|
60
70
|
}
|
@@ -13,6 +13,18 @@ public class UpdatedDependencyListTests
|
|
13
13
|
[Fact]
|
14
14
|
public void GetUpdatedDependencyListFromDiscovery()
|
15
15
|
{
|
16
|
+
using var temp = new TemporaryDirectory();
|
17
|
+
Directory.CreateDirectory(Path.Combine(temp.DirectoryPath, "src", "a"));
|
18
|
+
Directory.CreateDirectory(Path.Combine(temp.DirectoryPath, "src", "b"));
|
19
|
+
Directory.CreateDirectory(Path.Combine(temp.DirectoryPath, "src", "c"));
|
20
|
+
|
21
|
+
File.WriteAllText(Path.Combine(temp.DirectoryPath, "src", "a", "packages.config"), "");
|
22
|
+
File.WriteAllText(Path.Combine(temp.DirectoryPath, "src", "b", "packages.config"), "");
|
23
|
+
File.WriteAllText(Path.Combine(temp.DirectoryPath, "src", "c", "packages.config"), "");
|
24
|
+
File.WriteAllText(Path.Combine(temp.DirectoryPath, "src", "a", "project.csproj"), "");
|
25
|
+
File.WriteAllText(Path.Combine(temp.DirectoryPath, "src", "b", "project.csproj"), "");
|
26
|
+
File.WriteAllText(Path.Combine(temp.DirectoryPath, "src", "c", "project.csproj"), "");
|
27
|
+
|
16
28
|
var discovery = new WorkspaceDiscoveryResult()
|
17
29
|
{
|
18
30
|
Path = "src",
|
@@ -20,10 +32,31 @@ public class UpdatedDependencyListTests
|
|
20
32
|
Projects = [
|
21
33
|
new()
|
22
34
|
{
|
23
|
-
FilePath = "project.csproj",
|
35
|
+
FilePath = "a/project.csproj",
|
24
36
|
Dependencies = [
|
25
37
|
new("Microsoft.Extensions.DependencyModel", "6.0.0", DependencyType.PackageReference, TargetFrameworks: ["net6.0"]),
|
38
|
+
],
|
39
|
+
IsSuccess = true,
|
40
|
+
Properties = [],
|
41
|
+
TargetFrameworks = ["net8.0"],
|
42
|
+
ReferencedProjectPaths = [],
|
43
|
+
},
|
44
|
+
new()
|
45
|
+
{
|
46
|
+
FilePath = "b/project.csproj",
|
47
|
+
Dependencies = [
|
48
|
+
],
|
49
|
+
IsSuccess = true,
|
50
|
+
Properties = [],
|
51
|
+
TargetFrameworks = ["net8.0"],
|
52
|
+
ReferencedProjectPaths = [],
|
53
|
+
},
|
54
|
+
new()
|
55
|
+
{
|
56
|
+
FilePath = "c/project.csproj",
|
57
|
+
Dependencies = [
|
26
58
|
new("System.Text.Json", "6.0.0", DependencyType.Unknown, TargetFrameworks: ["net6.0"], IsTransitive: true),
|
59
|
+
new("Newtonsoft.Json", "13.0.1", DependencyType.PackagesConfig, TargetFrameworks: ["net6.0"]),
|
27
60
|
],
|
28
61
|
IsSuccess = true,
|
29
62
|
Properties = [],
|
@@ -32,7 +65,7 @@ public class UpdatedDependencyListTests
|
|
32
65
|
}
|
33
66
|
]
|
34
67
|
};
|
35
|
-
var updatedDependencyList = RunWorker.GetUpdatedDependencyListFromDiscovery(discovery);
|
68
|
+
var updatedDependencyList = RunWorker.GetUpdatedDependencyListFromDiscovery(discovery, pathToContents: temp.DirectoryPath);
|
36
69
|
var expectedDependencyList = new UpdatedDependencyList()
|
37
70
|
{
|
38
71
|
Dependencies =
|
@@ -46,9 +79,9 @@ public class UpdatedDependencyListTests
|
|
46
79
|
new ReportedRequirement()
|
47
80
|
{
|
48
81
|
Requirement = "6.0.0",
|
49
|
-
File = "/src/project.csproj",
|
82
|
+
File = "/src/a/project.csproj",
|
50
83
|
Groups = ["dependencies"],
|
51
|
-
}
|
84
|
+
},
|
52
85
|
]
|
53
86
|
},
|
54
87
|
new ReportedDependency()
|
@@ -56,9 +89,23 @@ public class UpdatedDependencyListTests
|
|
56
89
|
Name = "System.Text.Json",
|
57
90
|
Version = "6.0.0",
|
58
91
|
Requirements = [],
|
59
|
-
}
|
92
|
+
},
|
93
|
+
new ReportedDependency()
|
94
|
+
{
|
95
|
+
Name = "Newtonsoft.Json",
|
96
|
+
Version = "13.0.1",
|
97
|
+
Requirements =
|
98
|
+
[
|
99
|
+
new ReportedRequirement()
|
100
|
+
{
|
101
|
+
Requirement = "13.0.1",
|
102
|
+
File = "/src/c/packages.config",
|
103
|
+
Groups = ["dependencies"],
|
104
|
+
},
|
105
|
+
]
|
106
|
+
},
|
60
107
|
],
|
61
|
-
DependencyFiles = ["/src/project.csproj"],
|
108
|
+
DependencyFiles = ["/src/a/project.csproj", "/src/b/project.csproj", "/src/c/project.csproj", "/src/a/packages.config", "/src/b/packages.config", "/src/c/packages.config"],
|
62
109
|
};
|
63
110
|
|
64
111
|
// doing JSON comparison makes this easier; we don't have to define custom record equality and we get an easy diff
|
@@ -0,0 +1,225 @@
|
|
1
|
+
using Xunit;
|
2
|
+
|
3
|
+
namespace NuGetUpdater.Core.Test.Update;
|
4
|
+
|
5
|
+
public class BindingRedirectsTests
|
6
|
+
{
|
7
|
+
[Fact]
|
8
|
+
public async Task SimpleBindingRedirectIsPerformed()
|
9
|
+
{
|
10
|
+
await VerifyBindingRedirectsAsync(
|
11
|
+
projectContents: """
|
12
|
+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
13
|
+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
14
|
+
<PropertyGroup>
|
15
|
+
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
16
|
+
</PropertyGroup>
|
17
|
+
<ItemGroup>
|
18
|
+
<None Include="app.config" />
|
19
|
+
</ItemGroup>
|
20
|
+
<ItemGroup>
|
21
|
+
<Reference Include="Some.Package, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null">
|
22
|
+
<HintPath>packages\Some.Package.2.0.0\lib\net45\Some.Package.dll</HintPath>
|
23
|
+
<Private>True</Private>
|
24
|
+
</Reference>
|
25
|
+
</ItemGroup>
|
26
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
27
|
+
</Project>
|
28
|
+
""",
|
29
|
+
configContents: """
|
30
|
+
<configuration>
|
31
|
+
<runtime>
|
32
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
33
|
+
<dependentAssembly>
|
34
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
35
|
+
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
|
36
|
+
</dependentAssembly>
|
37
|
+
</assemblyBinding>
|
38
|
+
</runtime>
|
39
|
+
</configuration>
|
40
|
+
""",
|
41
|
+
updatedPackageName: "Some.Package",
|
42
|
+
updatedPackageVersion: "2.0.0",
|
43
|
+
expectedConfigContents: """
|
44
|
+
<configuration>
|
45
|
+
<runtime>
|
46
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
47
|
+
<dependentAssembly>
|
48
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
49
|
+
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
|
50
|
+
</dependentAssembly>
|
51
|
+
</assemblyBinding>
|
52
|
+
</runtime>
|
53
|
+
</configuration>
|
54
|
+
"""
|
55
|
+
);
|
56
|
+
}
|
57
|
+
|
58
|
+
[Fact]
|
59
|
+
public async Task ConfigFileIndentationIsPreserved()
|
60
|
+
{
|
61
|
+
await VerifyBindingRedirectsAsync(
|
62
|
+
projectContents: """
|
63
|
+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
64
|
+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
65
|
+
<PropertyGroup>
|
66
|
+
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
67
|
+
</PropertyGroup>
|
68
|
+
<ItemGroup>
|
69
|
+
<None Include="app.config" />
|
70
|
+
</ItemGroup>
|
71
|
+
<ItemGroup>
|
72
|
+
<Reference Include="Some.Package, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null">
|
73
|
+
<HintPath>packages\Some.Package.2.0.0\lib\net45\Some.Package.dll</HintPath>
|
74
|
+
<Private>True</Private>
|
75
|
+
</Reference>
|
76
|
+
</ItemGroup>
|
77
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
78
|
+
</Project>
|
79
|
+
""",
|
80
|
+
configContents: """
|
81
|
+
<configuration>
|
82
|
+
<runtime>
|
83
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
84
|
+
<dependentAssembly>
|
85
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
86
|
+
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
|
87
|
+
</dependentAssembly>
|
88
|
+
</assemblyBinding>
|
89
|
+
</runtime>
|
90
|
+
</configuration>
|
91
|
+
""",
|
92
|
+
updatedPackageName: "Some.Package",
|
93
|
+
updatedPackageVersion: "2.0.0",
|
94
|
+
expectedConfigContents: """
|
95
|
+
<configuration>
|
96
|
+
<runtime>
|
97
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
98
|
+
<dependentAssembly>
|
99
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
100
|
+
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
|
101
|
+
</dependentAssembly>
|
102
|
+
</assemblyBinding>
|
103
|
+
</runtime>
|
104
|
+
</configuration>
|
105
|
+
"""
|
106
|
+
);
|
107
|
+
}
|
108
|
+
|
109
|
+
[Fact]
|
110
|
+
public async Task NoExtraBindingsAreAdded()
|
111
|
+
{
|
112
|
+
await VerifyBindingRedirectsAsync(
|
113
|
+
projectContents: """
|
114
|
+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
115
|
+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
116
|
+
<PropertyGroup>
|
117
|
+
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
118
|
+
</PropertyGroup>
|
119
|
+
<ItemGroup>
|
120
|
+
<None Include="app.config" />
|
121
|
+
</ItemGroup>
|
122
|
+
<ItemGroup>
|
123
|
+
<Reference Include="Some.Package, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null">
|
124
|
+
<HintPath>packages\Some.Package.2.0.0\lib\net45\Some.Package.dll</HintPath>
|
125
|
+
<Private>True</Private>
|
126
|
+
</Reference>
|
127
|
+
<Reference Include="Some.Unrelated.Package, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null">
|
128
|
+
<HintPath>packages\Some.Unrelated.Package.3.0.0\lib\net45\Some.Package.dll</HintPath>
|
129
|
+
<Private>True</Private>
|
130
|
+
</Reference>
|
131
|
+
</ItemGroup>
|
132
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
133
|
+
</Project>
|
134
|
+
""",
|
135
|
+
configContents: """
|
136
|
+
<configuration>
|
137
|
+
<runtime>
|
138
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
139
|
+
<dependentAssembly>
|
140
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
141
|
+
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
|
142
|
+
</dependentAssembly>
|
143
|
+
</assemblyBinding>
|
144
|
+
</runtime>
|
145
|
+
</configuration>
|
146
|
+
""",
|
147
|
+
updatedPackageName: "Some.Package",
|
148
|
+
updatedPackageVersion: "2.0.0",
|
149
|
+
expectedConfigContents: """
|
150
|
+
<configuration>
|
151
|
+
<runtime>
|
152
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
153
|
+
<dependentAssembly>
|
154
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
155
|
+
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
|
156
|
+
</dependentAssembly>
|
157
|
+
</assemblyBinding>
|
158
|
+
</runtime>
|
159
|
+
</configuration>
|
160
|
+
"""
|
161
|
+
);
|
162
|
+
}
|
163
|
+
|
164
|
+
[Fact]
|
165
|
+
public async Task NewBindingIsAdded()
|
166
|
+
{
|
167
|
+
await VerifyBindingRedirectsAsync(
|
168
|
+
projectContents: """
|
169
|
+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
170
|
+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
171
|
+
<PropertyGroup>
|
172
|
+
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
173
|
+
</PropertyGroup>
|
174
|
+
<ItemGroup>
|
175
|
+
<None Include="app.config" />
|
176
|
+
</ItemGroup>
|
177
|
+
<ItemGroup>
|
178
|
+
<Reference Include="Some.Package, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null">
|
179
|
+
<HintPath>packages\Some.Package.2.0.0\lib\net45\Some.Package.dll</HintPath>
|
180
|
+
<Private>True</Private>
|
181
|
+
</Reference>
|
182
|
+
</ItemGroup>
|
183
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
184
|
+
</Project>
|
185
|
+
""",
|
186
|
+
configContents: """
|
187
|
+
<configuration>
|
188
|
+
<runtime />
|
189
|
+
</configuration>
|
190
|
+
""",
|
191
|
+
updatedPackageName: "Some.Package",
|
192
|
+
updatedPackageVersion: "2.0.0",
|
193
|
+
expectedConfigContents: """
|
194
|
+
<configuration>
|
195
|
+
<runtime>
|
196
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
197
|
+
<dependentAssembly>
|
198
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
199
|
+
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
|
200
|
+
</dependentAssembly>
|
201
|
+
</assemblyBinding>
|
202
|
+
</runtime>
|
203
|
+
</configuration>
|
204
|
+
"""
|
205
|
+
);
|
206
|
+
}
|
207
|
+
|
208
|
+
private static async Task VerifyBindingRedirectsAsync(string projectContents, string configContents, string expectedConfigContents, string updatedPackageName, string updatedPackageVersion, string configFileName = "app.config")
|
209
|
+
{
|
210
|
+
using var tempDir = new TemporaryDirectory();
|
211
|
+
var projectFileName = "project.csproj";
|
212
|
+
var projectFilePath = Path.Combine(tempDir.DirectoryPath, projectFileName);
|
213
|
+
var configFilePath = Path.Combine(tempDir.DirectoryPath, configFileName);
|
214
|
+
|
215
|
+
await File.WriteAllTextAsync(projectFilePath, projectContents);
|
216
|
+
await File.WriteAllTextAsync(configFilePath, configContents);
|
217
|
+
|
218
|
+
var projectBuildFile = ProjectBuildFile.Open(tempDir.DirectoryPath, projectFilePath);
|
219
|
+
await BindingRedirectManager.UpdateBindingRedirectsAsync(projectBuildFile, updatedPackageName, updatedPackageVersion);
|
220
|
+
|
221
|
+
var actualConfigContents = (await File.ReadAllTextAsync(configFilePath)).Replace("\r", "");
|
222
|
+
expectedConfigContents = expectedConfigContents.Replace("\r", "");
|
223
|
+
Assert.Equal(expectedConfigContents, actualConfigContents);
|
224
|
+
}
|
225
|
+
}
|
data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackagesConfig.cs
CHANGED
@@ -594,6 +594,7 @@ public partial class UpdateWorkerTests
|
|
594
594
|
[
|
595
595
|
MockNuGetPackage.CreatePackageWithAssembly("Some.Package", "7.0.1", "net45", "7.0.0.0"),
|
596
596
|
MockNuGetPackage.CreatePackageWithAssembly("Some.Package", "13.0.1", "net45", "13.0.0.0"),
|
597
|
+
MockNuGetPackage.CreatePackageWithAssembly("Unrelated.Package", "1.2.3", "net45","1.2.0.0"),
|
597
598
|
],
|
598
599
|
projectContents: """
|
599
600
|
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
@@ -612,6 +613,10 @@ public partial class UpdateWorkerTests
|
|
612
613
|
<HintPath>packages\Some.Package.7.0.1\lib\net45\Some.Package.dll</HintPath>
|
613
614
|
<Private>True</Private>
|
614
615
|
</Reference>
|
616
|
+
<Reference Include="Unrelated.Package, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null">
|
617
|
+
<HintPath>packages\Unrelated.Package.1.2.3\lib\net45\Unrelated.Package.dll</HintPath>
|
618
|
+
<Private>True</Private>
|
619
|
+
</Reference>
|
615
620
|
</ItemGroup>
|
616
621
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
617
622
|
</Project>
|
@@ -653,6 +658,107 @@ public partial class UpdateWorkerTests
|
|
653
658
|
<HintPath>packages\Some.Package.13.0.1\lib\net45\Some.Package.dll</HintPath>
|
654
659
|
<Private>True</Private>
|
655
660
|
</Reference>
|
661
|
+
<Reference Include="Unrelated.Package, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null">
|
662
|
+
<HintPath>packages\Unrelated.Package.1.2.3\lib\net45\Unrelated.Package.dll</HintPath>
|
663
|
+
<Private>True</Private>
|
664
|
+
</Reference>
|
665
|
+
</ItemGroup>
|
666
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
667
|
+
</Project>
|
668
|
+
""",
|
669
|
+
expectedPackagesConfigContents: """
|
670
|
+
<?xml version="1.0" encoding="utf-8"?>
|
671
|
+
<packages>
|
672
|
+
<package id="Some.Package" version="13.0.1" targetFramework="net45" />
|
673
|
+
</packages>
|
674
|
+
""",
|
675
|
+
additionalFilesExpected:
|
676
|
+
[
|
677
|
+
("app.config", """
|
678
|
+
<configuration>
|
679
|
+
<runtime>
|
680
|
+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
681
|
+
<dependentAssembly>
|
682
|
+
<assemblyIdentity name="Some.Package" publicKeyToken="null" culture="neutral" />
|
683
|
+
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
|
684
|
+
</dependentAssembly>
|
685
|
+
</assemblyBinding>
|
686
|
+
</runtime>
|
687
|
+
</configuration>
|
688
|
+
""")
|
689
|
+
]
|
690
|
+
);
|
691
|
+
}
|
692
|
+
|
693
|
+
[Fact]
|
694
|
+
public async Task BindingRedirectIsAddedForUpdatedPackage()
|
695
|
+
{
|
696
|
+
await TestUpdateForProject("Some.Package", "7.0.1", "13.0.1",
|
697
|
+
packages:
|
698
|
+
[
|
699
|
+
MockNuGetPackage.CreatePackageWithAssembly("Some.Package", "7.0.1", "net45", "7.0.0.0"),
|
700
|
+
MockNuGetPackage.CreatePackageWithAssembly("Some.Package", "13.0.1", "net45", "13.0.0.0"),
|
701
|
+
MockNuGetPackage.CreatePackageWithAssembly("Unrelated.Package", "1.2.3", "net45","1.2.0.0"),
|
702
|
+
],
|
703
|
+
projectContents: """
|
704
|
+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
705
|
+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
706
|
+
<PropertyGroup>
|
707
|
+
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
708
|
+
</PropertyGroup>
|
709
|
+
<ItemGroup>
|
710
|
+
<None Include="packages.config" />
|
711
|
+
</ItemGroup>
|
712
|
+
<ItemGroup>
|
713
|
+
<None Include="app.config" />
|
714
|
+
</ItemGroup>
|
715
|
+
<ItemGroup>
|
716
|
+
<Reference Include="Some.Package, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null">
|
717
|
+
<HintPath>packages\Some.Package.7.0.1\lib\net45\Some.Package.dll</HintPath>
|
718
|
+
<Private>True</Private>
|
719
|
+
</Reference>
|
720
|
+
<Reference Include="Unrelated.Package, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null">
|
721
|
+
<HintPath>packages\Unrelated.Package.1.2.3\lib\net45\Unrelated.Package.dll</HintPath>
|
722
|
+
<Private>True</Private>
|
723
|
+
</Reference>
|
724
|
+
</ItemGroup>
|
725
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
726
|
+
</Project>
|
727
|
+
""",
|
728
|
+
packagesConfigContents: """
|
729
|
+
<packages>
|
730
|
+
<package id="Some.Package" version="7.0.1" targetFramework="net45" />
|
731
|
+
</packages>
|
732
|
+
""",
|
733
|
+
additionalFiles:
|
734
|
+
[
|
735
|
+
("app.config", """
|
736
|
+
<configuration>
|
737
|
+
<runtime />
|
738
|
+
</configuration>
|
739
|
+
""")
|
740
|
+
],
|
741
|
+
expectedProjectContents: """
|
742
|
+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
743
|
+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
744
|
+
<PropertyGroup>
|
745
|
+
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
746
|
+
</PropertyGroup>
|
747
|
+
<ItemGroup>
|
748
|
+
<None Include="packages.config" />
|
749
|
+
</ItemGroup>
|
750
|
+
<ItemGroup>
|
751
|
+
<None Include="app.config" />
|
752
|
+
</ItemGroup>
|
753
|
+
<ItemGroup>
|
754
|
+
<Reference Include="Some.Package, Version=13.0.0.0, Culture=neutral, PublicKeyToken=null">
|
755
|
+
<HintPath>packages\Some.Package.13.0.1\lib\net45\Some.Package.dll</HintPath>
|
756
|
+
<Private>True</Private>
|
757
|
+
</Reference>
|
758
|
+
<Reference Include="Unrelated.Package, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null">
|
759
|
+
<HintPath>packages\Unrelated.Package.1.2.3\lib\net45\Unrelated.Package.dll</HintPath>
|
760
|
+
<Private>True</Private>
|
761
|
+
</Reference>
|
656
762
|
</ItemGroup>
|
657
763
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
658
764
|
</Project>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dependabot-nuget
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.285.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dependabot
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-11-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dependabot-common
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.285.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.285.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rubyzip
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -297,6 +297,7 @@ files:
|
|
297
297
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Update.cs
|
298
298
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/NuGetUpdater.Cli.Test.csproj
|
299
299
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/AnalyzeCommand.cs
|
300
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/CloneCommand.cs
|
300
301
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/DiscoverCommand.cs
|
301
302
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/FrameworkCheckCommand.cs
|
302
303
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/RunCommand.cs
|
@@ -310,6 +311,8 @@ files:
|
|
310
311
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Analyze/RequirementTests.cs
|
311
312
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Analyze/SecurityVulnerabilityExtensionsTests.cs
|
312
313
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Analyze/VersionFinderTests.cs
|
314
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/CloneWorkerTests.cs
|
315
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/TestGitCommandHandler.cs
|
313
316
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/DependencySolverEnvironment.cs
|
314
317
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTestBase.cs
|
315
318
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.DotNetToolsJson.cs
|
@@ -338,6 +341,7 @@ files:
|
|
338
341
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/TestExtensions.cs
|
339
342
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/TestHttpServer.cs
|
340
343
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/TestLogger.cs
|
344
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/BindingRedirectsTests.cs
|
341
345
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/ExpectedUpdateOperationResult.cs
|
342
346
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/PackagesConfigUpdaterTests.cs
|
343
347
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTestBase.cs
|
@@ -366,6 +370,9 @@ files:
|
|
366
370
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/SecurityVulnerabilityExtensions.cs
|
367
371
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionFinder.cs
|
368
372
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionResult.cs
|
373
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/CloneWorker.cs
|
374
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/IGitCommandHandler.cs
|
375
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/ShellGitCommandHandler.cs
|
369
376
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Dependency.cs
|
370
377
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/DependencyType.cs
|
371
378
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/DirectoryPackagesPropsDiscovery.cs
|
@@ -406,6 +413,7 @@ files:
|
|
406
413
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/Job.cs
|
407
414
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobErrorBase.cs
|
408
415
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobFile.cs
|
416
|
+
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobRepoNotFound.cs
|
409
417
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobSource.cs
|
410
418
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/MarkAsProcessed.cs
|
411
419
|
- helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/PrivateSourceAuthenticationFailure.cs
|
@@ -497,7 +505,7 @@ licenses:
|
|
497
505
|
- MIT
|
498
506
|
metadata:
|
499
507
|
bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
|
500
|
-
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.
|
508
|
+
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.285.0
|
501
509
|
post_install_message:
|
502
510
|
rdoc_options: []
|
503
511
|
require_paths:
|