Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

49 lines (39 sloc) 1.143 kb
require 'find'
namespace :manifest do
desc 'Verify the manifest'
task :check do
fn = PROJ.manifest_file + '.tmp'
files = manifest_files
File.open(fn, 'w') {|fp| fp.puts files}
lines = %x(#{DIFF} -du #{PROJ.manifest_file} #{fn}).split("\n")
if HAVE_FACETS_ANSICODE and ENV.has_key?('TERM')
lines.map! do |line|
case line
when %r/^(-{3}|\+{3})/; nil
when %r/^@/; ANSICode.blue line
when %r/^\+/; ANSICode.green line
when %r/^\-/; ANSICode.red line
else line end
end
end
puts lines.compact
rm fn rescue nil
end
desc 'Create a new manifest'
task :create do
files = manifest_files
unless test(?f, PROJ.manifest_file)
files << PROJ.manifest_file
files.sort!
end
File.open(PROJ.manifest_file, 'w') {|fp| fp.puts files}
end
task :assert do
files = manifest_files
manifest = File.read(PROJ.manifest_file).split($/)
raise "ERROR: #{PROJ.manifest_file} is out of date" unless files == manifest
end
end # namespace :manifest
desc 'Alias to manifest:check'
task :manifest => 'manifest:check'
# EOF
Jump to Line
Something went wrong with that request. Please try again.