Kaydet (Commit) 83e9f4cd authored tarafından Georg Brandl's avatar Georg Brandl

Remove last traces of mimetools.

üst b1549092
...@@ -10,15 +10,12 @@ ...@@ -10,15 +10,12 @@
The :mod:`email` package is a library for managing email messages, including The :mod:`email` package is a library for managing email messages, including
MIME and other :rfc:`2822`\ -based message documents. It subsumes most of the MIME and other :rfc:`2822`\ -based message documents. It is specifically *not*
functionality in several older standard modules such as :mod:`rfc822`, designed to do any sending of email messages to SMTP (:rfc:`2821`), NNTP, or
:mod:`mimetools`, :mod:`multifile`, and other non-standard packages such as other servers; those are functions of modules such as :mod:`smtplib` and
:mod:`mimecntl`. It is specifically *not* designed to do any sending of email :mod:`nntplib`. The :mod:`email` package attempts to be as RFC-compliant as
messages to SMTP (:rfc:`2821`), NNTP, or other servers; those are functions of possible, supporting in addition to :rfc:`2822`, such MIME-related RFCs as
modules such as :mod:`smtplib` and :mod:`nntplib`. The :mod:`email` package :rfc:`2045`, :rfc:`2046`, :rfc:`2047`, and :rfc:`2231`.
attempts to be as RFC-compliant as possible, supporting in addition to
:rfc:`2822`, such MIME-related RFCs as :rfc:`2045`, :rfc:`2046`, :rfc:`2047`,
and :rfc:`2231`.
The primary distinguishing feature of the :mod:`email` package is that it splits The primary distinguishing feature of the :mod:`email` package is that it splits
the parsing and generating of email messages from the internal *object model* the parsing and generating of email messages from the internal *object model*
......
...@@ -445,7 +445,7 @@ HTTPResponse Objects ...@@ -445,7 +445,7 @@ HTTPResponse Objects
.. attribute:: HTTPResponse.msg .. attribute:: HTTPResponse.msg
A :class:`mimetools.Message` instance containing the response headers. An :class:`email.message.Message` instance containing the response headers.
.. attribute:: HTTPResponse.version .. attribute:: HTTPResponse.version
......
...@@ -165,10 +165,9 @@ contained :class:`Cookie` objects. ...@@ -165,10 +165,9 @@ contained :class:`Cookie` objects.
:mailheader:`Set-Cookie2` headers in the *response* argument, and store cookies :mailheader:`Set-Cookie2` headers in the *response* argument, and store cookies
as appropriate (subject to the :meth:`CookiePolicy.set_ok` method's approval). as appropriate (subject to the :meth:`CookiePolicy.set_ok` method's approval).
The *response* object (usually the result of a call to :meth:`urllib2.urlopen`, The *response* object (usually the result of a call to
or similar) should support an :meth:`info` method, which returns an object with :meth:`urllib2.urlopen`, or similar) should support an :meth:`info` method,
a :meth:`getallmatchingheaders` method (usually a :class:`mimetools.Message` which returns a :class:`email.message.Message` instance.
instance).
The *request* object (usually a :class:`urllib2.Request` instance) must support The *request* object (usually a :class:`urllib2.Request` instance) must support
the methods :meth:`get_full_url`, :meth:`get_host`, :meth:`unverifiable`, and the methods :meth:`get_full_url`, :meth:`get_host`, :meth:`unverifiable`, and
......
...@@ -124,11 +124,9 @@ of which this module provides three different variants: ...@@ -124,11 +124,9 @@ of which this module provides three different variants:
.. attribute:: MessageClass .. attribute:: MessageClass
.. index:: single: Message (in module mimetools) Specifies an :class:`email.message.Message`\ -like class to parse HTTP
headers. Typically, this is not overridden, and it defaults to
Specifies a :class:`rfc822.Message`\ -like class to parse HTTP headers. :class:`http.client.HTTPMessage`.
Typically, this is not overridden, and it defaults to
:class:`mimetools.Message`.
.. attribute:: responses .. attribute:: responses
......
...@@ -132,9 +132,6 @@ various end-user mail programs. ...@@ -132,9 +132,6 @@ various end-user mail programs.
Module :mod:`mailbox` Module :mod:`mailbox`
Classes to read various mailbox formats produced by end-user mail programs. Classes to read various mailbox formats produced by end-user mail programs.
Module :mod:`mimetools`
Subclass of :class:`rfc822.Message` that handles MIME encoded messages.
.. _message-objects: .. _message-objects:
......
...@@ -39,19 +39,17 @@ High-level interface ...@@ -39,19 +39,17 @@ High-level interface
however, so it can't be used at those few places where a true built-in file however, so it can't be used at those few places where a true built-in file
object is required.) object is required.)
.. index:: module: mimetools
The :meth:`info` method returns an instance of the class The :meth:`info` method returns an instance of the class
:class:`mimetools.Message` containing meta-information associated with the :class:`email.message.Message` containing meta-information associated with
URL. When the method is HTTP, these headers are those returned by the server the URL. When the method is HTTP, these headers are those returned by the
at the head of the retrieved HTML page (including Content-Length and server at the head of the retrieved HTML page (including Content-Length and
Content-Type). When the method is FTP, a Content-Length header will be Content-Type). When the method is FTP, a Content-Length header will be
present if (as is now usual) the server passed back a file length in response present if (as is now usual) the server passed back a file length in response
to the FTP retrieval request. A Content-Type header will be present if the to the FTP retrieval request. A Content-Type header will be present if the
MIME type can be guessed. When the method is local-file, returned headers MIME type can be guessed. When the method is local-file, returned headers
will include a Date representing the file's last-modified time, a will include a Date representing the file's last-modified time, a
Content-Length giving file size, and a Content-Type containing a guess at the Content-Length giving file size, and a Content-Type containing a guess at the
file's type. See also the description of the :mod:`mimetools` module. file's type.
The :meth:`geturl` method returns the real URL of the page. In some cases, the The :meth:`geturl` method returns the real URL of the page. In some cases, the
HTTP server redirects a client to another URL. The :func:`urlopen` function HTTP server redirects a client to another URL. The :func:`urlopen` function
...@@ -288,7 +286,7 @@ URL Opener objects ...@@ -288,7 +286,7 @@ URL Opener objects
Retrieves the contents of *url* and places it in *filename*. The return value Retrieves the contents of *url* and places it in *filename*. The return value
is a tuple consisting of a local filename and either a is a tuple consisting of a local filename and either a
:class:`mimetools.Message` object containing the response headers (for remote :class:`email.message.Message` object containing the response headers (for remote
URLs) or ``None`` (for local URLs). The caller must then open and read the URLs) or ``None`` (for local URLs). The caller must then open and read the
contents of *filename*. If *filename* is not given and the URL refers to a contents of *filename*. If *filename* is not given and the URL refers to a
local file, the input filename is returned. If the URL is non-local and local file, the input filename is returned. If the URL is non-local and
......
...@@ -1903,17 +1903,7 @@ def apropos(key): ...@@ -1903,17 +1903,7 @@ def apropos(key):
# --------------------------------------------------- web browser interface # --------------------------------------------------- web browser interface
def serve(port, callback=None, completer=None): def serve(port, callback=None, completer=None):
import http.server, mimetools, select import http.server, email.message, select
# Patch up mimetools.Message so it doesn't break if rfc822 is reloaded.
class Message(mimetools.Message):
def __init__(self, fp, seekable=1):
Message = self.__class__
Message.__bases__[0].__bases__[0].__init__(self, fp, seekable)
self.encodingheader = self.get('content-transfer-encoding')
self.typeheader = self.get('content-type')
self.parsetype()
self.parseplist()
class DocHandler(http.server.BaseHTTPRequestHandler): class DocHandler(http.server.BaseHTTPRequestHandler):
def send_document(self, title, contents): def send_document(self, title, contents):
...@@ -1981,7 +1971,7 @@ pydoc</strong> by Ka-Ping Yee &lt;ping@lfw.org&gt;</font>''' ...@@ -1981,7 +1971,7 @@ pydoc</strong> by Ka-Ping Yee &lt;ping@lfw.org&gt;</font>'''
DocServer.base = http.server.HTTPServer DocServer.base = http.server.HTTPServer
DocServer.handler = DocHandler DocServer.handler = DocHandler
DocHandler.MessageClass = Message DocHandler.MessageClass = email.message.Message
try: try:
try: try:
DocServer(port, callback).serve_until_quit() DocServer(port, callback).serve_until_quit()
......
...@@ -85,7 +85,6 @@ class AllTest(unittest.TestCase): ...@@ -85,7 +85,6 @@ class AllTest(unittest.TestCase):
self.check_all("mailbox") self.check_all("mailbox")
self.check_all("mailcap") self.check_all("mailcap")
self.check_all("mhlib") self.check_all("mhlib")
self.check_all("mimetools")
self.check_all("mimetypes") self.check_all("mimetypes")
self.check_all("multifile") self.check_all("multifile")
self.check_all("netrc") self.check_all("netrc")
...@@ -111,7 +110,6 @@ class AllTest(unittest.TestCase): ...@@ -111,7 +110,6 @@ class AllTest(unittest.TestCase):
self.check_all("random") self.check_all("random")
self.check_all("re") self.check_all("re")
self.check_all("reprlib") self.check_all("reprlib")
self.check_all("rfc822")
self.check_all("rlcompleter") self.check_all("rlcompleter")
self.check_all("robotparser") self.check_all("robotparser")
self.check_all("sched") self.check_all("sched")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment