class Dependabot::Uv::MetadataFinder

def look_up_source

def look_up_source
  potential_source_urls = [
    pypi_listing.dig("info", "project_urls", "Source"),
    pypi_listing.dig("info", "project_urls", "Repository"),
    pypi_listing.dig("info", "home_page"),
    pypi_listing.dig("info", "download_url"),
    pypi_listing.dig("info", "docs_url")
  ].compact
  potential_source_urls +=
    (pypi_listing.dig("info", "project_urls") || {}).values
  source_url = potential_source_urls.find { |url| Source.from_url(url) }
  source_url ||= source_from_description
  source_url ||= source_from_homepage
  Source.from_url(source_url)
end