At Mon, 31 Jul 2017 16:00:01 -0500, Vincent St-Amour wrote:
> * Internally, Racket's intermediate compatibility layer over
>   operating-system facilities has been moved into its own library,
>   "rktio" [...] we expect a new glitch or
>   two in less-common build and execution environments.

James Bornholt discovered and repaired a rktio-related bug that is
worse than the expected glitch:

  https://github.com/racket/racket/issues/1769

The bug affects programs that

 * are running on Linux;

 * use non-socket, OS-level streams that can block on input or output,
   such as pipes created by `subprocess` or `system` to communicate
   with another process;

 * attempt an input or output operation when the stream is not ready
   for reading or writing; and

 * close the stream before it is used in a ready state.

Under those circumstances, a stream that is created later can be
confused internally with the old one and be treated as not ready, even
if it is ready.

Sockets (including TCP connections) are not affected by the bug.
Programs running on a platform other than Linux are also unaffected.

We haven't yet decided on further action, such as a patched release. If
you think your program might be affected, the release managers would
appreciate a brief note letting us know --- either on-list or off-list
--- since that will help us gauge the bug's impact.

Thanks again to James for tracking down the problem!

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to