Message334526
I checked and io.TextIOBase is the only io.IOBase subclass to lack one of read, readinto or write:
>>> import io, inspect
>>> for name, obj in inspect.getmembers(io, predicate=inspect.isclass):
... missing = {'read', 'readinto', 'write'} - {name for name, _ in inspect.getmembers(obj)}
... if issubclass(obj, io.IOBase) and missing:
... print(obj, missing, issubclass(obj, io.TextIOBase))
<class 'io.IOBase'> {'write', 'read', 'readinto'} False
<class '_io.StringIO'> {'readinto'} True
<class 'io.TextIOBase'> {'readinto'} True
<class '_io.TextIOWrapper'> {'readinto'} True
I can open a PR to fix the conflicts between the two parts of the documentation. I think it's appropriate to change TextIOBase to raise UnsupportedOperation when calling readinto and to change the documentation accordingly. |
|
Date |
User |
Action |
Args |
2019-01-29 14:43:44 | remi.lapeyre | set | recipients:
+ remi.lapeyre, steverpalmer |
2019-01-29 14:43:42 | remi.lapeyre | set | messageid: <1548773022.57.0.448833917918.issue35848@roundup.psfhosted.org> |
2019-01-29 14:43:42 | remi.lapeyre | link | issue35848 messages |
2019-01-29 14:43:42 | remi.lapeyre | create | |
|