dependabot-uv 0.337.0 → 0.341.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: 57987b6effb0d34c3635589a12d016968c48d4467094a1348a16949ae65652e3
4
- data.tar.gz: 8303a82e77979335f79ab94b3e5f49d1d77a425c1576e1640af28812124b9bd3
3
+ metadata.gz: fcc75c409db5bd9249af0a8cd783a47d8ce2d52575d816cc702d7591847a32fb
4
+ data.tar.gz: f95815895daacd8230832b22e0df833f3a212bf323adb74fbd3943f60703de25
5
5
  SHA512:
6
- metadata.gz: c485ef14a18589855bdfb9759fcc809c412f4924c9798470db5e5fb0829bfa225efe22bcd1970be8a0bc4f9ef59c292ef0b800ca1cd331c0811c2a5540305b00
7
- data.tar.gz: d0ebaea67945d4ec2df4aa16cc6bc8f2c0c4ca77d65cef001e736e2df2137a8a64832847554cfcafbd7ecae17c618ae75c2f8d86b9e9984689a6834c18f8a6bf
6
+ metadata.gz: 1c45e2facc56623226260ef7e70873603c63e1db671243b64658b2c967f70528d4c38fa2bf4217383cd27693c171eb59dd016a2356015db163efd852735ba87d
7
+ data.tar.gz: 26e053ba86a6a2c5332a1b514867c53850553da6891c6b6c94595f6bdd72a6b949dac774d5af01ee106eec606c14e8a1fb85ef46efe9fb25247bc117740b6a9a
@@ -23,6 +23,9 @@ module Dependabot
23
23
 
24
24
  REQUIRED_FILES = %w(pyproject.toml uv.lock).freeze # At least one of these files should be present
25
25
 
26
+ UV_UNRESOLVABLE_REGEX = T.let(/No solution found when resolving dependencies:[\s\S]*$/, Regexp)
27
+ RESOLUTION_IMPOSSIBLE_ERROR = T.let("ResolutionImpossible", String)
28
+
26
29
  sig { returns(T::Array[Dependency]) }
27
30
  attr_reader :dependencies
28
31
 
@@ -208,6 +211,32 @@ module Dependabot
208
211
  File.read("uv.lock")
209
212
  end
210
213
  end
214
+ rescue SharedHelpers::HelperSubprocessFailed => e
215
+ handle_uv_error(e)
216
+ end
217
+
218
+ sig do
219
+ params(
220
+ error: SharedHelpers::HelperSubprocessFailed
221
+ )
222
+ .returns(T.noreturn)
223
+ end
224
+ def handle_uv_error(error)
225
+ error_message = error.message
226
+
227
+ if error_message.include?("No solution found when resolving dependencies")
228
+ match_result = error_message.scan(UV_UNRESOLVABLE_REGEX).last
229
+ if match_result
230
+ formatted_error = match_result.is_a?(Array) ? match_result.join : match_result
231
+ raise Dependabot::DependencyFileNotResolvable, formatted_error
232
+ end
233
+ end
234
+
235
+ if error_message.include?(RESOLUTION_IMPOSSIBLE_ERROR)
236
+ raise Dependabot::DependencyFileNotResolvable, error_message
237
+ end
238
+
239
+ raise error
211
240
  end
212
241
 
213
242
  sig { returns(T.nilable(String)) }
@@ -16,16 +16,6 @@ module Dependabot
16
16
  require_relative "file_updater/lock_file_updater"
17
17
  require_relative "file_updater/requirement_file_updater"
18
18
 
19
- sig { override.returns(T::Array[Regexp]) }
20
- def self.updated_files_regex
21
- [
22
- /^.*\.txt$/, # Match any .txt files (e.g., requirements.txt) at any level
23
- /^.*\.in$/, # Match any .in files at any level
24
- /^.*pyproject\.toml$/, # Match pyproject.toml at any level
25
- /^.*uv\.lock$/ # Match uv.lock at any level
26
- ]
27
- end
28
-
29
19
  sig { override.returns(T::Array[DependencyFile]) }
30
20
  def updated_dependency_files
31
21
  updated_files = updated_pip_compile_based_files
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-uv
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.337.0
4
+ version: 0.341.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - '='
17
17
  - !ruby/object:Gem::Version
18
- version: 0.337.0
18
+ version: 0.341.0
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - '='
24
24
  - !ruby/object:Gem::Version
25
- version: 0.337.0
25
+ version: 0.341.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: debug
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -284,7 +284,7 @@ licenses:
284
284
  - MIT
285
285
  metadata:
286
286
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
287
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.337.0
287
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.341.0
288
288
  rdoc_options: []
289
289
  require_paths:
290
290
  - lib