Deadpool for Diesel Latest Version Unsafe forbidden Rust 1.63+

Deadpool is a dead simple async pool for connections and objects of any type.

This crate implements a deadpool manager for diesel connections.

Features

| Feature | Description | Extra dependencies | Default | | ------- | ----------- | ------------------ | ------- | | sqlite | Enable sqlite feature in diesel crate | diesel/sqlite | no | | postgres | Enable postgres feature in diesel crate | diesel/postgres | no | | mysql | Enable mysql feature in diesel crate | diesel/mysql | no | | rt_tokio_1 | Enable support for tokio crate | deadpool/rt_tokio_1 | yes | | rt_async-std_1 | Enable support for async-std crate | deadpool/rt_async-std_1 | no | | serde | Enable support for serde crate | deadpool/serde | no | | tracing | Enable support for tracing by propagating Spans in the interact() calls. Enable this if you use the tracing crate and you want to get useful traces from within interact() calls. | deadpool-sync/tracing, tracing | no |

Example

```rust use deadpooldiesel::sqlite::{Runtime, Manager, Pool}; use diesel::{prelude::*, select, sqltypes::Text};

[tokio::main]

async fn main() -> Result<(), Box> { let manager = Manager::new(":memory:", Runtime::Tokio1); let pool = Pool::builder(manager) .maxsize(8) .build() .unwrap(); let conn = pool.get().await?; let result = conn.interact(|conn| { let query = select("Hello world!".intosql::()); query.get_result::(conn) }).await??; assert!(result == "Hello world!"); Ok(()) } ```

License

Licensed under either of

at your option.