dependabot-python 0.279.0 → 0.280.0

Sign up to get free protection for your applications and to get access to all the features.
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: []