7.2.1.RELEASE
The Lettuce team is pleased to announce the Lettuce 7.2.1 patch release!
Lettuce 7.2.1 supports Redis 2.6+ up to Redis 8.x. In terms of Java runtime, Lettuce requires at least Java 8 and works with Java 24. The driver is tested against Redis 8.4, Redis 8.2, Redis 8.0, Redis 7.4 and Redis 7.2.
Thanks to all contributors who made Lettuce 7.2.1.RELEASE possible.
📗 Links Reference documentation: https://lettuce.io/core/7.2.1.RELEASE/reference/ Javadoc: https://lettuce.io/core/7.2.1.RELEASE/api/
🐞 Bug Fixes
- Fix command queue corruption on encoding failures (#3443) by @a-TODO-rov in https://github.com/redis/lettuce/pull/3581
Full Changelog: https://github.com/redis/lettuce/compare/7.2.0.RELEASE...7.2.1.RELEASE
7.1.1.RELEASE
The Lettuce team is pleased to announce the Lettuce 7.1.1 service release! This release ships with bugfixes and dependency upgrades.
Lettuce 7 supports Redis 2.6+ up to Redis 8.4. In terms of Java runtime, Lettuce requires at least Java 8 and works with Java 21.
Thanks to all contributors who made Lettuce 7.1.1 possible.
- Reference documentation: https://lettuce.io/core/7.1.1.RELEASE/reference/
- Javadoc: https://lettuce.io/core/7.1.1.RELEASE/api/
- SearchArgs.returnField with alias produces malformed redis command #3528 (7.1.x) by @tishun in https://github.com/redis/lettuce/pull/3534
- Fix command queue corruption on encoding failures (#3443) (7.1.x) by @tishun in https://github.com/redis/lettuce/pull/3562
- Bumping Netty to 4.2.5.Final (7.1.x) by @tishun in https://github.com/redis/lettuce/pull/3537
Full Changelog: https://github.com/redis/lettuce/compare/7.1.0.RELEASE...7.1.1.RELEASE
7.0.1.RELEASE
The Lettuce team is pleased to announce the release of Lettuce 7.0.1!
Lettuce 7.0.1.RELEASE supports Redis 2.6+ up to Redis 8.x and requires Java 8 or newer. The driver is tested against Redis 8.2, 8.0, 7.4, and 7.2.
Thanks to all contributors who made Lettuce 7.0.1.RELEASE possible!
If you need any support, meet Lettuce at
- GitHub Discussions: https://github.com/lettuce-io/lettuce-core/discussions
- Stack Overflow (Questions): https://stackoverflow.com/questions/tagged/lettuce
- Join the chat at https://discord.gg/redis and look for the "Help:Tools Lettuce" channel
- GitHub Issues (Bug reports, feature requests): https://github.com/lettuce-io/lettuce-core/issues
- Documentation: https://lettuce.io/core/7.0.1.RELEASE/reference/
- Javadoc: https://lettuce.io/core/7.0.1.RELEASE/api/
- [Backport] Reduce CPU cycles spent on setting tracing tags by @ggivo in https://github.com/redis/lettuce/pull/3504
- docs: add maintNotificationsConfig to ClientOptions documentation by @ggivo in https://github.com/redis/lettuce/pull/3487
- SearchArgs.returnField with alias produces malformed redis command #3528 (7.0.x) by @a-TODO-rov in https://github.com/redis/lettuce/pull/3538
- Preserve null values when parsing SearchReplies (#3518) by @a-TODO-rov in https://github.com/redis/lettuce/pull/3553
- Fix command queue corruption on encoding failures (#3443) (7.0.x) by @tishun in https://github.com/redis/lettuce/pull/3561
- Bumping Netty to 4.2.5.Final (7.0.x) by @a-TODO-rov in https://github.com/redis/lettuce/pull/3539
Full Changelog: https://github.com/redis/lettuce/compare/7.0.0.RELEASE...7.0.1.RELEASE
6.8.2.RELEASE
The Lettuce team is pleased to announce the Lettuce 6.8.2 service release! This release ships with bugfixes and dependency upgrades.
Lettuce 6 supports Redis 2.6+ up to Redis 8.2. In terms of Java runtime, Lettuce requires at least Java 8 and works with Java 21.
Thanks to all contributors who made Lettuce 6.8.2 possible.
- Reference documentation: https://lettuce.io/core/6.8.2.RELEASE/reference/
- Javadoc: https://lettuce.io/core/6.8.2.RELEASE/api/
- [Backport] Reduce CPU cycles spent on setting tracing tags (#3339) by @ggivo in https://github.com/redis/lettuce/pull/3505
- Preserve null values when parsing SearchReplies (#3518) by @a-TODO-rov in https://github.com/redis/lettuce/pull/3551
- SearchArgs.returnField with alias produces malformed redis command #3… by @a-TODO-rov in https://github.com/redis/lettuce/pull/3550
- Fix command queue corruption on encoding failures (#3443) (6.8.x) by @tishun in https://github.com/redis/lettuce/pull/3560
- Bumping Netty to 4.1.125.Final (6.8.x) by @tishun in https://github.com/redis/lettuce/pull/3535
Full Changelog: https://github.com/redis/lettuce/compare/6.8.1.RELEASE...6.8.2.RELEASE
7.4.0.BETA1
The Lettuce team is pleased to announce the first beta release of Lettuce 7.4.0!
This release introduces Automatic Client-Side Endpoint Failover through the newly added MultiDBClient.
- Automatic Detection: The client monitors the health of all configured Redis endpoints.
- Seamless Failover: If the active endpoint fails, traffic is automatically rerouted to the next healthiest endpoint based on configurable priorities.
- Customizable: Developers can configure endpoints, set priorities, adjust failure sensitivity, and plug in custom health checks or failure detection logic.
Lettuce 7.4.0.BETA1 supports Redis 2.6+ up to Redis 8.x and requires Java 8 or newer. The driver is tested against Redis 8.4, 8.2, 7.4, and 7.2.
We encourage you to try out this beta and provide feedback ahead of the general availability release.
Full Changelog: https://github.com/redis/lettuce/compare/7.2.0.RELEASE...7.4.0.BETA1
We'd like to thank all the contributors who worked on this release! @atakavci, @ggivo, @uglide
7.2.0.RELEASE
The Lettuce team is pleased to announce the Lettuce 7.2.0 minor release!
Lettuce 7.2.0 supports Redis 2.6+ up to Redis 8.x. In terms of Java runtime, Lettuce requires at least Java 8 and works with Java 24. The driver is tested against Redis 8.4, Redis 8.2, Redis 8.0, Redis 7.4 and Redis 7.2.
Thanks to all contributors who made Lettuce 7.2.0.RELEASE possible.
📗 Links Reference documentation: https://lettuce.io/core/7.2.0.RELEASE/reference/ Javadoc: https://lettuce.io/core/7.2.0.RELEASE/api/
⭐ New Features
- Add FT.HYBRID command by @a-TODO-rov in https://github.com/redis/lettuce/pull/3540
- Expose method to add upstream driver libraries to CLIENT SETINFO payload by @viktoriya-kutsarova in https://github.com/redis/lettuce/pull/3542
🐞 Bug Fixes
- SearchArgs.returnField with alias produces malformed redis command #3528 by @tishun in https://github.com/redis/lettuce/pull/3530
- fix consistency with get(int) that returns wrapped DelegateJsonObject/DelegateJsonArray for nested structures by @NeatGuyCoding in https://github.com/redis/lettuce/pull/3464
💡 Other
- Bumping Netty to 4.2.5.Final (main) by @tishun in https://github.com/redis/lettuce/pull/3536
❤️ New Contributors
- @NeatGuyCoding made their first contribution in https://github.com/redis/lettuce/pull/3464
- @viktoriya-kutsarova made their first contribution in https://github.com/redis/lettuce/pull/3542
Full Changelog: https://github.com/redis/lettuce/compare/7.1.0.RELEASE...7.2.0.RELEASE
7.1.0.RELEASE
The Lettuce team is pleased to announce the Lettuce 7.1.0 minor release!
This release provides support for new features that are going to be part of the Redis 8.4 release, such as using the CLAIM parameter in the XREADGROUP command; atomically set multiple string keys and update their expiration withMSETEX and atomic compare-and-set and compare-and-delete for string keys using the extensions of the DIGEST, DELEX and SET commands.
Lettuce 7.1.0 supports Redis 2.6+ up to Redis 8.x. In terms of Java runtime, Lettuce requires at least Java 8 and works with Java 24. The driver is tested against Redis 8.4, Redis 8.2, Redis 8.0, Redis 7.4 and Redis 7.2.
Find the full changelog at the end of this document.
Thanks to all contributors who made Lettuce 7.1.0.RELEASE possible.
📗 Links Reference documentation: https://lettuce.io/core/7.1.0.RELEASE/reference/ Javadoc: https://lettuce.io/core/7.1.0.RELEASE/api/
⭐ New Features
- Add support for XREADGROUP CLAIM arg by @a-TODO-rov in https://github.com/redis/lettuce/pull/3486
- Add support CAS/CAD by @a-TODO-rov in https://github.com/redis/lettuce/pull/3512
- Implement msetex command by @a-TODO-rov in https://github.com/redis/lettuce/pull/3510
🐞 Bug Fixes
- Preserve null values when parsing SearchReplies by @mhyllander in https://github.com/redis/lettuce/pull/3518
- Add official 8.4 to test matrix and make it default by @a-TODO-rov in https://github.com/redis/lettuce/pull/3520
- Fix io_uring class name by @a-TODO-rov in https://github.com/redis/lettuce/pull/3509
- Reduce CPU cycles spent on setting tracing tags by @RohanNagar in https://github.com/redis/lettuce/pull/3339
💡 Other
- N/A
❤️ New Contributors
- @RohanNagar made their first contribution in https://github.com/redis/lettuce/pull/3339
- @mhyllander made their first contribution in https://github.com/redis/lettuce/pull/3518
Full Changelog: https://github.com/redis/lettuce/compare/7.0.0.RELEASE...7.1.0.RELEASE
7.0.0
The Lettuce team is pleased to announce the release of Lettuce 7.0.0!
The release focuses on introducing Maintenance events support functionality, API improvements, and cleanup of deprecated features.
- Maintenance events support for graceful maintenance handling
- Redis Query Engine (RediSearch) in cluster mode - when searching with a cursor the cursor now is sticking to a single node in cluster environments; read operations are spread around the nodes of a cluster in a random manner to avoid bottlenecks;
- Enhanced JSON API with
String-based access to avoid unnecessary conversions - Removal of deprecated APIs and options as part of the major version upgrade
- Upgrading to Netty 4.2
Lettuce 7.0.0.RELEASE supports Redis 2.6+ up to Redis 8.x and requires Java 8 or newer. The driver is tested against Redis 8.2, 8.0, 7.4, and 7.2.
- The KEYS command needs to be keyless (#3341)
- chore: remove usage of deprecated connection methods in command APIs in integration tests (#3328) (#3343)
- Remove deprecated dnsResolver option (#3328) (#3333)
- Remove deprecated
reset()method from Lettuce API and internals (#3395) - Make Utility Class constructor private to enforce noninstantiability (#3266)
- Enable adaptive refresh by default #3249 (#3316)
- ISSUE#3328 - Remove deprecated code from ISSUE#1314 (#3351)
- chore: deprecated withPassword(String) method (#3328) (#3350)
- Remove deprecated Utf8StringCodec class (#3328) (#3389)
- chore: remove deprecated default timeout from AbstractRedisClient (#3328) (#3344)
- chore: remove deprecated ClientOptions#cancelCommandsOnReconnectFailure (#3328) (#3346)
- Search - request/response policies implementation with API overrides (#3465)
- Implement JSON raw return types (#3478)
- Add support for EPSILON and WITHATTRIBS arguments in VSIM command (#3449)
- Add String-based JSON API to avoid unnecessary conversions (#3369) (#3394)
- [Hitless Upgrades] React to maintenance events #3345 (#3354, #3450, #3426)
- Fix cluster scan deadlock (#3448)
- [Hitless Upgrades] Timeouts seen during endpoint re-bind and migrate (#3426)
- Fix a NullPointerException in DelegateJsonObject #3417 (#3418)
- feat: add JSON read-only commands to ReadOnlyCommands (#3462)
- Upgrading to Netty 4.2 (#3405)
- Make search commands truly keyless (#3456)
- Add getCodec method to StatefulConnection (#3444)
- [hitless upgrade] Rename maintenance notification configuration properties (#3450)
- Return name method to ProtocolKeyword public interface. (#3424)
- Refactor JsonValue to Object mapping #3412 (#3413)
- Using non-native transports with SocketOptions should cause an error (#3279)
- GH workflows - fix docs action (#3457)
- Redis Enterprise Maintenance Events: Comprehensive Functional Testing (#3461)
- Remove spellcheck (#3471)
- Fix benchmarks after #3444 (#3476)
- Release Lettuce 7.0.0.BETA2 - update release notes #3454
- Fixing compilation error in benchmark code (#3442)
- docs: Fix various typos in documentation (#3423)
- bump test inra to 8.2.1-pre (#3399)
- Fixing the benchmarks action (#3402)
- Disable flaky test to stabilize the pipeline (#3403)
- Update redis-search.md (#3401)
- Bump kotlin.version from 1.7.21 to 2.0.0 (#2979)
We'd like to thank all the contributors who worked on this release! @Kiminni, @KoKimSS, @The-East-Wind, @a-TODO-rov, @brushmate, @ggivo, @kimsunghyun1995, @mohamed-arafa, @ori0o0p, @thachlp, @tishun, @uglide
Full Changelog: https://github.com/redis/lettuce/compare/6.8.0.RELEASE...7.0.0.RELEASE
7.0.0.BETA2
The Lettuce team is pleased to announce the beta two release of Lettuce 7.0!
The release focuses on introducing Maintenance events support functionality, API improvements, and cleanup of deprecated features.
- Maintenance events support for graceful maintenance handling
- Enhanced JSON API with
String-based access to avoid unnecessary conversions - Removal of deprecated APIs and options as part of the major version upgrade
Lettuce 7.0.0.BETA2 supports Redis 2.6+ up to Redis 8.x and requires Java 8 or newer. The driver is tested against Redis 8.2, 8.0, 7.4, and 7.2.
We encourage you to try out this beta and provide feedback ahead of the general availability release.
- chore: remove usage of deprecated connection methods in command APIs in integration tests (#3328) (#3343)
- Remove deprecated dnsResolver option (#3328) (#3333)
- Remove deprecated
reset()method from Lettuce API and internals (#3395) - Make Utility Class constructor private to enforce noninstantiability (#3266)
- Enable adaptive refresh by default #3249 (#3316)
- ISSUE#3328 - Remove deprecated code from ISSUE#1314 (#3351)
- chore: deprecated withPassword(String) method (#3328) (#3350)
- Remove deprecated Utf8StringCodec class (#3328) (#3389)
- chore: remove deprecated default timeout from AbstractRedisClient (#3328) (#3344)
- chore: remove deprecated ClientOptions#cancelCommandsOnReconnectFailure (#3328) (#3346)
- Add support for EPSILON and WITHATTRIBS arguments in VSIM command (#3449)
- Add String-based JSON API to avoid unnecessary conversions (#3369) (#3394)
- [Hitless Upgrades] React to maintenance events #3345 (#3354)
- [Hitless Upgrades] Timeouts seen during endpoint re-bind and migrate (#3426)
- Fix a NullPointerException in DelegateJsonObject #3417 (#3418)
- [hitless upgrade] Rename maintenance notification configuration properties (#3450)
- Return name method to ProtocolKeyword public interface. (#3424)
- Refactor JsonValue to Object mapping #3412 (#3413)
- Using non-native transports with SocketOptions should cause an error (#3279)
- Release Lettuce 7.0.0.BETA2 - update release notes #3454
- Fixing compilation error in benchmark code (#3442)
- docs: Fix various typos in documentation (#3423)
- bump test inra to 8.2.1-pre (#3399)
- Fixing the benchmarks action (#3402)
- Disable flaky test to stabilize the pipeline (#3403)
- Update redis-search.md (#3401)
- Bump kotlin.version from 1.7.21 to 2.0.0 (#2979)
We'd like to thank all the contributors who worked on this release! @Kiminni, @KoKimSS, @The-East-Wind, @a-TODO-rov, @brushmate, @dependabot[bot], @ggivo, @kimsunghyun1995, @mohamed-arafa, @ori0o0p, @thachlp, @tishun, @uglide, dependabot[bot] and github-action-benchmark
Full Changelog: https://github.com/redis/lettuce/compare/6.8.0.RELEASE...7.0.0.BETA2
7.0.0.BETA1
The Lettuce team is pleased to announce the first beta release of Lettuce 7.0!
The release focuses on introducing hitless upgrades functionality, API improvements, and cleanup of deprecated features.
- Hitless upgrades support for graceful maintenance event handling
- Enhanced JSON API with
String-based access to avoid unnecessary conversions - Removal of deprecated APIs and options as part of the major version upgrade
Lettuce 7.0.0.BETA1 supports Redis 2.6+ up to Redis 8.x and requires Java 8 or newer. The driver is tested against Redis 8.2, 8.0, 7.4, and 7.2.
We encourage you to try out this beta and provide feedback ahead of the general availability release.
- chore: remove usage of deprecated connection methods in command APIs in integration tests (#3328) (#3343)
- Remove deprecated dnsResolver option (#3328) (#3333)
- Remove deprecated
reset()method from Lettuce API and internals (#3395) - Make Utility Class constructor private to enforce noninstantiability (#3266)
- Enable adaptive refresh by default #3249 (#3316)
- ISSUE#3328 - Remove deprecated code from ISSUE#1314 (#3351)
- chore: deprecated withPassword(String) method (#3328) (#3350)
- Remove deprecated Utf8StringCodec class (#3328) (#3389)
- chore: remove deprecated default timeout from AbstractRedisClient (#3328) (#3344)
- chore: remove deprecated ClientOptions#cancelCommandsOnReconnectFailure (#3328) (#3346)
- Add String-based JSON API to avoid unnecessary conversions (#3369) (#3394)
- [Hitless Upgrades] React to maintenance events #3345 (#3354)
- [Hitless Upgrades] Timeouts seen during endpoint re-bind and migrate (#3426)
- Fix a NullPointerException in DelegateJsonObject #3417 (#3418)
- Return name method to ProtocolKeyword public interface. (#3424)
- Refactor JsonValue to Object mapping #3412 (#3413)
- Using non-native transports with SocketOptions should cause an error (#3279)
- bump test inra to 8.2.1-pre (#3399)
- Fixing the benchmarks action (#3402)
- Disable flaky test to stabilize the pipeline (#3403)
- Update redis-search.md (#3401)
- Bump kotlin.version from 1.7.21 to 2.0.0 (#2979)
We'd like to thank all the contributors who worked on this release! @Kiminni, @KoKimSS, @The-East-Wind, @a-TODO-rov, @brushmate, @dependabot[bot], @ggivo, @kimsunghyun1995, @mohamed-arafa, @ori0o0p, @thachlp, @tishun, dependabot[bot] and github-action-benchmark
Full Changelog: https://github.com/redis/lettuce/compare/6.8.0.RELEASE...v7.0.0.BETA1