diff --git a/Cargo.toml b/Cargo.toml index 0c3c4e6..08f826e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,26 +10,32 @@ edition = "2018" keywords = [] categories = [] authors = [ - "Yoshua Wuyts " + "Yoshua Wuyts ", + "Jacob Rothstein " ] -[features] - [dependencies] -async-trait = "0.1.24" -async-std = "1.6.0" -serde = { version = "1.0.114", features = ["rc", "derive"] } +async-trait = "0.1.50" rand = "0.8.3" base64 = "0.13.0" -sha2 = "0.9.1" -hmac = "0.10.1" -serde_json = "1.0.56" -kv-log-macro = "1.0.7" -bincode = "1.3.1" -chrono = { version = "0.4.13", default-features = false, features = ["clock", "serde", "std"] } -anyhow = "1.0.31" -blake3 = "0.3.5" +sha2 = "0.9.5" +hmac = "0.11.0" +serde_json = "1.0.64" +bincode = "1.3.3" +anyhow = "1.0.40" +blake3 = "0.3.8" +async-lock = "2.4.0" +log = "0.4.14" + +[dependencies.serde] +version = "1.0.126" +features = ["rc", "derive"] +[dependencies.chrono] +version = "0.4.19" +default-features = false +features = ["clock", "serde", "std"] -[dev-dependencies] -async-std = { version = "1.6.2", features = ["attributes"] } +[dev-dependencies.async-std] +version = "1.9.0" +features = ["attributes"] diff --git a/README.md b/README.md index ec43bb0..cd0f7eb 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,12 @@ $ cargo add async-session ``` +## Available implementations + +* [async-sqlx-session](https://crates.io/crates/async-sqlx-session) postres & sqlite +* [async-redis-session](https://crates.io/crates/async-redis-session) +* [async-mongodb-session](https://crates.io/crates/async-mongodb-session) + ## Safety This crate uses ``#![deny(unsafe_code)]`` to ensure everything is implemented in 100% Safe Rust. diff --git a/src/lib.rs b/src/lib.rs index cd338a7..4cd276b 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -35,7 +35,7 @@ // #![forbid(unsafe_code, future_incompatible)] // #![deny(missing_debug_implementations, nonstandard_style)] // #![warn(missing_docs, missing_doc_code_examples, unreachable_pub)] -#![forbid(unsafe_code, future_incompatible)] +#![forbid(unsafe_code)] #![deny( missing_debug_implementations, nonstandard_style, @@ -64,7 +64,7 @@ pub use base64; pub use blake3; pub use chrono; pub use hmac; -pub use kv_log_macro as log; +pub use log; pub use serde; pub use serde_json; pub use sha2; diff --git a/src/memory_store.rs b/src/memory_store.rs index 5e96bca..5c747ef 100644 --- a/src/memory_store.rs +++ b/src/memory_store.rs @@ -1,6 +1,6 @@ use crate::{async_trait, log, Result, Session, SessionStore}; -use async_std::sync::{Arc, RwLock}; -use std::collections::HashMap; +use async_lock::RwLock; +use std::{collections::HashMap, sync::Arc}; /// # in-memory session store /// Because there is no external