Changelog History
Page 2
-
v0.18.0 Changes
December 03, 2020๐ Bug Fixes
Don't require tokio for the connection manager (46be86f3)
๐ Make ToRedisArgs and FromRedisValue consistent for booleans
๐ฅ BREAKING CHANGE
๐ bool are now written as 0 and 1 instead of true and false. Parsing a bool still accept true and false so this should not break anything for most users however if you are reading something out that was stored as a bool you may see different results.
๐ Features
-
v0.17.0 Changes
July 29, 2020๐ Fixes and improvements
- โ Added Redis Streams commands (#162)
- โ Added support for zpopmin and zpopmax (#351)
- โ Added TLS support, gated by a feature flag (#305)
- โ Added Debug and Clone implementations to redis::Script (#365)
- โ Added FromStr for ConnectionInfo (#368)
- ๐ Support SCAN methods on async connections (#326)
- โ Removed unnecessary overhead around
Value
conversions (#327) - ๐ Support for Redis 6 auth (#341)
- ๐ BUGFIX: Make aio::Connection Sync again (#321)
- ๐ BUGFIX: Return UnexpectedEof if we try to decode at eof (#322)
- โ Added support to create a connection from a (host, port) tuple (#370)
-
v0.16.0 Changes
May 10, 2020๐ Fixes and improvements
- โฌ๏ธ Reduce dependencies without async IO (#266)
- โ Add an afl fuzz target (#274)
- โก๏ธ Updated to combine 4 and avoid async dependencies for sync-only (#272)
- BREAKING CHANGE: The parser type now only persists the buffer and takes the Read instance in
parse_value
- BREAKING CHANGE: The parser type now only persists the buffer and takes the Read instance in
- Implement a connection manager for automatic reconnection (#278)
- โ Add async-std support ([#281]([https://github.com/mitsuhiko/redis-rs/pull/281))
- ๐ Fix key extraction for some stream commands (#283)
- โ Add asynchronous PubSub support (#287)
๐ฅ Breaking changes
๐ Changes to the
Parser
type (#272)๐ The parser type now only persists the buffer and takes the Read instance in
parse_value
.redis::parse_redis_value
is unchanged and continues to work.Old:
let mut parser = Parser::new(bytes); let result = parser.parse_value();
๐ New:
let mut parser = Parser::new(); let result = parser.pase_value(bytes);
-
v0.15.1 Changes
January 15, 2020๐ Fixes and improvements
- ๐ Fixed the
r2d2
feature (re-added it) ([#265])(https://github.com/mitsuhiko/redis-rs/pull/265)
- ๐ Fixed the
-
v0.15.0 Changes
January 15, 2020๐ Fixes and improvements
- โ Added support for cargo cluster (#239)
-
v0.14.0 Changes
January 08, 2020๐ Fixes and improvements
- ๐ Fix the command verb being sent to redis for
zremrangebyrank
(#240) - Add
get_connection_with_timeout
to Client (#243) - ๐ฅ Breaking change: Add Cmd::get, Cmd::set and remove PipelineCommands (#253)
- Async-ify the API (#232)
- โฌ๏ธ Bump minimal required Rust version to 1.39 (required for the async/await API)
- โ Add async/await examples (#261, #263)
- โ Added support for PSETEX and PTTL commands. (#259)
๐ฅ Breaking changes
โ Add Cmd::get, Cmd::set and remove PipelineCommands (#253)
๐ If you are using pipelines and were importing the
PipelineCommands
trait you can now remove that import and only use theCommands
trait.Old:
use redis::{Commands, PipelineCommands};
๐ New:
use redis::Commands;
- ๐ Fix the command verb being sent to redis for
-
v0.13.0 Changes
October 14, 2019๐ Fixes and improvements
- ๐ฅ Breaking change: rename
parse_async
toparse_redis_value_async
for consistency (ce59cecb). - โ Run clippy over the entire codebase (#238)
- ๐ฅ Breaking change: Make
Script#invoke_async
generic overaio::ConnectionLike
(#242)
๐ฅ BREAKING CHANGES
๐ Rename
parse_async
toparse_redis_value_async
for consistency (ce59cecb).๐ If you used
redis::parse_async
before, you now need to change this toredis::parse_redis_value_async
or import the method under the new name:use redis::parse_redis_value_async
.๐ Make
Script#invoke_async
generic overaio::ConnectionLike
(#242)๐
Script#invoke_async
was changed to be generic overaio::ConnectionLike
in order to support wrapping aSharedConnection
in user code. This required adding a new generic parameter to the method, causing an error when the return type is defined using the turbofish syntax.Old:
redis::Script::new("return ...") .key("key1") .arg("an argument") .invoke_async::<String>()
๐ New:
redis::Script::new("return ...") .key("key1") .arg("an argument") .invoke_async::<_, String>()
- ๐ฅ Breaking change: rename
-
v0.12.0 Changes
August 26, 2019๐ Fixes and improvements
- ๐ฅ Breaking change: Use
dyn
keyword to avoid deprecation warning (#223) - ๐ฅ Breaking change: Update url dependency to v2 (#234)
- ๐ฅ Breaking change: (async) Fix
Script::invoke_async
return type error (#233) - โ Add
GETRANGE
andSETRANGE
commands (#202) - ๐ Fix
SINTERSTORE
wrapper name, it's now correctlysinterstore
(#225) - ๐ Allow running
SharedConnection
with any other runtime (#229) - Reformatted as Edition 2018 code (#235)
๐ฅ BREAKING CHANGES
๐ Use
dyn
keyword to avoid deprecation warning (#223)๐ Rust nightly deprecated bare trait objects. โ This PR adds the
dyn
keyword to all trait objects in order to get rid of the warning. ๐ This bumps the minimal supported Rust version to Rust 1.27.โก๏ธ Update url dependency to v2 (#234)
We updated the
url
dependency to v2. We do expose this on our public API on theredis::parse_redis_url
function. If you depend on that, make sure to also upgrade your direct dependency.(async) Fix Script::invoke_async return type error (#233)
Previously, invoking a script with a complex return type would cause the following error:
Response was of incompatible type: "Not a bulk response" (response was string data('"4b98bef92b171357ddc437b395c7c1a5145ca2bd"'))
This was because the Future returned when loading the script into the database returns the hash of the script, and thus the return type of
String
would not match the intended return type.This commit adds an enum to account for the different Future return types.
- ๐ฅ Breaking change: Use
-
v0.11.0 Changes
July 19, 2019๐ This release includes all fixes & improvements from the two beta releases listed below. ๐ This release contains breaking changes.
๐ Fixes and improvements
- ๐ (async) Fix performance problem for SharedConnection (#222)
-
v0.11.0-beta.2 Changes
July 14, 2019๐ Fixes and improvements
- (async) Don't block the executor from shutting down (#217)