dependabot-nuget 0.296.2 → 0.297.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0708236b226ad34f8cb1e82936f302be130b22d309dd633e6274cfb50449c72d'
4
- data.tar.gz: 48dcfb2d9de99161c31c973435e089ff4353a6f119dbb4cd9641b244420600b8
3
+ metadata.gz: a1c0055a192f1f7ba04688c5f10286d5103917786e7743ca8f8334743d544e66
4
+ data.tar.gz: 3b4185d98b4e4382f3f355a422db397995d542622da3f970b374e06762beec28
5
5
  SHA512:
6
- metadata.gz: 3cb6577339fb9c6e552df77e5ef10b54f0cbeb78926a9903c2cee3876be37cff686f49514f47ae6fe769db3ebeb398d3f5c39a9007d2d9ac75a6dbddbf4b4a73
7
- data.tar.gz: 3ef8f83134629fffc8e6402b471ee6777bd5cd04ec0daa2b4f9ecad84de109e265aea5b0b47f6ee981a762884ebc267a34adcdab4e7aa0c62890d33a39ead739
6
+ metadata.gz: d2d0fe1c5f5cd11ec52bca348a61f3b4548d9b71c5e4515b8f7484f9e4354f6cdd0b9c69fc40e05e3957a5be43f71608c0677605c2f083505d2179c77da5eedd
7
+ data.tar.gz: 432bd50b776f560ff5bc1e540a453f6cf0644e9c15e64a93e2d81cc08230b12d9f4bc062add5a4f728b27fd8c9a6b9da9291cc05ae592b265f52e04b71743c85
@@ -2,7 +2,7 @@
2
2
  <!-- The following properties enable target framework and dependency discovery when OS-specific workloads are required -->
3
3
  <PropertyGroup>
4
4
  <DesignTimeBuild>true</DesignTimeBuild>
5
- <EnableWindowsTargeting>true</EnableWindowsTargeting>
5
+ <EnableWindowsTargeting Condition="$(TargetFramework.Contains('-windows'))">true</EnableWindowsTargeting>
6
6
  <TargetPlatformVersion Condition="$(TargetPlatformVersion) == '' AND $(TargetFramework.Contains('-'))">1.0</TargetPlatformVersion>
7
7
  </PropertyGroup>
8
8
  </Project>
@@ -784,11 +784,11 @@ internal static partial class MSBuildHelper
784
784
  var targetsHelperPath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)!, "TargetFrameworkReporter.targets");
785
785
  var (exitCode, stdOut, stdErr) = await ProcessEx.RunDotnetWithoutMSBuildEnvironmentVariablesAsync(
786
786
  [
787
- "build",
787
+ "msbuild",
788
788
  projectPath,
789
789
  "/t:ReportTargetFramework",
790
790
  $"/p:CustomAfterMicrosoftCommonCrossTargetingTargets={targetsHelperPath}",
791
- $"/p:CustomAfterMicrosoftCommonTargets={targetsHelperPath}"
791
+ $"/p:CustomAfterMicrosoftCommonTargets={targetsHelperPath}",
792
792
  ],
793
793
  projectDirectory,
794
794
  experimentsManager
@@ -833,6 +833,12 @@ internal static partial class MSBuildHelper
833
833
  var framework = string.IsNullOrWhiteSpace(tfpm.Item2)
834
834
  ? NuGetFramework.Parse(tfpm.Item1)
835
835
  : NuGetFramework.ParseComponents(tfpm.Item1, tfpm.Item2);
836
+ if (framework.Framework == "_")
837
+ {
838
+ // error/default value
839
+ return null;
840
+ }
841
+
836
842
  return framework;
837
843
  }
838
844
  catch
@@ -154,7 +154,7 @@ internal static class PathHelper
154
154
  }
155
155
 
156
156
  // Normalize all resulting paths to Unix format
157
- return currentPaths.Select(path => path.NormalizePathToUnix()).ToList();
157
+ return currentPaths.Select(path => path.NormalizePathToUnix()).OrderBy(path => path, StringComparer.Ordinal).ToList();
158
158
  }
159
159
 
160
160
  /// <summary>
@@ -23,12 +23,13 @@ public class DiscoveryWorkerTestBase : TestBase
23
23
  TestFile[] files,
24
24
  ExpectedWorkspaceDiscoveryResult expectedResult,
25
25
  MockNuGetPackage[]? packages = null,
26
+ bool includeCommonPackages = true,
26
27
  ExperimentsManager? experimentsManager = null)
