gh-47937: Note that Popen attributes are read-only (#93070)

* Note that Popen attributes aren't meant to be set by users by rewording the text about the attributes.
* Also update some universal_newlines references to mention the modern text parameter name while in the area.

Co-authored-by: Gregory P. Smith <greg@krypto.org>
This commit is contained in:
Stanley 2023-02-08 00:12:46 -08:00 committed by GitHub
parent a9f01448a9
commit 027adf42cd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -457,7 +457,7 @@ functions.
- :const:`0` means unbuffered (read and write are one - :const:`0` means unbuffered (read and write are one
system call and can return short) system call and can return short)
- :const:`1` means line buffered - :const:`1` means line buffered
(only usable if ``universal_newlines=True`` i.e., in a text mode) (only usable if ``text=True`` or ``universal_newlines=True``)
- any other positive value means use a buffer of approximately that - any other positive value means use a buffer of approximately that
size size
- negative bufsize (the default) means the system default of - negative bufsize (the default) means the system default of
@ -847,7 +847,8 @@ Instances of the :class:`Popen` class have the following methods:
On Windows :meth:`kill` is an alias for :meth:`terminate`. On Windows :meth:`kill` is an alias for :meth:`terminate`.
The following attributes are also available: The following attributes are also set by the class for you to access.
Reassigning them to new values is unsupported:
.. attribute:: Popen.args .. attribute:: Popen.args
@ -860,9 +861,9 @@ The following attributes are also available:
If the *stdin* argument was :data:`PIPE`, this attribute is a writeable If the *stdin* argument was :data:`PIPE`, this attribute is a writeable
stream object as returned by :func:`open`. If the *encoding* or *errors* stream object as returned by :func:`open`. If the *encoding* or *errors*
arguments were specified or the *universal_newlines* argument was ``True``, arguments were specified or the *text* or *universal_newlines* argument
the stream is a text stream, otherwise it is a byte stream. If the *stdin* was ``True``, the stream is a text stream, otherwise it is a byte stream.
argument was not :data:`PIPE`, this attribute is ``None``. If the *stdin* argument was not :data:`PIPE`, this attribute is ``None``.
.. attribute:: Popen.stdout .. attribute:: Popen.stdout
@ -870,9 +871,9 @@ The following attributes are also available:
If the *stdout* argument was :data:`PIPE`, this attribute is a readable If the *stdout* argument was :data:`PIPE`, this attribute is a readable
stream object as returned by :func:`open`. Reading from the stream provides stream object as returned by :func:`open`. Reading from the stream provides
output from the child process. If the *encoding* or *errors* arguments were output from the child process. If the *encoding* or *errors* arguments were
specified or the *universal_newlines* argument was ``True``, the stream is a specified or the *text* or *universal_newlines* argument was ``True``, the
text stream, otherwise it is a byte stream. If the *stdout* argument was not stream is a text stream, otherwise it is a byte stream. If the *stdout*
:data:`PIPE`, this attribute is ``None``. argument was not :data:`PIPE`, this attribute is ``None``.
.. attribute:: Popen.stderr .. attribute:: Popen.stderr
@ -880,9 +881,9 @@ The following attributes are also available:
If the *stderr* argument was :data:`PIPE`, this attribute is a readable If the *stderr* argument was :data:`PIPE`, this attribute is a readable
stream object as returned by :func:`open`. Reading from the stream provides stream object as returned by :func:`open`. Reading from the stream provides
error output from the child process. If the *encoding* or *errors* arguments error output from the child process. If the *encoding* or *errors* arguments
were specified or the *universal_newlines* argument was ``True``, the stream were specified or the *text* or *universal_newlines* argument was ``True``, the
is a text stream, otherwise it is a byte stream. If the *stderr* argument was stream is a text stream, otherwise it is a byte stream. If the *stderr* argument
not :data:`PIPE`, this attribute is ``None``. was not :data:`PIPE`, this attribute is ``None``.
.. warning:: .. warning::