]> granicus.if.org Git - python/commit
bpo-36502: Correct documentation of str.isspace() (GH-15019)
authorGreg Price <gnprice@gmail.com>
Wed, 14 Aug 2019 11:05:19 +0000 (04:05 -0700)
committerVictor Stinner <vstinner@redhat.com>
Wed, 14 Aug 2019 11:05:19 +0000 (13:05 +0200)
commit6bccbe7dfb998af862a183f2c36f0d4603af2c29
tree888ea0d9773dd03c3e2a12f918548df151724186
parent077af8c2c93dd71086e2c5e5ff1e634b6da8f214
bpo-36502: Correct documentation of str.isspace() (GH-15019)

The documented definition was much broader than the real one:
there are tons of characters with general category "Other",
and we don't (and shouldn't) treat most of them as whitespace.

Rewrite the definition to agree with the comment on
_PyUnicode_IsWhitespace, and with the logic in makeunicodedata.py,
which is what generates that function and so ultimately governs.

Add suitable breadcrumbs so that a reader who wants to pin down
exactly what this definition means (what's a "bidirectional class"
of "B"?) can do so.  The `unicodedata` module documentation is an
appropriate central place for our references to Unicode's own copious
documentation, so point there.

Also add to the isspace() test a thorough check that the
implementation agrees with the intended definition.
Doc/library/stdtypes.rst
Lib/test/test_unicode.py