From f18090891f90578453c71330ebaa30f0b1f29d87 Mon Sep 17 00:00:00 2001 From: Eric Davis Date: Sun, 29 May 2011 13:11:37 -0700 Subject: [PATCH] [#197] Add a rake task to update the copyright in code files --- lib/tasks/copyright.rake | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 lib/tasks/copyright.rake diff --git a/lib/tasks/copyright.rake b/lib/tasks/copyright.rake new file mode 100644 index 0000000000..cf1e3b04f0 --- /dev/null +++ b/lib/tasks/copyright.rake @@ -0,0 +1,35 @@ +namespace :copyright do + desc "Update the copyright on the source files" + task :update do + short_copyright = File.readlines("doc/COPYRIGHT_short.rdoc").collect do |line| + "# #{line}" + end.join("") + + short_copyright_as_rdoc = "#-- copyright\n" + short_copyright + "#++" + + Dir['**/**{.rb,.rake}'].each do |file_name| + # Skip 3rd party code + next if file_name.include?("vendor") || + file_name.include?("lib/SVG") || + file_name.include?("lib/faster_csv") || + file_name.include?("lib/redcloth") || + file_name.include?("lib/diff") + next if file_name.include?("lib/tasks/copyright") # skip self + next if file_name.include?("unified_diff_test") # confict + + file_content = File.read(file_name) + @copyright_regex = /#-- copyright.*\+\+/m + if file_content.match(@copyright_regex) + file_content.gsub!(@copyright_regex, short_copyright_as_rdoc) + else + file_content = short_copyright_as_rdoc + "\n\n" + file_content # Prepend + end + + File.open(file_name, "w") do |file| + file.write file_content + end + + end + + end +end