Revision history for Future-IO-Redis

0.002  2026-01-17
    - Bug Fix: Concurrent command response matching
        - Fixed race condition where multiple async commands on a single
          connection could receive mismatched responses
        - Implemented Response Queue pattern with FIFO ordering
        - Commands now register in inflight queue before sending
        - Single reader coroutine processes responses in order
    - New Features:
        - Added inflight_count() method to check pending commands
        - Added _wait_for_inflight_drain() for pipeline/PubSub synchronization
    - Documentation:
        - Added CONCURRENT COMMANDS section to POD
        - Documented Response Queue pattern and best practices
    - Testing:
        - Added t/92-concurrency/response-ordering.t test suite
        - Tests for concurrent SET, GET, mixed command types
        - Stress test with 100 concurrent commands
        - Inflight tracking verification

0.001  2026-01-03
    - Initial release
    - Core Features:
        - Full async/await support via Future::IO
        - Event loop agnostic (IO::Async, AnyEvent, UV, etc.)
        - RESP2 protocol support via Protocol::Redis
        - All Redis commands via auto-generated methods
    - Connection Features:
        - TCP and TLS/SSL connections
        - URI connection strings
        - Automatic reconnection with exponential backoff
        - Connection pooling with health checks
        - Fork-safe for pre-fork servers
    - Command Features:
        - Pipelining for improved throughput
        - Transactions (MULTI/EXEC/WATCH)
        - Lua scripting with EVALSHA optimization
        - SCAN iterators (SCAN, HSCAN, SSCAN, ZSCAN)
        - Key prefixing
    - PubSub:
        - Channel and pattern subscriptions
        - Sharded subscriptions (Redis 7+)
    - Observability:
        - OpenTelemetry tracing and metrics
        - Debug logging
        - Credential redaction
    - Testing:
        - Comprehensive test suite
        - Integration tests
        - Performance benchmarks