From f8ef905699c408d4e3f696d639c554735c940cd0 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Thu, 16 Jul 2026 10:25:15 +0900 Subject: [PATCH 1/9] Deprecate remaining Server, Cluster, Client, and Connection Commands --- .../api/async/RedisClusterAsyncCommands.java | 2 ++ .../RedisClusterReactiveCommands.java | 2 ++ .../api/sync/BaseNodeSelectionCommands.java | 2 ++ .../api/sync/NodeSelectionServerCommands.java | 2 ++ .../api/sync/RedisClusterCommands.java | 2 ++ .../lettuce/core/protocol/CommandKeyword.java | 18 +++++++++++++++-- .../io/lettuce/core/protocol/CommandType.java | 20 +++++++++++++++++-- .../api/sync/RedisSentinelCommands.java | 2 ++ .../coroutines/BaseRedisCoroutinesCommands.kt | 2 ++ 9 files changed, 48 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/lettuce/core/cluster/api/async/RedisClusterAsyncCommands.java b/src/main/java/io/lettuce/core/cluster/api/async/RedisClusterAsyncCommands.java index 82b691c56c..03565aa52e 100644 --- a/src/main/java/io/lettuce/core/cluster/api/async/RedisClusterAsyncCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/async/RedisClusterAsyncCommands.java @@ -359,7 +359,9 @@ public interface RedisClusterAsyncCommands * Get array of cluster slots to node mappings. * * @return RedisFuture<List<Object>> array-reply nested list of slot ranges with IP/Port mappings. + * @deprecated since 7.7, use {@link #clusterShards()} instead. */ + @Deprecated RedisFuture> clusterSlots(); /** diff --git a/src/main/java/io/lettuce/core/cluster/api/reactive/RedisClusterReactiveCommands.java b/src/main/java/io/lettuce/core/cluster/api/reactive/RedisClusterReactiveCommands.java index 473bbbee46..9a0b83252a 100644 --- a/src/main/java/io/lettuce/core/cluster/api/reactive/RedisClusterReactiveCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/reactive/RedisClusterReactiveCommands.java @@ -359,7 +359,9 @@ public interface RedisClusterReactiveCommands * Get array of cluster slots to node mappings. * * @return List<Object> array-reply nested list of slot ranges with IP/Port mappings. + * @deprecated since 7.7, use {@link #clusterShards()} instead. */ + @Deprecated Flux clusterSlots(); /** diff --git a/src/main/java/io/lettuce/core/cluster/api/sync/BaseNodeSelectionCommands.java b/src/main/java/io/lettuce/core/cluster/api/sync/BaseNodeSelectionCommands.java index a439e86128..84c1d6c6b7 100644 --- a/src/main/java/io/lettuce/core/cluster/api/sync/BaseNodeSelectionCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/sync/BaseNodeSelectionCommands.java @@ -135,7 +135,9 @@ public interface BaseNodeSelectionCommands { * release resources. * * @return String simple-string-reply always OK. + * @deprecated since 7.7, use {@link io.lettuce.core.api.StatefulConnection#close()} instead. */ + @Deprecated Executions quit(); /** diff --git a/src/main/java/io/lettuce/core/cluster/api/sync/NodeSelectionServerCommands.java b/src/main/java/io/lettuce/core/cluster/api/sync/NodeSelectionServerCommands.java index 03c8967115..b00a574b76 100644 --- a/src/main/java/io/lettuce/core/cluster/api/sync/NodeSelectionServerCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/sync/NodeSelectionServerCommands.java @@ -96,7 +96,9 @@ public interface NodeSelectionServerCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated Executions clientKill(String addr); /** diff --git a/src/main/java/io/lettuce/core/cluster/api/sync/RedisClusterCommands.java b/src/main/java/io/lettuce/core/cluster/api/sync/RedisClusterCommands.java index c7d0ea398c..5ff92b36bb 100644 --- a/src/main/java/io/lettuce/core/cluster/api/sync/RedisClusterCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/sync/RedisClusterCommands.java @@ -357,7 +357,9 @@ public interface RedisClusterCommands extends BaseRedisCommands, Red * Get array of cluster slots to node mappings. * * @return List<Object> array-reply nested list of slot ranges with IP/Port mappings. + * @deprecated since 7.7, use {@link #clusterShards()} instead. */ + @Deprecated List clusterSlots(); /** diff --git a/src/main/java/io/lettuce/core/protocol/CommandKeyword.java b/src/main/java/io/lettuce/core/protocol/CommandKeyword.java index 23fa69231a..390bb92cc8 100644 --- a/src/main/java/io/lettuce/core/protocol/CommandKeyword.java +++ b/src/main/java/io/lettuce/core/protocol/CommandKeyword.java @@ -47,9 +47,23 @@ IDMP, IDMPAUTO, IDMP_DURATION("IDMP-DURATION"), IDMP_MAXSIZE( RE, REFCOUNT, REMOVE, RELOAD, REPLACE, REDIRECT, REPLICATE, REPLICAS, REV, RESET, RESETCHANNELS, RESETKEYS, RESETPASS, - RESETSTAT, RESTART, RETRYCOUNT, REWRITE, RIGHT, SAVECONFIG, SDSLEN, SETINFO, SETNAME, SETSLOT, SHARDS, SLOTS, STABLE, + RESETSTAT, RESTART, RETRYCOUNT, REWRITE, RIGHT, SAVECONFIG, SDSLEN, SETINFO, SETNAME, SETSLOT, SHARDS, - MIGRATING, IMPORTING, SAVE, SKIPME, SLAVES, STREAM, STORE, SUM, SEGFAULT, SETUSER, TAKEOVER, TRACKING, MAINT_NOTIFICATIONS, TRACKINGINFO, TYPE, UNBLOCK, USED, USERS, USAGE, WEIGHTS, WHOAMI, + /** + * @deprecated since 7.7, use {@link #SHARDS} instead. + */ + @Deprecated + SLOTS, + + STABLE, MIGRATING, IMPORTING, SAVE, SKIPME, + + /** + * @deprecated since 7.7, use {@link #REPLICAS} instead. + */ + @Deprecated + SLAVES, + + STREAM, STORE, SUM, SEGFAULT, SETUSER, TAKEOVER, TRACKING, MAINT_NOTIFICATIONS, TRACKINGINFO, TYPE, UNBLOCK, USED, USERS, USAGE, WEIGHTS, WHOAMI, WITHMATCHLEN, WITHSCORE, WITHSCORES, WITHVALUES, XOR, XX, FXX, YES, INDENT, NEWLINE, SPACE, GT, LT, diff --git a/src/main/java/io/lettuce/core/protocol/CommandType.java b/src/main/java/io/lettuce/core/protocol/CommandType.java index 1adb5773a1..f18f799034 100644 --- a/src/main/java/io/lettuce/core/protocol/CommandType.java +++ b/src/main/java/io/lettuce/core/protocol/CommandType.java @@ -39,11 +39,27 @@ public enum CommandType implements ProtocolKeyword { // Connection - ECHO, HELLO, PING, QUIT, READONLY, READWRITE, SELECT, SWAPDB, + ECHO, HELLO, PING, + + /** + * @deprecated since 7.7, use connection closing instead. + */ + @Deprecated + QUIT, + + READONLY, READWRITE, SELECT, SWAPDB, // Server - BGREWRITEAOF, BGSAVE, CLIENT, COMMAND, CONFIG, DBSIZE, DEBUG, FLUSHALL, FLUSHDB, HOTKEYS, INFO, MYID, MYSHARDID, LASTSAVE, REPLICAOF, ROLE, MONITOR, SAVE, SHUTDOWN, SLAVEOF, SLOWLOG, SYNC, MEMORY, + BGREWRITEAOF, BGSAVE, CLIENT, COMMAND, CONFIG, DBSIZE, DEBUG, FLUSHALL, FLUSHDB, HOTKEYS, INFO, MYID, MYSHARDID, LASTSAVE, REPLICAOF, ROLE, MONITOR, SAVE, SHUTDOWN, + + /** + * @deprecated since 7.7, use {@link #REPLICAOF} instead. + */ + @Deprecated + SLAVEOF, + + SLOWLOG, SYNC, MEMORY, // Keys diff --git a/src/main/java/io/lettuce/core/sentinel/api/sync/RedisSentinelCommands.java b/src/main/java/io/lettuce/core/sentinel/api/sync/RedisSentinelCommands.java index a15c47ed05..7ab9daea60 100644 --- a/src/main/java/io/lettuce/core/sentinel/api/sync/RedisSentinelCommands.java +++ b/src/main/java/io/lettuce/core/sentinel/api/sync/RedisSentinelCommands.java @@ -157,7 +157,9 @@ public interface RedisSentinelCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated String clientKill(String addr); /** diff --git a/src/main/kotlin/io/lettuce/core/api/coroutines/BaseRedisCoroutinesCommands.kt b/src/main/kotlin/io/lettuce/core/api/coroutines/BaseRedisCoroutinesCommands.kt index 3292aaf922..97a1d23d35 100644 --- a/src/main/kotlin/io/lettuce/core/api/coroutines/BaseRedisCoroutinesCommands.kt +++ b/src/main/kotlin/io/lettuce/core/api/coroutines/BaseRedisCoroutinesCommands.kt @@ -154,7 +154,9 @@ interface BaseRedisCoroutinesCommands { * release resources. * * @return String simple-string-reply always OK. + * */ + @Deprecated("Use StatefulConnection.close() instead.") suspend fun quit(): String? /** From 8f97b08facb4fe07c40bfe2cd7066cb8919691b8 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Thu, 16 Jul 2026 16:10:45 +0900 Subject: [PATCH 2/9] Formatting --- src/main/java/io/lettuce/core/protocol/CommandType.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/io/lettuce/core/protocol/CommandType.java b/src/main/java/io/lettuce/core/protocol/CommandType.java index f18f799034..550ecc92c8 100644 --- a/src/main/java/io/lettuce/core/protocol/CommandType.java +++ b/src/main/java/io/lettuce/core/protocol/CommandType.java @@ -56,7 +56,7 @@ public enum CommandType implements ProtocolKeyword { /** * @deprecated since 7.7, use {@link #REPLICAOF} instead. */ - @Deprecated + @Deprecated SLAVEOF, SLOWLOG, SYNC, MEMORY, From a7c03f2a5307288fe8e50cb539b0dbf7f8909931 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Sat, 18 Jul 2026 09:34:56 +0900 Subject: [PATCH 3/9] fix: remove @Deprecated from protocol enums based on feedback --- .../lettuce/core/protocol/CommandKeyword.java | 18 ++--------------- .../io/lettuce/core/protocol/CommandType.java | 20 ++----------------- 2 files changed, 4 insertions(+), 34 deletions(-) diff --git a/src/main/java/io/lettuce/core/protocol/CommandKeyword.java b/src/main/java/io/lettuce/core/protocol/CommandKeyword.java index 390bb92cc8..44878af77d 100644 --- a/src/main/java/io/lettuce/core/protocol/CommandKeyword.java +++ b/src/main/java/io/lettuce/core/protocol/CommandKeyword.java @@ -47,23 +47,9 @@ IDMP, IDMPAUTO, IDMP_DURATION("IDMP-DURATION"), IDMP_MAXSIZE( RE, REFCOUNT, REMOVE, RELOAD, REPLACE, REDIRECT, REPLICATE, REPLICAS, REV, RESET, RESETCHANNELS, RESETKEYS, RESETPASS, - RESETSTAT, RESTART, RETRYCOUNT, REWRITE, RIGHT, SAVECONFIG, SDSLEN, SETINFO, SETNAME, SETSLOT, SHARDS, + RESETSTAT, RESTART, RETRYCOUNT, REWRITE, RIGHT, SAVECONFIG, SDSLEN, SETINFO, SETNAME, SETSLOT, SHARDS, SLOTS, STABLE, MIGRATING, IMPORTING, SAVE, SKIPME, - /** - * @deprecated since 7.7, use {@link #SHARDS} instead. - */ - @Deprecated - SLOTS, - - STABLE, MIGRATING, IMPORTING, SAVE, SKIPME, - - /** - * @deprecated since 7.7, use {@link #REPLICAS} instead. - */ - @Deprecated - SLAVES, - - STREAM, STORE, SUM, SEGFAULT, SETUSER, TAKEOVER, TRACKING, MAINT_NOTIFICATIONS, TRACKINGINFO, TYPE, UNBLOCK, USED, USERS, USAGE, WEIGHTS, WHOAMI, + SLAVES, STREAM, STORE, SUM, SEGFAULT, SETUSER, TAKEOVER, TRACKING, MAINT_NOTIFICATIONS, TRACKINGINFO, TYPE, UNBLOCK, USED, USERS, USAGE, WEIGHTS, WHOAMI, WITHMATCHLEN, WITHSCORE, WITHSCORES, WITHVALUES, XOR, XX, FXX, YES, INDENT, NEWLINE, SPACE, GT, LT, diff --git a/src/main/java/io/lettuce/core/protocol/CommandType.java b/src/main/java/io/lettuce/core/protocol/CommandType.java index 550ecc92c8..1adb5773a1 100644 --- a/src/main/java/io/lettuce/core/protocol/CommandType.java +++ b/src/main/java/io/lettuce/core/protocol/CommandType.java @@ -39,27 +39,11 @@ public enum CommandType implements ProtocolKeyword { // Connection - ECHO, HELLO, PING, - - /** - * @deprecated since 7.7, use connection closing instead. - */ - @Deprecated - QUIT, - - READONLY, READWRITE, SELECT, SWAPDB, + ECHO, HELLO, PING, QUIT, READONLY, READWRITE, SELECT, SWAPDB, // Server - BGREWRITEAOF, BGSAVE, CLIENT, COMMAND, CONFIG, DBSIZE, DEBUG, FLUSHALL, FLUSHDB, HOTKEYS, INFO, MYID, MYSHARDID, LASTSAVE, REPLICAOF, ROLE, MONITOR, SAVE, SHUTDOWN, - - /** - * @deprecated since 7.7, use {@link #REPLICAOF} instead. - */ - @Deprecated - SLAVEOF, - - SLOWLOG, SYNC, MEMORY, + BGREWRITEAOF, BGSAVE, CLIENT, COMMAND, CONFIG, DBSIZE, DEBUG, FLUSHALL, FLUSHDB, HOTKEYS, INFO, MYID, MYSHARDID, LASTSAVE, REPLICAOF, ROLE, MONITOR, SAVE, SHUTDOWN, SLAVEOF, SLOWLOG, SYNC, MEMORY, // Keys From 22fb51fb2b278c1d94d815fb670653560069bab9 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Sat, 18 Jul 2026 10:18:24 +0900 Subject: [PATCH 4/9] chore: regenerate sync command interfaces from templates --- src/main/java/io/lettuce/core/api/sync/BaseRedisCommands.java | 3 +++ .../java/io/lettuce/core/api/sync/RedisServerCommands.java | 2 ++ 2 files changed, 5 insertions(+) diff --git a/src/main/java/io/lettuce/core/api/sync/BaseRedisCommands.java b/src/main/java/io/lettuce/core/api/sync/BaseRedisCommands.java index 67b13f3feb..d44ff23289 100644 --- a/src/main/java/io/lettuce/core/api/sync/BaseRedisCommands.java +++ b/src/main/java/io/lettuce/core/api/sync/BaseRedisCommands.java @@ -32,6 +32,7 @@ * @param Key type. * @param Value type. * @author Mark Paluch + * @author Tihomir Mateev * @author Ali Takavci * @since 4.0 */ @@ -153,7 +154,9 @@ public interface BaseRedisCommands { * release resources. * * @return String simple-string-reply always OK. + * @deprecated since 7.7, use {@link StatefulConnection#close()} instead. */ + @Deprecated String quit(); /** diff --git a/src/main/java/io/lettuce/core/api/sync/RedisServerCommands.java b/src/main/java/io/lettuce/core/api/sync/RedisServerCommands.java index e5f934aa40..560ab1a9bd 100644 --- a/src/main/java/io/lettuce/core/api/sync/RedisServerCommands.java +++ b/src/main/java/io/lettuce/core/api/sync/RedisServerCommands.java @@ -97,7 +97,9 @@ public interface RedisServerCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated String clientKill(String addr); /** From 03390f818ce37a763390692857c1dd44d4b80af7 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Sat, 18 Jul 2026 10:23:02 +0900 Subject: [PATCH 5/9] chore: regenerate async command interfaces from templates --- .../java/io/lettuce/core/api/async/BaseRedisAsyncCommands.java | 2 ++ .../io/lettuce/core/api/async/RedisServerAsyncCommands.java | 2 ++ .../core/sentinel/api/async/RedisSentinelAsyncCommands.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/src/main/java/io/lettuce/core/api/async/BaseRedisAsyncCommands.java b/src/main/java/io/lettuce/core/api/async/BaseRedisAsyncCommands.java index 9d5ee07d43..64d392152e 100644 --- a/src/main/java/io/lettuce/core/api/async/BaseRedisAsyncCommands.java +++ b/src/main/java/io/lettuce/core/api/async/BaseRedisAsyncCommands.java @@ -154,7 +154,9 @@ public interface BaseRedisAsyncCommands { * release resources. * * @return String simple-string-reply always OK. + * @deprecated since 7.7, use {@link StatefulConnection#close()} instead. */ + @Deprecated RedisFuture quit(); /** diff --git a/src/main/java/io/lettuce/core/api/async/RedisServerAsyncCommands.java b/src/main/java/io/lettuce/core/api/async/RedisServerAsyncCommands.java index f8ec645680..5131df8a25 100644 --- a/src/main/java/io/lettuce/core/api/async/RedisServerAsyncCommands.java +++ b/src/main/java/io/lettuce/core/api/async/RedisServerAsyncCommands.java @@ -98,7 +98,9 @@ public interface RedisServerAsyncCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated RedisFuture clientKill(String addr); /** diff --git a/src/main/java/io/lettuce/core/sentinel/api/async/RedisSentinelAsyncCommands.java b/src/main/java/io/lettuce/core/sentinel/api/async/RedisSentinelAsyncCommands.java index 9cb67a06b2..bb3eb6b8b4 100644 --- a/src/main/java/io/lettuce/core/sentinel/api/async/RedisSentinelAsyncCommands.java +++ b/src/main/java/io/lettuce/core/sentinel/api/async/RedisSentinelAsyncCommands.java @@ -158,7 +158,9 @@ public interface RedisSentinelAsyncCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated RedisFuture clientKill(String addr); /** From f0d3dd1d624a817a78c2c93e95a49427ca633659 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Sat, 18 Jul 2026 10:29:45 +0900 Subject: [PATCH 6/9] chore: regenerate reactive command interfaces from templates --- .../io/lettuce/core/api/reactive/BaseRedisReactiveCommands.java | 2 ++ .../lettuce/core/api/reactive/RedisServerReactiveCommands.java | 2 ++ .../sentinel/api/reactive/RedisSentinelReactiveCommands.java | 2 ++ 3 files changed, 6 insertions(+) diff --git a/src/main/java/io/lettuce/core/api/reactive/BaseRedisReactiveCommands.java b/src/main/java/io/lettuce/core/api/reactive/BaseRedisReactiveCommands.java index a887de90cc..53a47f846f 100644 --- a/src/main/java/io/lettuce/core/api/reactive/BaseRedisReactiveCommands.java +++ b/src/main/java/io/lettuce/core/api/reactive/BaseRedisReactiveCommands.java @@ -155,7 +155,9 @@ public interface BaseRedisReactiveCommands { * release resources. * * @return String simple-string-reply always OK. + * @deprecated since 7.7, use {@link StatefulConnection#close()} instead. */ + @Deprecated Mono quit(); /** diff --git a/src/main/java/io/lettuce/core/api/reactive/RedisServerReactiveCommands.java b/src/main/java/io/lettuce/core/api/reactive/RedisServerReactiveCommands.java index 65bfaa3c3d..08d9f4bceb 100644 --- a/src/main/java/io/lettuce/core/api/reactive/RedisServerReactiveCommands.java +++ b/src/main/java/io/lettuce/core/api/reactive/RedisServerReactiveCommands.java @@ -98,7 +98,9 @@ public interface RedisServerReactiveCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated Mono clientKill(String addr); /** diff --git a/src/main/java/io/lettuce/core/sentinel/api/reactive/RedisSentinelReactiveCommands.java b/src/main/java/io/lettuce/core/sentinel/api/reactive/RedisSentinelReactiveCommands.java index 930307058c..774bf703fd 100644 --- a/src/main/java/io/lettuce/core/sentinel/api/reactive/RedisSentinelReactiveCommands.java +++ b/src/main/java/io/lettuce/core/sentinel/api/reactive/RedisSentinelReactiveCommands.java @@ -160,7 +160,9 @@ public interface RedisSentinelReactiveCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated Mono clientKill(String addr); /** From c8f5f512ff49d63241544052d56d3879d38a3c1c Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Tue, 25 Aug 2026 22:55:54 +0900 Subject: [PATCH 7/9] fix: deprecate clientKill(String) across async, sentinel, and coroutine APIs --- .../core/cluster/api/async/BaseNodeSelectionAsyncCommands.java | 2 ++ .../cluster/api/async/NodeSelectionServerAsyncCommands.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/main/java/io/lettuce/core/cluster/api/async/BaseNodeSelectionAsyncCommands.java b/src/main/java/io/lettuce/core/cluster/api/async/BaseNodeSelectionAsyncCommands.java index f7626d33fc..a9fa6bc85e 100644 --- a/src/main/java/io/lettuce/core/cluster/api/async/BaseNodeSelectionAsyncCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/async/BaseNodeSelectionAsyncCommands.java @@ -140,7 +140,9 @@ public interface BaseNodeSelectionAsyncCommands { * release resources. * * @return String simple-string-reply always OK. + * @deprecated since 7.7, use {@link io.lettuce.core.api.StatefulConnection#close()} instead. */ + @Deprecated AsyncExecutions quit(); /** diff --git a/src/main/java/io/lettuce/core/cluster/api/async/NodeSelectionServerAsyncCommands.java b/src/main/java/io/lettuce/core/cluster/api/async/NodeSelectionServerAsyncCommands.java index b98c84c4d1..2db4b08685 100644 --- a/src/main/java/io/lettuce/core/cluster/api/async/NodeSelectionServerAsyncCommands.java +++ b/src/main/java/io/lettuce/core/cluster/api/async/NodeSelectionServerAsyncCommands.java @@ -95,7 +95,9 @@ public interface NodeSelectionServerAsyncCommands { * * @param addr ip:port. * @return String simple-string-reply {@code OK} if the connection exists and has been closed. + * @deprecated since 7.7, use {@link #clientKill(KillArgs)} instead. */ + @Deprecated AsyncExecutions clientKill(String addr); /** From 2e5b02062ab70bd44e1964192a885b62e72cdda9 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Wed, 26 Aug 2026 09:05:26 +0900 Subject: [PATCH 8/9] fix: deprecate clientKill(String) across async, sentinel, and coroutine APIs --- .../core/api/coroutines/RedisServerCoroutinesCommands.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt b/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt index 98daa24890..d4a7e3e640 100644 --- a/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt +++ b/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt @@ -89,7 +89,12 @@ interface RedisServerCoroutinesCommands { * * @param addr ip:port. * @return String simple-string-reply `OK` if the connection exists and has been closed. + * @deprecated since 7.7, use [clientKill(KillArgs)] instead. */ + @Deprecated( + "Use [clientKill(KillArgs)] instead.", + ReplaceWith("clientKill(KillArgs())") + ) suspend fun clientKill(addr: String): String? /** From 0edaf7b91ceb4426abeb85e039a499b45c1032d1 Mon Sep 17 00:00:00 2001 From: juntae6942 Date: Wed, 26 Aug 2026 10:12:16 +0900 Subject: [PATCH 9/9] fix: deprecate clientKill(String) across async, sentinel, and coroutine APIs --- .../core/api/coroutines/RedisServerCoroutinesCommands.kt | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt b/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt index d4a7e3e640..a87af36855 100644 --- a/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt +++ b/src/main/kotlin/io/lettuce/core/api/coroutines/RedisServerCoroutinesCommands.kt @@ -91,10 +91,7 @@ interface RedisServerCoroutinesCommands { * @return String simple-string-reply `OK` if the connection exists and has been closed. * @deprecated since 7.7, use [clientKill(KillArgs)] instead. */ - @Deprecated( - "Use [clientKill(KillArgs)] instead.", - ReplaceWith("clientKill(KillArgs())") - ) + @Deprecated("Use [clientKill(KillArgs)] instead.") suspend fun clientKill(addr: String): String? /**