Skip to content
This repository was archived by the owner on Sep 4, 2026. It is now read-only.

Repository files navigation

Fastpool

Warning

Fastpool is deprecated and is being archived. Development has moved to asyncband::pool, which is the maintained successor. Fastpool 1.1.2 is the final planned release.

Crates.io Documentation MSRV 1.85 Apache 2.0 licensed Build Status

Overview

Fastpool provides fast and runtime-agnostic object pools for Async Rust.

You can read the docs page for a complete overview of the library.

Migration

Replace the Fastpool dependency with AsyncBand's pool feature:

cargo add asyncband --features pool

Fastpool's root items are available under asyncband::pool, while bounded and unbounded remain submodules. For example, replace fastpool::{ManageObject, bounded} with asyncband::pool::{ManageObject, bounded}.

AsyncBand 0.7.1 also strengthens several pool contracts. In particular, bounded::Pool::replenish is now replenish_to and returns a Result, and bounded::PoolStatus::wait_count has been removed. Review the AsyncBand pool documentation when migrating those APIs.

Documentation

Read the online documents at https://docs.rs/fastpool.

Minimum Supported Rust Version (MSRV)

This crate is built against the latest stable release, and its minimum supported rustc version is 1.85.0.

The policy is that the minimum Rust version required to use this crate can be increased in minor version updates. For example, if Fastpool 1.0 requires Rust 1.20.0, then Fastpool 1.0.z for all values of z will also require Rust 1.20.0 or newer. However, Fastpool 1.y for y > 0 may require a newer minimum version of Rust.

License

This project is licensed under Apache License, Version 2.0.

Origins

This library is a reimplementation of the deadpool crate with several dedicated considerations and a quite different mindset.

You can read the FAQ section on the docs page for a detailed discussion on "Why does fastpool have no timeout config?" and "Why does fastpool have no before/after hooks?"

The postgres example and this issue thread is a significant motivation for this crate:

About

DEPRECATED: use asyncband::pool for runtime-agnostic async object pools.

Resources

Stars

40 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

Generated from fast/template