0.9.0 (2026-10-05)
๐ฏ Core
- โจ Plugin Worker Pools: Added independent worker pools under
[http.pool]and[grpc.pool], FR #104. - ๐งน Pool Configuration: Each pool runs a fixed
processescount. The server command israpira serve <CONFIG>, #149, #116. - โจ Worker Boot Environment: Added process environment values, script paths,
argv, andargcto$_SERVERat worker and dispatcher boot, FR #129 (thanks @FluffyDiscord). - ๐งน Plugin API: Consolidated the PHP runtime in
rapira_sapiand simplified the Rust plugin API. Each plugin owns its PHP classes and configuration, #144, #145, #194. - ๐ Worker Memory: Disabled transparent huge pages on Linux to reduce worker memory use, #151.
- ๐ Temporary Streams: Kept retained
SplTempFileObjectstreams usable across worker requests, #111. - ๐ Worker Lifecycle: Workers can drain active requests after the master exits unexpectedly. The request watchdog stays active during pool reloads, #130, #116.
๐ฆ http plugin
- โก Request Performance: Reduced request copies, allocations, and system calls. On Linux, one waiting worker wakes for each new connection, #127, #130.
- ๐งน Classic Working Directory: Classic workers keep their working directory across requests, so a
chdir()applies until the worker exits, #127. - ๐ Exchange Completion: Fixed false cancellation after a complete response. Dispatchers can accept new work after client cancellation, #113.
๐ฆ grpc plugin
- โจ Unary RPCs: Added PHP handlers for gRPC, binary gRPC-Web, and Connect with protobuf or JSON messages. Includes health checks and optional server reflection, FR #132.
- โจ Authentication: Added interceptor chains and a built-in bearer-token check before calls reach PHP, FR #36.
- โจ HTTP/2 Keepalive: Added
keepalive_interval_secsandkeepalive_timeout_secsto[grpc], #148.
๐ Observability
- โจ Prometheus Metrics: Added
/metricsfor worker state, requests, queues, exits, and Linux memory use. Counters persist across worker respawns, FR #83 (thanks @Zylius). - โจ Health Probes: Added
/livezand/readyzfor master liveness and PHP pool readiness, FR #49 (thanks @rauanmayemir). - ๐งน Log Timestamps: JSON logs include microseconds in
timestamp, #194.
๐ฆ PHP Packages
- โจ Pre-built Extensions: Added
pdo_pgsql,pgsql,bcmath,intl,igbinary, andredisto release builds and Docker images, FR #103 (thanks @FluffyDiscord). - ๐ Release Bundles: Included OPcache in PHP 8.4 packages and required shared libraries in macOS archives, #117, #130.
- ๐ PHP 8.7 Builds: Fixed builds against PHP 8.7 development headers, #156.