dependabot-maven 0.186.0 → 0.188.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: 61ab699462cbc06e09d9c3c6113fb95eb17c1030e6b5ae58cca38c29587dad95
4
- data.tar.gz: 0f38d30e897042f4162bd8312631102d5559ab52c6b47c03a3e1e4c49492b732
3
+ metadata.gz: ccaf493779afc2e54115765bd41bb153d65401f941e174f91257c3bd34399fe9
4
+ data.tar.gz: '0793762045558772c01bc66d6f58866f042c03c8d567fa12307dabcbc9daf7a7'
5
5
  SHA512:
6
- metadata.gz: 87663a8e69059757e84b3a77e5763b98c752e079f35b7b4bfc950b53bd8b36181ceaf6d6e299740c5ea6be7df6af2c01e7dac45dc493eb8420b603ff78c588f0
7
- data.tar.gz: 4f22b87deedb78e29d9b3ebe97eb8aecea546aa8d1ec40f5ed4c2e37b44a4c25a7858700a986e835f59070c3d3d44b54652e8ba166137d06635de50980a06594
6
+ metadata.gz: e4255cf908f7a521bd8ffd4622b7db8cb5946b1cf50a238418d316b6c3206c1be0cd92182344b8a8f2475a0d64acf857a568fa21e27f8ed7571e58944df35976
7
+ data.tar.gz: ea779730300a9ad74ff0d8509ecdac7ce1d50d1c09d9f941e5e939dc66b616734a44e5688a08aaff4f6ad95e4623911a8e54ee8b5e02a3a35fffe6c6d9629ef4
@@ -113,6 +113,11 @@ module Dependabot
113
113
  @maven_responses[url] ||= Excon.get(
114
114
  url,
115
115
  idempotent: true,
116
+ # We attempt to find dependencies in private repos before failing over to the CENTRAL_REPO_URL,
117
+ # but this can burn a lot of a job's time against slow servers due to our `read_timeout` being 20 seconds.
118
+ #
119
+ # In order to avoid the overall job timing out, we only make one retry attempt
120
+ retry_limit: 1,
116
121
  **SharedHelpers.excon_defaults
117
122
  )
118
123
  next unless @maven_responses[url].status == 200
@@ -23,8 +23,9 @@ module Dependabot
23
23
 
24
24
  def update_possible?
25
25
  return false unless target_version
26
+ return @update_possible if defined?(@update_possible)
26
27
 
27
- @update_possible ||=
28
+ @update_possible =
28
29
  dependencies_using_property.all? do |dep|
29
30
  next false if includes_property_reference?(updated_version(dep))
30
31
 
@@ -25,6 +25,7 @@ module Dependabot
25
25
  @raise_on_ignored = raise_on_ignored
26
26
  @security_advisories = security_advisories
27
27
  @forbidden_urls = []
28
+ @dependency_metadata = {}
28
29
  end
29
30
 
30
31
  def latest_version_details
@@ -154,25 +155,28 @@ module Dependabot
154
155
  end
155
156
 
156
157
  def dependency_metadata(repository_details)
157
- @dependency_metadata ||= {}
158
- @dependency_metadata[repository_details.hash] ||=
159
- begin
160
- response = Excon.get(
161
- dependency_metadata_url(repository_details.fetch("url")),
162
- idempotent: true,
163
- **Dependabot::SharedHelpers.excon_defaults(headers: repository_details.fetch("auth_headers"))
164
- )
165
- check_response(response, repository_details.fetch("url"))
158
+ repository_key = repository_details.hash
159
+ return @dependency_metadata[repository_key] if @dependency_metadata.key?(repository_key)
166
160
 
167
- Nokogiri::XML(response.body)
168
- rescue URI::InvalidURIError
169
- Nokogiri::XML("")
170
- rescue Excon::Error::Socket, Excon::Error::Timeout,
171
- Excon::Error::TooManyRedirects
172
- raise if central_repo_urls.include?(repository_details["url"])
161
+ @dependency_metadata[repository_key] = fetch_dependency_metadata(repository_details)
162
+ end
173
163
 
174
- Nokogiri::XML("")
175
- end
164
+ def fetch_dependency_metadata(repository_details)
165
+ response = Excon.get(
166
+ dependency_metadata_url(repository_details.fetch("url")),
167
+ idempotent: true,
168
+ **Dependabot::SharedHelpers.excon_defaults(headers: repository_details.fetch("auth_headers"))
169
+ )
170
+ check_response(response, repository_details.fetch("url"))
171
+
172
+ Nokogiri::XML(response.body)
173
+ rescue URI::InvalidURIError
174
+ Nokogiri::XML("")
175
+ rescue Excon::Error::Socket, Excon::Error::Timeout,
176
+ Excon::Error::TooManyRedirects
177
+ raise if central_repo_urls.include?(repository_details["url"])
178
+
179
+ Nokogiri::XML("")
176
180
  end
177
181
 
178
182
  def check_response(response, repository_url)
@@ -184,7 +188,7 @@ module Dependabot
184
188
  end
185
189
 
186
190
  def repositories
187
- return @repositories if @repositories
191
+ return @repositories if defined?(@repositories)
188
192
 
189
193
  details = pom_repository_details + credentials_repository_details
190
194
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-maven
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.186.0
4
+ version: 0.188.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-10 00:00:00.000000000 Z
11
+ date: 2022-05-16 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.186.0
19
+ version: 0.188.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.186.0
26
+ version: 0.188.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: debase
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 1.28.2
131
+ version: 1.29.1
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 1.28.2
138
+ version: 1.29.1
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: ruby-debug-ide
141
141
  requirement: !ruby/object:Gem::Requirement