27
28
  {
28
29
  experimentsManager ??= new ExperimentsManager();
29
30
  var actualResult = await RunDiscoveryAsync(files, async directoryPath =>
30
31
  {
31
- await UpdateWorkerTestBase.MockNuGetPackagesInDirectory(packages, directoryPath);
32
+ await UpdateWorkerTestBase.MockNuGetPackagesInDirectory(packages, directoryPath, includeCommonPackages: includeCommonPackages);
32
33
 
33
34
  var worker = new DiscoveryWorker("TEST-JOB-ID", experimentsManager, new TestLogger());
34
35
  var result = await worker.RunWithErrorHandlingAsync(directoryPath, workspacePath);
@@ -1247,4 +1247,51 @@ public partial class DiscoveryWorkerTests : DiscoveryWorkerTestBase
1247
1247
  }
1248
1248
  );
1249
1249
  }
1250
+
1251
+ [LinuxOnlyFact]
1252
+ public async Task DiscoverySucceedsWhenNoWindowsAppRefPackageCanBeFound()
1253
+ {
1254
+ // this test mimics a package feed that doesn't have the common Microsoft.Windows.App.Ref package; common in Azure DevOps
1255
+ // Windows machines always have the package, so this test only makes sense on Linux
1256
+ await TestDiscoveryAsync(
1257
+ experimentsManager: new ExperimentsManager() { InstallDotnetSdks = true, UseDirectDiscovery = true },
1258
+ includeCommonPackages: false,
1259
+ packages: [
1260
+ MockNuGetPackage.CreateSimplePackage("Some.Package", "1.2.3", "net8.0"),
1261
+ ],
1262
+ workspacePath: "",
1263
+ files: [
1264
+ ("project.csproj", """
1265
+ <Project Sdk="Microsoft.NET.Sdk">
1266
+ <PropertyGroup>
1267
+ <TargetFramework>net8.0</TargetFramework>
1268
+ </PropertyGroup>
1269
+ <ItemGroup>
1270
+ <PackageReference Include="Some.Package" Version="1.2.3" />
1271
+ </ItemGroup>
1272
+ </Project>
1273
+ """)
1274
+ ],
1275
+ expectedResult: new()
1276
+ {
1277
+ Path = "",
1278
+ Projects = [
1279
+ new()
1280
+ {
1281
+ FilePath = "project.csproj",
1282
+ TargetFrameworks = ["net8.0"],
1283
+ Dependencies = [
1284
+ new("Some.Package", "1.2.3", DependencyType.PackageReference, TargetFrameworks: ["net8.0"], IsDirect: true)
1285
+ ],
1286
+ Properties = [
1287
+ new("TargetFramework", "net8.0", "project.csproj"),
1288
+ ],
1289
+ ReferencedProjectPaths = [],
1290
+ ImportedFiles = [],
1291
+ AdditionalFiles = [],
1292
+ }
1293
+ ]
1294
+ }
1295
+ );
1296
+ }
1250
1297
  }
@@ -298,13 +298,17 @@ public abstract class UpdateWorkerTestBase : TestBase
298
298
  await File.WriteAllTextAsync(Path.Join(temporaryDirectory, "job.json"), JsonSerializer.Serialize(jobFile, RunWorker.SerializerOptions));
299
299
  }
300
300
 
301
- public static async Task MockNuGetPackagesInDirectory(MockNuGetPackage[]? packages, string temporaryDirectory)
301
+ public static async Task MockNuGetPackagesInDirectory(MockNuGetPackage[]? packages, string temporaryDirectory, bool includeCommonPackages = true)
302
302
  {
303
303
  if (packages is not null)
304
304
  {
305
305
  string localFeedPath = Path.Join(temporaryDirectory, "local-feed");
306
306
  Directory.CreateDirectory(localFeedPath);
307
- MockNuGetPackage[] allPackages = packages.Concat(MockNuGetPackage.CommonPackages).ToArray();
307
+ var allPackages = packages;
308
+ if (includeCommonPackages)
309
+ {
310
+ allPackages = allPackages.Concat(MockNuGetPackage.CommonPackages).ToArray();
311
+ }
308
312
 
309
313
  // write all packages to disk
310
314
  foreach (MockNuGetPackage package in allPackages)
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.296.2
4
+ version: 0.297.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-11 00:00:00.000000000 Z
11
+ date: 2025-02-13 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.296.2
19
+ version: 0.297.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.296.2
26
+ version: 0.297.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rubyzip
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -533,7 +533,7 @@ licenses:
533
533
  - MIT
534
534
  metadata:
535
535
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
536
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.296.2
536
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.297.0
537
537
  post_install_message:
538
538
  rdoc_options: []
539
539
  require_paths: