# Examine the headers and look for a Connection directive.
- # MessageClass (rfc822) wants to see strings rather than bytes.
+ # MessageClass wants to see strings rather than bytes.
# But a TextIOWrapper around self.rfile would buffer too many bytes
# from the stream, bytes which we later need to read as bytes.
# So we read the correct bytes here, as bytes, then use StringIO
def quoteaddr(addr):
"""Quote a subset of the email addresses defined by RFC 821.
- Should be able to handle anything rfc822.parseaddr can handle.
+ Should be able to handle anything email.utils.parseaddr can handle.
"""
m = (None, None)
try:
def test_easy(self):
self.checkModule('pyclbr')
+ self.checkModule('ast')
self.checkModule('doctest', ignore=("TestResults", "_SpoofOut"))
self.checkModule('difflib', ignore=("Match",))
self.file = file
self.sec, self.num = sec_num
if fp:
- import rfc822
- self.__headers = rfc822.Message(fp)
+ import email
+ self.__headers = email.message_from_file(fp)
self.body = fp.read().strip()
else:
self.__headers = {'title': "%d.%d. " % sec_num}
"""mailerdaemon - classes to parse mailer-daemon messages"""
-import rfc822
import calendar
+import email.message
import re
import os
import sys
Unparseable = 'mailerdaemon.Unparseable'
-class ErrorMessage(rfc822.Message):
- def __init__(self, fp):
- rfc822.Message.__init__(self, fp)
+class ErrorMessage(email.message.Message):
+ def __init__(self):
+ email.message.Message.__init__(self)
self.sub = ''
def is_warning(self):
for fn in files:
# Lets try to parse the file.
fp = open(fn)
- m = ErrorMessage(fp)
+ m = email.message_from_file(fp, _class=ErrorMessage)
sender = m.getaddr('From')
print('%s\t%-40s\t'%(fn, sender[1]), end=' ')
"""pyversioncheck - Module to help with checking versions"""
-import rfc822
import urllib
+import email
import sys
# Verbose options
if verbose >= VERBOSE_EACHFILE:
print(' Cannot open:', arg)
return -1, None, None
- msg = rfc822.Message(fp, seekable=0)
+ msg = email.message_from_file(fp)
newversion = msg.get('current-version')
if not newversion:
if verbose >= VERBOSE_EACHFILE: