[package]
name = "blocking-permit"
version = "1.2.0"
edition = "2018"
authors = ["David Kellum <dek-oss@gravitext.com>"]
license = "MIT/Apache-2.0"
description = "Permits and a thread pool for blocking operations"
documentation = "https://docs.rs/blocking-permit"
repository = "https://github.com/dekellum/blocking-permit"
readme = "README.md"
keywords = ["async", "semaphore", "thread"]
categories = ["asynchronous"]
exclude = [".gitignore", ".travis.yml", "appveyor.yml"]
build = "build.rs"
[dependencies]
bytes = { version=">=0.5.2, <0.6", optional=true }
futures-core = { version=">=0.3.1, <0.4" }
futures-channel = { version=">=0.3.1, <0.4", optional=true }
log = { version=">=0.4.4, <0.5" }
num_cpus = { version=">=1.11.1, <1.13" }
futures-intrusive = { version=">=0.2.2, <0.4", optional=true }
tokio = { version=">=0.2.6, <0.3", optional=true }
parking_lot = { version=">=0.9.0, <0.11" }
[dev-dependencies]
futures-executor = { version=">=0.3.1, <0.4" }
futures-util = { version=">=0.3.1, <0.4" }
lazy_static = { version=">=1.3.0, <1.5" }
rand = { version=">=0.7.0, <0.8" }
tempfile = { version=">=3.1.0, <3.2" }
piccolog = { version=">=1.0.0, <1.1" }
[features]
default=["futures-channel"]
tokio-omnibus=["tokio-oneshot", "tokio-threaded", "tokio-semaphore"]
tokio-oneshot=["tokio", "tokio/sync"]
tokio-threaded=["tokio", "tokio/rt-core", "tokio/rt-threaded", "tokio/blocking"]
tokio-semaphore=["tokio", "tokio/sync"]
cleaver=["bytes"]
yield-stream=[]
current-thread=[]
tangential=[]
[profile.bench]
lto = "thin"
incremental = false
[package.metadata.docs.rs]
features = ["futures-intrusive", "tokio-threaded", "cleaver", "yield-stream"]