From eb97b9211e7c99841d6cae8c63893b3525d5a401 Mon Sep 17 00:00:00 2001 From: tmblweed Date: Sat, 29 Jun 2019 21:20:03 -0700 Subject: [PATCH] bpo-30754: Document textwrap.dedent blank line behavior. (GH-14469) * Added documentation for textwrap.dedent behavior. * Remove an obsolete note about pre-2.5 behavior from the docstring. --- Doc/library/textwrap.rst | 3 +++ Lib/textwrap.py | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Doc/library/textwrap.rst b/Doc/library/textwrap.rst index d254466c9a..0f11ef4015 100644 --- a/Doc/library/textwrap.rst +++ b/Doc/library/textwrap.rst @@ -77,6 +77,9 @@ functions should be good enough; otherwise, you should use an instance of equal: the lines ``" hello"`` and ``"\thello"`` are considered to have no common leading whitespace. + Lines containing only whitespace are ignored in the input and normalized to a + single newline character in the output. + For example:: def test(): diff --git a/Lib/textwrap.py b/Lib/textwrap.py index 8103f34745..30e693c8de 100644 --- a/Lib/textwrap.py +++ b/Lib/textwrap.py @@ -420,9 +420,9 @@ def dedent(text): Note that tabs and spaces are both treated as whitespace, but they are not equal: the lines " hello" and "\\thello" are - considered to have no common leading whitespace. (This behaviour is - new in Python 2.5; older versions of this module incorrectly - expanded tabs before searching for common leading whitespace.) + considered to have no common leading whitespace. + + Entirely blank lines are normalized to a newline character. """ # Look for the longest leading string of spaces and tabs common to # all lines. -- 2.40.0