esc-reporting/esc-analyze.py | 65 +++++++++++++++++++++++-------------------- esc-reporting/esc-report.py | 4 ++ 2 files changed, 40 insertions(+), 29 deletions(-)
New commits: commit ab55601b7eac2f52100ca77edd75c73dea66f665 Author: Xisco Fauli <aniste...@gmail.com> Date: Thu Sep 14 17:34:06 2017 +0200 Add top 10 confirmers to the esc minutes diff --git a/esc-reporting/esc-analyze.py b/esc-reporting/esc-analyze.py index 16ced70..756de84 100755 --- a/esc-reporting/esc-analyze.py +++ b/esc-reporting/esc-analyze.py @@ -505,7 +505,8 @@ def analyze_esc(): statList['data']['esc']['MAB'] = {} statList['escList']['QAstat'] = {'top15_squashers' : {}, 'top15_reporters' : {}, - 'top15_fixers' : []} + 'top15_fixers' : [], + 'top15_confirmers' : []} for line in bugzillaESCData['ESC_QA_STATS_UPDATE']['top15_closers']: statList['escList']['QAstat']['top15_squashers'][str(line['who'])] = line['closed'] for line in bugzillaESCData['ESC_QA_STATS_UPDATE']['top15_reporters']: @@ -517,31 +518,43 @@ def analyze_esc(): statList['escList']['MostPressingBugs'][type]['list'][id] = bugzillaData['bugs'][id]['summary'] bug_fixers = {} + bug_confirmers = {} for id, bug in bugzillaData['bugs'].items(): - if (bug['status'] == 'RESOLVED' or bug['status'] == 'VERIFIED' or bug['status'] == 'CLOSED') and 'FIXED' == bug['resolution']: + if ((bug['status'] == 'RESOLVED' or bug['status'] == 'VERIFIED' or bug['status'] == 'CLOSED') and 'FIXED' == bug['resolution']) or \ + bug['is_confirmed']: - who = None + fixer = None + confirmer = None for i in range(len(bug['history'])-1,-1,-1): - fixed = False changes = bug['history'][i]['changes'] when = datetime.datetime.strptime(bug['history'][i]['when'], "%Y-%m-%dT%H:%M:%SZ") for j in range(0,len(changes)): - if changes[j]['added'] == 'FIXED' and when >= cfg['1weekDate']: - fixed = True - break - if fixed: - who = bug['history'][i]['who'].lower() - break - if who and who != 'libreoffice-comm...@lists.freedesktop.org': - if who in statList['aliases']: - who = statList['aliases'][who] - if who in statList['people']: - who = statList['people'][who]['name'] - if not who in bug_fixers: - bug_fixers[who] = 0 - bug_fixers[str(who)] += 1 + if when >= cfg['1weekDate']: + if changes[j]['field_name'] == 'resolution' and changes[j]['added'] == 'FIXED': + fixer = bug['history'][i]['who'].lower() + if changes[j]['field_name'] == 'is_confirmed' and changes[j]['added'] == '1': + confirmer = bug['history'][i]['who'].lower() + + if fixer and fixer != 'libreoffice-comm...@lists.freedesktop.org': + if fixer in statList['aliases']: + fixer = statList['aliases'][fixer] + if fixer in statList['people']: + fixer = statList['people'][fixer]['name'] + if not fixer in bug_fixers: + bug_fixers[fixer] = 0 + bug_fixers[str(fixer)] += 1 + + if confirmer and confirmer != 'libreoffice-comm...@lists.freedesktop.org': + if confirmer in statList['aliases']: + confirmer = statList['aliases'][confirmer] + if confirmer in statList['people']: + confirmer = statList['people'][confirmer]['name'] + if not confirmer in bug_confirmers: + bug_confirmers[confirmer] = 0 + bug_confirmers[str(confirmer)] += 1 statList['escList']['QAstat']['top15_fixers'] = bug_fixers + statList['escList']['QAstat']['top15_confirmers'] = bug_confirmers for id, row in bugzillaESCData['ESC_MAB_UPDATE'].items(): statList['data']['esc']['MAB'][id] = row diff --git a/esc-reporting/esc-report.py b/esc-reporting/esc-report.py index 5850bd6..458fbf7 100755 --- a/esc-reporting/esc-report.py +++ b/esc-reporting/esc-report.py @@ -253,6 +253,10 @@ def report_esc_prototype(): x = statList['escList']['QAstat']['top15_fixers'] for name, count in [(k, x[k]) for k in sorted(x, key=x.get, reverse=True)][0:10]: txt += ' {:<23} {}\n'.format(name, count) + txt += '\n + top 10 bugs confirmers:\n' + x = statList['escList']['QAstat']['top15_confirmers'] + for name, count in [(k, x[k]) for k in sorted(x, key=x.get, reverse=True)][0:10]: + txt += ' {:<23} {}\n'.format(name, count) escPrototype = escPrototype.replace('$<ESC_QA_STATS_UPDATE>', txt) txt = '' commit a13367770ff96e2e0c150706cd14ffc0be8a790c Author: Xisco Fauli <aniste...@gmail.com> Date: Thu Sep 14 17:04:33 2017 +0200 Fix incorrect data in esc's top 10 fixers diff --git a/esc-reporting/esc-analyze.py b/esc-reporting/esc-analyze.py index 73744e7..16ced70 100755 --- a/esc-reporting/esc-analyze.py +++ b/esc-reporting/esc-analyze.py @@ -518,35 +518,29 @@ def analyze_esc(): bug_fixers = {} for id, bug in bugzillaData['bugs'].items(): - if not bug['status'] == 'RESOLVED': - continue - if 'FIXED' != bug['resolution'] != 'VERIFIED': - continue - if datetime.datetime.strptime(bug['last_change_time'], "%Y-%m-%dT%H:%M:%SZ") < cfg['1weekDate']: - continue - - who = None - for i in range(len(bug['history'])-1,-1,-1): - fixed = False - changes = bug['history'][i]['changes'] - for j in range(0,len(changes)): - if changes[j]['added'] == 'FIXED': - fixed = True + if (bug['status'] == 'RESOLVED' or bug['status'] == 'VERIFIED' or bug['status'] == 'CLOSED') and 'FIXED' == bug['resolution']: + + who = None + for i in range(len(bug['history'])-1,-1,-1): + fixed = False + changes = bug['history'][i]['changes'] + when = datetime.datetime.strptime(bug['history'][i]['when'], "%Y-%m-%dT%H:%M:%SZ") + for j in range(0,len(changes)): + if changes[j]['added'] == 'FIXED' and when >= cfg['1weekDate']: + fixed = True + break + if fixed: + who = bug['history'][i]['who'].lower() break - if fixed: - who = bug['history'][i]['who'].lower() - break - if not who: - continue - if who == 'libreoffice-comm...@lists.freedesktop.org': - continue - if who in statList['aliases']: - who = statList['aliases'][who] - if who in statList['people']: - who = statList['people'][who]['name'] - if not who in bug_fixers: - bug_fixers[who] = 0 - bug_fixers[str(who)] += 1 + if who and who != 'libreoffice-comm...@lists.freedesktop.org': + if who in statList['aliases']: + who = statList['aliases'][who] + if who in statList['people']: + who = statList['people'][who]['name'] + if not who in bug_fixers: + bug_fixers[who] = 0 + bug_fixers[str(who)] += 1 + statList['escList']['QAstat']['top15_fixers'] = bug_fixers for id, row in bugzillaESCData['ESC_MAB_UPDATE'].items(): _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits