dependabot-nuget 0.290.0 → 0.292.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/helpers/lib/NuGetUpdater/.editorconfig +1 -0
  3. data/helpers/lib/NuGetUpdater/Directory.Build.props +1 -0
  4. data/helpers/lib/NuGetUpdater/Directory.Packages.props +1 -1
  5. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/AnalyzeCommand.cs +1 -1
  6. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/CloneCommand.cs +1 -1
  7. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/DiscoverCommand.cs +15 -1
  8. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/RunCommand.cs +2 -2
  9. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli/Commands/UpdateCommand.cs +1 -1
  10. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Analyze.cs +2 -1
  11. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Discover.cs +87 -3
  12. data/helpers/lib/NuGetUpdater/NuGetUpdater.Cli.Test/EntryPointTests.Update.cs +1 -1
  13. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/AnalyzeWorker.cs +14 -0
  14. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/DependencyFinder.cs +2 -0
  15. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/RequirementConverter.cs +19 -1
  16. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/BadRequirementException.cs +9 -0
  17. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/CloneWorker.cs +39 -8
  18. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/DiscoveryWorker.cs +111 -17
  19. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/PackagesConfigDiscovery.cs +2 -2
  20. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/ProjectDiscoveryResult.cs +2 -0
  21. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Discover/SdkProjectDiscovery.cs +19 -11
  22. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/ErrorType.cs +2 -0
  23. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/ExperimentsManager.cs +31 -5
  24. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/NuGetUpdater.Core.csproj +1 -0
  25. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/BadRequirement.cs +10 -0
  26. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/CommitOptions.cs +1 -1
  27. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/DependencyFileNotFound.cs +3 -2
  28. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobErrorBase.cs +1 -2
  29. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/JobRepoNotFound.cs +1 -4
  30. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/PrivateSourceAuthenticationFailure.cs +1 -1
  31. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/UnknownError.cs +6 -2
  32. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/UpdateNotPossible.cs +1 -1
  33. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/RunWorker.cs +9 -3
  34. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/LockFileUpdater.cs +3 -2
  35. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/PackageReferenceUpdater.cs +43 -18
  36. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/UpdaterWorker.cs +1 -1
  37. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Updater/WebApplicationTargetsConditionPatcher.cs +12 -1
  38. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/DependencyConflictResolver.cs +0 -7
  39. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/MSBuildHelper.cs +48 -17
  40. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/NuGetHelper.cs +2 -2
  41. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/ProcessExtensions.cs +45 -7
  42. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core/Utilities/ProjectHelper.cs +4 -4
  43. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Clone/CloneWorkerTests.cs +60 -2
  44. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTestBase.cs +10 -1
  45. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.PackagesConfig.cs +56 -0
  46. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/DiscoveryWorkerTests.cs +41 -0
  47. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/ExpectedDiscoveryResults.cs +2 -0
  48. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Discover/SdkProjectDiscoveryTests.cs +1 -1
  49. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/MockNuGetPackage.cs +2 -1
  50. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/RunWorkerTests.cs +1 -1
  51. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Run/SerializationTests.cs +76 -40
  52. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTestBase.cs +20 -2
  53. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.GlobalJson.cs +2 -2
  54. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.LockFile.cs +251 -0
  55. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackageReference.cs +6 -6
  56. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackagesConfig.cs +63 -5
  57. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/MSBuildHelperTests.cs +277 -73
  58. data/helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/ProjectHelperTests.cs +65 -0
  59. data/helpers/lib/NuGetUpdater/global.json +1 -1
  60. data/lib/dependabot/nuget/file_fetcher.rb +1 -0
  61. data/lib/dependabot/nuget/file_parser.rb +90 -0
  62. data/lib/dependabot/nuget/language.rb +98 -0
  63. data/lib/dependabot/nuget/native_helpers.rb +25 -0
  64. data/lib/dependabot/nuget/package_manager.rb +51 -0
  65. metadata +12 -6
