[package] name = "magnetar" description = "An exploratory ActivityPub project" version.workspace = true edition.workspace = true license = "AGPL-3.0-only" [workspace] members = [ ".", "ext_activity_streams", "ext_federation", "ext_nodeinfo", "ext_webfinger", "ext_model", "fe_calckey", "magnetar_common", "magnetar_runtime", "magnetar_sdk", "magnetar_mmm_parser", "core", ] [workspace.package] version = "0.3.0-alpha" edition = "2021" [workspace.dependencies] async-trait = "0.1" async-stream = "0.3" axum = "0.7" axum-extra = "0.9" base64 = "0.22" bytes = "1.7" cached = "0.54" cfg-if = "1" chrono = "0.4" compact_str = "0.8" dotenvy = "0.15" ed25519-dalek = "2.1" either = "1.9" emojis = "0.6" futures = "0.3" futures-channel = "0.3" futures-core = "0.3" futures-util = "0.3" headers = "0.4" http = "1.0" httpdate = "1" hyper = "1.1" idna = "1" indexmap = "2.2" itertools = "0.13" kdl = "4" lru = "0.12" miette = "7" nom = "7" nom_locate = "4" percent-encoding = "2.2" priority-queue = "2.0" quick-xml = "0.36" redis = "0.26" regex = "1.9" rmp-serde = "1.3" rsa = "0.9" reqwest = "0.12" sea-orm = "1" sea-orm-migration = "1" serde = "1" serde_json = "1" serde_urlencoded = "0.7" sha2 = "0.10" smallvec = "1.13" strum = "0.26" tera = { version = "1", default-features = false } thiserror = "2" tokio = "1.24" tokio-util = "0.7" tokio-stream = "0.1" toml = "0.8" tower = "0.5" tower-http = "0.6" tracing = "0.1" tracing-subscriber = "0.3" ts-rs = "7" ulid = "1" unicode-segmentation = "1.10" url = "2.3" walkdir = "2.3" [dependencies] magnetar_core = { path = "./core" } magnetar_common = { path = "./magnetar_common" } magnetar_federation = { path = "./ext_federation" } magnetar_host_meta = { path = "./ext_host_meta" } magnetar_webfinger = { path = "./ext_webfinger" } magnetar_nodeinfo = { path = "./ext_nodeinfo" } magnetar_model = { path = "./ext_model" } magnetar_runtime = { path = "./magnetar_runtime" } magnetar_sdk = { path = "./magnetar_sdk" } cached = { workspace = true } lru = { workspace = true } chrono = { workspace = true } dotenvy = { workspace = true } axum = { workspace = true, features = ["macros"] } axum-extra = { workspace = true, features = ["typed-header"] } async-stream = { workspace = true } headers = { workspace = true } hyper = { workspace = true, features = ["full"] } reqwest = { workspace = true, features = ["hickory-dns"] } tokio = { workspace = true, features = ["full"] } tokio-stream = { workspace = true } tower = { workspace = true } tower-http = { workspace = true, features = ["cors", "trace", "fs"] } ulid = { workspace = true } url = { workspace = true } tracing-subscriber = { workspace = true, features = ["env-filter"] } tracing = { workspace = true } cfg-if = { workspace = true } bytes = { workspace = true } compact_str = { workspace = true } either = { workspace = true } futures = { workspace = true } futures-util = { workspace = true } itertools = { workspace = true } miette = { workspace = true, features = ["fancy"] } strum = { workspace = true, features = ["derive"] } thiserror = { workspace = true } percent-encoding = { workspace = true } kdl = { workspace = true } rmp-serde = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } serde_urlencoded = { workspace = true } toml = { workspace = true } quick-xml = { workspace = true, features = ["serialize", "overlapped-lists"] } unicode-segmentation = { workspace = true } [profile.release] lto = true