Rakefile in gitable-0.0.1 vs Rakefile in gitable-0.0.2
- old
+ new
@@ -1,67 +1,75 @@
-require 'rubygems'
-require 'rake'
-
-begin
- require 'jeweler'
- Jeweler::Tasks.new do |gem|
- gem.name = "gitable"
- gem.summary = %Q{Like Addressable::URI but for Git}
- gem.description = %Q{Use this like an Addressable::URI that understands the various git URI formats.}
- gem.email = "martin.emde@gmail.com"
- gem.homepage = "http://github.com/martinemde/gitable"
- gem.authors = ["Martin Emde"]
- end
- Jeweler::GemcutterTasks.new
-rescue LoadError
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
-end
-
-require 'spec/rake/spectask'
-Spec::Rake::SpecTask.new(:spec) do |spec|
- spec.libs << 'lib' << 'spec'
- spec.spec_files = FileList['spec/**/*_spec.rb']
-end
-
-Spec::Rake::SpecTask.new(:rcov) do |spec|
- spec.libs << 'lib' << 'spec'
- spec.pattern = 'spec/**/*_spec.rb'
- spec.rcov = true
-end
-
-task :spec => :check_dependencies
-
-begin
- require 'reek/adapters/rake_task'
- Reek::RakeTask.new do |t|
- t.fail_on_error = true
- t.verbose = false
- t.source_files = 'lib/**/*.rb'
- end
-rescue LoadError
- task :reek do
- abort "Reek is not available. In order to run reek, you must: sudo gem install reek"
- end
-end
-
-begin
- require 'roodi'
- require 'roodi_task'
- RoodiTask.new do |t|
- t.verbose = false
- end
-rescue LoadError
- task :roodi do
- abort "Roodi is not available. In order to run roodi, you must: sudo gem install roodi"
- end
-end
-
-task :default => :spec
-
-begin
- require 'yard'
- YARD::Rake::YardocTask.new
-rescue LoadError
- task :yardoc do
- abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
- end
-end
+require 'bundler'
+Bundler.require_env
+require 'rake'
+
+begin
+ require 'jeweler'
+ Jeweler::Tasks.new do |gem|
+ gem.name = "gitable"
+ gem.summary = %Q{Addressable::URI for Git}
+ gem.description = %Q{It's like Addressable::URI but for Git. Gitable.}
+ gem.email = "martin.emde@gmail.com"
+ gem.homepage = "http://github.com/martinemde/gitable"
+ gem.authors = ["Martin Emde"]
+
+ bundle = Bundler::Bundle.load(File.dirname(__FILE__) + '/Gemfile')
+ bundle.environment.dependencies.each do |d|
+ if d.only && d.only.include?('runtime')
+ gem.add_dependency d.name, d.version.to_s
+ end
+ end
+ end
+ Jeweler::GemcutterTasks.new
+rescue LoadError
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
+end
+
+require 'spec/rake/spectask'
+Spec::Rake::SpecTask.new(:spec) do |spec|
+ spec.libs << 'lib' << 'spec'
+ spec.spec_files = FileList['spec/**/*_spec.rb']
+end
+
+Spec::Rake::SpecTask.new(:rcov) do |spec|
+ spec.libs << 'lib' << 'spec'
+ spec.pattern = 'spec/**/*_spec.rb'
+ spec.rcov = true
+end
+
+task :spec => :check_dependencies
+
+begin
+ require 'reek/adapters/rake_task'
+ Reek::RakeTask.new do |t|
+ t.fail_on_error = true
+ t.verbose = false
+ t.source_files = 'lib/**/*.rb'
+ end
+rescue LoadError
+ task :reek do
+ abort "Reek is not available. In order to run reek, you must: sudo gem install reek"
+ end
+end
+
+begin
+ require 'roodi'
+ require 'roodi_task'
+ RoodiTask.new do |t|
+ t.verbose = false
+ end
+rescue LoadError
+ task :roodi do
+ abort "Roodi is not available. In order to run roodi, you must: sudo gem install roodi"
+ end
+end
+
+task :default => :spec
+
+begin
+ require 'yard'
+ YARD::Rake::YardocTask.new
+rescue LoadError
+ task :yardoc do
+ abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
+ end
+end