What's New
v2.5.0
Release Date: 7/14/2026
Key Features
Client-Wide Circuit Breaker: Introduced a comprehensive per-client circuit breaker system that detects when the GLIDE core is unhealthy and proactively rejects requests synchronously at the FFI boundary. Enhanced with structured timeout diagnostics and watchdog-informed recovery mechanisms to prevent thread parking and improve overall client resilience.
Python Async Performance Enhancement: Completely overhauled the Python async client architecture by replacing UDS (Unix Domain Socket) and protobuf transport with direct FFI requests and unnamed pipes for responses, delivering significant performance improvements and reduced latency.
Custom Socket Address Resolution: Added comprehensive support for custom socket address resolution when connecting to Valkey across all client languages, providing greater flexibility for complex network configurations and deployment scenarios.
Comprehensive New Command Support: Added new commands with full multi-language implementation:
- Migration:
MIGRATEsingle-key and multi-key variants - Connection Management:
RESET,CLIENT PAUSE,CLIENT UNPAUSE - Client-Side Caching:
CLIENT CACHING,CLIENT TRACKING,CLIENT TRACKINGINFO - Monitoring:
MONITORwith dedicated MonitorClient - Database Operations:
SAVE,BGSAVE,BGREWRITEAOF - Replication:
REPLICAOF,FAILOVER - Performance Monitoring:
LATENCY HISTORY,LATENCY LATEST,LATENCY RESET - Memory Management:
MEMORY DOCTOR,MEMORY MALLOC-STATS,MEMORY PURGE,MEMORY STATS
Enhanced TLS Performance: Fixed critical TLS connection performance regression by optimizing initial connection handling and implementing per-process certificate caching, eliminating timeouts in multi-client and multi-process deployments.
Advanced Client-Side Caching: Implemented Phase 2 server-assisted invalidation via CLIENT TRACKING with comprehensive support across all client languages, enabling efficient cache invalidation strategies.
Improved Core Reliability: Enhanced connection management with circular MOVED handling, TCP deadlock fixes for large payloads, topology refresh improvements, and liveness-aware pipeline send-timeout mechanisms.
Enterprise-Grade Observability: Added structured timeout diagnostics that classify timeout causes and provide actionable corrective recommendations, along with dedicated timeout watchdog threads independent of Tokio runtime for improved debugging and monitoring capabilities.
Go OpenTelemetry Enhancement: Added support for connecting GLIDE command and batch spans to an application's existing OpenTelemetry trace context through OpenTelemetry.SetSpanContextExtractor, letting applications propagate active trace context from context.Context without adding a direct go.opentelemetry.io/otel dependency to the Go SDK.
Go Valkey Search Server Module Package: Refactored Valkey Search (FT) commands into a standalone glideft server module package, decoupling search functionality from client internals and establishing a scalable pattern for future server module support.
What's Changed
- Enable PeriodicCheck parameter for Go Client in AdvancedClusterClient Configuration by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/5839
- Java: Make jedis-compatibility a pure-Java JAR with no-classifier support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5649
- Support custom socket address resolution by @tavomaciel in https://github.com/valkey-io/valkey-glide/pull/5328
- fix(glide-core): fall back to existing connections when initial nodes are unavailable during toplogy refresh by @jduo in https://github.com/valkey-io/valkey-glide/pull/5857
- Go: Refactor
ftcommands into aglideftpackage by @edlng in https://github.com/valkey-io/valkey-glide/pull/5855 - Go: Create common client interfaces by @prateek-kumar-improving in https://github.com/valkey-io/valkey-glide/pull/5862
- fix(node): accept pointer as single i64 to prevent 64-bit truncation by @jduo in https://github.com/valkey-io/valkey-glide/pull/5874
- Isolate flaky workflows and tests by @Aryex in https://github.com/valkey-io/valkey-glide/pull/5808
- fix(go): Update docs after FT module refactor by @edlng in https://github.com/valkey-io/valkey-glide/pull/5881
- Python: Optimize cache metrics retrieval to be synchronous (#5772) by @shohamazon in https://github.com/valkey-io/valkey-glide/pull/5856
- fix: java workflow correctly skips container tests on windows only and moved start time by @Aryex in https://github.com/valkey-io/valkey-glide/pull/5882
- Python: Support custom socket address resolution by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5876
- Fix TCP deadlock in MultiplexedConnection with large payloads by @ranshid in https://github.com/valkey-io/valkey-glide/pull/5892
- fix(node): allow protobufjs build scripts in pnpm test by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5899
- Compression Bugfixes by @alexr-bq in https://github.com/valkey-io/valkey-glide/pull/5895
- Update README with up-to-date information by @Aryex in https://github.com/valkey-io/valkey-glide/pull/5941
- Core: Propagate per-command response timeout to multiplexed connection by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/5916
- Cherry pick #5952 to main: Java: Add a synchronous check on inflight request limits before submitting tasks by @jduo in https://github.com/valkey-io/valkey-glide/pull/5976
- Core: Add dedicated timeout watchdog thread independent of Tokio runtime by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/5917
- docs: add documentation update reminder to PR template and contributing guide by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5943
- Node: Support custom socket address resolution when connecting to valkey by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5890
- Go: Support custom socket address resolution by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5891
- Python: Fix sync client FFI signature mismatch for address resolver by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6013
- Python: Include _fast_response extension in glide-sync wheel by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6015
- Implement connection refresh on circular moved by @alexr-bq in https://github.com/valkey-io/valkey-glide/pull/5893
- Node.js: Add MIGRATE command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5934
- Go: Add MIGRATE command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5935
- Core: Phase 2 client-side caching - server-assisted invalidation via CLIENT TRACKING by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5962
- Python: Add MIGRATE command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5933
- Core: track post-RESET connection state in handle_reset_command by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5959
- Python: Add RESET command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5944
- Node.js: Add RESET command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5945
- Core/FFI: MonitorClient for MONITOR command by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5977
- fix(ci): Update
valkey-bundleimage to a stable version by @edlng in https://github.com/valkey-io/valkey-glide/pull/6049 - Java: Add RESET command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5947
- Go: Add RESET command support by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5946
- Commit lock files by @fenichelar in https://github.com/valkey-io/valkey-glide/pull/5859
- feat(jedis-compatibility): standalone JedisPool parity (broken resour… by @prashanna-frsh in https://github.com/valkey-io/valkey-glide/pull/5793
- fix(core): avoid panic on cluster scan with AZ affinity read strategy by @SAY-5 in https://github.com/valkey-io/valkey-glide/pull/5936
- Update/review prs.md comment resolving policy by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6061
- changelog: add Go and Java RESET command support entries by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6067
- Java: Skip AZ affinity tests on Windows due to zero replicas by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6128
- fix(build): fix Makefile issues across Go and root targets by @currantw in https://github.com/valkey-io/valkey-glide/pull/6143
- FFI: Enable client-side caching support on the URI API by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5860
- feat(client): Add
CLIENT PAUSEandCLIENT UNPAUSEcommands by @currantw in https://github.com/valkey-io/valkey-glide/pull/6068 - Fix PubSub test timeouts on Windows CI (#6085, #6088) by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6090
- go: apply gofumpt and golines formatting by @sdg3iv in https://github.com/valkey-io/valkey-glide/pull/6051
- docs: fix
CHANGELOGformatting and consistency by @currantw in https://github.com/valkey-io/valkey-glide/pull/6142 - Pin all GitHub Actions by @fenichelar in https://github.com/valkey-io/valkey-glide/pull/5987
- Java: Add support for
SAVE,BGSAVE,BGREWRITEAOFcommands by @currantw in https://github.com/valkey-io/valkey-glide/pull/6165 - fix(core): honor AWS_ENDPOINT_URL_STS in IAM credentials-provider loader by @edwardpark97 in https://github.com/valkey-io/valkey-glide/pull/5968
- Java: Add multi-key MIGRATE support to standalone client by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6063
- Java: Add Checkstyle to Java lint pipeline by @yunhwane in https://github.com/valkey-io/valkey-glide/pull/5687
- Replace unmaintained iai-callgrind with gungraun by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/6209
- Core, Java, Python, Node, Go: Add client-wide circuit breaker by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/6050
- Go: Add MEMORY DOCTOR / MEMORY MALLOC-STATS / MEMORY PURGE / MEMORY STATS commands by @sdg3iv in https://github.com/valkey-io/valkey-glide/pull/5986
- Core: make pipeline send-timeout liveness-aware (#5446) by @khaeransori in https://github.com/valkey-io/valkey-glide/pull/6136
- Java: Add failover and ReplicaOf command by @prateek-kumar-improving in https://github.com/valkey-io/valkey-glide/pull/6170
- Update CD workflows to be consistent across all clients, add pre-publish smoke tests, and better AWS_ACTION gates by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6062
- Add
SAVE,BGSAVE,BGREWRITEAOFcommands (Node, Python, Go) by @currantw in https://github.com/valkey-io/valkey-glide/pull/6188 - fix(ffi): avoid heap corruption in convert_vec_to_pointer by @jduo in https://github.com/valkey-io/valkey-glide/pull/6225
- chore: temporarily allow pyo3 advisory pending version bump by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6228
- Core: Extend timeout watchdog with structured diagnostics by @jduo in https://github.com/valkey-io/valkey-glide/pull/6044
- chore(python): upgrade pyo3 from 0.25 to 0.29 by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6238
- Python: Change async client to use FFI for requests and unnamed pipe for responses instead of UDS for both by @jduo in https://github.com/valkey-io/valkey-glide/pull/5637
- [Java] Remove inaccurate JVM-heap OpenTelemetry memory-leak tests by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6119
- Go: Add LATENCY HISTORY / LATENCY LATEST / LATENCY RESET commands by @jagathprabhu in https://github.com/valkey-io/valkey-glide/pull/5958
- Docs: Update Python documentation URL by @xm4dn355x in https://github.com/valkey-io/valkey-glide/pull/6223
- feat(go): support external OpenTelemetry span context by @lwojciechowski in https://github.com/valkey-io/valkey-glide/pull/6003
- fix(python): pin pytest<9.1 to fix fixture finalizer assertion errors by @jduo in https://github.com/valkey-io/valkey-glide/pull/6268
- Java: implement MONITOR command by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6187
- Python: Add missing dependency for python async by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6256
- deps(node): fix transitive dev-only advisories in node/ and examples/node/ (js-yaml, markdown-it, @babel/core, minimatch) by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6277
- Node, Python, GO: Add failover and replicaOf commands by @prateek-kumar-improving in https://github.com/valkey-io/valkey-glide/pull/6222
- deps(node): bump protobufjs to ^7.6.3 (CVE-2026-48712, CVE-2026-54269) by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6274
- Node: Add GlideMonitorClient for MONITOR command by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6212
- Python: implement MONITOR command for sync and async clients by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6132
- Core: Use watchdog diagnostics to inform CB recovery by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/6240
- Go: Add MonitorClient for MONITOR command by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6211
- perf(java): optimize memory consumption of GlideString validation by @yeoncheol-jang in https://github.com/valkey-io/valkey-glide/pull/6196
- CI: Add self-hosted x86 Linux runners by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6184
- Java: Phase 2 client-side caching - serverAssisted field and clientTrackingInfo by @affonsov in https://github.com/valkey-io/valkey-glide/pull/5965
- Node: Add MIGRATE KEYS (multi-key) variant by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6064
- Add
LATENCY HISTORY,LATEST, andRESETcommand support by @currantw in https://github.com/valkey-io/valkey-glide/pull/6257 - Python: Add MIGRATE KEYS (multi-key) variant by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6066
- CI/CD workflow extraction of shared actions that other repos can use by @alexr-bq in https://github.com/valkey-io/valkey-glide/pull/6218
- Node: Improve performance of Client initial connection with TLS by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6219
- Changelog: Add missing changelog entris for multi-key MIGRATE and monitor by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6185
- fix(python): use response_buffer.nbytes for buffer GET capacity by @omerrubi-amzn in https://github.com/valkey-io/valkey-glide/pull/6311
- fix(node): use only primary address in Static mode write test by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/5997
- dev(python): add
cleancommand todev.pyby @currantw in https://github.com/valkey-io/valkey-glide/pull/6320 - Python: fix MonitorClient trio compatibility via anyio by @affonsov in https://github.com/valkey-io/valkey-glide/pull/6327
- perf(python): optimize test client pooling and pubsub teardown by @jduo in https://github.com/valkey-io/valkey-glide/pull/6335
- Add MEMORY commands, remove LATENCY/MEMORY batch support (Java, Python, Node, Go) by @currantw in https://github.com/valkey-io/valkey-glide/pull/6307
- test(ffi): add native-memory leak regression tests for OpenTelemetry spans by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6227
- fix: suppress false-positive response-wait warnings for blocking commands by @mvanhorn in https://github.com/valkey-io/valkey-glide/pull/6291
- [CI] Add retry logic to cargo-zigbuild install by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6313
- Client-side caching: add
serverAssistedconfig andCLIENT TRACKINGINFOcommand (Node, Python, Go, Java) by @currantw in https://github.com/valkey-io/valkey-glide/pull/6344 - GO: Add migrate commands support for multiple keys by @prateek-kumar-improving in https://github.com/valkey-io/valkey-glide/pull/6293
- fix(python): trio backend race condition and asyncio.sleep() usages by @Aryex in https://github.com/valkey-io/valkey-glide/pull/6308
- Python: Fix pubsub pipe head-of-line blocking and add lifecycle tests by @jduo in https://github.com/valkey-io/valkey-glide/pull/6321
- build(deps): update anyhow to 1.0.103 to fix RUSTSEC-2026-0190 (#6364) by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6382
- cherry-pick: Fix python and node release workflows (#6363) by @Aryex in https://github.com/valkey-io/valkey-glide/pull/6387
New Contributors
- @tavomaciel made their first contribution in https://github.com/valkey-io/valkey-glide/pull/5328
- @ranshid made their first contribution in https://github.com/valkey-io/valkey-glide/pull/5892
- @SAY-5 made their first contribution in https://github.com/valkey-io/valkey-glide/pull/5936
- @sdg3iv made their first contribution in https://github.com/valkey-io/valkey-glide/pull/6051
- @edwardpark97 made their first contribution in https://github.com/valkey-io/valkey-glide/pull/5968
- @yunhwane made their first contribution in https://github.com/valkey-io/valkey-glide/pull/5687
- @khaeransori made their first contribution in https://github.com/valkey-io/valkey-glide/pull/6136
- @jagathprabhu made their first contribution in https://github.com/valkey-io/valkey-glide/pull/5958
- @xm4dn355x made their first contribution in https://github.com/valkey-io/valkey-glide/pull/6223
- @lwojciechowski made their first contribution in https://github.com/valkey-io/valkey-glide/pull/6003
- @mvanhorn made their first contribution in https://github.com/valkey-io/valkey-glide/pull/6291
Full Changelog: https://github.com/valkey-io/valkey-glide/compare/v2.4.2...v2.5.0
Release: https://github.com/valkey-io/valkey-glide/releases/tag/v2.5.0
v2.4.2
Release Date: 6/26/2026
What's Changed
- Core: Improve performance of Client initial connection with TLS (#6219) by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6316
Full Changelog: https://github.com/valkey-io/valkey-glide/compare/v2.4.1...v2.4.2
Release: https://github.com/valkey-io/valkey-glide/releases/tag/v2.4.2
v2.4.1
Release Date: 5/29/2026
What's Changed
- Backport #5916 to release 2.4: Core: Propagate per-command response timeout to multiplexed connection by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/5991
- Backport of #5917 to release 2.4: Core: Add dedicated timeout watchdog thread independent of Tokio runtime by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/5993
- Cherry-pick of #5952 to release 2.4: Java: Add a synchronous check on inflight request limits before submitting tasks by @jeremyprime in https://github.com/valkey-io/valkey-glide/pull/5992
- Cherry pick #6015 to release-2.4: Python: Include _fast_response extension in glide-sync wheel by @xShinnRyuu in https://github.com/valkey-io/valkey-glide/pull/6020
- Implement connection refresh on circular moved (#5893) by @jamesx-improving in https://github.com/valkey-io/valkey-glide/pull/6023
Full Changelog: https://github.com/valkey-io/valkey-glide/compare/v2.4.0...v2.4.1
Release: https://github.com/valkey-io/valkey-glide/releases/tag/v2.4.1