changeset 9a1931fd5673 in tryton-tools:default
details: https://hg.tryton.org/tryton-tools?cmd=changeset&node=9a1931fd5673
description:
Send message to roundup only if already in reviews
issue10293
review357821006
diffstat:
reviewbot.py | 26 ++++++++++++++------------
1 files changed, 14 insertions(+), 12 deletions(-)
diffs (63 lines):
diff -r 16e59109a00d -r 9a1931fd5673 reviewbot.py
--- a/reviewbot.py Tue Dec 29 11:27:49 2020 +0100
+++ b/reviewbot.py Fri Apr 16 18:57:58 2021 +0200
@@ -132,7 +132,7 @@
s.quit()
-def process_issue(session, roundup, issue_id, fromaddr, force=False):
+def process_issue(session, roundup, issue_id, fromaddr, username, force=False):
issue_info = session.get(CODEREVIEW_URL
+ '/'.join(['', 'api', str(issue_id)]))
issue_info.raise_for_status()
@@ -154,7 +154,7 @@
description = issue_info.get('description', '')
link_roundup(
- roundup, issue_id, patchset, description, fromaddr)
+ roundup, issue_id, patchset, description, fromaddr, username)
match = TITLE_FORMAT.match(issue_info['subject'])
if not match:
@@ -204,24 +204,24 @@
s.quit()
-def link_roundup(roundup, review_id, patchset, description, fromaddr):
+def link_roundup(
+ roundup, review_id, patchset, description, fromaddr, username):
matches = ISSUE_FORMAT.finditer(description)
for match in matches:
issue_id = match.groupdict()['issue_id']
try:
- reviews = roundup.display(
- 'issue%s' % issue_id, 'reviews')['reviews']
+ values = roundup.display(
+ 'issue%s' % issue_id, 'reviews', 'nosy')
except xmlrpc.client.Fault:
continue
+ nosy = values['nosy']
+ reviews = values['reviews']
if reviews is None:
reviews = ''
reviews = list(filter(None, map(str.strip, reviews.split(','))))
- new = review_id not in reviews
- if new:
- reviews.append(review_id)
- roundup.set(
- 'issue%s' % issue_id, "reviews=%s" % ', '.join(reviews))
- send_msg(fromaddr, issue_id, patchset, review_id, new)
+ if review_id in reviews:
+ new = username in nosy
+ send_msg(fromaddr, issue_id, patchset, review_id, new)
def fetch_issues(url, session):
@@ -259,4 +259,6 @@
else:
issues = args.issues
for issue in reversed(issues):
- process_issue(session, roundup, issue, args.email, force=args.force)
+ process_issue(
+ session, roundup, issue, args.email, args.username,
+ force=args.force)