ruby/rubygems · error · Gem::RemoteFetcher::FetchError
redirecting but no redirect location was given
Error message
redirecting but no redirect location was given
What it means
Error "redirecting but no redirect location was given" thrown in ruby/rubygems.
Source
Thrown at lib/rubygems/compact_index_client/http_fetcher.rb:41
fetch(@base_uri + path, headers, REDIRECT_LIMIT)
end
private
def fetch(uri, headers, redirects_remaining)
response = @remote_fetcher.request(uri, Gem::Net::HTTP::Get) do |req|
headers.each {|name, value| req[name] = value }
end
case response
when Gem::Net::HTTPSuccess, Gem::Net::HTTPNotModified
response
when Gem::Net::HTTPMovedPermanently, Gem::Net::HTTPFound, Gem::Net::HTTPSeeOther,
Gem::Net::HTTPTemporaryRedirect, Gem::Net::HTTPPermanentRedirect
raise Gem::RemoteFetcher::FetchError.new("too many redirects", uri) if redirects_remaining.zero?
location = response["Location"]
raise Gem::RemoteFetcher::FetchError.new("redirecting but no redirect location was given", uri) unless location
fetch(uri + location, headers, redirects_remaining - 1)
when Gem::Net::HTTPRangeNotSatisfiable
raise Gem::RemoteFetcher::FetchError.new("bad response #{response.message} #{response.code}", uri) unless headers.key?("Range")
# The local cache is longer than the remote file, refetch it whole.
fetch(uri, headers.except("Range"), redirects_remaining)
else
raise Gem::RemoteFetcher::FetchError.new("bad response #{response.message} #{response.code}", uri)
end
end
end
end
View on GitHub (pinned to 86cbb817a3)
When it happens
Trigger: Thrown at lib/rubygems/compact_index_client/http_fetcher.rb:41 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruby/rubygems@86cbb817a3 (2026-08-23).
Data as JSON: /api/errors/c22f7e6cb4640fbd.
Report an issue: GitHub.