mirror of
https://github.com/stoatchat/stoatchat.git
synced 2026-07-06 03:06:04 +00:00
114 lines
3.3 KiB
TOML
114 lines
3.3 KiB
TOML
[package]
|
|
name = "revolt-database"
|
|
version = "0.13.7"
|
|
edition = "2021"
|
|
license = "AGPL-3.0-or-later"
|
|
authors = ["Paul Makles <me@insrt.uk>"]
|
|
description = "Revolt Backend: Database Implementation"
|
|
repository = "https://github.com/stoatchat/stoatchat"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[features]
|
|
# Databases
|
|
mongodb = ["dep:mongodb", "bson"]
|
|
|
|
# ... Other
|
|
tasks = ["isahc", "linkify", "url-escape"]
|
|
tokio-runtime = ["tokio"]
|
|
rocket-impl = [
|
|
"rocket",
|
|
"schemars",
|
|
"revolt_okapi",
|
|
"revolt_rocket_okapi",
|
|
]
|
|
axum-impl = ["axum", "revolt-result/axum", "utoipa"]
|
|
redis-is-patched = ["revolt-presence/redis-is-patched"]
|
|
voice = ["livekit-api", "livekit-protocol", "livekit-runtime"]
|
|
|
|
# Default Features
|
|
default = ["mongodb", "tokio-runtime", "tasks"]
|
|
|
|
[dependencies]
|
|
# Core
|
|
revolt-config = { workspace = true, features = ["report-macros"] }
|
|
revolt-result = { workspace = true }
|
|
revolt-models = { workspace = true, features = ["validator"] }
|
|
revolt-presence = { workspace = true }
|
|
revolt-permissions = { workspace = true, features = ["serde", "bson"] }
|
|
revolt-parser = { workspace = true }
|
|
revolt-coalesced = { workspace = true }
|
|
|
|
# Utility
|
|
log = { workspace = true }
|
|
lru = { workspace = true }
|
|
rand = { workspace = true }
|
|
ulid = { workspace = true }
|
|
nanoid = { workspace = true }
|
|
base64 = { workspace = true }
|
|
once_cell = { workspace = true }
|
|
indexmap = { workspace = true }
|
|
decancer = { workspace = true }
|
|
deadqueue = { workspace = true }
|
|
linkify = { workspace = true, optional = true }
|
|
url-escape = { workspace = true, optional = true }
|
|
validator = { workspace = true, features = ["derive"] }
|
|
isahc = { workspace = true, features = ["json"], optional = true }
|
|
base32 = { workspace = true }
|
|
sha1 = { workspace = true }
|
|
|
|
# Serialisation
|
|
serde_json = { workspace = true }
|
|
revolt_optional_struct = { workspace = true }
|
|
serde = { workspace = true }
|
|
iso8601-timestamp = { workspace = true, features = ["serde", "bson"] }
|
|
|
|
# Events
|
|
redis-kiss = { workspace = true, default-features = false, features = ["tokio-runtime"] }
|
|
|
|
# Database
|
|
bson = { workspace = true, optional = true }
|
|
mongodb = { workspace = true, optional = true }
|
|
|
|
# Database Migration
|
|
unicode-segmentation = { workspace = true }
|
|
regex = { workspace = true }
|
|
|
|
# Async Language Features
|
|
futures = { workspace = true }
|
|
async-lock = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
async-recursion = { workspace = true }
|
|
|
|
# Async
|
|
tokio = { workspace = true, optional = true }
|
|
|
|
# Axum Impl
|
|
axum = { workspace = true, optional = true }
|
|
utoipa = { workspace = true, features = ["axum_extras"], optional = true }
|
|
|
|
# Rocket Impl
|
|
schemars = { workspace = true, optional = true }
|
|
rocket = { workspace = true, features = ["json"], optional = true }
|
|
revolt_okapi = { workspace = true, optional = true }
|
|
revolt_rocket_okapi = { workspace = true, optional = true }
|
|
|
|
# RabbitMQ
|
|
lapin = { workspace = true, features = ["tokio"] }
|
|
|
|
# Voice
|
|
livekit-api = { workspace = true, features = ["rustls-tls-native-roots"], optional = true }
|
|
livekit-protocol = { workspace = true, optional = true }
|
|
livekit-runtime = { workspace = true, features = ["tokio"], optional = true }
|
|
|
|
# Security
|
|
totp-lite = { workspace = true }
|
|
rust-argon2 = { workspace = true }
|
|
|
|
# Email
|
|
lettre = { workspace = true }
|
|
handlebars = { workspace = true }
|
|
|
|
# Web Requests
|
|
reqwest = { workspace = true, features = ["json", "form"] }
|