adding a rake task to help generate changelog notes for release announcements

This commit is contained in:
Aaron Patterson 2011-04-18 14:43:24 -07:00
parent 0acc6bd6cb
commit 64e2a549cf
1 changed files with 26 additions and 0 deletions

View File

@ -61,6 +61,32 @@ directory "dist"
end end
end end
namespace :changelog do
task :release_date do
FRAMEWORKS.each do |fw|
require 'date'
replace = '\1(' + Date.today.strftime('%B %d, %Y') + ')'
fname = File.join fw, 'CHANGELOG'
contents = File.read(fname).sub(/^([^(]*)\(unreleased\)/, replace)
File.open(fname, 'wb') { |f| f.write contents }
end
end
task :release_summary do
FRAMEWORKS.each do |fw|
puts "## #{fw}"
fname = File.join fw, 'CHANGELOG'
contents = File.readlines fname
contents.shift
changes = []
changes << contents.shift until contents.first =~ /^\*Rails \d+\.\d+\.\d+/
puts changes.reject { |change| change.strip.empty? }.join
puts
end
end
end
namespace :all do namespace :all do
task :build => FRAMEWORKS.map { |f| "#{f}:build" } + ['rails:build'] task :build => FRAMEWORKS.map { |f| "#{f}:build" } + ['rails:build']
task :install => FRAMEWORKS.map { |f| "#{f}:install" } + ['rails:install'] task :install => FRAMEWORKS.map { |f| "#{f}:install" } + ['rails:install']