Mercurial > p > roundup > code
changeset 1677:d4e615fcbe04
Made subject_re an attribute of MailGW...
...so that it can be easily overridden in an instance's
interfaces.MailGW, and wrote subject_re as a re.VERBOSE, with a couple
of comments.
| author | Jean Jordaan <neaj@users.sourceforge.net> |
|---|---|
| date | Mon, 23 Jun 2003 08:37:15 +0000 |
| parents | 4856faf558a2 |
| children | 2af054eafa24 |
| files | roundup/mailgw.py |
| diffstat | 1 files changed, 16 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/roundup/mailgw.py Mon Jun 23 08:05:30 2003 +0000 +++ b/roundup/mailgw.py Mon Jun 23 08:37:15 2003 +0000 @@ -73,7 +73,7 @@ an exception, the original message is bounced back to the sender with the explanatory message given in the exception. -$Id: mailgw.py,v 1.123 2003-06-18 23:34:52 richard Exp $ +$Id: mailgw.py,v 1.124 2003-06-23 08:37:15 neaj Exp $ ''' import string, re, os, mimetools, cStringIO, smtplib, socket, binascii, quopri @@ -188,11 +188,21 @@ hdr = mimetools.Message.getheader(self, name, default) return rfc2822.decode_header(hdr) -subject_re = re.compile(r'(?P<refwd>\s*\W?\s*(fw|fwd|re|aw)\W\s*)*' - r'\s*(?P<quote>")?(\[(?P<classname>[^\d\s]+)(?P<nodeid>\d+)?\])?' - r'\s*(?P<title>[^[]+)?"?(\[(?P<args>.+?)\])?', re.I) +class MailGW: -class MailGW: + # Matches subjects like: + # Re: "[issue1234] title of issue [status=resolved]" + subject_re = re.compile(r''' + (?P<refwd>\s*\W?\s*(fw|fwd|re|aw)\W\s*)*\s* # Re: + (?P<quote>")? # Leading " + (\[(?P<classname>[^\d\s]+) # [issue.. + (?P<nodeid>\d+)? # ..1234] + \])?\s* + (?P<title>[^[]+)? # issue title + "? # Trailing " + (\[(?P<args>.+?)\])? # [prop=value] + ''', re.IGNORECASE|re.VERBOSE) + def __init__(self, instance, db, arguments={}): self.instance = instance self.db = db @@ -495,7 +505,7 @@ if subject.strip().lower() == 'help': raise MailUsageHelp - m = subject_re.match(subject) + m = self.subject_re.match(subject) # check for well-formed subject line if m:
