summaryrefslogtreecommitdiff
path: root/rake_tasks
diff options
context:
space:
mode:
authormurphy <murphy@rubychan.de>2010-03-31 22:17:06 +0000
committermurphy <murphy@rubychan.de>2010-03-31 22:17:06 +0000
commit862bc9aa6b002f6b29cf74f93ca66e63cf370819 (patch)
tree45e8a8731fadca8df5fe86595dc2e8f6dc7a3782 /rake_tasks
parentcce5dad0dce285a2b7c4f1fe0ec79d10c71a8403 (diff)
downloadcoderay-862bc9aa6b002f6b29cf74f93ca66e63cf370819.tar.gz
Upporting changes from 0.9.2 (vs. 0.9.1).
Diffstat (limited to 'rake_tasks')
-rw-r--r--rake_tasks/documentation.rake26
-rw-r--r--rake_tasks/example.rake25
-rw-r--r--rake_tasks/gem.rake50
-rw-r--r--rake_tasks/ruby-versions.rake48
-rw-r--r--rake_tasks/rubyforge.rake33
-rw-r--r--rake_tasks/test.rake12
6 files changed, 91 insertions, 103 deletions
diff --git a/rake_tasks/documentation.rake b/rake_tasks/documentation.rake
index 9a96a02..162699d 100644
--- a/rake_tasks/documentation.rake
+++ b/rake_tasks/documentation.rake
@@ -1,24 +1,16 @@
-require 'rake/rdoctask'
-require 'pathname'
-
-CODERAY_TEMPLATE = Pathname.new(File.dirname(__FILE__)).join('..', 'rake_helpers', 'coderay_rdoc_template.rb').expand_path.to_s
-
-def set_rdoc_info rd
+desc 'Generate documentation for CodeRay'
+Rake::RDocTask.new :doc do |rd|
rd.main = 'lib/README'
- rd.title = "CodeRay Documentation"
+ rd.title = 'CodeRay Documentation'
+
rd.options << '--line-numbers' << '--inline-source' << '--tab-width' << '2'
rd.options << '--fmt' << ENV.fetch('format', 'html_coderay')
- # rd.options << '--all'
+ require 'pathname'
+ template = File.join ROOT, 'rake_helpers', 'coderay_rdoc_template.rb'
+ rd.template = Pathname.new(template).expand_path.to_s
- rd.template = ENV.fetch('template', CODERAY_TEMPLATE)
- rd.rdoc_files.add(*EXTRA_FILES.in(ROOT))
- rd.rdoc_files.add(*Dir[File.join(LIB_ROOT, 'coderay', '**', '*.rb')])
- rd.rdoc_files.add(*Dir[File.join(LIB_ROOT, '*.rb')])
-end
-
-desc 'Generate documentation for CodeRay'
-Rake::RDocTask.new :doc do |rd|
- set_rdoc_info rd
+ rd.rdoc_files.add EXTRA_RDOC_FILES
+ rd.rdoc_files.add Dir['lib']
rd.rdoc_dir = 'doc'
end
diff --git a/rake_tasks/example.rake b/rake_tasks/example.rake
deleted file mode 100644
index dfd594a..0000000
--- a/rake_tasks/example.rake
+++ /dev/null
@@ -1,25 +0,0 @@
-namespace :example do
-
- desc 'Generate an example output'
- task :make do
- system "#{RUBY} -wIlib ../hidden/highlight.rb -1 -L -I lib lib/coderay/**/"
- end
-
- desc 'Upload example to ' + FTP_DOMAIN
- task :upload => :make do
- gn 'Highlighting self...'
- gd
- gn 'Uploading example:'
- cYcnus_ftp do |ftp|
- ftp.chdir FTP_CODERAY_DIR
- uploader = proc do |l, r|
- g 'Uploading %s to %s...' % [l, r]
- ftp.putbinaryfile l, r
- gd
- end
- uploader.call 'highlighted/all_in_one.html', 'example.html'
- end
- gn 'Example uploaded.'
- end
-
-end
diff --git a/rake_tasks/gem.rake b/rake_tasks/gem.rake
index 9db4442..328a32e 100644
--- a/rake_tasks/gem.rake
+++ b/rake_tasks/gem.rake
@@ -12,20 +12,16 @@ def gemspec
s.requirements = []
s.date = Time.now.strftime '%Y-%m-%d'
s.has_rdoc = true
- s.rdoc_options = '-SNw2', '-mlib/README', '-a', '-t CodeRay Documentation'
- s.extra_rdoc_files = EXTRA_FILES.in('./')
+ s.rdoc_options = '-SNw2', '-mlib/README', '-t CodeRay Documentation'
+ s.extra_rdoc_files = EXTRA_RDOC_FILES
# Description
s.summary = <<-EOF
- CodeRay is a fast syntax highlighter engine for many languages.
+Fast syntax highlighting for selected languages.
EOF
s.description = <<-EOF
- CodeRay is a Ruby library for syntax highlighting.
- I try to make CodeRay easy to use and intuitive, but at the same time
- fully featured, complete, fast and efficient.
-
- Usage is simple:
- CodeRay.scan(code, :ruby).div
+Fast and easy syntax highlighting for selected languages, written in Ruby.
+Comes with RedCloth integration and LOC counter.
EOF
# Files
@@ -41,6 +37,11 @@ def gemspec
end
end
+def svn_head_revision
+ sh 'svn up --ignore-externals'
+ `svn info`[/Revision: (\d+)/,1]
+end
+
namespace :gem do
gemtask = Rake::GemPackageTask.new(gemspec) do |pkg|
@@ -48,7 +49,7 @@ namespace :gem do
pkg.need_tar = true
end
- desc 'Create the gem again'
+ desc 'Create the Gem again'
task :make => [:make_gemspec, :clean, :gem]
desc 'Delete previously created Gems'
@@ -66,25 +67,34 @@ namespace :gem do
end
puts 'Current Version: %s' % $version
if $version[/.0$/]
- sh 'svn up --ignore-externals'
- $version << '.' << `svn info`[/Revision: (\d+)/,1]
+ $version << '.' << svn_head_revision
$gem_name << '-beta'
end
+ if ENV['pre']
+ $version << '.' << svn_head_revision
+ $version << '.pre'
+ end
end
task :make_gemspec => :get_version do
- candidates = Dir['./lib/**/*.rb'] +
- Dir['./demo/*.rb'] +
- # Dir['./bin/*'] +
- # Dir['./demo/bench/*'] +
- # Dir['./test/*'] +
- %w( ./lib/README ./LICENSE)
s = gemtask.gem_spec
- s.files = candidates #.delete_if { |item| item[/(?:CVS|rdoc)|~$/] }
+ s.files = Dir['./lib/**/*.rb'] +
+ Dir['./demo/*.rb'] +
+ Dir['./Rakefile'] +
+ Dir['./test/functional/*'] +
+ %w(./lib/README ./LICENSE)
+ s.test_file = './test/functional/suite.rb'
gemtask.version = s.version = $version
gemtask.name = s.name = $gem_name
end
-
+
+ task :set_pre do
+ ENV['pre'] = 'true'
+ end
+
+ desc 'Make a prerelease Gem.'
+ task :prerelease => [:set_pre, :make]
+
end
task :gem => 'gem:make' \ No newline at end of file
diff --git a/rake_tasks/ruby-versions.rake b/rake_tasks/ruby-versions.rake
new file mode 100644
index 0000000..bfb1f88
--- /dev/null
+++ b/rake_tasks/ruby-versions.rake
@@ -0,0 +1,48 @@
+RUBY = ENV.fetch 'ruby', 'ruby'
+
+def ruby command
+ params =
+ if RUBY == 'rbx'
+ '-I/usr/local/lib/ruby/1.8'
+ else
+ '-w'
+ end
+ cmd = "#{RUBY} #{params} #{command}"
+ puts cmd if verbose
+ system cmd
+end
+
+task '19' do
+ RUBY.replace 'ruby19'
+end
+
+task '18' do
+ RUBY.replace 'ruby18'
+end
+
+task '187' do
+ RUBY.replace 'ruby187'
+end
+
+task 'jruby' do
+ RUBY.replace 'jruby'
+end
+task :j => :jruby
+
+task 'jruby19' do
+ RUBY.replace 'jruby --1.9'
+end
+task :j19 => :jruby19
+
+task 'jruby-nailgun' do
+ RUBY.replace 'jruby --ng'
+end
+task :jng => :'jruby-nailgun'
+
+task 'rubinius' do
+ RUBY.replace 'rbx'
+end
+
+task 'ee' do
+ RUBY.replace 'rubyee'
+end
diff --git a/rake_tasks/rubyforge.rake b/rake_tasks/rubyforge.rake
deleted file mode 100644
index 83fa0fc..0000000
--- a/rake_tasks/rubyforge.rake
+++ /dev/null
@@ -1,33 +0,0 @@
-RUBYFORGE_TRUNK_DIR = 'L:/rubyforge/trunk/coderay/trunk'
-CODERAY_TRUNK_DIR = 'L:/root/trunk'
-
-namespace :rubyforge do
-
- desc 'Export trunk to Rubyforge working copy via SVN'
- task :export do
- system 'svn st'
- puts 'Exporting changelog.'
- system 'svn log > ../changelog.txt'
- system "svn export #{`svn info`[/URL: (.*)/,1]}/ #{RUBYFORGE_TRUNK_DIR} --force"
- cp '../changelog.txt', "#{RUBYFORGE_TRUNK_DIR}/.."
- Dir.chdir RUBYFORGE_TRUNK_DIR do
- system "svn st"
- end
- end
-
- desc 'Export trunk to Rubyforge working copy via SVN'
- task :import do
- Dir.chdir RUBYFORGE_TRUNK_DIR do
- #system 'svn st'
- #puts 'Exporting changelog.'
- #system 'svn log > ../changelog.txt'
- system "svn export #{`svn info`[/URL: (.*)/,1]}/ #{CODERAY_TRUNK_DIR} --force"
- end
- #cp '../changelog.txt', "#{RUBYFORGE_TRUNK_DIR}/.."
- system "svn st"
- end
-
-end
-
-task :import => 'rubyforge:import'
-task :export => 'rubyforge:export'
diff --git a/rake_tasks/test.rake b/rake_tasks/test.rake
index 80c557f..67c6f62 100644
--- a/rake_tasks/test.rake
+++ b/rake_tasks/test.rake
@@ -6,7 +6,9 @@ namespace :test do
desc 'run functional tests'
task :functional do
- ruby "./test/functional/suite.rb"
+ ENV['check_rubygems'] = 'true'
+ ruby './test/functional/suite.rb'
+ ruby './test/functional/for_redcloth.rb'
end
namespace :functional do
@@ -25,11 +27,6 @@ namespace :test do
end
end
- desc 'run for_redcloth tests'
- task :for_redcloth do
- ruby "./test/functional/for_redcloth.rb"
- end
-
desc 'run all scanner tests'
task :scanners do
ruby "./test/scanners/suite.rb"
@@ -71,7 +68,6 @@ namespace :test do
ruby '-v'
Rake::Task['test'].reenable
Rake::Task['test:functional'].reenable
- Rake::Task['test:for_redcloth'].reenable
Rake::Task['test:scanners'].reenable
Rake::Task['test'].invoke
else
@@ -82,5 +78,5 @@ namespace :test do
end
-task :test => %w( test:functional test:for_redcloth test:scanners )
+task :test => %w( test:functional test:scanners )
task :samples => 'test:samples' \ No newline at end of file