Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
58 lines (55 loc) · 2.31 KB
/
Copy pathCargo.toml
File metadata and controls
58 lines (55 loc) · 2.31 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
[workspace]
resolver = "2"
members = ["server-common", "server", "server-runtime-chrome", "server-merge", "bin/silverbullet", "bin/sb"]
# Make bare `cargo run` / `cargo build` target the silverbullet server binary.
# CI's quality gates (clippy/test) pass `--workspace` explicitly, so they still
# cover every member regardless of this default.
default-members = ["bin/silverbullet"]
[workspace.package]
edition = "2021"
license = "MIT"
# Lint policy shared by every crate (each member opts in with
# `[lints] workspace = true`). Configured here so the whole workspace lints
# identically; CI runs `cargo clippy -- -D warnings` to make these hard errors.
[workspace.lints.clippy]
all = "warn"
[workspace.dependencies]
serde = { version = "1", features = ["derive"] }
serde_json = { version = "1", features = ["preserve_order"] }
thiserror = "2"
argon2 = "0.6"
walkdir = "2"
ignore = "0.4"
libc = "0.2"
mime_guess = "2"
chrono = "0.4"
filetime = "0.2"
# Pinned to the 0.12 line on purpose: its `rustls-tls` feature uses the `ring`
# crypto provider, which cross-compiles cleanly to every static-musl target
# (including armv7 and freebsd). reqwest 0.13's rustls path switched to
# aws-lc-rs (C/CMake), which is fragile to cross-compile for those arches.
# Revisit only once the full cross-compile/release matrix is in place.
reqwest = { version = "0.12", features = ["rustls-tls", "json", "blocking", "stream"], default-features = false }
base64 = "0.23"
percent-encoding = "2"
regex = "1"
pulldown-cmark = { version = "0.13", default-features = false, features = ["html"] }
minijinja = "2"
prometheus = { version = "0.14", default-features = false }
tracing = "0.1"
tower-http = "0.7"
axum = "0.8"
tokio = { version = "1", default-features = false, features = ["rt-multi-thread", "macros", "sync"] }
jsonwebtoken = { version = "11", features = ["rust_crypto"] }
sha2 = "0.10"
getrandom = "0.4"
clap = { version = "4", features = ["derive", "env"] }
rust-embed = { version = "8", features = ["interpolate-folder-path", "mime-guess"] }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
serde_yaml = "0.9"
uuid = { version = "1", features = ["v4"] }
aes-gcm = "0.11"
tempfile = "3"
zip = { version = "8", default-features = false, features = ["deflate"] }
notify = "8"
tokio-stream = { version = "0.1", default-features = false, features = ["sync"] }