This release includes support for RESP3, it should be treated as an alpha. Please note response types change for those using RESP3 - meaning there breaking changes. Today this includes support for the following:
- UnifiedJedis connections
- Jedis connections
- JedisPool
- JedisPooled
- JedisCluster
- JedisSharding
- Pub/Sub on RESP3 (#3388)
- Sharded Pub/Sub (#3396)
- RedisStack support
- ClusterPipeline
- ShardedPipeline (not fully supported)
This release introduces two different ways to enable a RESP3 redis connection, when your redis server supports RESP1.
- One can pass enable RESP3 with a UnifiedJedis connection via:
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.UnifiedJedis;
class DoResp {
public static void main() {
HostAndPort hnp = HostAndPort.from("localhost:6379");
UnifiedJedis c = UnifiedJedis(hnp, DefaultJedisClientConfig.builder().protocol(RedisProtocol.RESP3).build());
c.set("foo", "value!");
c.get("foo");
}
}
- One can pass enable RESP3 with a Jedis connection via:
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.Jedis;
class DoResp {
public static void main() {
HostAndPort hnp = HostAndPort.from("localhost:6379");
Jedis c = Jedis(hnp, DefaultJedisClientConfig.builder().protocol(RedisProtocol.RESP3).build());
c.set("foo", "value!");
c.get("foo");
}
}
Changes
🔥 Breaking Changes
- Remove deprecated interfaces (#3391)
🧰 Maintenance
- Deprecated Sharding/Sharded feature (#3386)
Full Changelog: v5.0.0-alpha1...v5.0.0-alpha2