What is the behavior of .peek() with buffer_size=None?
I have been trying to implement this as well as evolve Buffed I/O in general a bit (see: Reworking "Buffered I/O" in CPython, I refer to this as buffer_size=0 / buffering=0). The code internally is structured to require a buffer at the moment but that is definitely changeable.