@@ -0,0 +1,65 @@
1
+ using NuGetUpdater.Core.Utilities;
2
+
3
+ using Xunit;
4
+
5
+ namespace NuGetUpdater.Core.Test.Utilities;
6
+
7
+ public class ProjectHelperTests : TestBase
8
+ {
9
+ [Theory]
10
+ [MemberData(nameof(AdditionalFile))]
11
+ public async Task GetAdditionalFilesFromProject(string projectPath, (string Name, string Content)[] files, string[] expectedAdditionalFiles)
12
+ {
13
+ using var tempDirectory = await TemporaryDirectory.CreateWithContentsAsync(files);
14
+ var fullProjectPath = Path.Join(tempDirectory.DirectoryPath, projectPath);
15
+
16
+ var actualAdditionalFiles = ProjectHelper.GetAllAdditionalFilesFromProject(fullProjectPath, ProjectHelper.PathFormat.Relative);
17
+ AssertEx.Equal(expectedAdditionalFiles, actualAdditionalFiles);
18
+ }
19
+
20
+ public static IEnumerable<object[]> AdditionalFile()
21
+ {
22
+ // no additional files
23
+ yield return
24
+ [
25
+ // project path
26
+ "src/project.csproj",
27
+ // files
28
+ new[]
29
+ {
30
+ ("src/project.csproj", """
31
+ <Project>
32
+ </Project>
33
+ """)
34
+ },
35
+ // expected additional files
36
+ Array.Empty<string>()
37
+ ];
38
+
39
+ // files with relative paths
40
+ yield return
41
+ [
42
+ // project path
43
+ "src/project.csproj",
44
+ // files
45
+ new[]
46
+ {
47
+ ("src/project.csproj", """
48
+ <Project>
49
+ <ItemGroup>
50
+ <None Include="..\unexpected-path\packages.config" />
51
+ </ItemGroup>
52
+ </Project>
53
+ """),
54
+ ("unexpected-path/packages.config", """
55
+ <packages></packages>
56
+ """)
57
+ },
58
+ // expected additional files
59
+ new[]
60
+ {
61
+ "../unexpected-path/packages.config"
62
+ }
63
+ ];
64
+ }
65
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "sdk": {
3
- "version": "9.0.100",
3
+ "version": "9.0.101",
4
4
  "rollForward": "latestMinor"
5
5
  }
6
6
  }
@@ -26,6 +26,7 @@ module Dependabot
26
26
 
27
27
  sig { override.returns(T::Array[DependencyFile]) }
28
28
  def fetch_files
