Changes for version 0.012 - 2026-06-13

  • Add Linux::Event::XS for hot reactor paths.
  • Replace the external epoll-wrapper runtime dependency with native XS epoll support.
  • Add an XS fd registry used by the loop and epoll backend.
  • Add a reusable XS epoll event buffer and event dispatch fast path.
  • Add XS watcher construction and direct watcher dispatch fast paths.
  • Add an internal XS timer heap while preserving the public timer API.
  • Add an events-only run_once fast path for loops with no pending timers.
  • Preserve the public readiness API while reducing Perl allocation and dispatch overhead on hot reactor paths.
  • Add and maintain the reactor benchmark harness under bench/ for echo_tcp, pipe_churn, watcher_churn, callback_storm, and timer_heap comparisons.
  • Refresh README, POD, tests, MANIFEST, and release metadata for the XS reactor optimization release.
  • Treat Linux::FD::Event, Linux::FD::Signal, and Linux::FD::Pid as optional feature dependencies with clear lazy-load errors when the feature is used.

Documentation

Modules

Linux-native readiness event loop for Perl
Contract for readiness backends used by Linux::Event::Loop
Built-in XS epoll backend for Linux::Event
Readiness-based event loop for Linux::Event
pidfd-backed process-exit subscriptions for Linux::Event::Loop
Internal monotonic timer queue for Linux::Event::Loop
signalfd adaptor for Linux::Event::Loop
eventfd-backed wakeup primitive for Linux::Event::Loop
Mutable readiness watcher handle for Linux::Event::Loop
XS hot-path helpers for Linux::Event

Provides

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