summaryrefslogtreecommitdiffstats
path: root/Doc/whatsnew
diff options
context:
space:
mode:
authorR David Murray <rdmurray@bitdance.com>2012-09-30 05:27:24 (GMT)
committerR David Murray <rdmurray@bitdance.com>2012-09-30 05:27:24 (GMT)
commitea22685a042dd8033fc9217af9d7c2fb793a649a (patch)
tree11899ac0b5d3430e0f5c35d550d3509358779d5c /Doc/whatsnew
parent6c57318c3a88e4803cc374cce2309c11382c9a37 (diff)
downloadcpython-ea22685a042dd8033fc9217af9d7c2fb793a649a.zip
cpython-ea22685a042dd8033fc9217af9d7c2fb793a649a.tar.gz
cpython-ea22685a042dd8033fc9217af9d7c2fb793a649a.tar.bz2
Add notes to whatsnew porting for visible changes in email compatibility mode.
Diffstat (limited to 'Doc/whatsnew')
-rw-r--r--Doc/whatsnew/3.3.rst16
1 files changed, 16 insertions, 0 deletions
diff --git a/Doc/whatsnew/3.3.rst b/Doc/whatsnew/3.3.rst
index 1943a06..4e62595 100644
--- a/Doc/whatsnew/3.3.rst
+++ b/Doc/whatsnew/3.3.rst
@@ -2102,6 +2102,22 @@ Porting Python code
special case the standard import hooks so they are still supported even
though they do not provide the non-standard ``iter_modules()`` method.
+* A longstanding RFC-compliance bug (:issue:`1079`) in the parsing done by
+ :func:`email.header.decode_header` has been fixed. Code that uses the
+ standard idiom to convert encoded headers into unicode
+ (``str(make_header(decode_header(h))``) will see no change, but code that
+ looks at the individual tuples returned by decode_header will see that
+ whitespace that precedes or follows ``ASCII`` sections is now included in the
+ ``ASCII`` section. Code that builds headers using ``make_header`` should
+ also continue to work without change, since ``make_header`` continues to add
+ whitespace between ``ASCII`` and non-``ASCII`` sections if it is not already
+ present in the input strings.
+
+* :func:`email.utils.formataddr` now does the correct content transfer
+ encoding when passed non-``ASCII`` display names. Any code that depended on
+ the previous buggy behavior that preserved the non-``ASCII`` unicode in the
+ formatted output string will need to be changed.
+
Porting C code
--------------