dependabot-python 0.401.0 → 0.402.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: 87da07cdeb8ed8eb7e4cd60c9ac7bb7ae6eefd114a16671b89e2a0063ae44990
4
- data.tar.gz: b08192e8bc0a5b8c0125266571bd034029ed17e2c0f77a9d01350b7a9d30fca6
3
+ metadata.gz: eae7152a290937aaf3118091bf2d2befbeaeb54cf625498312167ea0cc88d867
4
+ data.tar.gz: d612db59f7e6ac54053c7a1a2f27a2fd591312a5292bfabd088d05a402acb453
5
5
  SHA512:
6
- metadata.gz: 707368d0c61e05a337dab12cce1655ee25092c8563592ed00e90b8dbbd27e640558d681366e231f1370338c75a6b68b69e7064aacce4211237e5343a79d29629
7
- data.tar.gz: 932c74e3ca269747bcbd005fa0ac624d38a26bc60269953b7a8af99c03abf157b999b1d6ec5e30a64b7791a3c970aca267f964bb62dab880a083fb4021a8cbc9
6
+ metadata.gz: 52df615381fec79610648a6e131cbe10f25ecccacb23a0b1b4ae54e1557eda648ae784181b110e609f670762a536768110ca71ee7602c3889734b295bf560994
7
+ data.tar.gz: 73aad5f18f8cdf0293d65dd57a1f71aa5d6da1afab438258c091c25dd09d1f0949535b1da729643deebb80dcd89ea4bc0785a20344421d975d2b782c4085895d
@@ -85,8 +85,8 @@ module Dependabot
85
85
  def unique_requirement_changes
86
86
  previous_reqs = dependency.previous_requirements || []
87
87
 
88
- changes = dependency.requirements.filter_map do |new_req|
89
- old_req = previous_reqs.find { |r| r.file == new_req.file && r.groups == new_req.groups }
88
+ changes = dependency.requirements.each_with_index.filter_map do |new_req, index|
89
+ old_req = matching_previous_requirement(new_req, previous_reqs, index)
90
90
  next if new_req == old_req
91
91
 
92
92
  T.let([new_req, old_req], RequirementChange)
@@ -99,6 +99,27 @@ module Dependabot
99
99
  end
100
100
  end
101
101
 
102
+ # Requirements and previous requirements are built in the same order, so
103
+ # pair them by position. The same package can be declared more than once
104
+ # in one file and group (e.g. with different environment markers), so
105
+ # matching on file and groups alone can pick the wrong declaration.
106
+ sig do
107
+ params(
108
+ new_req: Dependabot::DependencyRequirement,
109
+ previous_reqs: T::Array[Dependabot::DependencyRequirement],
110
+ index: Integer
111
+ ).returns(T.nilable(Dependabot::DependencyRequirement))
112
+ end
113
+ def matching_previous_requirement(new_req, previous_reqs, index)
114
+ positional = previous_reqs[index]
115
+ if previous_reqs.length == dependency.requirements.length &&
116
+ positional&.file == new_req.file && positional&.groups == new_req.groups
117
+ return positional
118
+ end
119
+
120
+ previous_reqs.find { |r| r.file == new_req.file && r.groups == new_req.groups }
121
+ end
122
+
102
123
  sig do
103
124
  params(
104
125
  content: String,
@@ -16,8 +16,8 @@ module Dependabot
16
16
  # e.g. ARG PY_3_13=3.13.x
17
17
  # Note: uv ecosystem aliases this class, so updates here apply to both ecosystems.
18
18
  PRE_INSTALLED_PYTHON_VERSIONS_RAW = %w(
19
- 3.14.7
20
- 3.13.13
19
+ 3.14.9
20
+ 3.13.17
21
21
  3.12.13
22
22
  3.11.15
23
23
  3.10.20
@@ -420,6 +420,8 @@ module Dependabot
420
420
  local_description = metadata.description
421
421
  has_library_metadata = !local_description.nil?
422
422
 
423
+ return has_library_metadata if credentials.any? { |c| c["type"] == "python_index" && c.replaces_base? }
424
+
423
425
  begin
424
426
  response = Dependabot::RegistryClient.get(
425
427
  url: "https://pypi.org/pypi/#{normalised_name(name)}/json/"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-python
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.401.0
4
+ version: 0.402.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.401.0
18
+ version: 0.402.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.401.0
25
+ version: 0.402.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: debug
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -331,7 +331,7 @@ licenses:
331
331
  - MIT
332
332
  metadata:
333
333
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
334
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.401.0
334
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.402.0
335
335
  rdoc_options: []
336
336
  require_paths:
337
337
  - lib