dependabot-python 0.279.0 → 0.280.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: a5bf717c8f68ca481074e67a3358e97f609347162e8ebdefb1b961af9b3d401b
4
- data.tar.gz: b1565b6a609f5c0ed0aab1254cea234cd807c86bae05fcda662ebf2b13fbe480
3
+ metadata.gz: 769029ca498ad0bf57b8e8a3f7470dded08b67253371747cdc2cd14f19733660
4
+ data.tar.gz: '05984613c4a3eb2298b755c4e96287c4d1b15a94553a378ab31b8992d20151b7'
5
5
  SHA512:
6
- metadata.gz: 6d0928e2b3ec818b2de96783f85e25c3afd9df6c68e9aa10a85177a62e2794bad043b0dc6b174c8e5f5e020505c3e4a33d465e663aede6c7a23080acbf5b761f
7
- data.tar.gz: 59598f676aff1150e4bd6db41c3911b05c0d056267309dedc1fa3bd49bce20d7d0e3d5c8a10e8d5838db14163fbae77461e7a7a7d3f705b539daa5b5b667c4ff
6
+ metadata.gz: c3de2cf52a0326efb5e91b045001bfca0f25574394425f70ab59b7c6fe15f9618f690cfd847e8736c81b29d3e8fd28e5524931db4f9bad90171f8daffeeafad3
7
+ data.tar.gz: d47f611d5f940b9c420f727d2f44d19308a7317a6ca799e86a29369401c64c6e833020f4279a991515ecfe3dcf6c3522d5b0d9aea8a282cbcc181b3a2d3c303a
@@ -353,8 +353,21 @@ module Dependabot
353
353
  # package version mentioned in .toml not found in package index
354
354
  PACKAGE_NOT_FOUND = /Package (?<pkg>.*) ((?<req_ver>.*)) not found./
355
355
 
356
- # error code 401 while accessing registry
357
- ERROR_401 = /401 Client Error/
356
+ # client access error codes while accessing package index
357
+ CLIENT_ERROR_CODES = T.let({
358
+ error401: /401 Client Error/,
359
+ error403: /403 Client Error/,
360
+ error404: /404 Client Error/,
361
+ http403: /HTTP error 403/,
362
+ http404: /HTTP error 404/
363
+ }.freeze, T::Hash[T.nilable(String), Regexp])
364
+
365
+ # server response error codes while accessing package index
366
+ SERVER_ERROR_CODES = T.let({
367
+ server502: /502 Server Error/,
368
+ server503: /503 Server Error/,
369
+ server504: /504 Server Error/
370
+ }.freeze, T::Hash[T.nilable(String), Regexp])
358
371
 
359
372
  sig do
360
373
  params(
@@ -386,6 +399,8 @@ module Dependabot
386
399
 
387
400
  public
388
401
 
402
+ # rubocop:disable Metrics/AbcSize
403
+ # rubocop:disable Metrics/PerceivedComplexity
389
404
  sig { params(error: Exception).void }
390
405
  def handle_poetry_error(error)
391
406
  Dependabot.logger.warn(error.message)
@@ -403,11 +418,22 @@ module Dependabot
403
418
 
404
419
  raise DependencyFileNotResolvable, error.message if error.message.match(PYTHON_RANGE_NOT_SATISFIED)
405
420
 
406
- return unless error.message.match?(ERROR_401)
421
+ SERVER_ERROR_CODES.each do |(_error_codes, error_regex)|
422
+ next unless error.message.match?(error_regex)
407
423
 
408
- url = URI.extract(error.message).first.then { sanitize_url(_1) }
409
- raise PrivateSourceAuthenticationFailure, url
424
+ index_url = URI.extract(error.message.to_s).last .then { sanitize_url(_1) }
425
+ raise InconsistentRegistryResponse, index_url
426
+ end
427
+
428
+ CLIENT_ERROR_CODES.each do |(_error_codes, error_regex)|
429
+ next unless error.message.match?(error_regex)
430
+
431
+ index_url = URI.extract(error.message.to_s).last .then { sanitize_url(_1) }
432
+ raise PrivateSourceAuthenticationFailure, index_url
433
+ end
410
434
  end
435
+ # rubocop:enable Metrics/AbcSize
436
+ # rubocop:enable Metrics/PerceivedComplexity
411
437
  end
412
438
  end
413
439
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-python
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.279.0
4
+ version: 0.280.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-03 00:00:00.000000000 Z
11
+ date: 2024-10-10 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.279.0
19
+ version: 0.280.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.279.0
26
+ version: 0.280.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: debug
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +156,14 @@ dependencies:
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 0.8.1
159
+ version: 0.8.5
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 0.8.1
166
+ version: 0.8.5
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: simplecov
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -288,8 +288,8 @@ licenses:
288
288
  - MIT
289
289
  metadata:
290
290
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
291
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.279.0
292
- post_install_message:
291
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.280.0
292
+ post_install_message:
293
293
  rdoc_options: []
294
294
  require_paths:
295
295
  - lib
@@ -305,7 +305,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
305
305
  version: 3.1.0
306
306
  requirements: []
307
307
  rubygems_version: 3.5.9
308
- signing_key:
308
+ signing_key:
309
309
  specification_version: 4
310
310
  summary: Provides Dependabot support for Python
311
311
  test_files: []