Rakefile in merb_parts-0.9.13 vs Rakefile in merb_parts-0.9.14

- old
+ new

@@ -1,78 +1,56 @@ require 'rubygems' -require 'rake/gempackagetask' -require "extlib" -require 'merb-core/tasks/merb_rake_helper' -require "spec/rake/spectask" -require "#{File.dirname(__FILE__)}" / ".." / "version" +require 'rake' -############################################################################## -# Package && release -############################################################################## -RUBY_FORGE_PROJECT = "merb" -PROJECT_URL = "http://merbivore.com" -PROJECT_SUMMARY = "Merb plugin that provides Part Controllers." -PROJECT_DESCRIPTION = PROJECT_SUMMARY +# Assume a typical dev checkout to fetch the current merb-core version +require File.expand_path('../../merb/merb-core/lib/merb-core/version', __FILE__) -GEM_AUTHOR = "Daniel Neighman" -GEM_EMAIL = "has.sox@gmail.com" +# Load this library's version information +require File.expand_path('../lib/merb_parts/version', __FILE__) -GEM_NAME = "merb_parts" -PKG_BUILD = ENV['PKG_BUILD'] ? '.' + ENV['PKG_BUILD'] : '' -GEM_VERSION = (Merb::MORE_VERSION rescue "0.9.9") + PKG_BUILD +begin -RELEASE_NAME = "REL #{GEM_VERSION}" + require 'jeweler' -require "extlib/tasks/release" + Jeweler::Tasks.new do |gemspec| -spec = Gem::Specification.new do |s| - s.rubyforge_project = RUBY_FORGE_PROJECT - s.name = GEM_NAME - s.version = GEM_VERSION - s.platform = Gem::Platform::RUBY - s.has_rdoc = true - s.extra_rdoc_files = ["README", "LICENSE", 'TODO'] - s.summary = PROJECT_SUMMARY - s.description = PROJECT_DESCRIPTION - s.author = GEM_AUTHOR - s.email = GEM_EMAIL - s.homepage = PROJECT_URL - s.add_dependency('merb-core', '>= 0.9.9') - s.require_path = 'lib' - s.files = %w(LICENSE README Rakefile TODO) + Dir.glob("{lib}/**/*") -end + gemspec.version = Merb::Parts::VERSION -Rake::GemPackageTask.new(spec) do |pkg| - pkg.gem_spec = spec -end + gemspec.name = "merb_parts" + gemspec.description = "Merb plugin that provides Part Controllers." + gemspec.summary = "Merb plugin that provides Part Controllers." -desc "Install the gem" -task :install do - Merb::RakeHelper.install(GEM_NAME, :version => GEM_VERSION) -end + gemspec.authors = [ "Daniel Neighman" ] + gemspec.email = "has.sox@gmail.com" + gemspec.homepage = "http://github.com/merb/merb_parts" -desc "Uninstall the gem" -task :uninstall do - Merb::RakeHelper.uninstall(GEM_NAME, :version => GEM_VERSION) -end + gemspec.files = %w(CHANGELOG LICENSE Rakefile README TODO) + Dir['{lib,spec}/**/*'] -desc "Create a gemspec file" -task :gemspec do - File.open("#{GEM_NAME}.gemspec", "w") do |file| - file.puts spec.to_ruby + # Runtime dependencies + gemspec.add_dependency 'merb-core', ">= 0.9.9" + + # Development dependencies + gemspec.add_development_dependency 'rspec', '>= 1.2.9' + end + + Jeweler::GemcutterTasks.new + +rescue LoadError + puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler" end -desc "Run all examples (or a specific spec with TASK=xxxx)" -Spec::Rake::SpecTask.new('spec') do |t| - t.spec_opts = ["-cfs"] - t.spec_files = begin - if ENV["TASK"] - ENV["TASK"].split(',').map { |task| "spec/**/#{task}_spec.rb" } - else - FileList['spec/**/*_spec.rb'] - end - end +require 'spec/rake/spectask' +Spec::Rake::SpecTask.new(:spec) do |spec| + spec.spec_opts << '--options' << 'spec/spec.opts' if File.exists?('spec/spec.opts') + 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 desc 'Default: run spec examples' task :default => 'spec'