Rakefile in options-2.3.0 vs Rakefile in options-2.3.1
- old
+ new
@@ -1,10 +1,13 @@
This.rubyforge_project = 'codeforpeople'
This.author = "Ara T. Howard"
This.email = "ara.t.howard@gmail.com"
-This.homepage = "http://github.com/ahoward/#{ This.lib }/tree/master"
+This.homepage = "https://github.com/ahoward/#{ This.lib }"
+task :license do
+ open('LICENSE', 'w'){|fd| fd.puts "same as ruby's"}
+end
task :default do
puts((Rake::Task.tasks.map{|task| task.name.gsub(/::/,':')} - ['default']).sort)
end
@@ -24,15 +27,14 @@
test_glob ||= File.join(test_dir, "#{ which }/**_test.rb")
test_rbs = Dir.glob(test_glob).sort
div = ('=' * 119)
line = ('-' * 119)
- helper = "-r ./test/helper.rb" if test(?e, "./test/helper.rb")
test_rbs.each_with_index do |test_rb, index|
testno = index + 1
- command = "#{ This.ruby } -I ./lib -I ./test/lib #{ helper } #{ test_rb }"
+ command = "#{ This.ruby } -w -I ./lib -I ./test/lib #{ test_rb }"
puts
say(div, :color => :cyan, :bold => true)
say("@#{ testno } => ", :bold => true, :method => :print)
say(command, :color => :cyan, :bold => true)
@@ -57,13 +59,13 @@
end
end
task :gemspec do
- ignore_extensions = 'git', 'svn', 'tmp', /sw./, 'bak', 'gem'
- ignore_directories = 'pkg'
- ignore_files = 'test/log'
+ ignore_extensions = ['git', 'svn', 'tmp', /sw./, 'bak', 'gem']
+ ignore_directories = ['pkg']
+ ignore_files = ['test/log']
shiteless =
lambda do |list|
list.delete_if do |entry|
next unless test(?e, entry)
@@ -85,14 +87,15 @@
lib = This.lib
object = This.object
version = This.version
files = shiteless[Dir::glob("**/**")]
executables = shiteless[Dir::glob("bin/*")].map{|exe| File.basename(exe)}
- has_rdoc = true #File.exist?('doc')
+ #has_rdoc = true #File.exist?('doc')
test_files = "test/#{ lib }.rb" if File.file?("test/#{ lib }.rb")
summary = object.respond_to?(:summary) ? object.summary : "summary: #{ lib } kicks the ass"
description = object.respond_to?(:description) ? object.description : "description: #{ lib } kicks the ass"
+ license = object.respond_to?(:license) ? object.license : "same as ruby's"
if This.extensions.nil?
This.extensions = []
extensions = This.extensions
%w( Makefile configure extconf.rb ).each do |ext|
@@ -114,21 +117,22 @@
spec.name = #{ lib.inspect }
spec.version = #{ version.inspect }
spec.platform = Gem::Platform::RUBY
spec.summary = #{ lib.inspect }
spec.description = #{ description.inspect }
+ spec.license = #{ license.inspect }
- spec.files = #{ files.inspect }
+ spec.files =\n#{ files.sort.pretty_inspect }
spec.executables = #{ executables.inspect }
spec.require_path = "lib"
- spec.has_rdoc = #{ has_rdoc.inspect }
spec.test_files = #{ test_files.inspect }
- #spec.add_dependency 'lib', '>= version'
- spec.add_dependency 'fattr'
+ ### spec.add_dependency 'lib', '>= version'
+ #### spec.add_dependency 'map'
+
spec.extensions.push(*#{ extensions.inspect })
spec.rubyforge_project = #{ This.rubyforge_project.inspect }
spec.author = #{ This.author.inspect }
spec.email = #{ This.email.inspect }
@@ -137,11 +141,11 @@
__
}
end
Fu.mkdir_p(This.pkgdir)
- gemspec = File.join(This.pkgdir, "#{ lib }.gemspec")
+ gemspec = "#{ lib }.gemspec"
open(gemspec, "w"){|fd| fd.puts(template)}
This.gemspec = gemspec
end
task :gem => [:clean, :gemspec] do
@@ -174,12 +178,12 @@
cmd = "ruby -e'STDOUT.sync=true; exec %(ruby -I ./lib #{ sample })'"
samples << Util.indent(`#{ cmd } 2>&1`, 4) << "\n"
end
template =
- if test(?e, 'readme.erb')
- Template{ IO.read('readme.erb') }
+ if test(?e, 'README.erb')
+ Template{ IO.read('README.erb') }
else
Template {
<<-__
NAME
#{ lib }
@@ -233,10 +237,11 @@
require 'ostruct'
require 'erb'
require 'fileutils'
require 'rbconfig'
+ require 'pp'
# fu shortcut
#
Fu = FileUtils
@@ -290,11 +295,11 @@
s.gsub(%r/^/, ws)
end
def unindent(s)
indent = nil
- s.each do |line|
+ s.each_line do |line|
next if line =~ %r/^\s*$/
indent = line[%r/^\s*/] and break
end
indent ? s.gsub(%r/^#{ indent }/, "") : s
end
@@ -307,10 +312,10 @@
def initialize(&block)
@block = block
@template = block.call.to_s
end
def expand(b=nil)
- ERB.new(Util.unindent(@template)).result(b||@block)
+ ERB.new(Util.unindent(@template)).result((b||@block).binding)
end
alias_method 'to_s', 'expand'
end
def Template(*args, &block) Template.new(*args, &block) end