Changes for version 0.001006 - 2026-03-16
- Bug Fix: Pool forwards all connection parameters
- Pool now passes prefix, client_name, username, request_timeout, path, and all other Async::Redis options through to connections
- Previously these were silently dropped when Pool created connections
- Bug Fix: Typed error objects for Redis command errors
- _decode_response now dies with Async::Redis::Error::Redis objects instead of plain "Redis error: ..." strings
- AutoPipeline uses blessed() check instead of string matching, fixing false positives for values starting with "Redis error:"
- Pipeline results contain error objects at failed slot positions
- Bug Fix: Pool max connection race condition
- Concurrent acquire() calls could exceed max connections
- Added _creating counter to track in-flight connection creations
- Dependency Change: Future::IO bumped to 0.23 (was 0.19)
- Future::IO 0.22+ broke load_impl('IOAsync') by adding a poll method check that IO::Async's impl doesn't satisfy
- Removed IO::Async as a test dependency entirely
- Tests now use Future::IO's built-in poll-based default impl
- Test suite is fully event-loop agnostic
- Examples: pagi-chat stats timer uses Future::IO instead of IO::Async
Documentation
Auto-generated Redis command methods
Modules
Async Redis client using Future::IO
Automatic command batching
Auto-generated Redis command methods
Base exception class for Redis errors
Connection failure exception
Disconnected exception
Protocol violation exception
Redis server error exception
Timeout exception
Cursor-based SCAN iterator
Key position detection for Redis commands
Command pipelining
Connection pool for Async::Redis
Reusable Lua script wrapper with EVALSHA optimization
PubSub subscription handler
Observability for Redis client
Transaction command collector
Redis connection URI parser
Examples
- examples/README.md
- examples/docker-compose.yml
- examples/pagi-chat/README.md
- examples/pagi-chat/app.pl
- examples/pagi-chat/lib/ChatApp/HTTP.pm
- examples/pagi-chat/public/css/style.css
- examples/pagi-chat/public/index.html
- examples/pagi-chat/public/js/app.js
- examples/pagi-chat/reset-redis.sh
- examples/slow-redis/README.md
- examples/slow-redis/app.pl