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