diff options
Diffstat (limited to 'wmfphablib/bzlib.py')
-rwxr-xr-x | wmfphablib/bzlib.py | 70 |
1 files changed, 45 insertions, 25 deletions
diff --git a/wmfphablib/bzlib.py b/wmfphablib/bzlib.py index f0c66ab..3b63ce6 100755 --- a/wmfphablib/bzlib.py +++ b/wmfphablib/bzlib.py @@ -8,25 +8,34 @@ dupe_literals = ['This bug has been marked as a duplicate of bug', # Some issues are just missing instead of constant failures we skip -missing = [15368, 15369, 15370, 15371, 15372, 15373, 15374] +#missing = [15368, 15369, 15370, 15371, 15372, 15373, 15374] +missing = [] def is_sensitive(name): return name.strip().lower().startswith('security') -def sanitize_project_name(product, component): - """ translate bz product/component into valid project - :param product: str - :param component: str +#def sanitize_project_name(product, component): +# """ translate bz product/component into valid project +# :param product: str +# :param component: str +# """ +# component_separator = '-' +# product = re.sub('\s', '-', product) +# product = product.replace('_', '-') +# component = re.sub('\s', '-', component) +# component = component.replace('_', '-') +# component = component.replace('/', '-or-') +# return "%s%s%s" % (product, +# component_separator, +# component) + +def sanitize_project_name(name): + """ translate bz product/component name into valid project """ - component_separator = '-' - product = re.sub('\s', '-', product) - product = product.replace('_', '-') - component = re.sub('\s', '-', component) - component = component.replace('_', '-') - component = component.replace('/', '-or-') - return "%s%s%s" % (product, - component_separator, - component) + name = re.sub('\s', '-', name) + name = name.replace('_', '-') + name = name.replace('/', '-or-') + return name def build_comment(c, secstate): """ takes a native bz comment dict and outputs @@ -36,11 +45,14 @@ def build_comment(c, secstate): # these indicate textual metadata history and should be # preserved as literal clean_c = {} - clean_c['author'] = c['author'].split('@')[0] + #kspoon: another WM customization? We call it 'creator' for comment + #clean_c['author'] = c['author'].split('@')[0] + clean_c['creator'] = c['creator'].split('@')[0] clean_c['creation_time'] = str(c['creation_time']) clean_c['creation_time'] = int(float(c['creation_time'])) - if c['author'] != c['creator']: - clean_c['creator'] = c['creator'].split('@')[0] + #kspoon: see above + #if c['author'] != c['creator']: + # clean_c['creator'] = c['creator'].split('@')[0] clean_c['count'] = c['count'] if c['count'] == 0: @@ -113,14 +125,19 @@ def status_convert(bz_status, bz_resolution): declined we have decided not too -- even though we could """ - statuses = {'new': 'open', + statuses = {'unconfirmed': 'open', + 'confirmed': 'open', + 'in_progress': 'open', 'resolved': 'resolved', - 'reopened': 'open', - 'closed': 'resolved', - 'verified': 'resolved', - 'assigned': 'open', - 'unconfirmed': 'open', - 'patch_to_review': 'open'} + 'verified': 'resolved'} + #statuses = {'new': 'open', + # 'resolved': 'resolved', + # 'reopened': 'open', + # 'closed': 'resolved', + # 'verified': 'resolved', + # 'assigned': 'open', + # 'unconfirmed': 'open', + # 'patch_to_review': 'open'} if bz_resolution.lower() in ['wontfix', 'later', 'worksforme']: return 'declined' @@ -147,7 +164,10 @@ def priority_convert(bz_priority): 'normal': 50, 'low': 25, 'lowest': 10} - return priorities[bz_priority.lower()] + if bz_priority.lower() in priorities.keys(): + return priorities[bz_priority.lower()] + else: + return priorities['unprioritized'] def see_also_transform(): """convert see also listing to T123 refs in phab |