[workspace] resolver = "3" members = [ "crates/delta", "crates/bonfire", "crates/core/*", "crates/services/*", "crates/daemons/*", ] [patch.crates-io] redis23 = { package = "redis", version = "0.23.3", git = "https://github.com/revoltchat/redis-rs", rev = "523b2937367e17bd0073722bf6e23d06042cb4e4" } #authifier = { package = "authifier", version = "1.0.10", path = "../authifier/crates/authifier" } #rocket_authifier = { package = "rocket_authifier", version = "1.0.10", path = "../authifier/crates/rocket_authifier" } [profile.release] lto = true [workspace.dependencies] # Async async-trait = "0.1.89" tokio = "1.49.0" async-channel = "2.3.1" futures = "0.3.32" async-std = "1.8.0" async-tungstenite = "0.17.0" futures-locks = "0.7.1" async-lock = "2.8.0" async-recursion = "1.0.4" # Error Handling anyhow = "1.0.100" thiserror = "2.0.18" sentry = "0.31.5" sentry-anyhow = "0.38.1" # Data Validation regex = "1.12.3" validator = "0.16" # Data Types uuid = "1.19.0" ulid = "1.2.1" nanoid = "0.4.0" typenum = "1.17.0" num_enum = "0.6.1" bitfield = "0.13.2" # Time chrono = "0.4.15" iso8601-timestamp = "0.2.10" # Data Collections lru = "0.16.3" indexmap = "2.13.1" dashmap = "5.2.0" moka = "0.12.8" lru_time_cache = "0.11.11" deadqueue = "0.2.4" # Web scraping scraper = "0.20.0" encoding_rs = "0.8.34" # Mail lettre = "0.10.0-alpha.4" handlebars = "4.3.0" # HTTP Requests reqwest = "0.13.2" isahc = "1.7" # Notifications fcm_v1 = "0.3.0" web-push = "0.10.0" revolt_a2 = "0.10" # Parsing logos = "0.15" # SVG rendering usvg = "0.44.0" resvg = "0.44.0" tiny-skia = "0.11.4" # Logging log = "0.4.29" pretty_env_logger = "0.4.0" # Redis redis-kiss = "0.1.4" fred = "8.0.1" # Serialisation bincode = "1.3.3" serde_json = "1.0.79" rmp-serde = "1.0.0" serde = { version = "1", features = ["derive"] } strum_macros = "0.26.4" # MongoDB bson = { version = "2.1.0" } mongodb = { version = "3.1.0" } # S3 aws-config = "1.5.5" aws-sdk-s3 = "1.46.0" # Axum (HTTP server) axum-macros = "0.4.1" axum_typed_multipart = "0.12.1" axum = "0.7.5" axum-extra = "0.9" tower-http = "0.5.2" # Rocket (HTTP server) rocket = "0.5.1" rocket_empty = "0.1.1" revolt_rocket_okapi = "0.10.0" rocket_cors = { git = "https://github.com/lawliet89/rocket_cors", rev = "072d90359b23e9b291df6b672c07c93de9c46011" } rocket_authifier = "1.0.16" rocket_prometheus = "0.10.0-rc.3" # Spec Generation utoipa = "4.2.3" revolt_okapi = "0.9.1" schemars = "0.8.8" utoipa-scalar = "0.1.0" # Image Processing jxl-oxide = "0.12.5" sha2 = "0.10.8" kamadak-exif = "0.5.4" webp = "0.3.0" image = "0.25.2" # avif encode requires dav1d system library: features = ["avif-native"] thumbhash = "0.1.0" lcms2 = "6.1.1" # for color profile processing # File processing revolt_clamav-client = "0.1.5" simdutf8 = "0.1.4" # Content type processing infer = "0.16.0" ffprobe = "0.4.0" imagesize = "0.13.0" # OpenTelemetry tracing = "0.1.44" tracing-subscriber = { version = "0.3.22", features = [ "env-filter", ] } # consider https://crates.io/crates/better-tracing opentelemetry = { version = "0.31.0", features = ["logs"] } opentelemetry_sdk = { version = "0.31.0", features = ["logs"] } opentelemetry-otlp = { version = "0.31.0", features = ["logs"] } opentelemetry-appender-tracing = "0.31.1" # RabbitMQ lapin = "4.7.1" # Voice livekit-api = "0.4.4" livekit-protocol = "0.7.4" livekit-runtime = "0.4.0" # Other Utilities once_cell = "1.9.0" config = "0.13.3" cached = "0.44.0" rand = "0.8.5" base64 = "0.21.3" decancer = "3.3.3" linkify = "0.8.1" url-escape = "0.1.1" revolt_optional_struct = "0.2.0" unicode-segmentation = "1.10.1" querystring = "1.1.0" tempfile = "3.12.0" aes-gcm = "0.10.3" auto_ops = "0.3.0" url = "2.2.2" impl_ops = "0.1.1" lazy_static = "1.5.0" mime = "0.3.17" totp-lite = "2.0.0" rust-argon2 = "1.0.0" base32 = "0.4.0" sha1 = "0.10.6" futures-lite = "2.6.1" # Build Dependencies vergen = "7.5.0" # Local packages revolt-coalesced = { version = "0.13.7", path = "crates/core/coalesced" } revolt-config = { version = "0.13.7", path = "crates/core/config" } revolt-database = { version = "0.13.7", path = "crates/core/database" } revolt-files = { version = "0.13.7", path = "crates/core/files" } revolt-models = { version = "0.13.7", path = "crates/core/models" } revolt-parser = { version = "0.13.7", path = "crates/core/parser" } revolt-permissions = { version = "0.13.7", path = "crates/core/permissions" } revolt-presence = { version = "0.13.7", path = "crates/core/presence" } revolt-ratelimits = { version = "0.13.7", path = "crates/core/ratelimits" } revolt-result = { version = "0.13.7", path = "crates/core/result" }