diff options
-rw-r--r-- | Rakefile | 9 | ||||
-rw-r--r-- | rake_tasks/diff.rake | 2 | ||||
-rw-r--r-- | rake_tasks/gem.rake | 32 |
3 files changed, 28 insertions, 15 deletions
@@ -2,7 +2,7 @@ $:.unshift File.dirname(__FILE__) unless $:.include? '.' ROOT = '.' LIB_ROOT = File.join ROOT, 'lib' -EXTRA_RDOC_FILES = %w(lib/README FOLDERS) +EXTRA_RDOC_FILES = %w(README.rdoc FOLDERS) task :default => :test @@ -22,13 +22,14 @@ else ruby './test/functional/for_redcloth.rb' end + gem 'rdoc' if defined? gem + require 'rdoc/task' desc 'Generate documentation for CodeRay' Rake::RDocTask.new :doc do |rd| rd.title = 'CodeRay Documentation' - rd.main = 'lib/README' + rd.main = 'README.rdoc' rd.rdoc_files.add Dir['lib'] - rd.rdoc_files.add 'lib/README' - rd.rdoc_files.add 'FOLDERS' + rd.rdoc_files.add 'README.rdoc' rd.rdoc_dir = 'doc' end diff --git a/rake_tasks/diff.rake b/rake_tasks/diff.rake index bdbb458..13e2662 100644 --- a/rake_tasks/diff.rake +++ b/rake_tasks/diff.rake @@ -1,6 +1,8 @@ # A simple differ using svn. Handles externals. class Differ < Hash + include Rake::DSL + def initialize path @path = path super 0 diff --git a/rake_tasks/gem.rake b/rake_tasks/gem.rake index 61945e6..bef2ac9 100644 --- a/rake_tasks/gem.rake +++ b/rake_tasks/gem.rake @@ -10,11 +10,11 @@ def coderay_version require 'coderay'
version = CodeRay::VERSION
- if ENV['pre']
- version + ".#{svn_head_revision}.pre"
- elsif version[/.0$/]
- version + ".#{svn_head_revision}"
+ unless ENV['final']
+ version << ".#{svn_head_revision}.pre"
end
+
+ version
end
end
@@ -29,17 +29,21 @@ def gemspec s.summary = 'Fast syntax highlighting for selected languages.'
s.description = 'Fast and easy syntax highlighting for selected languages, written in Ruby. Comes with RedCloth integration and LOC counter.'
- s.files = Dir['lib/**/*.rb'] + %w(Rakefile lib/README LICENSE) + Dir['test/functional/*.rb']
+ s.files = Dir['lib/**/*.rb'] + %w(Rakefile README.rdoc LICENSE) + Dir['test/functional/*.rb']
s.test_files = Dir['test/functional/*.rb']
s.executables = [ 'coderay', 'coderay_stylesheet' ]
s.require_paths = ['lib']
s.rubyforge_project = s.name
- s.rdoc_options = '-SNw2', '-mlib/README', '-t CodeRay Documentation'
+ s.rdoc_options = '-SNw2', '-mREADME.rdoc', '-t CodeRay Documentation'
s.extra_rdoc_files = EXTRA_RDOC_FILES
end
end
+def gem_path
+ "pkg/coderay-#{coderay_version}.gem"
+end
+
namespace :gem do
Gem::PackageTask.new gemspec do |pkg|
pkg.need_zip = true
@@ -53,15 +57,21 @@ namespace :gem do desc 'Delete previously created Gems'
task :clean do
- Dir['pkg/*.gem'].each { |g| rm g }
+ rm_r Dir['pkg/*']
end
- task :set_pre do
- ENV['pre'] = 'true'
+ desc 'Install the gem'
+ task :install => [:make] do
+ sh "gem install #{gem_path}"
end
- desc 'Make a prerelease Gem.'
- task :prerelease => [:set_pre, :make]
+ desc 'Release the gem on rubygems.org'
+ task :release => [:make] do
+ print "Releasing CodeRay #{coderay_version}. Are you sure? "
+ if $stdin.gets.chomp == 'yes'
+ sh "gem push #{gem_path}"
+ end
+ end
end
task :gem => 'gem:make'
\ No newline at end of file |