[package] name = "loates" version = "0.1.0-alpha" edition = "2021" rust-version = "1.75" description = "Loates is a load testing framework, with focus on ease of use and flexiblity." repository = "https://github.com/trueleo/loates" license = "MIT" keywords = ["testing", "load-testing", "http"] categories = [ "concurrency", "development-tools", "development-tools::profiling", "web-programming", ] exclude = ["/assets"] [features] tui = ["dep:ratatui"] web = [ "serde", "dep:axum", "dep:tower-http", "dep:static-files", "dep:open", "dep:cargo_toml", "dep:ureq", "dep:zip", ] reqwest = ["dep:reqwest"] open = ["dep:open"] [dependencies] atomic = "0.6" anyhow = "1.0" async-trait = "0.1" async_fn_traits = "0.1" async-stream = "0.3" dashmap = "6.0" futures = { version = "0.3", features = ["std"] } thiserror = "1.0" async-scoped = { version = "0.9", features = ["use-tokio"] } tokio = { version = "1.35", features = [ "time", "sync", "net", ], default-features = false } ordered-float = "4.2" tracing-subscriber = { version = "0.3", features = [ "registry", ], default-features = false } tracing = "0.1" tdigest = "0.2" http-body = "1.0" bytemuck = "1.16" chrono = "0.4" ratatui = { version = "0.27", optional = true } axum = { version = "0.7", features = ["json"], optional = true } serde = { version = "1.0", features = ["derive"], optional = true } tower-http = { version = "0.5", features = ["cors"], optional = true } static-files = { version = "0.2", optional = true } open = { version = "5.2", optional = true } [dependencies.reqwest] version = "0.12" default-features = false features = ["http2", "rustls-tls", "charset", "stream", "multipart"] optional = true [build-dependencies] cargo_toml = { version = "0.20", optional = true } ureq = { version = "2.9", optional = true } static-files = { version = "0.2", optional = true } zip = { version = "2", optional = true } [dev-dependencies.reqwest] version = "0.12" default-features = false features = ["http2", "rustls-tls", "charset"] [dev-dependencies.tokio] version = "1.35" default-features = false features = ["rt", "macros"] [[example]] name = "simple" path = "./examples/simple.rs" required-features = ["tui", "reqwest"] [[example]] name = "web" path = "./examples/web.rs" required-features = ["web", "reqwest"] [package.metadata.ui] assets-url = "https://github.com/trueleo/loates-web/releases/download/v1.0.1-18c8e24/build.zip"