Add a NEWS entry for r81758 and clarify a comment.

This commit is contained in:
Ezio Melotti 2010-06-05 19:21:32 +00:00
parent e57e50c8e7
commit ab2eb0ee84
2 changed files with 11 additions and 3 deletions

View File

@ -670,9 +670,9 @@ def test_utf8_decode_invalid_sequences(self):
('\xF4'+cb+'\xBF\xBF').decode, 'utf-8')
def test_issue8271(self):
# Issue #8271: when a byte sequence is invalid, only the start byte
# and all the valid continuation bytes should be replaced by U+FFFD,
# not the number of bytes specified by the start byte.
# Issue #8271: during the decoding of an invalid UTF-8 byte sequence,
# only the start byte and the continuation byte(s) are now considered
# invalid, instead of the number of bytes specified by the start byte.
# See http://www.unicode.org/versions/Unicode5.2.0/ch03.pdf (page 95,
# table 3-8, Row 2) for more information about the algorithm used.
FFFD = u'\ufffd'

View File

@ -12,6 +12,14 @@ What's New in Python 2.7 Release Candidate 1?
Core and Builtins
-----------------
- Issue #8271: during the decoding of an invalid UTF-8 byte sequence, only the
start byte and the continuation byte(s) are now considered invalid, instead
of the number of bytes specified by the start byte.
E.g.: '\xf1\x80AB'.decode('utf-8', 'replace') now returns u'\ufffdAB' and
replaces with U+FFFD only the start byte ('\xf1') and the continuation byte
('\x80') even if '\xf1' is the start byte of a 4-bytes sequence.
Previous versions returned a single u'\ufffd'.
- Issue #8627: Remove bogus "Overriding __cmp__ blocks inheritance of
__hash__ in 3.x" warning. Also fix "XXX undetected error" that
arises from the "Overriding __eq__ blocks inheritance ..." warning