mirror of
https://github.com/lennart-k/rustical.git
synced 2025-12-11 15:52:18 +00:00
206 lines
5.3 KiB
TOML
206 lines
5.3 KiB
TOML
[workspace]
|
|
members = ["crates/*"]
|
|
|
|
[workspace.package]
|
|
version = "0.11.1"
|
|
rust-version = "1.91"
|
|
edition = "2024"
|
|
description = "A CalDAV server"
|
|
documentation = "https://lennart-k.github.io/rustical/"
|
|
repository = "https://github.com/lennart-k/rustical"
|
|
license = "AGPL-3.0-or-later"
|
|
|
|
[package]
|
|
name = "rustical"
|
|
version.workspace = true
|
|
rust-version.workspace = true
|
|
edition.workspace = true
|
|
description.workspace = true
|
|
repository.workspace = true
|
|
license.workspace = true
|
|
resolver = "2"
|
|
publish = true
|
|
|
|
[features]
|
|
debug = ["opentelemetry"]
|
|
frontend-dev = ["rustical_frontend/dev"]
|
|
opentelemetry = [
|
|
"dep:opentelemetry",
|
|
"dep:opentelemetry-otlp",
|
|
"dep:opentelemetry_sdk",
|
|
"dep:opentelemetry-semantic-conventions",
|
|
"dep:tracing-opentelemetry",
|
|
]
|
|
|
|
|
|
[profile.dev]
|
|
debug = 0
|
|
|
|
[workspace.dependencies]
|
|
rustical_dav = { path = "./crates/dav/" }
|
|
rustical_dav_push = { path = "./crates/dav_push/" }
|
|
rustical_store = { path = "./crates/store/" }
|
|
rustical_store_sqlite = { path = "./crates/store_sqlite/" }
|
|
rustical_caldav = { path = "./crates/caldav/" }
|
|
rustical_carddav = { path = "./crates/carddav/" }
|
|
rustical_frontend = { path = "./crates/frontend/" }
|
|
rustical_xml = { path = "./crates/xml/" }
|
|
rustical_oidc = { path = "./crates/oidc/" }
|
|
rustical_ical = { path = "./crates/ical/" }
|
|
|
|
matchit = "0.9"
|
|
uuid = { version = "1.11", features = ["v4", "fast-rng"] }
|
|
async-trait = "0.1"
|
|
axum = "0.8"
|
|
tracing = { version = "0.1", features = ["async-await"] }
|
|
anyhow = { version = "1.0", features = ["backtrace"] }
|
|
serde = { version = "1.0", features = ["serde_derive", "derive", "rc"] }
|
|
futures-util = "0.3"
|
|
password-auth = { version = "1.0", features = ["argon2", "pbkdf2"] }
|
|
pbkdf2 = { version = "0.12", features = ["simple"] }
|
|
rand_core = { version = "0.9", features = ["std"] }
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
regex = "1.10"
|
|
rstest = "0.26"
|
|
rstest_reuse = "0.7"
|
|
sha2 = "0.10"
|
|
tokio = { version = "1", features = [
|
|
"net",
|
|
"tracing",
|
|
"macros",
|
|
"rt-multi-thread",
|
|
"full",
|
|
] }
|
|
url = "2.5"
|
|
base64 = "0.22"
|
|
thiserror = "2.0"
|
|
quick-xml = { version = "0.38" }
|
|
rust-embed = "8.5"
|
|
tower-sessions = "0.14"
|
|
futures-core = "0.3.31"
|
|
hex = { version = "0.4.3", features = ["serde"] }
|
|
mime_guess = "2.0"
|
|
itertools = "0.14"
|
|
log = "0.4"
|
|
derive_more = { version = "2.0", features = [
|
|
"from",
|
|
"try_into",
|
|
"into",
|
|
"deref",
|
|
"constructor",
|
|
"display",
|
|
] }
|
|
askama = { version = "0.14", features = ["serde_json"] }
|
|
askama_web = { version = "0.14.0", features = ["axum-0.8"] }
|
|
sqlx = { version = "0.8", default-features = false, features = [
|
|
"sqlx-sqlite",
|
|
"uuid",
|
|
"chrono",
|
|
"sqlite",
|
|
"runtime-tokio",
|
|
"macros",
|
|
"migrate",
|
|
"json",
|
|
] }
|
|
http = "1.3"
|
|
headers = "0.4"
|
|
strum = "0.27"
|
|
strum_macros = "0.27"
|
|
serde_json = { version = "1.0", features = ["raw_value"] }
|
|
sqlx-sqlite = { version = "0.8", features = ["bundled"] }
|
|
ical = { git = "https://github.com/lennart-k/ical-rs", features = [
|
|
"generator",
|
|
"serde",
|
|
"chrono-tz",
|
|
] }
|
|
toml = "0.9"
|
|
tower = "0.5"
|
|
tower-http = { version = "0.6", features = [
|
|
"trace",
|
|
"normalize-path",
|
|
"catch-panic",
|
|
] }
|
|
percent-encoding = "2.3"
|
|
chrono-tz = "0.10"
|
|
chrono-humanize = "0.2"
|
|
rand = "0.9"
|
|
axum-extra = { version = "0.12", features = ["typed-header"] }
|
|
rrule = "0.14"
|
|
argon2 = "0.5"
|
|
rpassword = "7.3"
|
|
password-hash = { version = "0.5" }
|
|
syn = { version = "2.0", features = ["full"] }
|
|
quote = "1.0"
|
|
proc-macro2 = "1.0"
|
|
heck = "0.5"
|
|
darling = "0.23"
|
|
reqwest = { version = "0.12", features = [
|
|
"rustls-tls",
|
|
"charset",
|
|
"http2",
|
|
], default-features = false }
|
|
openidconnect = "4.0"
|
|
clap = { version = "4.5", features = ["derive", "env"] }
|
|
matchit-serde = { git = "https://github.com/lennart-k/matchit-serde", rev = "e18e65d7" }
|
|
vtimezones-rs = "0.2"
|
|
ece = { version = "2.3", default-features = false, features = [
|
|
"backend-openssl",
|
|
] }
|
|
openssl = { version = "0.10", features = ["vendored"] }
|
|
async-std = { version = "1.13", features = ["attributes"] }
|
|
similar-asserts = "1.7"
|
|
insta = "1.44"
|
|
|
|
[dev-dependencies]
|
|
rstest.workspace = true
|
|
rustical_store_sqlite = { workspace = true, features = ["test"] }
|
|
insta.workspace = true
|
|
|
|
[dependencies]
|
|
rustical_store.workspace = true
|
|
rustical_store_sqlite.workspace = true
|
|
rustical_caldav.workspace = true
|
|
rustical_carddav.workspace = true
|
|
rustical_frontend.workspace = true
|
|
toml.workspace = true
|
|
serde.workspace = true
|
|
tokio.workspace = true
|
|
tracing.workspace = true
|
|
anyhow.workspace = true
|
|
clap.workspace = true
|
|
sqlx.workspace = true
|
|
async-trait.workspace = true
|
|
uuid.workspace = true
|
|
axum.workspace = true
|
|
|
|
opentelemetry = { version = "0.31", optional = true }
|
|
opentelemetry-otlp = { version = "0.31", optional = true, features = [
|
|
"grpc-tonic",
|
|
] }
|
|
opentelemetry_sdk = { version = "0.31", features = [
|
|
"rt-tokio",
|
|
], optional = true }
|
|
opentelemetry-semantic-conventions = { version = "0.31", optional = true }
|
|
tracing-opentelemetry = { version = "0.32", optional = true }
|
|
tracing-subscriber = { version = "0.3", features = [
|
|
"env-filter",
|
|
"fmt",
|
|
"registry",
|
|
] }
|
|
figment = { version = "0.10", features = ["env", "toml"] }
|
|
tower-sessions.workspace = true
|
|
rpassword.workspace = true
|
|
tower.workspace = true
|
|
argon2.workspace = true
|
|
pbkdf2.workspace = true
|
|
password-hash.workspace = true
|
|
reqwest.workspace = true
|
|
rustical_dav.workspace = true
|
|
rustical_dav_push.workspace = true
|
|
rustical_oidc.workspace = true
|
|
quick-xml.workspace = true
|
|
tower-http.workspace = true
|
|
axum-extra.workspace = true
|
|
headers.workspace = true
|
|
http.workspace = true
|