[package] authors = ["trinhminhtriet "] categories = [ "command-line-utilities", "network-programming", "web-programming::http-client", "development-tools::profiling", ] description = "🚀 Spiko is a fast, Rust-based load testing tool with a beautiful TUI for real-time insights." edition = "2021" keywords = ["cli", "load-testing", "performance", "http"] license = "MIT" name = "spiko" readme = "README.md" repository = "https://github.com/trinhminhtriet/spiko" homepage = "https://trinhminhtriet.com" version = "0.1.3" rust-version = "1.77" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = ["rustls"] native-tls = ["dep:native-tls", "dep:tokio-native-tls"] rustls = [ "dep:rustls", "dep:tokio-rustls", "dep:rustls-native-certs", "dep:rustls-pki-types", ] vsock = ["dep:tokio-vsock"] [dependencies] anyhow = "1.0.86" average = "0.15.1" byte-unit = "5.1.4" clap = { version = "4.5.9", features = ["derive"] } float-ord = "0.3.2" flume = "0.11" humantime = "2.1.0" libc = "0.2.155" serde = { version = "1.0.214", features = ["derive"] } serde_json = "1.0" thiserror = "1.0.63" tokio = { version = "1.41.1", features = ["full"] } ratatui = { version = "0.29.0", default-features = false, features = [ "crossterm", ] } hyper = { version = "1.4", features = ["client", "http1", "http2"] } # native-tls native-tls = { version = "0.2.12", features = ["alpn"], optional = true } tokio-native-tls = { version = "0.3.1", optional = true } rustls = { version = "0.23.16", optional = true } rustls-native-certs = { version = "0.8.0", optional = true } tokio-rustls = { version = "0.26.0", optional = true } rustls-pki-types = { version = "1.7.0", optional = true } base64 = "0.22.1" rand = "0.8" hickory-resolver = "0.24.1" rand_regex = "0.17.0" regex-syntax = "0.8.4" url = "2.5.2" pin-project-lite = "0.2.14" http-body-util = "0.1.2" hyper-util = { version = "0.1.10", features = ["tokio"] } tokio-vsock = { version = "0.5.0", optional = true } rusqlite = { version = "0.32.0", features = ["bundled"] } [target.'cfg(unix)'.dependencies] rlimit = "0.10.1" jemallocator = "0.5.4" [target.x86_64-unknown-linux-musl.dependencies] # Workaround for release CI aws-lc-rs = { version = "1.8.1", features = ["bindgen"] } [dev-dependencies] assert_cmd = "2.0.14" axum = { version = "0.7", features = ["http2"] } bytes = "1.6" float-cmp = "0.10.0" jsonschema = "0.26.0" lazy_static = "1.5.0" predicates = "3.1.0" regex = "1.10.5" [target.'cfg(unix)'.dev-dependencies] tempfile = "3.10.1" actix-web = "4" [profile.pgo] inherits = "release" # https://github.com/TechEmpower/FrameworkBenchmarks/blob/master/frameworks/Rust/faf/Cargo.toml + lto=true opt-level = 3 panic = 'abort' codegen-units = 1 lto = true debug = false incremental = false overflow-checks = false