Rakefile in aub-machine-1.0.2 vs Rakefile in aub-machine-1.0.3

- old
+ new

@@ -1,61 +1,50 @@ require 'rubygems' require 'rake' require 'rake/testtask' -require 'rake/rdoctask' -require 'rake/gempackagetask' -require 'date' +begin + require 'jeweler' + Jeweler::Tasks.new do |gemspec| + gemspec.name = "machine" + gemspec.summary = "machine is an implementation of the factory pattern for creating model objects when testing Ruby apps" + gemspec.description = "machine is an implementation of the factory pattern for creating model objects when testing Ruby apps. It borrows concepts from factory_girl, but has a different implementation for associations." + gemspec.email = "aubreyholland@gmail.com" + gemspec.homepage = "http://github.com/aub/machine" + gemspec.authors = ["Aubrey Holland"] + end +rescue LoadError + puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com" +end + desc 'Default: run unit tests.' task :default => :test desc 'Test the machine.' Rake::TestTask.new(:test) do |t| t.libs << 'lib' t.pattern = 'test/**/*_test.rb' t.verbose = true end -desc 'Generate documentation for the machine.' -Rake::RDocTask.new(:rdoc) do |rdoc| - rdoc.rdoc_dir = 'rdoc' - rdoc.title = 'Machine' - rdoc.options << '--line-numbers' << '--inline-source' << "--main" << "README.textile" - rdoc.rdoc_files.include('README.textile') - rdoc.rdoc_files.include('lib/**/*.rb') +# Try to use hanna to create spiffier docs. +begin + require 'hanna/rdoctask' +rescue LoadError + require 'rake/rdoctask' end -spec = Gem::Specification.new do |s| - s.name = %q{machine} - s.version = "1.0.2" - s.summary = %q{machine defines a factory system for creating model objects to replace fixtures in Ruby apps.} - s.description = %q{machine defines a factory system for creating model objects to replace fixtures in Ruby apps.} +Rake::RDocTask.new do |rdoc| + if File.exist?('VERSION.yml') + config = YAML.load(File.read('VERSION.yml')) + version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}" + else + version = "" + end - s.files = FileList['[A-Z]*', 'lib/**/*.rb', 'test/**/*.rb'] - s.require_path = 'lib' - s.test_files = Dir[*['test/**/*_test.rb']] - - s.has_rdoc = true - s.extra_rdoc_files = ["README.textile"] - s.rdoc_options = ['--line-numbers', '--inline-source', "--main", "README.textile"] - - s.authors = ["Aubrey Holland"] - s.email = %q{aubrey@patch.com} - - s.platform = Gem::Platform::RUBY - s.add_dependency(%q<activesupport>, [">= 1.0"]) + rdoc.rdoc_dir = 'rdoc' + rdoc.title = "machine #{version}" + rdoc.rdoc_files.include('README*') + rdoc.rdoc_files.include('lib/**/*.rb') + rdoc.options << '--webcvs=http://github.com/aub/machine/tree/master/' end -Rake::GemPackageTask.new spec do |pkg| - pkg.need_tar = true - pkg.need_zip = true -end - -desc "Clean files generated by rake tasks" -task :clobber => [:clobber_rdoc, :clobber_package] - -desc "Generate a gemspec file" -task :gemspec do - File.open("#{spec.name}.gemspec", 'w') do |f| - f.write spec.to_ruby - end -end