-
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCargo.toml
More file actions
116 lines (92 loc) · 2.65 KB
/
Copy pathCargo.toml
File metadata and controls
116 lines (92 loc) · 2.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[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]
# SSL
openssl = "0.10.80"
tokio-openssl = { version = "0.6.3", optional = true }
async-std-openssl = { version = "0.6.3", optional = true }
# Non-blocking I/O
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 }
# Logging
pretty_env_logger = { version = "0.5.0", optional = true }
log = "0.4.30"
# URL
url = "2.2.2"
matchit = "0.7.3"
tree_magic_mini = { version = "3.2.2", optional = true } # MIME
paste = "1.0.12" # Token Pasting
[dev-dependencies]
rossweisse = { version = "0.0.3", path = "./rossweisse" }
[package.metadata.docs.rs]
# `tokio` and `async-std` are mutually exclusive, so document the default
# (`tokio`) runtime alongside the optional feature surface.
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"]