[PATCH 05/11] parser: Put more specific 'From' regex first
Stephen Finucane
stephen.finucane at intel.com
Wed Jul 13 19:40:54 AEST 2016
Multiple different 'From:' header styles are supported by the parser,
but some of these are less specific than others. Attempt to parse using
a more specific style before going with the more generic one.
Signed-off-by: Stephen Finucane <stephen.finucane at intel.com>
---
patchwork/parser.py | 6 +++---
patchwork/tests/test_parser.py | 1 -
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/patchwork/parser.py b/patchwork/parser.py
index 938b965..2ee12ca 100644
--- a/patchwork/parser.py
+++ b/patchwork/parser.py
@@ -111,13 +111,13 @@ def find_author(mail):
# for "Firstname Lastname" <example at example.com> style addresses
(re.compile(r'"?(.*?)"?\s*<([^>]+)>'), (lambda g: (g[0], g[1]))),
- # for example at example.com (Firstname Lastname) style addresses
- (re.compile(r'"?(.*?)"?\s*\(([^\)]+)\)'), (lambda g: (g[1], g[0]))),
-
# for example at example.com (Firstname Lastname) style addresses
(re.compile(r'(.*?)\sat\s(.*?)\s*\(([^\)]+)\)'),
(lambda g: (g[2], '@'.join(g[0:2])))),
+ # for example at example.com (Firstname Lastname) style addresses
+ (re.compile(r'"?(.*?)"?\s*\(([^\)]+)\)'), (lambda g: (g[1], g[0]))),
+
# everything else
(re.compile(r'(.*)'), (lambda g: (None, g[0]))),
]
diff --git a/patchwork/tests/test_parser.py b/patchwork/tests/test_parser.py
index 684a667..02845fb 100644
--- a/patchwork/tests/test_parser.py
+++ b/patchwork/tests/test_parser.py
@@ -38,7 +38,6 @@ from patchwork.parser import find_pull_request
from patchwork.parser import parse_mail as _parse_mail
from patchwork.parser import parse_series_marker
from patchwork.parser import split_prefixes
-from patchwork.tests.utils import create_email
from patchwork.tests.utils import create_project
from patchwork.tests.utils import create_state
from patchwork.tests.utils import create_user
--
1.7.4.1
More information about the Patchwork
mailing list