Changes for version 0.10 - 2026-09-19

  • FIXES six files failing at once on the FreeBSD 5.14 and 5.16 smokers: Makefile.PL's pthread_atfork probe only linked, and FreeBSD's libc stub links and never runs without libthr, so a child kept its parent's cached pid. The probe now forks and requires the child handler to have run, linking -lpthread where that is what it takes. t/06-fork.t asserts it first, through a _pid probe.
  • FIXES the ABI selftest (step 25) on 32-bit Linux: the HyperLogLog estimates compared unequal under x87 excess precision. Now volatile.
  • FIXES t/32-map-ttl.t on a perl without 64-bit integers: pack 'Q'.

Modules

memory two processes can both read, without a syscall
a shared set that answers "no" exactly and "yes" probably
a shared cache that evicts instead of refusing
how often a key has been seen, in fixed space
a shared set that answers "no" exactly, "yes" probably, and can forget
one structure, published once and read in place by every process
read a published block without copying it
a distribution every process adds to at once
how many distinct, in a few kilobytes
one holder at a time, and a successor when it dies
a fixed-capacity map several processes share
a token bucket per key, shared by every worker
a record queue several processes can write at once
one reader's position in a ring
one record to one member of the pool
one row per worker, published live