summaryrefslogtreecommitdiff
path: root/lib/rubygems
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems')
-rw-r--r--lib/rubygems/resolver/best_set.rb30
-rw-r--r--lib/rubygems/source.rb2
2 files changed, 3 insertions, 29 deletions
diff --git a/lib/rubygems/resolver/best_set.rb b/lib/rubygems/resolver/best_set.rb
index a983f8c6b6..57d0d00375 100644
--- a/lib/rubygems/resolver/best_set.rb
+++ b/lib/rubygems/resolver/best_set.rb
@@ -29,10 +29,8 @@ class Gem::Resolver::BestSet < Gem::Resolver::ComposedSet
pick_sets if @remote && @sets.empty?
super
- rescue Gem::RemoteFetcher::FetchError => e
- replace_failed_api_set e
-
- retry
+ rescue Gem::RemoteFetcher::FetchError
+ []
end
def prefetch(reqs) # :nodoc:
@@ -50,28 +48,4 @@ class Gem::Resolver::BestSet < Gem::Resolver::ComposedSet
q.pp @sets
end
end
-
- ##
- # Replaces a failed APISet for the URI in +error+ with an IndexSet.
- #
- # If no matching APISet can be found the original +error+ is raised.
- #
- # The calling method must retry the exception to repeat the lookup.
-
- def replace_failed_api_set(error) # :nodoc:
- uri = error.original_uri
- uri = Gem::URI uri unless Gem::URI === uri
- uri += "."
-
- raise error unless api_set = @sets.find do |set|
- Gem::Resolver::APISet === set && set.dep_uri == uri
- end
-
- index_set = Gem::Resolver::IndexSet.new api_set.source
-
- @sets.map! do |set|
- next set unless set == api_set
- index_set
- end
- end
end
diff --git a/lib/rubygems/source.rb b/lib/rubygems/source.rb
index 4e5545982d..59dcc2e1e1 100644
--- a/lib/rubygems/source.rb
+++ b/lib/rubygems/source.rb
@@ -79,7 +79,7 @@ class Gem::Source
uri
end
- bundler_api_uri = enforce_trailing_slash(fetch_uri)
+ bundler_api_uri = enforce_trailing_slash(fetch_uri) + "./versions"
begin
fetcher = Gem::RemoteFetcher.fetcher