29
+ NativeHelpers.install_dotnet_sdks
29
30
  discovery_json_reader = DiscoveryJsonReader.run_discovery_in_directory(
30
31
  repo_contents_path: T.must(repo_contents_path),
31
32
  directory: directory,
@@ -7,6 +7,8 @@ require "dependabot/file_parsers/base"
7
7
  require "dependabot/nuget/discovery/discovery_json_reader"
8
8
  require "dependabot/nuget/native_helpers"
9
9
  require "sorbet-runtime"
10
+ require "dependabot/nuget/package_manager"
11
+ require "dependabot/nuget/language"
10
12
 
11
13
  # For details on how dotnet handles version constraints, see:
12
14
  # https://docs.microsoft.com/en-us/nuget/reference/package-versioning
@@ -22,11 +24,40 @@ module Dependabot
22
24
  dependencies
23
25
  end
24
26
 
27
+ sig { returns(Ecosystem) }
28
+ def ecosystem
29
+ @ecosystem ||= T.let(
30
+ Ecosystem.new(
31
+ name: ECOSYSTEM,
32
+ package_manager: package_manager,
33
+ language: language
34
+ ),
35
+ T.nilable(Ecosystem)
36
+ )
37
+ end
38
+
25
39
  private
26
40
 
41
+ sig { returns(T.nilable(T::Array[String])) }
42
+ def content_json
43
+ @content_json ||= T.let(begin
44
+ directory = source&.directory || "/"
45
+ discovery_json_reader = DiscoveryJsonReader.run_discovery_in_directory(
46
+ repo_contents_path: T.must(repo_contents_path),
47
+ directory: directory,
48
+ credentials: credentials
49
+ )
50
+
51
+ discovery_json_reader.workspace_discovery&.projects&.map do |framework|
52
+ T.let(framework.instance_variable_get(:@target_frameworks), T::Array[String]).compact.join(",")
53
+ end
54
+ end, T.nilable(T::Array[String]))
55
+ end
56
+
27
57
  sig { returns(T::Array[Dependabot::Dependency]) }
28
58
  def dependencies
29
59
  @dependencies ||= T.let(begin
60
+ NativeHelpers.install_dotnet_sdks
30
61
  directory = source&.directory || "/"
31
62
  discovery_json_reader = DiscoveryJsonReader.run_discovery_in_directory(
32
63
  repo_contents_path: T.must(repo_contents_path),
@@ -53,6 +84,65 @@ module Dependabot
53
84
  "No project file."
54
85
  )
55
86
  end
87
+
88
+ sig { returns(T.nilable(Ecosystem::VersionManager)) }
89
+ def language
90
+ # Historically new version of language is released with incremental update of
91
+ # .Net version, so we tie the language with framework version for metric collection
92
+
93
+ nomenclature = "#{language_type} #{framework_version&.join(',')}".strip.tr(" ", "-")
94
+
95
+ Dependabot.logger.info("Detected language and framework #{nomenclature}")
96
+
97
+ case language_type
98
+
99
+ when CSharpLanguage::TYPE
100
+ CSharpLanguage.new(nomenclature)
101
+
102
+ when VBLanguage::TYPE
103
+ VBLanguage.new(nomenclature)
104
+
105
+ when FSharpLanguage::TYPE
106
+ FSharpLanguage.new(nomenclature)
107
+
108
+ when DotNet::TYPE
109
+ DotNet.new(nomenclature)
110
+
111
+ end
112
+ end
113
+
114
+ sig { returns(T.nilable(T::Array[String])) }
115
+ def framework_version
116
+ content_json
117
+ rescue StandardError
118
+ nil
119
+ end
120
+
121
+ sig { returns(T.nilable(String)) }
122
+ def language_type
123
+ requirement_files = dependencies.flat_map do |dep|
124
+ dep.requirements.map { |r| T.let(r.fetch(:file), String) }
125
+ end.uniq
126
+
127
+ return "cs" if requirement_files.any? { |f| File.basename(f).match?(/\.csproj$/) }
128
+ return "vb" if requirement_files.any? { |f| File.basename(f).match?(/\.vbproj$/) }
129
+ return "fs" if requirement_files.any? { |f| File.basename(f).match?(/\.fsproj$/) }
130
+
131
+ # return a fallback to avoid falling to exception
132
+ "dotnet"
133
+ end
134
+
135
+ sig { returns(Ecosystem::VersionManager) }
136
+ def package_manager
137
+ NugetPackageManager.new(T.must(nuget_version))
138
+ end
139
+
140
+ sig { returns(T.nilable(String)) }
141
+ def nuget_version
142
+ SharedHelpers.run_shell_command("dotnet nuget --version").split("Command Line").last&.strip
143
+ rescue StandardError
144
+ nil
145
+ end
56
146
  end
57
147
  end
58
148
  end
@@ -0,0 +1,98 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ require "sorbet-runtime"
5
+ require "dependabot/nuget/version"
6
+ require "dependabot/ecosystem"
7
+
8
+ module Dependabot
9
+ module Nuget
10
+ class Language < Dependabot::Ecosystem::VersionManager
11
+ extend T::Sig
12
+
13
+ sig { params(language: String, raw_version: String, requirement: T.nilable(Requirement)).void }
14
+ def initialize(language, raw_version, requirement = nil)
15
+ super(
16
+ name: language,
17
+ version: Version.new(raw_version),
18
+ requirement: requirement,
19
+ )
20
+ end
21
+ end
22
+
23
+ class CSharpLanguage < Dependabot::Ecosystem::VersionManager
24
+ extend T::Sig
25
+
26
+ LANGUAGE = "CSharp"
27
+ TYPE = "cs"
28
+
29
+ SUPPORTED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
30
+
31
+ DEPRECATED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
32
+
33
+ sig { params(language: String, requirement: T.nilable(Requirement)).void }
34
+ def initialize(language, requirement = nil)
35
+ super(
36
+ name: language,
37
+ requirement: requirement,
38
+ )
39
+ end
40
+ end
41
+
42
+ class VBLanguage < Dependabot::Ecosystem::VersionManager
43
+ extend T::Sig
44
+
45
+ LANGUAGE = "VB"
46
+ TYPE = "vb"
47
+
48
+ SUPPORTED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
49
+
50
+ DEPRECATED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
51
+
52
+ sig { params(language: String, requirement: T.nilable(Requirement)).void }
53
+ def initialize(language, requirement = nil)
54
+ super(
55
+ name: language,
56
+ requirement: requirement,
57
+ )
58
+ end
59
+ end
60
+
61
+ class FSharpLanguage < Dependabot::Ecosystem::VersionManager
62
+ extend T::Sig
63
+
64
+ LANGUAGE = "FSharp"
65
+ TYPE = "fs"
66
+
67
+ SUPPORTED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
68
+
69
+ DEPRECATED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
70
+
71
+ sig { params(language: String, requirement: T.nilable(Requirement)).void }
72
+ def initialize(language, requirement = nil)
73
+ super(
74
+ name: language,
75
+ requirement: requirement,
76
+ )
77
+ end
78
+ end
79
+
80
+ class DotNet < Dependabot::Ecosystem::VersionManager
81
+ extend T::Sig
82
+
83
+ TYPE = "dotnet"
84
+
85
+ SUPPORTED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
86
+
87
+ DEPRECATED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
88
+
89
+ sig { params(language: String, requirement: T.nilable(Requirement)).void }
90
+ def initialize(language, requirement = nil)
91
+ super(
92
+ name: language,
93
+ requirement: requirement,
94
+ )
95
+ end
96
+ end
97
+ end
98
+ end
@@ -269,6 +269,27 @@ module Dependabot
269
269
  end
270
270
  end
271
271
 
272
+ sig { void }
273
+ def self.install_dotnet_sdks
274
+ return unless Dependabot::Experiments.enabled?(:nuget_install_dotnet_sdks)
275
+
276
+ # environment variables are required and the following will generate an actionable error message if they're not
277
+ _dependabot_job_path = ENV.fetch("DEPENDABOT_JOB_PATH")
278
+ _dependabot_repo_contents_path = ENV.fetch("DEPENDABOT_REPO_CONTENTS_PATH")
279
+ _dotnet_install_script_path = ENV.fetch("DOTNET_INSTALL_SCRIPT_PATH")
280
+ _dotnet_install_dir = ENV.fetch("DOTNET_INSTALL_DIR")
281
+
282
+ # this environment variable is directly used
283
+ dependabot_home = ENV.fetch("DEPENDABOT_HOME")
284
+
285
+ command = [
286
+ "pwsh",
287
+ "#{dependabot_home}/dependabot-updater/bin/install-sdks.ps1"
288
+ ].join(" ")
289
+ output = SharedHelpers.run_shell_command(command)
290
+ puts output
291
+ end
292
+
272
293
  sig { params(json: T::Hash[String, T.untyped]).void }
273
294
  def self.ensure_no_errors(json)
274
295
  error_type = T.let(json.fetch("ErrorType", nil), T.nilable(String))
@@ -276,8 +297,12 @@ module Dependabot
276
297
  case error_type
277
298
  when "None", nil
278
299
  # no issue
300
+ when "DependencyFileNotParseable"
301
+ raise DependencyFileNotParseable, T.must(T.let(error_details, T.nilable(String)))
279
302
  when "AuthenticationFailure"
280
303
  raise PrivateSourceAuthenticationFailure, T.let(error_details, T.nilable(String))
304
+ when "BadRequirement"
305
+ raise BadRequirementError, T.let(error_details, T.nilable(String))
281
306
  when "MissingFile"
282
307
  raise DependencyFileNotFound, T.let(error_details, T.nilable(String))
283
308
  when "UpdateNotPossible"
@@ -0,0 +1,51 @@
1
+ # typed: strong
2
+ # frozen_string_literal: true
3
+
4
+ require "sorbet-runtime"
5
+ require "dependabot/nuget/version"
6
+ require "dependabot/ecosystem"
7
+ require "dependabot/nuget/requirement"
8
+
9
+ module Dependabot
10
+ module Nuget
11
+ ECOSYSTEM = "dotnet"
12
+
13
+ SUPPORTED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
14
+
15
+ DEPRECATED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
16
+
17
+ class NugetPackageManager < Dependabot::Ecosystem::VersionManager
18
+ extend T::Sig
19
+
20
+ NAME = "nuget"
21
+
22
+ SUPPORTED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
23
+
24
+ DEPRECATED_VERSIONS = T.let([].freeze, T::Array[Dependabot::Version])
25
+
26
+ sig do
27
+ params(
28
+ raw_version: T.nilable(String)
29
+ ).void
30
+ end
31
+ def initialize(raw_version)
32
+ super(
33
+ name: NAME,
34
+ version: Version.new(raw_version),
35
+ deprecated_versions: DEPRECATED_VERSIONS,
36
+ supported_versions: SUPPORTED_VERSIONS
37
+ )
38
+ end
39
+
40
+ sig { override.returns(T::Boolean) }
41
+ def deprecated?
42
+ false
43
+ end
44
+
45
+ sig { override.returns(T::Boolean) }
46
+ def unsupported?
47
+ false
48
+ end
49
+ end
50
+ end
51
+ end
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.290.0
4
+ version: 0.292.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-12-12 00:00:00.000000000 Z
11
+ date: 2025-01-09 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.290.0
19
+ version: 0.292.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.290.0
26
+ version: 0.292.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rubyzip
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -352,6 +352,7 @@ files:
352
352
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.DirsProj.cs
353
353
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.DotNetTools.cs
354
354
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.GlobalJson.cs
355
+ - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.LockFile.cs
355
356
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.Mixed.cs
356
357
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackageReference.cs
357
358
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Update/UpdateWorkerTests.PackagesConfig.cs
@@ -361,6 +362,7 @@ files:
361
362
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/LinuxOnlyAttribute.cs
362
363
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/MSBuildHelperTests.cs
363
364
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/PathHelperTests.cs
365
+ - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/ProjectHelperTests.cs
364
366
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core.Test/Utilities/SdkPackageUpdaterHelperTests.cs
365
367
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/AnalysisResult.cs
366
368
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/AnalyzeWorker.cs
@@ -376,6 +378,7 @@ files:
376
378
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/SecurityVulnerabilityExtensions.cs
377
379
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionFinder.cs
378
380
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Analyze/VersionResult.cs
381
+ - helpers/lib/NuGetUpdater/NuGetUpdater.Core/BadRequirementException.cs
379
382
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/CloneWorker.cs
380
383
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/IGitCommandHandler.cs
381
384
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Clone/ShellGitCommandHandler.cs
@@ -417,6 +420,7 @@ files:
417
420
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Property.cs
418
421
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/Advisory.cs
419
422
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/AllowedUpdate.cs
423
+ - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/BadRequirement.cs
420
424
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/CommitOptions.cs
421
425
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/Condition.cs
422
426
  - helpers/lib/NuGetUpdater/NuGetUpdater.Core/Run/ApiModel/CreatePullRequest.cs
@@ -491,9 +495,11 @@ files:
491
495
  - lib/dependabot/nuget/file_fetcher.rb
492
496
  - lib/dependabot/nuget/file_parser.rb
493
497
  - lib/dependabot/nuget/file_updater.rb
498
+ - lib/dependabot/nuget/language.rb
494
499
  - lib/dependabot/nuget/metadata_finder.rb
495
500
  - lib/dependabot/nuget/native_helpers.rb
496
501
  - lib/dependabot/nuget/nuget_config_credential_helpers.rb
502
+ - lib/dependabot/nuget/package_manager.rb
497
503
  - lib/dependabot/nuget/requirement.rb
498
504
  - lib/dependabot/nuget/update_checker.rb
499
505
  - lib/dependabot/nuget/update_checker/requirements_updater.rb
@@ -503,7 +509,7 @@ licenses:
503
509
  - MIT
504
510
  metadata:
505
511
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
506
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.290.0
512
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.292.0
507
513
  post_install_message:
508
514
  rdoc_options: []
509
515
  require_paths:
@@ -519,7 +525,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
519
525
  - !ruby/object:Gem::Version
520
526
  version: 3.1.0
521
527
  requirements: []
522
- rubygems_version: 3.5.9
528
+ rubygems_version: 3.5.22
523
529
  signing_key:
524
530
  specification_version: 4
525
531
  summary: Provides Dependabot support for .NET (NuGet)