Class: Dependabot::RustToolchain::Package::PackageDetailsFetcher

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/dependabot/rust_toolchain/package/package_details_fetcher.rb

Constant Summary collapse

MANIFESTS_URL =
"https://static.rust-lang.org/manifests.txt"

Instance Method Summary collapse

Constructor Details

#initialize(dependency:) ⇒ PackageDetailsFetcher

Returns a new instance of PackageDetailsFetcher.



29
30
31
# File 'lib/dependabot/rust_toolchain/package/package_details_fetcher.rb', line 29

def initialize(dependency:)
  @dependency = dependency
end

Instance Method Details

#fetchObject



34
35
36
37
38
39
40
41
42
43
44
# File 'lib/dependabot/rust_toolchain/package/package_details_fetcher.rb', line 34

def fetch
  if all_versions.nil? || all_versions.empty?
    raise Dependabot::DependencyFileNotResolvable, "No versions found in manifests.txt"
  end

  Dependabot::Package::PackageDetails.new(
    dependency: dependency,
    releases: all_versions.map { |v| Dependabot::Package::PackageRelease.new(version: v) },
    dist_tags: nil
  )
end