Commit 08c08eb9 authored by Antoine Pitrou's avatar Antoine Pitrou

Issue #13597: Fix the documentation of the "-u" command-line option, and...

Issue #13597: Fix the documentation of the "-u" command-line option, and wording of "What's new in Python 3.0" about standard streams.
parent 86a8a9ae
...@@ -247,7 +247,8 @@ Miscellaneous options ...@@ -247,7 +247,8 @@ Miscellaneous options
Force the binary layer of the stdin, stdout and stderr streams (which is Force the binary layer of the stdin, stdout and stderr streams (which is
available as their ``buffer`` attribute) to be unbuffered. The text I/O available as their ``buffer`` attribute) to be unbuffered. The text I/O
layer will still be line-buffered. layer will still be line-buffered if writing to the console, or
block-buffered if redirected to a non-interactive file.
See also :envvar:`PYTHONUNBUFFERED`. See also :envvar:`PYTHONUNBUFFERED`.
......
...@@ -301,6 +301,12 @@ changed. ...@@ -301,6 +301,12 @@ changed.
There is no longer any need for using the encoding-aware streams There is no longer any need for using the encoding-aware streams
in the :mod:`codecs` module. in the :mod:`codecs` module.
* The initial values of :data:`sys.stdin`, :data:`sys.stdout` and
:data:`sys.stderr` are now unicode-only text files (i.e., they are
instances of :class:`io.TextIOBase`). To read and write bytes data
with these streams, you need to use their :data:`io.TextIOBase.buffer`
attribute.
* Filenames are passed to and returned from APIs as (Unicode) strings. * Filenames are passed to and returned from APIs as (Unicode) strings.
This can present platform-specific problems because on some This can present platform-specific problems because on some
platforms filenames are arbitrary byte strings. (On the other hand, platforms filenames are arbitrary byte strings. (On the other hand,
...@@ -511,9 +517,7 @@ consulted for longer descriptions. ...@@ -511,9 +517,7 @@ consulted for longer descriptions.
produces a literal of type :class:`bytes`. produces a literal of type :class:`bytes`.
* :ref:`pep-3116`. The :mod:`io` module is now the standard way of * :ref:`pep-3116`. The :mod:`io` module is now the standard way of
doing file I/O, and the initial values of :data:`sys.stdin`, doing file I/O. The built-in :func:`open` function is now an
:data:`sys.stdout` and :data:`sys.stderr` are now instances of
:class:`io.TextIOBase`. The built-in :func:`open` function is now an
alias for :func:`io.open` and has additional keyword arguments alias for :func:`io.open` and has additional keyword arguments
*encoding*, *errors*, *newline* and *closefd*. Also note that an *encoding*, *errors*, *newline* and *closefd*. Also note that an
invalid *mode* argument now raises :exc:`ValueError`, not invalid *mode* argument now raises :exc:`ValueError`, not
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment