class Dependabot::Uv::UpdateChecker::LatestVersionFinder

def available_versions

Simple Repository API we use here.
See https://www.python.org/dev/peps/pep-0503/ for details of the
def available_versions
  @available_versions ||=
    index_urls.flat_map do |index_url|
      validate_index(index_url)
      sanitized_url = index_url.gsub(%r{(?<=//).*(?=@)}, "redacted")
      index_response = registry_response_for_dependency(index_url)
      if index_response.status == 401 || index_response.status == 403
        registry_index_response = registry_index_response(index_url)
        if registry_index_response.status == 401 || registry_index_response.status == 403
          raise PrivateSourceAuthenticationFailure, sanitized_url
        end
      end
      version_links = []
      index_response.body.scan(%r{<a\s.*?>.*?</a>}m) do
        details = version_details_from_link(Regexp.last_match.to_s)
        version_links << details if details
      end
      version_links.compact
    rescue Excon::Error::Timeout, Excon::Error::Socket
      raise if MAIN_PYPI_INDEXES.include?(index_url)
      raise PrivateSourceTimedOut, sanitized_url
    rescue URI::InvalidURIError
      raise DependencyFileNotResolvable, "Invalid URL: #{sanitized_url}"
    end
end