[Libreoffice-commits] dev-tools.git: esc-reporting/qa-tools.py

Xisco Fauli anistenis at gmail.com
Fri Sep 8 18:20:59 UTC 2017


 esc-reporting/qa-tools.py |   14 ++++++++++++++
 1 file changed, 14 insertions(+)

New commits:
commit 7aad56f56cc1450fa93d725527915a89e801e528
Author: Xisco Fauli <anistenis at gmail.com>
Date:   Fri Sep 8 20:19:52 2017 +0200

    QA tools: warn about assigned bugs inactive for more than 3 months

diff --git a/esc-reporting/qa-tools.py b/esc-reporting/qa-tools.py
index b6a859f..c9f2073 100755
--- a/esc-reporting/qa-tools.py
+++ b/esc-reporting/qa-tools.py
@@ -24,6 +24,8 @@ lastAction = '30d'
 
 untouchedPeriod = '365d'
 
+inactiveAssigned = '90d'
+
 targets_list = ['5.3.6', '5.4.1']
 
 periods_list = ['30d', '60d', '90d', '180d']
@@ -348,6 +350,7 @@ def analyze_bugzilla(statList, bugzillaData, cfg):
             backPortAdded = False
             backPortAddedMail = ""
             bResolved = False
+            lastAssignedEmail = ""
             for action in row['history']:
                 actionMail = action['who']
                 actionDate = datetime.datetime.strptime(action['when'], "%Y-%m-%dT%H:%M:%SZ")
@@ -400,6 +403,9 @@ def analyze_bugzilla(statList, bugzillaData, cfg):
                         addedStatus = change['added']
                         removedStatus = change['removed']
 
+                        if rowStatus == 'ASSIGNED' and addedStatus == 'ASSIGNED':
+                            lastAssignedEmail = actionMail
+
                         if actionDate >= cfg[reportPeriod] and not bResolved and isClosed(addedStatus) and isClosed(row['status']):
                             bResolved = True
                             week = str(actionDate.year) + '-' + str(actionDate.strftime("%V"))
@@ -682,6 +688,13 @@ def analyze_bugzilla(statList, bugzillaData, cfg):
                 lResults['fixBugPing'][0].append(rowId)
                 lResults['fixBugPing'][1].append('')
 
+            if rowStatus == 'ASSIGNED' and datetime.datetime.strptime(row['last_change_time'], "%Y-%m-%dT%H:%M:%SZ") < cfg['inactiveAssigned'] and \
+                    'easyHack' not in row['keywords']:
+                if 'inactiveAssigned' not in lResults:
+                    lResults['inactiveAssigned'] = [[],[]]
+                lResults['inactiveAssigned'][0].append(rowId)
+                lResults['inactiveAssigned'][1].append(lastAssignedEmail)
+
     for dKey, dValue in lResults.items():
         if dValue:
             print('\n=== ' + dKey + ' ===')
@@ -1130,6 +1143,7 @@ def runCfg(homeDir):
     cfg[lastAction] = cfg['todayDate'] - datetime.timedelta(days= int(lastAction[:-1]))
     cfg['diffAction'] = cfg['todayDate'] - datetime.timedelta(days= (int(lastAction[:-1]) + int(reportPeriod[:-1])))
     cfg['untouchedPeriod'] = cfg['todayDate'] - datetime.timedelta(days= int(untouchedPeriod[:-1]))
+    cfg['inactiveAssigned'] = cfg['todayDate'] - datetime.timedelta(days= int(inactiveAssigned[:-1]))
 
     for period in periods_list:
         cfg[period] = cfg['todayDate'] - datetime.timedelta(days= int(period[:-1]))


More information about the Libreoffice-commits mailing list