summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2019-03-04 17:27:00 +0100
committerDavid Rodríguez <deivid.rodriguez@riseup.net>2019-03-20 14:22:36 +0100
commitb98fca133f4fa4c670fe82c3cdbd1464a26e1512 (patch)
tree53c1e433ea5c97170450f0753ed5981497e92894
parentcc2511da4cecb9f4fc20db5ddc4a5a0e2eb9573b (diff)
downloadbundler-b98fca133f4fa4c670fe82c3cdbd1464a26e1512.tar.gz
Make `bin/rake` activate only `rake`
-rwxr-xr-xbin/rake23
1 files changed, 12 insertions, 11 deletions
diff --git a/bin/rake b/bin/rake
index 47fcb49888..6c08fb0b97 100755
--- a/bin/rake
+++ b/bin/rake
@@ -5,17 +5,18 @@ load File.expand_path("../with_rubygems", __FILE__) if ENV["RGV"]
require "rubygems"
-unless ARGV[0] == "spec:deps"
- bundler_spec = Gem::Specification.load(File.expand_path("../../bundler.gemspec", __FILE__))
- bundler_spec.dependencies.each do |dep|
- begin
- gem dep.name, dep.requirement
- rescue Gem::LoadError => e
- warn "#{e.message} (#{e.class})"
- end
- end
+bundler_spec = Gem::Specification.load(File.expand_path("../../bundler.gemspec", __FILE__))
+rake = bundler_spec.development_dependencies.find do |dep|
+ dep.name == "rake"
+end
+
+rake_requirement = rake.requirement.to_s
+begin
+ gem "rake", rake_requirement
Gem.finish_resolve if Gem.respond_to?(:finish_resolve)
-end
-load Gem.bin_path("rake", "rake")
+ load Gem.bin_path("rake", "rake")
+rescue Gem::LoadError
+ warn "We couln't activate rake (#{rake_requirement}). Run `gem install rake:'#{rake_requirement}'`"
+end