Revision history for DBIx-Loop

0.02    2026-08-07
        - Fix a pool worker dying while idle taking the whole pool down
          with it. Worker death was only ever noticed as EOF on the read
          side, and an idle worker's fd is not readable, so the first
          thing that learned about it was the write of the next request -
          which failed the future and left the slot alive with a valid
          fd. 
        - A public C ABI. include/dbil_abi.h declares a versioned function-
          pointer table.
        - selectall_rowhash: every row as a hashref, in the order the server
          returned them - DBI's selectall_arrayref($sql, { Slice => {} }).
          selectall_hashref cannot stand in for it, because keying rows by a
          column destroys the ordering that keyset pagination depends on.
          t/17-rowhash.t.
        - Fork safety. A pool belongs to the process that forked its workers.
          Without that, a program that forked after its first statement (any
          preforking server) left every child reading the same socketpair, so
          a request could be answered with another request's rows!!
        - Pool worker children close every inherited descriptor except their
          own socketpair end, and the parent's ends are FD_CLOEXEC. A worker
          used to hold a duplicate of whatever the embedding program had
          open - in a web server, the listening socket - keeping the port
          bound for the worker's whole life.
        - Fixed a crash in the native (Pg) backend on perl before 5.30.
          SvTRUE is a multi-evaluating macro there, so SvTRUE(POPs) popped
          the stack once per expansion and walked SP below its base: a
          segfault on 5.20 and wrong readiness answers on 5.14. Found by
          running the test suite on the older perls in the docker matrix.
        - t/15-fork.t runs on whichever loop adapter is installed rather than
          requiring IO::Async, which needs perl 5.14 and so could never have
          covered the oldest perls the dist supports.

0.01    2026-08-07
        First version
