Rakefile in cutep-1.0.0 vs Rakefile in cutep-1.1.0
- old
+ new
@@ -1,194 +1,6 @@
-require 'rubygems'
-require 'rake'
-require 'rake/clean'
-require 'rake/testtask'
-require 'rake/packagetask'
-require 'rake/gempackagetask'
-require 'rake/rdoctask'
-require 'rake/contrib/rubyforgepublisher'
-require 'fileutils'
-require 'hoe'
-begin
- require 'spec/rake/spectask'
-rescue LoadError
- puts 'To use rspec for testing you must install rspec gem:'
- puts '$ sudo gem install rspec'
- exit
-end
-
-include FileUtils
-require File.join(File.dirname(__FILE__), 'lib', 'qp')
-
-AUTHOR = 'Kouichirou Eto'
-EMAIL = "eto _at_ rubyforge _dot_ org"
-DESCRIPTION = '"Cute p" provide more human readable "p" function.'
-GEM_NAME = 'cutep'
-
-@config_file = "~/.rubyforge/user-config.yml"
-@config = nil
-def rubyforge_username
- unless @config
- begin
- @config = YAML.load(File.read(File.expand_path(@config_file)))
- rescue
- puts <<-EOS
-ERROR: No rubyforge config file found: #{@config_file}"
-Run 'rubyforge setup' to prepare your env for access to Rubyforge
- - See http://newgem.rubyforge.org/rubyforge.html for more details
- EOS
-# "
- exit
- end
- end
- @rubyforge_username ||= @config["username"]
-end
-
-RUBYFORGE_PROJECT = 'cutep' # The unix name for your project
-HOMEPATH = "http://#{RUBYFORGE_PROJECT}.rubyforge.org"
-DOWNLOAD_PATH = "http://rubyforge.org/projects/#{RUBYFORGE_PROJECT}"
-RUBYFORGE_ACCOUNT = 'eto'
-
-NAME = "cutep"
-REV = nil
-# UNCOMMENT IF REQUIRED:
-# REV = `svn info`.each {|line| if line =~ /^Revision:/ then k,v = line.split(': '); break v.chomp; else next; end} rescue nil
-VERS = QP::VERSION::STRING + (REV ? ".#{REV}" : "")
-CLEAN.include ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store']
-CLEAN.include ['*~']
-RDOC_OPTS = ['--quiet', '--title', 'cutep documentation',
- "--opname", "index.html",
- "--line-numbers",
- "--main", "README",
- "--inline-source"]
-
-class Hoe
- def extra_deps
- @extra_deps.reject { |x| Array(x).first == 'hoe' }
- end
-end
-
-# Generate all the Rake tasks
-# Run 'rake -T' to see list of generated tasks (from gem root directory)
-hoe = Hoe.new(GEM_NAME, VERS) do |p|
- p.author = AUTHOR
- p.description = DESCRIPTION
- p.email = EMAIL
- p.summary = DESCRIPTION
- p.url = HOMEPATH
- p.rubyforge_name = RUBYFORGE_PROJECT if RUBYFORGE_PROJECT
- p.test_globs = ["test/**/test_*.rb"]
- p.clean_globs |= CLEAN #An array of file patterns to delete on clean.
-
- # == Optional
- p.changes = p.paragraphs_of("History.txt", 0..1).join("\n\n")
- #p.extra_deps = [] # An array of rubygem dependencies [name, version], e.g. [ ['active_support', '>= 1.3.1'] ]
- #p.spec_extras = {} # A hash of extra values to set in the gemspec.
-end
-
-CHANGES = hoe.paragraphs_of('History.txt', 0..1).join("\n\n")
-PATH = (RUBYFORGE_PROJECT == GEM_NAME) ? RUBYFORGE_PROJECT : "#{RUBYFORGE_PROJECT}/#{GEM_NAME}"
-hoe.remote_rdoc_dir = File.join(PATH.gsub(/^#{RUBYFORGE_PROJECT}\/?/,''), 'rdoc')
-
-desc 'Generate website files'
-task :website_generate do
- Dir['website/**/*.txt'].each do |txt|
- sh %{ ruby scripts/txt2html #{txt} > #{txt.gsub(/txt$/,'html')} }
- end
-end
-
-# add chmod.
-task :website_generate do
- sh %{ chmod -R go+rx website }
-end
-
-desc 'Upload website files to rubyforge'
-task :website_upload do
- host = "#{rubyforge_username}@rubyforge.org"
- remote_dir = "/var/www/gforge-projects/#{PATH}/"
- local_dir = 'website'
- sh %{rsync -aCv #{local_dir}/ #{host}:#{remote_dir}}
-end
-
-desc 'Generate and upload website files'
-task :website => [:website_generate, :website_upload, :publish_docs]
-
-desc 'Release the website and new gem version'
-task :deploy => [:check_version, :website, :release] do
- puts "Remember to create SVN tag:"
- puts "svn copy svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/trunk " +
- "svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/tags/REL-#{VERS} "
- puts "Suggested comment:"
- puts "Tagging release #{CHANGES}"
-end
-
-desc 'Runs tasks website_generate and install_gem as a local deployment of the gem'
-task :local_deploy => [:website_generate, :install_gem]
-
-task :check_version do
- unless ENV['VERSION']
- puts 'Must pass a VERSION=x.y.z release version'
- exit
- end
- unless ENV['VERSION'] == VERS
- puts "Please update your version.rb to match the release version, currently #{VERS}"
- exit
- end
-end
-
-desc "Run the specs under spec/models"
-Spec::Rake::SpecTask.new do |t|
- t.spec_opts = ['--options', "spec/spec.opts"]
- t.spec_files = FileList['spec/*_spec.rb']
- t.libs << "lib"
-end
-
-# add chmod.
-task :docs do
- sh %{ chmod -R go+rx doc }
-end
-
-# clear current task
-module Rake
- class Task
- def clear_actions
- @actions.clear
- end
- end
-end
-
-# clear current task
-t = Rake.application.lookup(:install_gem)
-t.clear_actions if t
-
-# redefine task
-task :install_gem => [:clean, :package] do
- if /mswin32/ =~ RUBY_PLATFORM || /cygwin/ =~ RUBY_PLATFORM
- sh "gem.cmd install pkg/*.gem" # for Cygwin
- else
- sh "sudo gem install pkg/*.gem"
- end
-end
-
-task :clean => [:chmod]
-
-desc 'Change mode to erase executable bits.'
-task :chmod do
- sh "chmod 644 Rakefile ChangeLog"
- sh "chmod 644 *.txt */*.txt"
- sh "chmod 644 */*.html"
- sh "chmod 644 */*.rhtml"
- sh "chmod 644 */*/*.js"
- sh "chmod 644 */*/*.css"
- sh "chmod 644 *.rb */*.rb"
- sh "chmod 755 scripts/*"
-end
-
-desc 'Create Manifest.txt file.'
-task :manifest => [:chmod, :clean] do
- ruby "scripts/makemanifest.rb"
-end
-
-task :gem => [:manifest]
-
-desc "Default task is to run specs"
-task :default => :spec
+require "bundler/gem_tasks"
+require "rspec/core/rake_task"
+
+RSpec::Core::RakeTask.new(:spec)
+
+task :default => :spec