[Python-checkins] python/dist/src/Lib cgi.py,1.82,1.83
jlgijsbers at users.sourceforge.net
jlgijsbers at users.sourceforge.net
Sat Jan 8 14:56:50 CET 2005
Update of /cvsroot/python/python/dist/src/Lib
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16282
Modified Files:
cgi.py
Log Message:
Patch #1079734: remove dependencies on (deprecated) rfc822 and mimetools
modules, replacing with email. Thanks to Josh Hoyt for the patch!
Index: cgi.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/cgi.py,v
retrieving revision 1.82
retrieving revision 1.83
diff -u -d -r1.82 -r1.83
--- cgi.py 31 Dec 2004 21:59:02 -0000 1.82
+++ cgi.py 8 Jan 2005 13:56:36 -0000 1.83
@@ -38,8 +38,7 @@
import sys
import os
import urllib
-import mimetools
-import rfc822
+import email.Parser
import UserDict
try:
from cStringIO import StringIO
@@ -108,6 +107,8 @@
# Parsing functions
# =================
+_header_parser = email.Parser.HeaderParser()
+
# Maximum input we will accept when REQUEST_METHOD is POST
# 0 ==> unlimited input
maxlen = 0
@@ -237,7 +238,7 @@
Arguments:
fp : input file
- pdict: dictionary containing other parameters of conten-type header
+ pdict: dictionary containing other parameters of content-type header
Returns a dictionary just like parse_qs(): keys are the field names, each
value is a list of values for that field. This is easy to use but not
@@ -270,7 +271,7 @@
data = None
if terminator:
# At start of next part. Read headers first.
- headers = mimetools.Message(fp)
+ headers = _header_parser.parse(fp)
clength = headers.getheader('content-length')
if clength:
try:
@@ -407,8 +408,9 @@
disposition_options: dictionary of corresponding options
- headers: a dictionary(-like) object (sometimes rfc822.Message or a
- subclass thereof) containing *all* headers
+ headers: a dictionary(-like) object (sometimes
+ email.Message.Message or a subclass thereof) containing *all*
+ headers
The class is subclassable, mostly for the purpose of overriding
the make_file() method, which is called internally to come up with
@@ -650,7 +652,7 @@
environ, keep_blank_values, strict_parsing)
# Throw first part away
while not part.done:
- headers = rfc822.Message(self.fp)
+ headers = _header_parser.parse(self.fp)
part = klass(self.fp, headers, ib,
environ, keep_blank_values, strict_parsing)
self.list.append(part)
More information about the Python-checkins
mailing list