Skip to content

v3.1.0

Choose a tag to compare

@github-actions github-actions released this 02 Aug 07:51
· 24 commits to main since this release
v3.1.0
7454fc1

Added

  • select-fds/wait-for-input: a select(2)-based file-descriptor
    readiness primitive for event loops that need to block on several raw
    descriptors at once -- several PTY masters, a unix socket, and stdin,
    say -- and be told which woke it. This is the one primitive an event
    loop could not previously build out of the rest of the library:
    process-wait/communicate each drive a single child. select-fds
    returns the three ready read/write/exceptional descriptor sub-lists;
    wait-for-input is the common read-only, single-descriptor-list case
    reduced to one argument and one return value. Both retry transparently
    on EINTR against the original deadline, so a periodic signal (
    SIGWINCH, SIGCHLD) never truncates or extends the caller's timeout.
    New public conditions fd-set-overflow (a descriptor at or above
    +maximum-fd+) and fd-wait-failed (any other failing errno) cover
    the two failure modes; every other bound documented on select-fds
    cannot be reached from SB-UNIX:UNIX-FAST-SELECT's own argument checks.
    See the File-Descriptor Readiness guide.