Class: Dependabot::Cargo::UpdateChecker
- Inherits:
-
UpdateCheckers::Base
- Object
- UpdateCheckers::Base
- Dependabot::Cargo::UpdateChecker
show all
- Extended by:
- T::Sig
- Defined in:
- lib/dependabot/cargo/update_checker.rb,
lib/dependabot/cargo/update_checker/file_preparer.rb,
lib/dependabot/cargo/update_checker/version_resolver.rb,
lib/dependabot/cargo/update_checker/requirements_updater.rb,
lib/dependabot/cargo/update_checker/latest_version_finder.rb
Defined Under Namespace
Classes: FilePreparer, LatestVersionFinder, RequirementsUpdater, VersionResolver
Instance Method Summary
collapse
Instance Method Details
#latest_resolvable_version ⇒ Object
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
# File 'lib/dependabot/cargo/update_checker.rb', line 40
def latest_resolvable_version
return if path_dependency?
@latest_resolvable_version = T.let(
@latest_resolvable_version ||
if git_dependency?
latest_resolvable_version_for_git_dependency
elsif git_subdependency?
nil
else
fetch_latest_resolvable_version(unlock_requirement: true)
end,
T.nilable(T.any(String, Gem::Version))
)
end
|
#latest_resolvable_version_with_no_unlock ⇒ Object
77
78
79
80
81
82
83
84
85
86
87
88
89
|
# File 'lib/dependabot/cargo/update_checker.rb', line 77
def latest_resolvable_version_with_no_unlock
return if path_dependency?
@latest_resolvable_version_with_no_unlock = T.let(
@latest_resolvable_version_with_no_unlock ||
if git_dependency?
latest_resolvable_commit_with_unchanged_git_source
else
fetch_latest_resolvable_version(unlock_requirement: false)
end,
T.nilable(T.any(String, Gem::Version))
)
end
|
#latest_version ⇒ Object
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/dependabot/cargo/update_checker.rb', line 22
def latest_version
return if path_dependency?
@latest_version = T.let(
if git_dependency?
latest_version_for_git_dependency
elsif git_subdependency?
nil
else
latest_version_finder.latest_version
end,
T.nilable(T.any(String, Gem::Version))
)
end
|
#lowest_resolvable_security_fix_version ⇒ Object
64
65
66
67
68
69
70
71
72
73
74
|
# File 'lib/dependabot/cargo/update_checker.rb', line 64
def lowest_resolvable_security_fix_version
raise "Dependency not vulnerable!" unless vulnerable?
return @lowest_resolvable_security_fix_version if defined?(@lowest_resolvable_security_fix_version)
result = fetch_lowest_resolvable_security_fix_version
@lowest_resolvable_security_fix_version = T.let(
result.is_a?(Gem::Version) ? result : nil,
T.nilable(Gem::Version)
)
end
|
#lowest_security_fix_version ⇒ Object
59
60
61
|
# File 'lib/dependabot/cargo/update_checker.rb', line 59
def lowest_security_fix_version
latest_version_finder.lowest_security_fix_version
end
|
#requirements_unlocked_or_can_be? ⇒ Boolean
102
103
104
|
# File 'lib/dependabot/cargo/update_checker.rb', line 102
def requirements_unlocked_or_can_be?
!requirements_update_strategy.lockfile_only?
end
|
#requirements_update_strategy ⇒ Object
107
108
109
110
111
112
113
|
# File 'lib/dependabot/cargo/update_checker.rb', line 107
def requirements_update_strategy
return @requirements_update_strategy if @requirements_update_strategy
library? ? RequirementsUpdateStrategy::BumpVersionsIfNecessary : RequirementsUpdateStrategy::BumpVersions
end
|
#updated_requirements ⇒ Object
92
93
94
95
96
97
98
99
|
# File 'lib/dependabot/cargo/update_checker.rb', line 92
def updated_requirements
RequirementsUpdater.new(
requirements: dependency.requirements,
updated_source: updated_source,
target_version: target_version,
update_strategy: requirements_update_strategy
).updated_requirements
end
|