readuntil(p::Pipe, s)is likewise not supported.
readuntil is currently supported for all IO types, so I’m not sure what you meant here:
julia> @which readuntil(Pipe(), "Done")
readuntil(io::Base.AbstractPipe, arg::AbstractString; kw...) in Base at io.jl:371
using
bytesavailable…
bytesavailable is mostly just a worse version of readavailable (the similarity in name is intentional)
use
IOBuffer…
We have an open issue about this: IOBuffer is probably not what you want. You could use Base.BufferStream, but really that will just create a Pipe, and can just use Pipe directly anyways.
use
Pipe…
Using Base.PipeEndpoint in these examples can be slightly more efficient (and saves you from the requirement to call close(out.in); close(in.out)), but it otherwise equivalent functionally.
using
Base.start_reading…
Don’t do this, you’ll confuse the internal state, and can just end up with even more problems