diff options
author | Konstantin Ryabitsev <konstantin@linuxfoundation.org> | 2021-08-03 11:19:48 -0400 |
---|---|---|
committer | Konstantin Ryabitsev <konstantin@linuxfoundation.org> | 2021-08-03 11:19:48 -0400 |
commit | 6edc636bb497de461739e10000a29165df08c3dc (patch) | |
tree | b4aa6e3576c0ab16f6990b814a7ec691b9577a88 | |
parent | 98c758ff7b9ab1a571d278c74f4b6c38295fc83d (diff) | |
download | b4-6edc636bb497de461739e10000a29165df08c3dc.tar.gz |
Don't consider signature contents for trailers
Drop anything in the body below "-- " before parsing the contents for
trailers. This won't catch all possible situations, as the "-- "
standard is a bit of a dying standard, so add a list of known baddies
like "Phone:" and "Email:" that are likely to trip us up.
Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/tools/20210719213535.vw3u4yg5mgxqysaf@pengutronix.de/
Signed-off-by: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
-rw-r--r-- | b4/__init__.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/b4/__init__.py b/b4/__init__.py index b45e26f..c019358 100644 --- a/b4/__init__.py +++ b/b4/__init__.py @@ -1369,8 +1369,11 @@ class LoreMessage: @staticmethod def find_trailers(body, followup=False): - headers = ('subject', 'date', 'from') - nonperson = ('fixes', 'subject', 'date', 'link', 'buglink', 'obsoleted-by') + ignores = {'phone', 'email'} + headers = {'subject', 'date', 'from'} + nonperson = {'fixes', 'subject', 'date', 'link', 'buglink', 'obsoleted-by'} + # Ignore everything below standard email signature marker + body = body.split('\n-- \n', 1)[0].strip() + '\n' # Fix some more common copypasta trailer wrapping # Fixes: abcd0123 (foo bar # baz quux) @@ -1393,6 +1396,9 @@ class LoreMessage: groups = list(matches.groups()) # We only accept headers if we haven't seen any non-trailer lines tname = groups[0].lower() + if tname in ignores: + logger.debug('Ignoring known non-trailer: %s', line) + continue if len(others) and tname in headers: logger.debug('Ignoring %s (header after other content)', line) continue |