Work in progress restoring ability to [read] after [eof] and get non-empty
strings back in those cases where the channel has them to offer.  Also
working through all the implications of this possibility on Tcl's more
exotic channel features, like stacking.
merge 8.5
Base test for [5adc350683].
[5adc350683] Reworked the management of the EOF states to re-enable the
ability to read beyond EOF.  Plenty of assert()s to keep thing from going
off track again.
merge 8.5
Same patch re-enabling read after EOF, but here applied to 8.6.
Likely additional changes needed in the other channel transforms new in 8.6.
Make sure reflected channels do not make a double call to Tcl_ReadRaw(),
with the unwarranted assumption that EOF is a permanent condition.
merge trunk
New test iortrans-4.10 to demo failure of channel transformation to handle
fleeting EOF in the base channel.  Falls into infinite block.  Regression
compared with Tcl 8.6.1.
Reflected Transform channel fix.  Be sure each EOF on the base channel gets
passed up to become an eof of the transform before continuing on to additional
ReadRaw() from the base channel.  This way we don't miss fleeting EOFs.
New tests iortrans-4.11* demonstrate what was wrong with the "leaky EOF flag"
approach in 8.6.1 and earlier.  If each level of the channel stack is to have
control over its EOF independently, we have to provide for that, even though
the Filesystem read APIs make it a big pain.  Also test robustness against
varing buffer sizes.
Another test checking that handling when transform returns nothing is right.
New test iogt-7.0 demos bug in [testchannel transform].
fix failing test
Also test transfroms that delay.
merge iogt fixes.
[5adc350683] Stop Tcl forcing EOF condition on channels to be permanent.
It may be fleeting, and all parts of Tcl channel ecosystem have to deal
with that.  New assertions and tests to keep us on track.
[5adc350683] Stop Tcl forcing EOF condition on channels to be permanent. It may be fleeting, and all parts of Tcl channel ecosystem have to deal with that. New assertions and tests to keep us on track.