Class: Dependabot::Bundler::UpdateChecker::LatestVersionFinder
- Inherits:
-
Package::PackageLatestVersionFinder
- Object
- Package::PackageLatestVersionFinder
- Dependabot::Bundler::UpdateChecker::LatestVersionFinder
- Extended by:
- T::Sig
- Defined in:
- lib/dependabot/bundler/update_checker/latest_version_finder.rb,
lib/dependabot/bundler/update_checker/latest_version_finder/dependency_source.rb
Defined Under Namespace
Classes: DependencySource
Instance Method Summary collapse
- #available_versions ⇒ Object
- #cooldown_enabled? ⇒ Boolean
-
#initialize(dependency:, dependency_files:, credentials:, ignored_versions:, security_advisories:, cooldown_options: nil, raise_on_ignored: false, options: {}) ⇒ LatestVersionFinder
constructor
A new instance of LatestVersionFinder.
- #latest_version_details ⇒ Object
- #package_details ⇒ Object
Constructor Details
#initialize(dependency:, dependency_files:, credentials:, ignored_versions:, security_advisories:, cooldown_options: nil, raise_on_ignored: false, options: {}) ⇒ LatestVersionFinder
Returns a new instance of LatestVersionFinder.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/dependabot/bundler/update_checker/latest_version_finder.rb', line 35 def initialize( dependency:, dependency_files:, credentials:, ignored_versions:, security_advisories:, cooldown_options: nil, raise_on_ignored: false, options: {} ) @package_details = T.let(nil, T.nilable(Dependabot::Package::PackageDetails)) @latest_version_details = T.let(nil, T.nilable(T::Hash[Symbol, T.untyped])) @releases_from_dependency_source = T.let(nil, T.nilable(T::Array[Dependabot::Package::PackageRelease])) super end |
Instance Method Details
#available_versions ⇒ Object
74 75 76 77 78 79 80 81 82 83 |
# File 'lib/dependabot/bundler/update_checker/latest_version_finder.rb', line 74 def available_versions return nil if package_details&.releases.nil? source_versions = releases_from_dependency_source return [] if source_versions.empty? T.must(package_details).releases.select do |release| source_versions.any? { |v| v.to_s == release.version.to_s } end end |
#cooldown_enabled? ⇒ Boolean
69 70 71 |
# File 'lib/dependabot/bundler/update_checker/latest_version_finder.rb', line 69 def cooldown_enabled? true end |
#latest_version_details ⇒ Object
61 62 63 64 65 66 |
# File 'lib/dependabot/bundler/update_checker/latest_version_finder.rb', line 61 def latest_version_details @latest_version_details ||= begin latest_version = fetch_latest_version(language_version: nil) latest_version ? { version: latest_version } : nil end end |
#package_details ⇒ Object
52 53 54 55 56 57 58 |
# File 'lib/dependabot/bundler/update_checker/latest_version_finder.rb', line 52 def package_details @package_details ||= Package::PackageDetailsFetcher.new( dependency: dependency, dependency_files: dependency_files, credentials: credentials ).fetch end |