# Revision history for redis-client ## 0.6.0.0 -- 2026-02-13 * **Multiplexing Now Default** * Cluster mode (`ClusterConfig`) now uses multiplexing by default (`clusterUseMultiplexing = True`). Set `clusterUseMultiplexing = False` to opt out. * **New: Standalone Multiplexed Client** * Added `StandaloneClient` module for pipelined throughput on a single (non-cluster) Redis server. * Provides `createStandaloneClient`, `createStandaloneClientFromConfig`, `closeStandaloneClient`, and `runStandaloneClient` lifecycle functions. * `StandaloneConfig` allows tuning multiplexer count and toggling multiplexing on/off. * Implements `RedisCommands` typeclass — all existing commands work transparently. * Re-exported from the top-level `Redis` module. * **Testing** * Added `MultiplexerSpec` — 14 unit tests for multiplexer internals (slot pool, response slot, lifecycle). * Added `MultiplexPoolSpec` — 8 unit tests for per-node multiplexer management and round-robin routing. * Added standalone E2E tests for all command families (string, hash, list, set, sorted set). * Added concurrency stress tests (50+ threads, submit-after-destroy, multi-multiplexer distribution). ## 0.5.0.0 -- 2026-02-05 * **Major Feature: Redis Cluster Support** * Implemented full cluster support including topology management, connection pooling, and slot routing. * Added smart routing with automatic `MOVED` and `ASK` redirection handling. * Updated `fill`, `cli`, and `tunnel` modes to work seamlessly with Redis Cluster. * Added "Pinned Proxy" mode to support specific cluster proxy configurations. * Fixed hostname rewriting for cluster nodes in tunnel mode. * **Infrastructure & Testing** * Added comprehensive End-to-End (E2E) tests for Cluster scenarios (Basic, Fill, Tunnel, CLI). * Updated build system to prefer `nix-build` and `make test`. * Added GitHub Actions workflows for automated testing and bootstrapping. * **Fill Operation Enhancements** * Added configurable `--key-size` and `--value-size` support for realistic workload simulation. * Added `--pipeline` configuration for explicit batch size control. * Removed `REDIS_CLIENT_FILL_CHUNK_KB` environment variable in favor of explicit flags. * Fixed fill calculation logic to ensure exact data generation matching requested sizes. * **Improvements** * Fixed various race conditions and unsafe head usage. * Improved error handling for `CROSSSLOT` operations. * Refactored codebase for better maintainability (Cluster separation). ## 0.4.0.0 -- 2026-02-02 * **Azure Integration** * Added `azure-redis-connect` python script for Azure Redis Cache discovery and connectivity. * Added support for Entra authentication (username/OID retrieval from JWT). * **Performance Optimization** * Optimized data filling with parallel noise generation strategies. * Optimized connection handling (parallel connections adjustment). * **DevOps** * Added agent testing infrastructure. ## 0.3.0.0 -- 2025-10-15 * **Command Expansion** * Added support for Geo commands. * Expanded standard Redis command set support. * **Build System** * Added `flake.nix` for modern Nix support. * Fixed inefficient store usage in build. * **Testing** * Added tunneling tests. ## 0.2.0.0 -- 2025-03-28 * **New Architectures** * Added "Tunnel mode" for proxying Redis connections. * Added TLS client support. * Added Pipelining support for improved throughput. * **CLI & Usability** * Added argument parsing for the CLI application. * Added support for arrow key navigation in CLI. * Added DNS resolution support. * **Core Improvements** * Refactored RESP parsing logic. * Improved Incremental network reading (State monad refactor). * Added basic E2E testing framework. ## 0.1.0.0 -- 2025-02-11 * First version. * Basic RESP data types. * Simple plaintext client implementation.