[package] name = "flash_rust_ws" version = "0.5.1" authors = ["User65k <15049544+User65k@users.noreply.github.com>"] edition = "2021" license = "AGPL-3.0" description = "General purpose Webserver with TLS, File, FCGI, DAV and Websocket support" repository = "https://github.com/User65k/flash_rust_ws" readme = "README.md" keywords = ["webserver", "fcgi"] [dependencies] hyper = { version = "1.2", default-features = false, features = ["http1", "http2", "server"]} # HTTP hyper-util = {version = "0.1.3", features = ["tokio"]} pin-project-lite = "0.2" bytes = "1" log = "0.4" log4rs = { version = "1", default-features = false, features = ["all_components", "config_parsing"] } #config: toml = "0.8" # config files in toml serde = { version = "1.0", features = ["derive"] } #main: tokio = {version = "1", features = ["fs", "macros", "time", "rt", "rt-multi-thread", "net", "signal", "sync"]} futures-util = { version = "0.3", default-features = false } percent-encoding = "2" #files: mime_guess = "2.0" hyper-staticfile = "0.10" # GET+HEAD for Files #fcgi: async-fcgi = {version = "0.5", features = ["app_start"], optional = true} #rproxy #hyper-reverse-proxy = "0.4" #https: tokio-rustls = { version = "0.25", optional = true } async-acme = { version="0.5", optional = true } rustls-pemfile = { version = "2.1", optional = true} #async_compression # in no BREACH / TIME cases? md5 = "0.7" rand = "0.8" lazy_static = "1.4" #websocket websocket-codec = { version = "0.5", optional = true } tokio-util = { version = "0.7", features=["codec"], optional = true } #webdav xml-rs = { version = "0.8", optional = true } chrono = { version = "0.4", optional = true } #proxy deadpool = {version="0.11", features=["unmanaged"], default-features = false, optional = true } sha1 = {version="0.6", optional = true } # same as websocket-codec base64 = {version="0.13", optional = true } # same as websocket-codec anyhow = "1.0" async-stream-connection = {version="^1.0.1", features=["serde"], optional = true} [target.'cfg(unix)'.dependencies] users = "0.11.0" libsystemd = "0.7" libc = "0.2" [features] default = ["tlsrust", "tlsrust_acme", "fcgi", "webdav", "proxy"] tlsrust = ["tokio-rustls", "rustls-pemfile"] tlsrust_acme = ["async-acme/hyper_rustls"] logrot = ["log4rs/background_rotation"] fcgi = ["async-fcgi", "async-stream-connection"] websocket = ["websocket-codec", "tokio-util", "futures-util/sink", "async-stream-connection"] webdav = ["xml-rs", "chrono"] proxy = ["hyper/client", "deadpool","sha1","base64"] [[bin]] name = "flash_rust_ws" [profile.release] lto = "fat" codegen-units = 1