dependabot-bun 0.392.0 → 0.393.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 +4 -4
- data/lib/dependabot/bun/update_checker/conflicting_dependency_resolver.rb +3 -3
- data/lib/dependabot/bun/update_checker/latest_version_finder.rb +2 -2
- data/lib/dependabot/bun/update_checker/version_resolver.rb +4 -2
- data/lib/dependabot/bun/update_checker/vulnerability_auditor.rb +31 -44
- data/lib/dependabot/bun/update_checker.rb +24 -25
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 923b839c39e732c6fb6811cf6c9d1d7ec632278e3ea3e53a869091ebbf4ebf3f
|
|
4
|
+
data.tar.gz: 39e1cf8df33890c3eb795c37ca76d05a13407a0147cbd30c61cd89d192983aed
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4954f66e622be9eee7f56ab6ce81d65a8874b3308140b63d2c98bf2a0316eead317e296cb71e173b810170047995f9fc9fe9230b543fdbcf1939c2990399a207
|
|
7
|
+
data.tar.gz: 8f4ed98c474f44bd4f385ea10f54506294776b9b4a6ba2f72150d07c544b9eef60cdd3bddbe5a2ec93ebcf76eaa58281244bb5cebe4c5356d8d213e13225452a
|
|
@@ -37,7 +37,7 @@ module Dependabot
|
|
|
37
37
|
#
|
|
38
38
|
# @param dependency [Dependabot::Dependency] the dependency to check
|
|
39
39
|
# @param target_version [String] the version to check
|
|
40
|
-
# @return [Array<Hash{String =>
|
|
40
|
+
# @return [Array<Hash{String => Object}]
|
|
41
41
|
# * name [String] the blocking dependencies name
|
|
42
42
|
# * version [String] the version of the blocking dependency
|
|
43
43
|
# * requirement [String] the requirement on the target_dependency
|
|
@@ -46,7 +46,7 @@ module Dependabot
|
|
|
46
46
|
dependency: Dependabot::Dependency,
|
|
47
47
|
target_version: T.nilable(T.any(String, Dependabot::Version))
|
|
48
48
|
)
|
|
49
|
-
.returns(T::Array[
|
|
49
|
+
.returns(T::Array[Dependabot::UpdateCheckers::Conflict])
|
|
50
50
|
end
|
|
51
51
|
def conflicting_dependencies(dependency:, target_version:)
|
|
52
52
|
SharedHelpers.in_a_temporary_directory do
|
|
@@ -63,7 +63,7 @@ module Dependabot
|
|
|
63
63
|
function: "yarn:findConflictingDependencies",
|
|
64
64
|
args: [Dir.pwd, dependency.name, target_version.to_s]
|
|
65
65
|
),
|
|
66
|
-
T::Array[
|
|
66
|
+
T::Array[Dependabot::UpdateCheckers::Conflict]
|
|
67
67
|
)
|
|
68
68
|
end
|
|
69
69
|
rescue SharedHelpers::HelperSubprocessFailed
|
|
@@ -141,7 +141,7 @@ module Dependabot
|
|
|
141
141
|
secure_versions =
|
|
142
142
|
Dependabot::UpdateCheckers::VersionFilters
|
|
143
143
|
.filter_vulnerable_versions(
|
|
144
|
-
|
|
144
|
+
secure_versions,
|
|
145
145
|
security_advisories
|
|
146
146
|
)
|
|
147
147
|
secure_versions = filter_ignored_versions(secure_versions)
|
|
@@ -237,7 +237,7 @@ module Dependabot
|
|
|
237
237
|
def possible_previous_releases
|
|
238
238
|
(package_details&.releases || [])
|
|
239
239
|
.reject do |r|
|
|
240
|
-
r.version.prerelease? && !related_to_current_pre?(
|
|
240
|
+
r.version.prerelease? && !related_to_current_pre?(r.version)
|
|
241
241
|
end
|
|
242
242
|
.sort_by(&:version).reverse
|
|
243
243
|
end
|
|
@@ -343,9 +343,11 @@ module Dependabot
|
|
|
343
343
|
latest_types_version = latest_types_package_version
|
|
344
344
|
return false unless latest_types_version
|
|
345
345
|
|
|
346
|
+
latest_types_version = T.cast(latest_types_version, Version)
|
|
347
|
+
|
|
346
348
|
latest_allowable_ver = latest_allowable_version
|
|
347
349
|
return false unless latest_allowable_ver.is_a?(Version) && latest_allowable_ver.backwards_compatible_with?(
|
|
348
|
-
|
|
350
|
+
latest_types_version
|
|
349
351
|
)
|
|
350
352
|
|
|
351
353
|
return false unless version_class.correct?(types_pkg.version)
|
|
@@ -512,7 +514,7 @@ module Dependabot
|
|
|
512
514
|
.possible_versions_with_details
|
|
513
515
|
.select do |versions_with_details|
|
|
514
516
|
version, details = versions_with_details
|
|
515
|
-
next false unless satisfies_peer_reqs_on_dep?(
|
|
517
|
+
next false unless satisfies_peer_reqs_on_dep?(version)
|
|
516
518
|
next true unless details["peerDependencies"]
|
|
517
519
|
next true if version == version_for_dependency(dependency)
|
|
518
520
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# typed:
|
|
1
|
+
# typed: strong
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
require "sorbet-runtime"
|
|
@@ -13,6 +13,7 @@ require "dependabot/bun/native_helpers"
|
|
|
13
13
|
require "dependabot/bun/update_checker"
|
|
14
14
|
require "dependabot/bun/update_checker/dependency_files_builder"
|
|
15
15
|
require "dependabot/shared_helpers"
|
|
16
|
+
require "dependabot/update_checkers/vulnerability_audit"
|
|
16
17
|
|
|
17
18
|
module Dependabot
|
|
18
19
|
module Bun
|
|
@@ -20,6 +21,8 @@ module Dependabot
|
|
|
20
21
|
class VulnerabilityAuditor
|
|
21
22
|
extend T::Sig
|
|
22
23
|
|
|
24
|
+
Audit = Dependabot::UpdateCheckers::VulnerabilityAudit
|
|
25
|
+
|
|
23
26
|
sig do
|
|
24
27
|
params(
|
|
25
28
|
dependency_files: T::Array[Dependabot::DependencyFile],
|
|
@@ -32,7 +35,6 @@ module Dependabot
|
|
|
32
35
|
@credentials = credentials
|
|
33
36
|
end
|
|
34
37
|
|
|
35
|
-
# rubocop:disable Metrics/MethodLength
|
|
36
38
|
# Finds any dependencies in the `package-lock.json` or `npm-shrinkwrap.json` that have
|
|
37
39
|
# a subdependency on the given dependency that is locked to a vuln version range.
|
|
38
40
|
#
|
|
@@ -40,36 +42,18 @@ module Dependabot
|
|
|
40
42
|
#
|
|
41
43
|
# @param dependency [Dependabot::Dependency] the dependency to check
|
|
42
44
|
# @param security_advisories [Array<Dependabot::SecurityAdvisory>] advisories for the dependency
|
|
43
|
-
# @return [
|
|
44
|
-
# * :dependency_name [String] the name of the dependency
|
|
45
|
-
# * :fix_available [Boolean] whether a fix is available
|
|
46
|
-
# * :current_version [String] the version of the dependency
|
|
47
|
-
# * :target_version [String] the version of the dependency after the fix
|
|
48
|
-
# * :fix_updates [Array<Hash<String, String>>] a list of dependencies to update in order to fix
|
|
49
|
-
# * :dependency_name [String] the name of the blocking dependency
|
|
50
|
-
# * :current_version [String] the current version of the blocking dependency
|
|
51
|
-
# * :target_version [String] the target version of the blocking dependency
|
|
52
|
-
# * :top_level_ancestors [Array<String>] the names of top-level dependencies with a transitive
|
|
53
|
-
# dependency on the blocking dependency
|
|
54
|
-
# * :top_level_ancestors [Array<String>] the names of all top-level dependencies with a transitive
|
|
55
|
-
# dependency on the dependency
|
|
56
|
-
# * :explanation [String] an explanation for why the project failed the vulnerability auditor run
|
|
45
|
+
# @return [Dependabot::UpdateCheckers::VulnerabilityAudit] the parsed audit result
|
|
57
46
|
sig do
|
|
58
47
|
params(
|
|
59
48
|
dependency: Dependabot::Dependency,
|
|
60
49
|
security_advisories: T::Array[Dependabot::SecurityAdvisory]
|
|
61
50
|
)
|
|
62
|
-
.returns(
|
|
51
|
+
.returns(Audit)
|
|
63
52
|
end
|
|
64
53
|
def audit(dependency:, security_advisories:)
|
|
65
54
|
Dependabot.logger.info("VulnerabilityAuditor: starting audit")
|
|
66
55
|
|
|
67
|
-
fix_unavailable =
|
|
68
|
-
"dependency_name" => dependency.name,
|
|
69
|
-
"fix_available" => false,
|
|
70
|
-
"fix_updates" => [],
|
|
71
|
-
"top_level_ancestors" => []
|
|
72
|
-
}
|
|
56
|
+
fix_unavailable = Audit.unavailable(dependency_name: dependency.name)
|
|
73
57
|
|
|
74
58
|
SharedHelpers.in_a_temporary_directory do
|
|
75
59
|
dependency_files_builder = DependencyFilesBuilder.new(
|
|
@@ -86,20 +70,20 @@ module Dependabot
|
|
|
86
70
|
}
|
|
87
71
|
end
|
|
88
72
|
|
|
89
|
-
audit_result =
|
|
73
|
+
audit_result = Audit.from_object(
|
|
90
74
|
SharedHelpers.run_helper_subprocess(
|
|
91
75
|
command: NativeHelpers.helper_path,
|
|
92
76
|
function: "npm:vulnerabilityAuditor",
|
|
93
77
|
args: [Dir.pwd, vuln_versions]
|
|
94
|
-
)
|
|
95
|
-
T::Hash[String, T.untyped]
|
|
78
|
+
)
|
|
96
79
|
)
|
|
97
80
|
|
|
98
81
|
validation_result = validate_audit_result(audit_result, security_advisories)
|
|
99
82
|
if validation_result != :viable
|
|
100
83
|
Dependabot.logger.info("VulnerabilityAuditor: audit result not viable: #{validation_result}")
|
|
101
|
-
fix_unavailable
|
|
102
|
-
|
|
84
|
+
return fix_unavailable.unavailable_with_explanation(
|
|
85
|
+
explain_fix_unavailable(validation_result, dependency)
|
|
86
|
+
)
|
|
103
87
|
end
|
|
104
88
|
|
|
105
89
|
Dependabot.logger.info("VulnerabilityAuditor: audit result viable")
|
|
@@ -109,7 +93,6 @@ module Dependabot
|
|
|
109
93
|
log_helper_subprocess_failure(dependency, e)
|
|
110
94
|
T.must(fix_unavailable)
|
|
111
95
|
end
|
|
112
|
-
# rubocop:enable Metrics/MethodLength
|
|
113
96
|
|
|
114
97
|
private
|
|
115
98
|
|
|
@@ -133,12 +116,12 @@ module Dependabot
|
|
|
133
116
|
|
|
134
117
|
sig do
|
|
135
118
|
params(
|
|
136
|
-
audit_result:
|
|
119
|
+
audit_result: Audit,
|
|
137
120
|
security_advisories: T::Array[Dependabot::SecurityAdvisory]
|
|
138
121
|
).returns(Symbol)
|
|
139
122
|
end
|
|
140
123
|
def validate_audit_result(audit_result, security_advisories)
|
|
141
|
-
return :fix_unavailable unless audit_result
|
|
124
|
+
return :fix_unavailable unless audit_result.fix_available
|
|
142
125
|
return :dependency_still_vulnerable if dependency_still_vulnerable?(audit_result, security_advisories)
|
|
143
126
|
return :downgrades_dependencies if downgrades_dependencies?(audit_result)
|
|
144
127
|
return :fix_incomplete if fix_incomplete?(audit_result)
|
|
@@ -148,25 +131,26 @@ module Dependabot
|
|
|
148
131
|
|
|
149
132
|
sig do
|
|
150
133
|
params(
|
|
151
|
-
audit_result:
|
|
134
|
+
audit_result: Audit,
|
|
152
135
|
security_advisories: T::Array[Dependabot::SecurityAdvisory]
|
|
153
136
|
)
|
|
154
137
|
.returns(T::Boolean)
|
|
155
138
|
end
|
|
156
139
|
def dependency_still_vulnerable?(audit_result, security_advisories)
|
|
157
140
|
# vulnerable dependency is removed if the target version is nil
|
|
158
|
-
|
|
141
|
+
target_version = audit_result.target_version
|
|
142
|
+
return false unless target_version
|
|
159
143
|
|
|
160
|
-
version = Version.new(
|
|
144
|
+
version = Version.new(target_version)
|
|
161
145
|
security_advisories.any? { |a| a.vulnerable?(version) }
|
|
162
146
|
end
|
|
163
147
|
|
|
164
|
-
sig { params(audit_result:
|
|
148
|
+
sig { params(audit_result: Audit).returns(T::Boolean) }
|
|
165
149
|
def downgrades_dependencies?(audit_result)
|
|
166
|
-
return true if downgrades_version?(audit_result
|
|
150
|
+
return true if downgrades_version?(audit_result.current_version, audit_result.target_version)
|
|
167
151
|
|
|
168
|
-
audit_result
|
|
169
|
-
downgrades_version?(update
|
|
152
|
+
audit_result.fix_updates.any? do |update|
|
|
153
|
+
downgrades_version?(update.current_version, update.target_version)
|
|
170
154
|
end
|
|
171
155
|
end
|
|
172
156
|
|
|
@@ -185,10 +169,10 @@ module Dependabot
|
|
|
185
169
|
current > target
|
|
186
170
|
end
|
|
187
171
|
|
|
188
|
-
sig { params(audit_result:
|
|
172
|
+
sig { params(audit_result: Audit).returns(T::Boolean) }
|
|
189
173
|
def fix_incomplete?(audit_result)
|
|
190
|
-
audit_result
|
|
191
|
-
audit_result
|
|
174
|
+
audit_result.fix_updates.any? { |update| !update.target_version_provided? } ||
|
|
175
|
+
audit_result.fix_updates.empty?
|
|
192
176
|
end
|
|
193
177
|
|
|
194
178
|
sig do
|
|
@@ -200,15 +184,18 @@ module Dependabot
|
|
|
200
184
|
def log_helper_subprocess_failure(dependency, error)
|
|
201
185
|
# See `Dependabot::SharedHelpers.run_helper_subprocess` for details on error context
|
|
202
186
|
context = error.error_context
|
|
187
|
+
function = T.cast(context[:function], T.nilable(String))
|
|
188
|
+
time_taken = T.cast(context[:time_taken], T.nilable(Float))
|
|
189
|
+
trace = error.trace&.join("\n")
|
|
203
190
|
|
|
204
191
|
builder = ::StringIO.new
|
|
205
192
|
builder << "VulnerabilityAuditor: "
|
|
206
|
-
builder << "#{
|
|
193
|
+
builder << "#{function} " if function
|
|
207
194
|
builder << "failed"
|
|
208
|
-
builder << " after #{
|
|
195
|
+
builder << " after #{time_taken.truncate(2)}s" if time_taken
|
|
209
196
|
builder << " while auditing #{dependency.name}: "
|
|
210
197
|
builder << error.message
|
|
211
|
-
builder << "\n"
|
|
198
|
+
builder << "\n#{trace}" if trace
|
|
212
199
|
|
|
213
200
|
msg = builder.string
|
|
214
201
|
Dependabot.logger.info(msg) # TODO: is this the right log level?
|
|
@@ -12,6 +12,8 @@ module Dependabot
|
|
|
12
12
|
class UpdateChecker < Dependabot::UpdateCheckers::Base # rubocop:disable Metrics/ClassLength
|
|
13
13
|
extend T::Sig
|
|
14
14
|
|
|
15
|
+
Audit = Dependabot::UpdateCheckers::VulnerabilityAudit
|
|
16
|
+
|
|
15
17
|
require_relative "update_checker/requirements_updater"
|
|
16
18
|
require_relative "update_checker/library_detector"
|
|
17
19
|
require_relative "update_checker/latest_version_finder"
|
|
@@ -52,7 +54,7 @@ module Dependabot
|
|
|
52
54
|
@latest_version = T.let(nil, T.nilable(T.any(String, Gem::Version)))
|
|
53
55
|
@latest_resolvable_version = T.let(nil, T.nilable(T.any(String, Dependabot::Version)))
|
|
54
56
|
@updated_requirements = T.let(nil, T.nilable(T::Array[Dependabot::DependencyRequirement]))
|
|
55
|
-
@vulnerability_audit = T.let(nil, T.nilable(
|
|
57
|
+
@vulnerability_audit = T.let(nil, T.nilable(Audit))
|
|
56
58
|
@vulnerable_versions = T.let(nil, T.nilable(T::Array[T.any(String, Gem::Version)]))
|
|
57
59
|
|
|
58
60
|
@latest_version_for_git_dependency = T.let(nil, T.nilable(T.any(String, Gem::Version)))
|
|
@@ -116,9 +118,9 @@ module Dependabot
|
|
|
116
118
|
sig { override.returns(T.nilable(Dependabot::Version)) }
|
|
117
119
|
def lowest_security_fix_version
|
|
118
120
|
# This will require a full unlock to update multiple top level ancestors.
|
|
119
|
-
return if vulnerability_audit
|
|
121
|
+
return if vulnerability_audit.fix_available && vulnerability_audit.top_level_ancestors.count > 1
|
|
120
122
|
|
|
121
|
-
|
|
123
|
+
latest_version_finder.lowest_security_fix_version
|
|
122
124
|
end
|
|
123
125
|
|
|
124
126
|
sig { override.returns(T.nilable(Dependabot::Version)) }
|
|
@@ -155,10 +157,10 @@ module Dependabot
|
|
|
155
157
|
|
|
156
158
|
sig do
|
|
157
159
|
params(updated_version: T.any(String, Gem::Version))
|
|
158
|
-
.returns(T.nilable(T.any(String,
|
|
160
|
+
.returns(T.nilable(T.any(String, Gem::Version)))
|
|
159
161
|
end
|
|
160
162
|
def latest_resolvable_previous_version(updated_version)
|
|
161
|
-
|
|
163
|
+
version_resolver.latest_resolvable_previous_version(updated_version)
|
|
162
164
|
end
|
|
163
165
|
|
|
164
166
|
sig { override.returns(T::Array[Dependabot::DependencyRequirement]) }
|
|
@@ -198,7 +200,7 @@ module Dependabot
|
|
|
198
200
|
library? ? RequirementsUpdateStrategy::WidenRanges : RequirementsUpdateStrategy::BumpVersions
|
|
199
201
|
end
|
|
200
202
|
|
|
201
|
-
sig { override.returns(T::Array[
|
|
203
|
+
sig { override.returns(T::Array[Dependabot::UpdateCheckers::Conflict]) }
|
|
202
204
|
def conflicting_dependencies
|
|
203
205
|
conflicts = ConflictingDependencyResolver.new(
|
|
204
206
|
dependency_files: dependency_files,
|
|
@@ -209,9 +211,8 @@ module Dependabot
|
|
|
209
211
|
)
|
|
210
212
|
return conflicts unless vulnerability_audit_performed?
|
|
211
213
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
end
|
|
214
|
+
audit = vulnerability_audit
|
|
215
|
+
vulnerable = !audit.fix_available && audit.explanation ? [audit.to_h] : []
|
|
215
216
|
|
|
216
217
|
conflicts + vulnerable
|
|
217
218
|
end
|
|
@@ -223,7 +224,7 @@ module Dependabot
|
|
|
223
224
|
!!defined?(@vulnerability_audit)
|
|
224
225
|
end
|
|
225
226
|
|
|
226
|
-
sig { returns(
|
|
227
|
+
sig { returns(Audit) }
|
|
227
228
|
def vulnerability_audit
|
|
228
229
|
@vulnerability_audit ||=
|
|
229
230
|
VulnerabilityAuditor.new(
|
|
@@ -256,12 +257,12 @@ module Dependabot
|
|
|
256
257
|
|
|
257
258
|
return false unless security_advisories.any?
|
|
258
259
|
|
|
259
|
-
vulnerability_audit
|
|
260
|
+
vulnerability_audit.fix_available
|
|
260
261
|
end
|
|
261
262
|
|
|
262
263
|
sig { override.returns(T::Array[Dependabot::Dependency]) }
|
|
263
264
|
def updated_dependencies_after_full_unlock
|
|
264
|
-
return conflicting_updated_dependencies if security_advisories.any? && vulnerability_audit
|
|
265
|
+
return conflicting_updated_dependencies if security_advisories.any? && vulnerability_audit.fix_available
|
|
265
266
|
|
|
266
267
|
T.must(version_resolver.dependency_updates_from_full_unlock)
|
|
267
268
|
.map { |update_details| build_updated_dependency(update_details.transform_keys(&:to_sym)) }
|
|
@@ -273,8 +274,8 @@ module Dependabot
|
|
|
273
274
|
top_level_dependencies = top_level_dependency_lookup
|
|
274
275
|
|
|
275
276
|
updated_deps = []
|
|
276
|
-
vulnerability_audit
|
|
277
|
-
dependency_name = update
|
|
277
|
+
vulnerability_audit.fix_updates.each do |update|
|
|
278
|
+
dependency_name = update.dependency_name
|
|
278
279
|
requirements = top_level_dependencies[dependency_name]&.requirements || []
|
|
279
280
|
|
|
280
281
|
updated_deps << build_updated_dependency(
|
|
@@ -283,8 +284,8 @@ module Dependabot
|
|
|
283
284
|
package_manager: "bun",
|
|
284
285
|
requirements: requirements
|
|
285
286
|
),
|
|
286
|
-
version: update
|
|
287
|
-
previous_version: update
|
|
287
|
+
version: update.target_version,
|
|
288
|
+
previous_version: update.current_version
|
|
288
289
|
)
|
|
289
290
|
end
|
|
290
291
|
# rubocop:enable Metrics/AbcSize
|
|
@@ -294,7 +295,7 @@ module Dependabot
|
|
|
294
295
|
# to include it so it's described in the PR and we'll pass validation
|
|
295
296
|
# that this dependency is at a non-vulnerable version.
|
|
296
297
|
if updated_deps.none? { |dep| dep.name == dependency.name }
|
|
297
|
-
target_version = vulnerability_audit
|
|
298
|
+
target_version = vulnerability_audit.target_version
|
|
298
299
|
updated_deps << build_updated_dependency(
|
|
299
300
|
dependency: dependency,
|
|
300
301
|
version: target_version,
|
|
@@ -394,10 +395,8 @@ module Dependabot
|
|
|
394
395
|
def latest_version_for_git_dependency
|
|
395
396
|
@latest_version_for_git_dependency ||=
|
|
396
397
|
if version_class.correct?(dependency.version)
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
version_class.new(latest_git_version_details[:version])
|
|
400
|
-
)
|
|
398
|
+
version = latest_git_version_details[:version]
|
|
399
|
+
version && version_class.new(version)
|
|
401
400
|
else
|
|
402
401
|
latest_git_version_details[:sha]
|
|
403
402
|
end
|
|
@@ -466,7 +465,7 @@ module Dependabot
|
|
|
466
465
|
git_commit_checker.git_dependency?
|
|
467
466
|
end
|
|
468
467
|
|
|
469
|
-
sig { returns(T::Hash[Symbol, T.
|
|
468
|
+
sig { returns(T::Hash[Symbol, T.nilable(String)]) }
|
|
470
469
|
def latest_git_version_details
|
|
471
470
|
semver_req =
|
|
472
471
|
dependency.requirements
|
|
@@ -478,8 +477,8 @@ module Dependabot
|
|
|
478
477
|
if semver_req || git_commit_checker.pinned_ref_looks_like_version?
|
|
479
478
|
latest_tag = git_commit_checker.local_tag_for_latest_version(update_cooldown)
|
|
480
479
|
return {
|
|
481
|
-
sha: latest_tag&.
|
|
482
|
-
version: latest_tag&.
|
|
480
|
+
sha: latest_tag&.commit_sha,
|
|
481
|
+
version: latest_tag&.tag&.gsub(/^[^\d]*/, "")
|
|
483
482
|
}
|
|
484
483
|
end
|
|
485
484
|
|
|
@@ -501,7 +500,7 @@ module Dependabot
|
|
|
501
500
|
if git_commit_checker.pinned_ref_looks_like_version? &&
|
|
502
501
|
!git_commit_checker.local_tag_for_latest_version(update_cooldown).nil?
|
|
503
502
|
new_tag = git_commit_checker.local_tag_for_latest_version(update_cooldown)
|
|
504
|
-
return dependency_source_details&.merge(ref: new_tag&.
|
|
503
|
+
return dependency_source_details&.merge(ref: new_tag&.tag)
|
|
505
504
|
end
|
|
506
505
|
|
|
507
506
|
# Otherwise return the original source
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dependabot-bun
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.393.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.
|
|
18
|
+
version: 0.393.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.
|
|
25
|
+
version: 0.393.0
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: debug
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -354,7 +354,7 @@ licenses:
|
|
|
354
354
|
- MIT
|
|
355
355
|
metadata:
|
|
356
356
|
bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
|
|
357
|
-
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.
|
|
357
|
+
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.393.0
|
|
358
358
|
rdoc_options: []
|
|
359
359
|
require_paths:
|
|
360
360
|
- lib
|