From 09578e4008ad01a1270ae29f65e8d1e4738b7e31 Mon Sep 17 00:00:00 2001 From: Ondrej Nosek Date: Jul 12 2019 11:05:47 +0000 Subject: git-changelog: Fix running on Python 3 Fixes some Python 3 aspects. Modify formatting. JIRA: COMPOSE-3674 Signed-off-by: Ondrej Nosek --- diff --git a/git-changelog b/git-changelog index 49cccb5..1c5747a 100755 --- a/git-changelog +++ b/git-changelog @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # git-changelog - Output a rpm changelog # @@ -23,7 +23,7 @@ import re import subprocess import textwrap -from optparse import OptionParser +from argparse import ArgumentParser class ChangeLog: @@ -46,7 +46,7 @@ class ChangeLog: elif len(ret) == 1: ret = ret[0] else: - ret = [x for x in ret if x != ''] + ret = filter(lambda x: x != '', ret) return ret @@ -92,13 +92,13 @@ class ChangeLog: range = "%s.." % (self.version) else: range = "%s-%s.." % (self.name, self.version) - proc = subprocess.Popen(['git', 'log', '--no-merges', '--pretty=oneline', range], + proc = subprocess.Popen(['git', 'log', '--pretty=oneline', '--no-merges', range], universal_newlines=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate() - lines = filter(lambda x: x.find('l10n: ') != 41 and \ - x.find('Merge commit') != 41 and \ - x.find('Merge branch') != 41, + lines = filter(lambda x: x.find('l10n: ') != 41 and + x.find('Merge commit') != 41 and + x.find('Merge branch') != 41, proc[0].strip('\n').split('\n')) if self.ignore and self.ignore != '': @@ -135,14 +135,14 @@ class ChangeLog: def main(): - parser = OptionParser() - parser.add_option("-n", "--name", dest="name", - help="Name of package used in tags") - parser.add_option("-v", "--version", dest="version", - help="Last version, changelog is commits after this tag") - (options, args) = parser.parse_args() - - cl = ChangeLog(options.name, options.version) + parser = ArgumentParser() + parser.add_argument("-n", "--name", + help="Name of package used in tags") + parser.add_argument("-v", "--version", + help="Last version, changelog is commits after this tag") + args = parser.parse_args() + + cl = ChangeLog(args.name, args.version) print(cl.formatLog())