Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(redis): redis adapter crate #402

Draft
wants to merge 83 commits into
base: feat-adapter-rework
Choose a base branch
from
Draft

Conversation

Totodore
Copy link
Owner

@Totodore Totodore commented Dec 20, 2024

Motivation

Add a redis adapter crate.
Close issue #396.

Solution

The redis adapter crate (named socketioxide-redis) will implement the socketioxide_core::CoreAdapter trait provided with the PR #395.
As there are many pub/sub redis implementation in the rust ecosystem, the crate will be agnostic from the implementation. A simple Driver trait will be available to implement custom redis client crates. By default socketioxide-redis will propose an implementation for :

* Remove Sync bound on adapter error
* Add an AdapterCtr trait to keep state
This will allow adapter implementors to use the `LocalAdapter` as a parent.
This will allow to share errors between nodes.
The parser error is also now a Boxed error in order to have multiple dyn possible implementations;
@Totodore Totodore changed the title feat(redis): Redis adapter crate feat(redis): redis adapter crate Dec 20, 2024
@Totodore Totodore mentioned this pull request Dec 20, 2024
crates/socketioxide-redis/src/lib.rs Fixed Show fixed Hide fixed
crates/socketioxide-redis/src/lib.rs Fixed Show fixed Hide fixed
crates/socketioxide-redis/src/lib.rs Fixed Show fixed Hide fixed
crates/socketioxide-redis/src/lib.rs Fixed Show fixed Hide fixed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant