From e7d4db209554c2a64220a3daa6d42945c852fc8c Mon Sep 17 00:00:00 2001 From: Mike McLean Date: May 05 2016 15:33:28 +0000 Subject: clean up regexes a bit .*\s* is equivalent to .* which doesn't seem to be intended (?:.*\s+)? will match the empty string, or arbitrary space-separated prefixes --- diff --git a/pagure/lib/link.py b/pagure/lib/link.py index 481818d..ca8ae79 100644 --- a/pagure/lib/link.py +++ b/pagure/lib/link.py @@ -15,21 +15,17 @@ import pagure.exceptions FIXES = [ - re.compile(r'fixe?[sd]?:?\s*?#(\d+)', re.I), - re.compile(r'.*\s*fixe?[sd]?:?\s*?#(\d+)', re.I), - re.compile(r'fixe?[sd]?:?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), - re.compile(r'.*\s*?fixe?[sd]?:?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), - re.compile(r'merge?[sd]?:?\s*?#(\d+)', re.I), - re.compile(r'.*\s*merge?[sd]?:?\s*?#(\d+)', re.I), - re.compile(r'merge?[sd]?:?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), - re.compile(r'.*\s*?merge?[sd]?:?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), + re.compile(r'(?:.*\s+)?fixe?[sd]?:?\s*?#(\d+)', re.I), + re.compile(r'(?:.*\s+)?fixe?[sd]?:?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), + re.compile(r'(?:.*\s+)?merge?[sd]?:?\s*?#(\d+)', re.I), + re.compile(r'(?:.*\s+)?merge?[sd]?:?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), ] RELATES = [ - re.compile(r'.*\s*relate[sd]?:?\s*?(?:to)?\s*?#(\d+)', re.I), - re.compile(r'.*\s*relate[sd]?:?\s?#(\d+)', re.I), + re.compile(r'(?:.*\s+)?relate[sd]?:?\s*?(?:to)?\s*?#(\d+)', re.I), + re.compile(r'(?:.*\s+)?relate[sd]?:?\s?#(\d+)', re.I), re.compile( - r'.*\s*relate[sd]?:?\s*?(?:to)?\s*?https?://.*/(\w+)/issue/(\d+)', + r'(?:.*\s+)?relate[sd]?:?\s*?(?:to)?\s*?https?://.*/(\w+)/issue/(\d+)', re.I), ]