[package] name = "throttle-server" version = "0.5.4" authors = ["Markus Klein"] edition = "2018" license = "MIT" # Link to github repository repository = "https://github.com/pacman82/throttle.git" # A short blurb about the package. This is not rendered in any format when # uploaded to crates.io (aka this is not markdown). description = "Provide semaphores for distributed systems via an http interface" # This is a list of up to five keywords that describe this crate. Keywords # are searchable on crates.io, and you may choose any words that would # help someone find this crate. keywords = ["semaphore", "http"] # This is a list of up to five categories where this crate would fit. # Categories are a fixed list available at crates.io/category_slugs, and # they must match exactly. categories = ["concurrency"] # This points to a file under the package root (relative to this `Cargo.toml`). # The contents of this file are stored and indexed in the registry. # crates.io will render this file and place the result on the crate's page. readme = "../Readme.md" # A crate can have more than one binary, hence the `[[]]` double brackets to # indicate a toml array. [[bin]] # Name binary throttle. Crate name should have been `throttle`, alas it had # already been taken. name = "throttle" # Since there might be more than one binary, we need to specify which one we # are referencing path = "src/main.rs" [dependencies] async-events = "0.2.0" prometheus = "0.13.4" percent-encoding = "2.3.1" lazy_static = "1.5.0" serde = "1.0.210" serde_json = "1.0.128" toml = "0.8.19" rand = "0.8.5" env_logger = "0.11.5" humantime-serde = "1.1.1" thiserror = "1.0.63" version = "3.0.0" clap = { version = "4.5.17", features = ["derive"] } axum = "0.7.5" # We use it explicitly for the time::timeout feature [dependencies.tokio] version = "1.40.0" features = ["rt-multi-thread", "macros", "time"] [dependencies.log] version = "0.4.22" features = ["serde"] [dev-dependencies] tempfile = "3.12.0" # We need the client for integration tests throttle-client = { path = "../rust_client" } # Executer to call drive future executions in tests tokio = { version = "1.40.0", features = ["full"] } [features]