Changes for version 0.004 - 2026-02-14

  • First stable API release.
  • Split timer queue into Linux::Event::Scheduler (Loop delegates scheduling).
  • Add signalfd integration: $loop->signal(...) with strict 4-argument callback ABI.
  • Add eventfd-based wakeups: $loop->waker (user watches $waker->fh).
  • Add pidfd integration: $loop->pid(...) for process-exit notifications (one-shot, replacement semantics per PID).
  • Freeze dispatch order for I/O watchers: error, then read, then write.
  • Freeze callback ABIs per watcher type (I/O, timer, signal, pid).

Changes for version 0.003_001 - 2026-02-12

  • Development snapshot prior to 0.004 API freeze.
  • Timers (after/at), I/O watchers (replacement semantics) and dispatch order tests.

Changes for version 0.002_001 - 2026-02-10

  • Introduce Linux::Event::Watcher (mutable watcher handles).
  • IO API: watch(...) returns a watcher; masks are internal.
  • Watchers support data (avoid closure captures) and enable/disable toggles.
  • Simplify timer API to seconds: after($seconds) and at($seconds).

Changes for version 0.001_001 - 2026-02-09

  • First developer release of Linux::Event::Loop + Backend boundary.
  • Epoll backend via Linux::Epoll.
  • Deadline scheduler (ns) included.

Modules

Front door for the Linux::Event ecosystem
Backend contract for Linux::Event::Loop
epoll backend for Linux::Event
Linux-native event loop (epoll + timerfd + signalfd + eventfd + pidfd)
pidfd-backed process exit notifications for Linux::Event
Internal timer queue for Linux::Event
signalfd integration for Linux::Event
eventfd-backed wakeups for Linux::Event
Mutable watcher handle for Linux::Event::Loop

Provides

in lib/Linux/Event/Pid.pm
in lib/Linux/Event/Signal.pm