Redis-rs

Latest version: v0.11.1

Safety actively analyzes 688578 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 6

0.22.1

Changes
* Add README attribute to Cargo.toml
* Update LICENSE file / symlink from parent directory


redis-0.22.0
Redis-rs is a high level redis library for Rust and aims to provide
convenient access to all Redis functionality through a very flexible
but low-level API. The crate has recently come under maintainership
by djc and jaymell. Much appreciation and many thanks to mitsuhiko,
badboy, Marwes for their work in building this library over the years! The
new maintainers hope to improve the velocity of bug fixes, new features, and
PR reviews in the coming months.

This release adds various incremental improvements, including
additional convenience commands, improved Cluster APIs, and various other bug
fixes/library improvements.

Although the changes here are incremental, this is a major release due to the
breaking changes listed below.

This release would not be possible without our many wonderful
contributors -- thank you!

Breaking changes
* Box all large enum variants; changes enum signature ([667](https://github.com/redis-rs/redis-rs/pull/667) nihohit)
* Support ACL commands by adding Rule::Other to cover newly defined flags; adds new enum variant ([685](https://github.com/redis-rs/redis-rs/pull/685) garyhai)
* Switch from sha1 to sha1_smol; renames `sha1` feature ([576](https://github.com/redis-rs/redis-rs/pull/576))

Features
* Add support for RedisJSON ([657](https://github.com/redis-rs/redis-rs/pull/657) d3rpp)
* Add support for weights in zunionstore and zinterstore ([641](https://github.com/redis-rs/redis-rs/pull/641) ndd7xv)
* Cluster: Create read_from_replicas option ([635](https://github.com/redis-rs/redis-rs/pull/635) utkarshgupta137)
* Make Direction a public enum to use with Commands like BLMOVE ([646](https://github.com/redis-rs/redis-rs/pull/646) thorbadour)
* Add `ahash` feature for using ahash internally & for redis values ([636](https://github.com/redis-rs/redis-rs/pull/636) utkarshgupta137)
* Add Script::load function ([603](https://github.com/redis-rs/redis-rs/pull/603) zhiburt)
* Add support for OBJECT ([[610]](https://github.com/redis-rs/redis-rs/pull/610) roger)
* Add GETEX and GETDEL support ([582](https://github.com/redis-rs/redis-rs/pull/582) arpandaze)
* Add support for ZMPOP ([605](https://github.com/redis-rs/redis-rs/pull/605) gkorland)

Changes
* Rust 2021 Edition / MSRV 1.59.0
* Fix: Support IPV6 link-local address parsing ([679](https://github.com/redis-rs/redis-rs/pull/679) buaazp)
* Derive Clone and add Deref trait to InfoDict ([661](https://github.com/redis-rs/redis-rs/pull/661) danni-m)
* ClusterClient: add handling for empty initial_nodes, use ClusterParams to store cluster parameters, improve builder pattern ([669](https://github.com/redis-rs/redis-rs/pull/669) utkarshgupta137)
* Implement Debug for MultiplexedConnection & Pipeline ([664](https://github.com/redis-rs/redis-rs/pull/664) elpiel)
* Add support for casting RedisResult to CString ([660](https://github.com/redis-rs/redis-rs/pull/660) nihohit)
* Move redis crate to subdirectory to support multiple crates in project ([465](https://github.com/redis-rs/redis-rs/pull/465) tdyas)
* Stop versioning Cargo.lock ([620](https://github.com/redis-rs/redis-rs/pull/620))
* Auto-implement ConnectionLike for DerefMut ([567](https://github.com/redis-rs/redis-rs/pull/567) holmesmr)
* Return errors from parsing inner items ([608](https://github.com/redis-rs/redis-rs/pull/608))
* Make dns resolution async, in async runtime ([606](https://github.com/redis-rs/redis-rs/pull/606) roger)
* Make async_trait dependency optional ([572](https://github.com/redis-rs/redis-rs/pull/572) kamulos)
* Add username to ClusterClient and ClusterConnection ([596](https://github.com/redis-rs/redis-rs/pull/596) gildaf)

0.21.7

This release addresses bugs related to server response parsing and `MultiPlexedConnection` error handling.

Bug fixes

* Limit parser recursion depth ([724](https://github.com/redis-rs/redis-rs/pull/724)) -- thank you to the [OSS-Fuzz project](https://github.com/google/oss-fuzz) for identifying the [issue](https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=52667#c4).
* Improve MultiplexedConnection Error Handling ([699](https://github.com/redis-rs/redis-rs/pull/699)) -- thank you to kvcache for identifying the issue ([#698](https://github.com/redis-rs/redis-rs/issues/698)) and providing a reproducible example.


redis-0.22.1

0.13.0

**Fixes and improvements**

* **Breaking change:** rename `parse_async` to `parse_redis_value_async` for consistency ([ce59cecb](https://github.com/mitsuhiko/redis-rs/commit/ce59cecb830d4217115a4e74e38891e76cf01474)).
* Run clippy over the entire codebase ([238](https://github.com/mitsuhiko/redis-rs/pull/238))
* **Breaking change:** Make `Scriptinvoke_async` generic over `aio::ConnectionLike` ([242](https://github.com/mitsuhiko/redis-rs/pull/242))

BREAKING CHANGES

Rename `parse_async` to `parse_redis_value_async` for consistency ([ce59cecb](https://github.com/mitsuhiko/redis-rs/commit/ce59cecb830d4217115a4e74e38891e76cf01474)).

If you used `redis::parse_async` before, you now need to change this to `redis::parse_redis_value_async`
or import the method under the new name: `use redis::parse_redis_value_async`.

Make `Scriptinvoke_async` generic over `aio::ConnectionLike` ([242](https://github.com/mitsuhiko/redis-rs/pull/242))

`Scriptinvoke_async` was changed to be generic over `aio::ConnectionLike` in order to support wrapping a `SharedConnection` 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:

rust
redis::Script::new("return ...")
.key("key1")
.arg("an argument")
.invoke_async::<String>()


New:

rust
redis::Script::new("return ...")
.key("key1")
.arg("an argument")
.invoke_async::<_, String>()

0.12.0

**Fixes and improvements**

* **Breaking change:** Use `dyn` keyword to avoid deprecation warning ([223](https://github.com/mitsuhiko/redis-rs/pull/223))
* **Breaking change:** Update url dependency to v2 ([234](https://github.com/mitsuhiko/redis-rs/pull/234))
* **Breaking change:** (async) Fix `Script::invoke_async` return type error ([233](https://github.com/mitsuhiko/redis-rs/pull/233))
* Add `GETRANGE` and `SETRANGE` commands ([202](https://github.com/mitsuhiko/redis-rs/pull/202))
* Fix `SINTERSTORE` wrapper name, it's now correctly `sinterstore` ([225](https://github.com/mitsuhiko/redis-rs/pull/225))
* Allow running `SharedConnection` with any other runtime ([229](https://github.com/mitsuhiko/redis-rs/pull/229))
* Reformatted as Edition 2018 code ([235](https://github.com/mitsuhiko/redis-rs/pull/235))

BREAKING CHANGES

Use `dyn` keyword to avoid deprecation warning ([223](https://github.com/mitsuhiko/redis-rs/pull/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](https://blog.rust-lang.org/2018/06/21/Rust-1.27.html).

Update url dependency to v2 ([234](https://github.com/mitsuhiko/redis-rs/pull/234))

We updated the `url` dependency to v2. We do expose this on our public API on the `redis::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](https://github.com/mitsuhiko/redis-rs/pull/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.

0.11.1

0.11.0

What's Changed
* Up pyo3 by aamalev in https://github.com/aamalev/redis-rs-py/pull/36
* Support tls by aamalev in https://github.com/aamalev/redis-rs-py/pull/13
* types::Codec by aamalev in https://github.com/aamalev/redis-rs-py/pull/37
* Codec::Json by aamalev in https://github.com/aamalev/redis-rs-py/pull/38


**Full Changelog**: https://github.com/aamalev/redis-rs-py/compare/0.10.0...0.11.0

Page 2 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.