summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-30 03:28:04 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-30 03:28:04 +0000
commitaee295fc747c7e117f4b550ab806057b4c4738a4 (patch)
tree414ad8357044c74fea87460060fff80d5a9922ae /lib
parent8137152e01dbeaf8504f3d7e2117e22dfdf6801f (diff)
* lib/rubygems/spec_fetcher.rb: Allow prerelease spec fetching to fail
for bundler. * test/rubygems/test_gem_spec_fetcher.rb: Test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r--lib/rubygems/spec_fetcher.rb16
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/rubygems/spec_fetcher.rb b/lib/rubygems/spec_fetcher.rb
index 531d023b2f..3345f6537e 100644
--- a/lib/rubygems/spec_fetcher.rb
+++ b/lib/rubygems/spec_fetcher.rb
@@ -195,7 +195,8 @@ class Gem::SpecFetcher
when :released
tuples_for source, :released
when :complete
- tuples_for(source, :prerelease) + tuples_for(source, :released)
+ tuples_for(source, :prerelease, true) +
+ tuples_for(source, :released)
when :prerelease
tuples_for(source, :prerelease)
else
@@ -211,9 +212,18 @@ class Gem::SpecFetcher
[list, errors]
end
- def tuples_for(source, type)
+ def tuples_for(source, type, gracefully_ignore=false)
cache = @caches[type]
- cache[source.uri] ||= source.load_specs(type)
+
+ if gracefully_ignore
+ begin
+ cache[source.uri] ||= source.load_specs(type)
+ rescue Gem::RemoteFetcher::FetchError
+ []
+ end
+ else
+ cache[source.uri] ||= source.load_specs(type)
+ end
end
end