lib/bundler.rb in bundler-0.9.19 vs lib/bundler.rb in bundler-0.9.20

- old
+ new

@@ -64,28 +64,36 @@ path = settings[:path] || "#{Gem.user_home}/.bundle/#{Gem.ruby_engine}/#{Gem::ConfigMap[:ruby_version]}" Pathname.new(path).expand_path(root) end end - def setup(*groups) + def gem_setup(*groups) return @setup if @setup - if groups.empty? - # Load all groups, but only once - @setup = load.setup - else - # Figure out which groups haven't been loaded yet - unloaded = groups - (@completed_groups || []) - # Record groups that are now loaded - @completed_groups = groups | (@completed_groups || []) - # Load any groups that are not yet loaded - unloaded.any? ? load.setup(*unloaded) : load + begin + if groups.empty? + # Load all groups, but only once + @setup = load.setup + else + # Figure out which groups haven't been loaded yet + unloaded = groups - (@completed_groups || []) + # Record groups that are now loaded + @completed_groups = groups | (@completed_groups || []) + # Load any groups that are not yet loaded + unloaded.any? ? load.setup(*unloaded) : load + end + rescue Bundler::GemNotFound => e + STDERR.puts e.message + STDERR.puts "Try running `bundle install`." + exit! end end + alias setup gem_setup unless Bundler.respond_to?(:setup) - def require(*groups) + def gem_require(*groups) setup(*groups).require(*groups) end + alias require gem_require unless Bundler.respond_to?(:require) def load @load ||= begin if current_env_file? @gem_loaded = true