aboutsummaryrefslogtreecommitdiffstats
path: root/lib/bundler/installer.rb
diff options
context:
space:
mode:
authorCarlhuda <carlhuda@engineyard.com>2010-03-09 12:55:30 -0800
committerCarlhuda <carlhuda@engineyard.com>2010-03-09 12:58:58 -0800
commitb9f29ad1e6fd2bc161390a802ca2116568a7842a (patch)
tree2f6b087577b38f393b0bb4f316912069de6722e4 /lib/bundler/installer.rb
parent02fd9b9d4ca7a70465393fe949651e45ff226642 (diff)
downloadbundler-b9f29ad1e6fd2bc161390a802ca2116568a7842a.tar.gz
Install gems from the cache when present.
Diffstat (limited to 'lib/bundler/installer.rb')
-rw-r--r--lib/bundler/installer.rb5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/bundler/installer.rb b/lib/bundler/installer.rb
index d071cf4b..216bc4c9 100644
--- a/lib/bundler/installer.rb
+++ b/lib/bundler/installer.rb
@@ -71,7 +71,7 @@ module Bundler
# Simple logic for now. Can improve later.
specs.length == actual_dependencies.length && specs
- rescue Bundler::GemNotFound
+ rescue Bundler::GemNotFound => e
nil
raise if ENV["OMG"]
end
@@ -103,10 +103,11 @@ module Bundler
other_sources.each do |source|
i = source.specs
Bundler.ui.debug "Source: Processing index"
- index = i.merge(index).freeze
+ index = i.merge(index)
end
index = Index.from_installed_gems.merge(index)
+ index = Index.from_cached_specs("#{Bundler.bundle_path}/cache").merge(index)
if File.directory?("#{root}/vendor/cache")
index = cache_source.specs.merge(index)