]> granicus.if.org Git - python/commit
bpo-36502: Correct documentation of str.isspace() (GH-15019) (GH-15296)
authorGreg Price <gnprice@gmail.com>
Mon, 19 Aug 2019 09:53:22 +0000 (02:53 -0700)
committerVictor Stinner <vstinner@redhat.com>
Mon, 19 Aug 2019 09:53:22 +0000 (10:53 +0100)
commit8c1c426a631ba02357112657193f82c58d3e08b4
tree29185db7d0cda620819949eda744bbdb018ab304
parent786a4e1cef3eda8f434613d3801a5c7565fb5cd8
bpo-36502: Correct documentation of str.isspace() (GH-15019) (GH-15296)

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