[docs] [issue37846] declare that Text I/O use buffer inside

Windson Yang report at bugs.python.org
Tue Aug 13 22:44:09 EDT 2019

New submission from Windson Yang <wiwindson at outlook.com>:

At the beginning of https://docs.python.org/3.7/library/io.html#io.RawIOBase, we declared that 

> Binary I/O (also called buffered I/O)
> Raw I/O (also called unbuffered I/O)

But we didn't mention if Text I/O use buffer or not which led to confusion. Even though we talked about it later in https://docs.python.org/3.7/library/io.html#class-hierarchy

> The TextIOBase ABC, another subclass of IOBase, deals with streams whose bytes represent text, and handles encoding and decoding to and from strings. TextIOWrapper, which extends it, is a buffered text interface to a buffered raw stream (BufferedIOBase). Finally, StringIO is an in-memory stream for text.

IMO, it will be better to declare 'Reads and writes are internally buffered in order to speed things up' at the very beginning in 

> Text I/O
> Text I/O expects and produces str objects...

or maybe

> class io.TextIOBase
> Base class for text streams. This class provides a character and line based interface to stream I/O. It inherits IOBase. There is no public constructor.

assignee: docs at python
components: Documentation
messages: 349633
nosy: Windson Yang, docs at python
priority: normal
severity: normal
status: open
title: declare that Text I/O use buffer inside
type: enhancement
versions: Python 3.8

Python tracker <report at bugs.python.org>

More information about the docs mailing list