return t.substitute(locals())
def get_last_tag(self):
- tags_str = self.exec_cmd('git-tag')
+ tags_str = self.exec_cmd('git tag')
tags = tags_str.splitlines()
return tags[len(tags)-1]
author = message[p1+1:p2]
message = message[:p1]
- print message
- print message.find('#')
-
msg = message.lower()
if msg.find('translation') != -1 and \
(msg.find('added') != -1 or \
msg.find('updated') != -1):
self.translations += ' - ' + message + ' (' + author + ').\n'
elif message.find('#') != -1:
- print message
p1 = message.find('#')
while p1 != -1:
bug = Bug()
p2 = p1 + 1
- while message[p2].isdigit():
+ while p2 < len (message) and \
+ message[p2].isdigit():
p2 = p2 + 1
- print message[p1+1:p2]
bug.number = message[p1+1:p2]
bug.author = author
self.bug_commits.append(bug)
last_tag = self.get_last_tag()
ref = None
- changes = self.exec_cmd ("git-log " + last_tag + "..")
+ changes = self.exec_cmd ("git log " + last_tag + "..")
for line in changes.splitlines(1):
if line.startswith('commit'):
if ref != None:
date = line[p1:].strip()
elif line.startswith(' git-svn-id:'):
continue
+ elif line.startswith(' Signed-off-by:'):
+ continue
+ elif line.startswith(' From:'):
+ continue
elif line.startswith('Merge:'):
continue
else:
message += '\n'
message += msg
- self.query_bug_commits ()
+ if len (self.bug_commits) > 0:
+ self.query_bug_commits ()
def make_tag(self):
new_tag = self.package_name.upper() + '_' +\
self.package_version.replace('.', '_')
- url1 = self.exec_cmd('git-config svn-remote.svn.url').strip()
- url2 = url1[:url1.rfind('/')] + '/tags/' + new_tag
- self.exec_cmd('svn copy %s %s -m "Tagged for release %s."' % (url1, url2, self.package_version))
+ info = self.exec_cmd('git svn info | grep URL')
+ url1 = info[info.find(" "):].strip()
+
+ end = url1.find("empathy")
+ end = url1.find("/", end)
+ url2 = url1[:end] + '/tags/' + new_tag
- self.exec_cmd('git-tag -m "Tagged for release %s." %s' % ( self.package_version, new_tag))
+ self.exec_cmd('svn copy %s %s -m "Tagged for release %s."' % (url1, url2, self.package_version))
+ self.exec_cmd('git tag -m "Tagged for release %s." %s' % ( self.package_version, new_tag))
def generate_news(self):
self.get_commits()
- news = 'NEW in '+ self.package_version + '\n==============\n'
- news += self.commits + '\nBugs fixed:\n' + self.bugs + '\nTranslations:\n' + self.translations + '\n'
+ news = 'NEW in '+ self.package_version + '\n==============\n'
+ if self.commits != '':
+ news += self.commits + '\n'
+ if self.bugs != '':
+ news += 'Bugs fixed:\n' + self.bugs + '\n'
+ if self.translations != '':
+ news += 'Translations:\n' + self.translations + '\n'
return news