]> granicus.if.org Git - python/commitdiff
Improved docs for issue27033. Based on comments by R. David Murray.
authorSerhiy Storchaka <storchaka@gmail.com>
Sun, 29 May 2016 20:43:24 +0000 (23:43 +0300)
committerSerhiy Storchaka <storchaka@gmail.com>
Sun, 29 May 2016 20:43:24 +0000 (23:43 +0300)
Doc/library/smtpd.rst
Doc/whatsnew/3.6.rst

index 2466e38f1163bb1d2503f3842cc575ecabfd10be..ad6bd3cc061a80c37a4df29e4116782646706a6f 100644 (file)
@@ -52,8 +52,8 @@ SMTPServer Objects
    cannot be set to ``True`` at the same time.
 
    *decode_data* specifies whether the data portion of the SMTP transaction
-   should be decoded using UTF-8.  The default is ``False``.  When
-   *decode_data* is not set to ``True`` the server advertises the ``8BITMIME``
+   should be decoded using UTF-8.  When *decode_data* is ``False`` (the
+   default), the server advertises the ``8BITMIME``
    extension (:rfc:`6152`), accepts the ``BODY=8BITMIME`` parameter to
    the ``MAIL`` command, and when present passes it to :meth:`process_message`
    in the ``kwargs['mail_options']`` list. *decode_data* and *enable_SMTPUTF8*
@@ -70,7 +70,7 @@ SMTPServer Objects
       format).
 
       If the *decode_data* constructor keyword is set to ``True``, the *data*
-      parameter will be a unicode string.  If it is set to ``False``, it
+      argument will be a unicode string.  If it is set to ``False``, it
       will be a bytes object.
 
       *kwargs* is a dictionary containing additional information. It is empty
@@ -107,8 +107,8 @@ SMTPServer Objects
 
    .. versionadded:: 3.5
       The *decode_data* and *enable_SMTPUTF8* constructor parameters, and the
-      *kwargs* parameter to :meth:`process_message` when one or more of these is
-      specified.
+      *kwargs* parameter to :meth:`process_message` when *decode_data* is
+      ``False``.
 
    .. versionchanged:: 3.6
       *decode_data* is now ``False`` by default.
index 3b1aee458da3fa1aa6940a8507c6944149161db1..adbde91e9d75882e1dbfb23b110b6ac4f662bfcb 100644 (file)
@@ -640,6 +640,14 @@ Changes in the Python API
   an error (e.g. EBADF) was reported by the underlying system call.
   See :issue:`26685`.
 
+* The *decode_data* argument for :class:`smtpd.SMTPChannel` and
+  :class:`smtpd.SMTPServer` constructors is now ``False`` by default.
+  This means that the argument passed to
+  :meth:`~smtpd.SMTPServer.process_message` is now a bytes object by
+  default, and ``process_message()`` will be passed keyword arguments.
+  Code that has already been updated in accordance with the deprecation
+  warning generated by 3.5 will not be affected.
+
 Changes in the C API
 --------------------