Transfer Encoding now happens implicitly based on the *_charset*
argument.
+ Unless the ``_charset`` parameter is explicitly set to ``None``, the
+ MIMEText object created will have both a :mailheader:`Content-Type` header
+ with a ``charset`` parameter, and a :mailheader:`Content-Transfer-Endcoding`
+ header. This means that a subsequent ``set_payload`` call will not result
+ in an encoded payload, even if a charset is passed in the ``set_payload``
+ command. You can "reset" this behavior by deleting the
+ ``Content-Transfer-Encoding`` header, after which a ``set_payload`` call
+ will automatically encode the new payload (and add a new
+ :mailheader:`Content-Transfer-Encoding` header).
"""
self.debuglevel = debuglevel
- def _get_socket(self, port, host, timeout):
+ def _get_socket(self, host, port, timeout):
# This makes it simpler for SMTP_SSL to use the SMTP connect code
# and just alter the socket connection bit.
if self.debuglevel > 0:
print>>stderr, 'connect:', (host, port)
- return socket.create_connection((port, host), timeout)
+ return socket.create_connection((host, port), timeout)
def connect(self, host='localhost', port=0):
"""Connect to a host on a given port.
Amy Taylor
Anatoly Techtonik
Mikhail Terekhov
+Victor Terrón
Richard M. Tew
Tobias Thelen
Lowe Thiderman
Library
-------
+- Issue #13163: Rename operands in smtplib.SMTP._get_socket to correct names;
+ fixes otherwise misleading output in tracebacks and when when debug is on.
+
- Issue #6698: IDLE now opens just an editor window when configured to do so.
- Issue #8900: Using keyboard shortcuts in IDLE to open a file no longer