valkey/utils/releasetools/changelog.tcl
antirez b76d27ca74 Added a tool for generating changelogs automatically.
Sometimes Redis patch releases are released in a matter of weeks or days
one after the other. In order to have less release friction the idea is
to stop writing changelogs by hand, in order to also cover everything
interesting there is to say. Useless things can be deleted manually by
the changelog. Also this gives more credits to contributors since often
in the commit message involved people are cited even when they are not
the authors of the commit.
2016-05-04 22:41:57 +02:00

27 lines
919 B
Tcl
Executable File

#!/usr/bin/env tclsh
if {[llength $::argv] != 2} {
puts "Usage: $::argv0 <branch> <version>"
exit 1
}
set branch [lindex $::argv 0]
set ver [lindex $::argv 1]
set template {
================================================================================
Redis %ver% Released %date%
================================================================================
Upgrade urgency <URGENCY>: <DESCRIPTION>
}
set template [string trim $template]
append template "\n\n"
set date [clock format [clock seconds]]
set template [string map [list %ver% $ver %date% $date] $template]
append template [exec git log $branch~30..$branch "--format=format:+-------------------------------------------------------------------------------%n| %s%n| By %an, %ai%n+--------------------------------------------------------------------------------%nhttps://github.com/antirez/redis/commit/%H%n%n%b" --stat]
puts $template