WIP: start trying to fix on julia nightly #19
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Still getting a
cannot resize array with shared data
, not sure how to best deal with that. Commenting out thereadbytes!
method that was added in JuliaLang/julia#14667 seems to work, but may reintroduce the perf issue in base. cc @vtjnashOne ugly way to fix this is to change this line to
n = invoke(readbytes!, (IO, AbstractArray{UInt8}, Any), jl_ctx, jl_msg, sz)
Or JuliaLang/julia#14699 may change the behavior here. Regardless of the fix, I could use some help writing tests in base that are representative of the way this package needs to use IO functions. First for calling
readbytes!
with a non-Int
inputnb
, where wideningwait_readnb(x::LibuvStream, nb::Int)
andwait_readnb(s::BufferStream, nb::Int)
to acceptInteger
should be safe as far as I can tell. I can figure outBufferStream
(bufstr = BufferStream(); data = UInt8[0,0,0,0,0]; sz = UInt(5); write(bufstr, data+1); readbytes!(bufstr, data, sz)
) but not sure how to do any of the otherLibuvStream
subtypes. From what I can tell,jl_ctx
when this package executes its tests is always aTCPSocket
here.