valkey-io / valkey-glide

An open source Valkey client library that supports Valkey and Redis open source 6.2, 7.0 and 7.2. Valkey GLIDE is designed for reliability, optimized performance, and high-availability, for Valkey and Redis OSS based applications. GLIDE is a multi language client library, written in Rust with programming language bindings, such as Java and Python
Apache License 2.0
265 stars 55 forks source link

Dependencies in redis-rs and Go lib.rs: Unmainted dependencies are used in redis-rs need to be replaced #2669

Closed avifenesh closed 1 week ago

avifenesh commented 1 week ago

Describe the bug

In redis-rs and lib.rs of go we use two un-miantened dependencies which needs to be replaced. We're using backoff and derivative. Both need to be replaced but including some refactoring in the code itself. derivative can be replaced by fuse and backoff can be replaced by tokio-retry2. tokio-retry2 introduces better capabilities than backoff and can be used to enhance our backoff functionality as well. The changes introduce refactor need, since code change is needed. In general, our exp-backoff needs to be re-considered, it is written in a way that lets the functions internally to decide when to stop trying instead of using the built-in functionality of limiting tries.

Suppressed in https://github.com/valkey-io/valkey-glide/pull/2670

Expected Behavior

Using maintained crates.

Current Behavior

Using non maintained crates.

Reproduction Steps

Remove lines and build.

Possible Solution

As mentioned in the description.

Additional Information/Context

No response

Client version used

1.2rc

Engine type and version

--

OS

--

Language

Rust

Language Version

--

Cluster information

No response

Logs

No response

Other information

No response