diff --git a/Rakefile b/Rakefile index 6580830..2e28443 100644 --- a/Rakefile +++ b/Rakefile @@ -1,48 +1,68 @@ -ProjectName = 'httparty' -WebsitePath = "jnunemaker@rubyforge.org:/var/www/gforge-projects/#{ProjectName}" - require 'rubygems' require 'rake' -require 'echoe' -require 'spec/rake/spectask' -require "lib/#{ProjectName}/version" -require 'cucumber/rake/task' -Echoe.new(ProjectName, HTTParty::Version) do |p| - p.description = "Makes http fun! Also, makes consuming restful web services dead easy." - p.install_message = "When you HTTParty, you must party hard!" - p.url = "http://#{ProjectName}.rubyforge.org" - p.author = "John Nunemaker" - p.email = "nunemaker@gmail.com" - p.extra_deps = [['crack', '>= 0.1.1']] - p.need_tar_gz = false - p.docs_host = WebsitePath +begin + require 'jeweler' + Jeweler::Tasks.new do |gem| + gem.name = "httparty" + gem.description = %Q{Makes http fun! Also, makes consuming restful web services dead easy.} + gem.email = "nunemaker@gmail.com" + gem.homepage = "http://httparty.rubyforge.org" + gem.authors = ["John Nunemaker"] + gem.add_dependency 'crack', '>= 0.1.1' + gem.add_development_dependency "rspec" + gem.post_install_message = "When you HTTParty, you must party hard!" + # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings + end + Jeweler::RubyforgeTasks.new do |rubyforge| + rubyforge.doc_task = "rdoc" + end +rescue LoadError + puts "Jeweler (or a dependency) not available. Install it with: sudo 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 'cucumber/rake/task' + Cucumber::Rake::Task.new(:features) + + task :features => :check_dependencies +rescue LoadError + task :features do + abort "Cucumber is not available. In order to run features, you must: sudo gem install cucumber" + end +end + +task :default => [:spec, :features] + +require 'rake/rdoctask' +Rake::RDocTask.new do |rdoc| + if File.exist?('VERSION') + version = File.read('VERSION') + else + version = "" + end + + rdoc.rdoc_dir = 'rdoc' + rdoc.title = "httparty #{version}" + rdoc.rdoc_files.include('README*') + rdoc.rdoc_files.include('lib/**/*.rb') end desc 'Upload website files to rubyforge' task :website do - sh %{rsync -av website/ #{WebsitePath}} - Rake::Task['website_docs'].invoke -end - -task :website_docs do - Rake::Task['redocs'].invoke - sh %{rsync -av doc/ #{WebsitePath}/docs} -end - -desc 'Preps the gem for a new release' -task :prepare do - %w[manifest build_gemspec].each do |task| - Rake::Task[task].invoke - end -end - -Rake::Task[:default].prerequisites.clear -task :default => :spec -Spec::Rake::SpecTask.new do |t| - t.spec_files = FileList["spec/**/*_spec.rb"] -end - -Cucumber::Rake::Task.new(:features) do |t| - t.cucumber_opts = "--format pretty" -end + sh %{rsync -av website/ jnunemaker@rubyforge.org:/var/www/gforge-projects/httparty} +end \ No newline at end of file diff --git a/VERSION b/VERSION index 77d6f4c..6f2743d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.0 +0.4.4