[workspace]
members = ["rossweisse"]
[package]
name = "windmark"
version = "0.7.0"
authors = ["Fuwn <contact@fuwn.me>"]
edition = "2021"
description = "An elegant and highly performant async Gemini server framework"
documentation = "https://docs.rs/windmark"
readme = "README.md"
homepage = "https://github.com/gemrest/windmark"
repository = "https://github.com/gemrest/windmark"
license = "MIT OR Apache-2.0"
keywords = ["gemini"]
categories = ["web-programming"]
[features]
default = ["tokio"]
logger = ["pretty_env_logger"]
auto-deduce-mime = ["tree_magic_mini"]
response-macros = []
tokio = ["dep:tokio", "tokio-openssl"]
async-std = ["dep:async-std", "async-std-openssl"]
[dependencies]
openssl = "0.10.80"
tokio-openssl = { version = "0.6.3", optional = true }
async-std-openssl = { version = "0.6.3", optional = true }
tokio = { version = "1.52.3", default-features = false, features = [
"rt-multi-thread",
"sync",
"net",
"io-util",
"macros",
], optional = true }
async-trait = "0.1.68"
async-std = { version = "1.12.0", features = ["attributes"], optional = true }
pretty_env_logger = { version = "0.5.0", optional = true }
log = "0.4.30"
url = "2.2.2"
matchit = "0.7.3"
tree_magic_mini = { version = "3.2.2", optional = true }
paste = "1.0.12"
[dev-dependencies]
rossweisse = { version = "0.0.3", path = "./rossweisse" }
[package.metadata.docs.rs]
all-features = false
features = ["response-macros", "logger", "auto-deduce-mime"]
[[example]]
name = "async"
required-features = ["response-macros"]
[[example]]
name = "async_stateful_module"
required-features = ["response-macros"]
[[example]]
name = "binary"
required-features = ["response-macros"]
[[example]]
name = "callbacks"
required-features = ["response-macros"]
[[example]]
name = "certificate"
required-features = ["response-macros"]
[[example]]
name = "default_logger"
required-features = ["logger", "response-macros"]
[[example]]
name = "fix_path"
required-features = ["response-macros"]
[[example]]
name = "parameters"
required-features = ["response-macros"]
[[example]]
name = "partial"
required-features = ["response-macros"]
[[example]]
name = "query"
required-features = ["response-macros"]
[[example]]
name = "responses"
required-features = ["response-macros"]
[[example]]
name = "stateful_module"
required-features = ["response-macros"]
[[example]]
name = "simple_async_std"
required-features = ["async-std"]