release.py: strip trailing whitespace from ChangeLog.
authorW. Trevor King <wking@tremily.us>
Fri, 26 Oct 2012 02:40:49 +0000 (22:40 -0400)
committerW. Trevor King <wking@tremily.us>
Fri, 26 Oct 2012 02:44:15 +0000 (22:44 -0400)
release.py

index 1a87d3cd4b18d9b8a6e652dc1a706ee2fdf63efe..1dee068edac95cc00cc4e8b2132a52240563c526 100755 (executable)
@@ -18,6 +18,7 @@
 # You should have received a copy of the GNU General Public License along with
 # Bugs Everywhere.  If not, see <http://www.gnu.org/licenses/>.
 
 # You should have received a copy of the GNU General Public License along with
 # Bugs Everywhere.  If not, see <http://www.gnu.org/licenses/>.
 
+import codecs
 import optparse
 import os
 import os.path
 import optparse
 import os
 import os.path
@@ -103,9 +104,12 @@ def make_changelog(filename, tag):
     by hand is just too slow.
     """
     print 'generate ChangeLog file', filename, 'up to tag', tag
     by hand is just too slow.
     """
     print 'generate ChangeLog file', filename, 'up to tag', tag
-    invoke(['git', 'log', '--no-merges',
-            '%s..%s' % (INITIAL_COMMIT, tag)],
-           stdout=open(filename, 'w')),
+    status,stdout,stderr = invoke(
+        ['git', 'log', '--no-merges', '{}..{}'.format(INITIAL_COMMIT, tag)])
+    with codecs.open(filename, 'w', 'utf-8') as f:
+        for line in stdout.splitlines():
+            f.write(line.rstrip())
+            f.write(u'\n')
 
 def set_vcs_name(be_dir, vcs_name='None'):
     """Exported directory is not a git repository, so set vcs_name to
 
 def set_vcs_name(be_dir, vcs_name='None'):
     """Exported directory is not a git repository, so set vcs_name to