[package] name = "thruster" version = "1.3.13" authors = ["Pete Mertz "] description = "A middleware based http async web server." readme = "../README.md" license = "MIT" keywords = ["thruster", "router", "fast", "http", "hyper"] documentation = "https://docs.rs/thruster" homepage = "https://thruster.pete.pm" repository = "https://github.com/trezm/thruster" edition = "2018" [[example]] name = "chainable_functions" required-features = [] [[example]] name = "custom_middleware_with_auth" required-features = ["hyper_server", "thruster-jab"] [[example]] name = "hello_world" required-features = [] [[example]] name = "headers" required-features = ["hyper_server"] [[example]] name = "profiling" required-features = [] [[example]] name = "query_params" required-features = ["hyper_server"] [[example]] name = "route_params" required-features = ["hyper_server"] [[example]] name = "most_basic_ssl" required-features = ["tls"] [[example]] name = "error_handling" required-features = [] [[example]] name = "hyper_most_basic" required-features = ["hyper_server"] [[example]] name = "json" required-features = ["hyper_server"] [[example]] name = "middleware" required-features = ["hyper_server"] [[example]] name = "actix_most_basic" required-features = ["actix_server"] [[example]] name = "nesting" required-features = ["hyper_server"] [[example]] name = "fast_hyper" required-features = ["hyper_server"] [[example]] name = "fast_homegrown" [[example]] name = "hyper_most_basic_ssl" required-features = ["hyper_server", "tls"] [[example]] name = "multiple_services" required-features = [] [[example]] name = "custom_cors" required-features = [] [[example]] name = "static_file" required-features = ["hyper_server", "file"] [[example]] name = "unix_socket" required-features = ["unix_hyper_server"] [[example]] name = "using_state" required-features = ["hyper_server"] [[example]] name = "mutable_state" required-features = ["hyper_server"] [[bench]] name = "app" harness = false [[test]] name = "integration_async" path = "src/integration_async_tests.rs" # [[test]] # name = "parse_tree" # path = "src/parser/tree.rs" [features] default = [] actix_server = ["actix-web", "actix-service", "actix-rt"] hyper_server = ["hyper"] unix_hyper_server = ["hyper_server", "hyperlocal"] tls = ["tokio-rustls", "rustls-pemfile", "pki-types"] file = ["dashmap"] [dependencies] actix-web = { version = "=4.0.0-beta.5", optional = true } actix-service = { version = "=2.0.0-beta.5", optional = true } actix-rt = { version = "2.2.0", optional = true } async-trait = "0.1" # chainable-functions = { path = "../chainable-functions" } hyperlocal = { version = "0.8.0", optional = true } hyper = { version = "0.14.8", optional = true, features = ["http1", "http2", "runtime", "server", "stream"] } thruster-proc = { version = "1.3.13" } # thruster-proc = { path = "../thruster-proc" } bytes = "1.0.1" actix-compat-bytes = { package = "bytes", version = "0.5.6" } dashmap = { version = "4.0.2", optional = true } fnv = "1.0.3" futures = "0.3" http = "0.2.4" httplib = { package = "http", version = "0.1.7" } httparse = "1.3.4" lazy_static = "1.4.0" log = "0.4" net2 = "0.2" num_cpus = "1.0" paste = "1.0.3" pki-types = { package = "rustls-pki-types", version = "1", optional = true } rustls-pemfile = { version = "0.2.1", optional = true } smallvec = "1.6.1" serde = "1.0.159" serde_json = "1.0.95" serde_derive = "1.0.159" socket2 = { version = "0.4.0", features = ["all"] } tokio = { version = "1.6.1", features = ["full"] } tokio-rustls = { version = "0.25", optional = true } tokio-util = { version = "0.6.7", features = ["full"] } tokio-stream = { version = "0.1.6", features= ["net"] } time = "0.1" templatify = "0.2.3" thruster-jab = { version = "0.1.0", optional = true } [dev-dependencies] criterion = "0.3.5" diesel = { version = "1.3", features = ["postgres", "r2d2"] } dotenv = "0.15.0" env_logger = "0.7.1" snafu = "0.4.1" http = "0.2" frank_jwt = "3.1.2"