[workspace] members = [ "crates/adapters/auth", "crates/adapters/event-publisher", "crates/adapters/metadata", "crates/adapters/poster-fetcher", "crates/adapters/image-storage", "crates/adapters/poster-sync", "crates/adapters/rss", "crates/adapters/sqlite", "crates/adapters/postgres", "crates/adapters/sqlite-federation", "crates/adapters/postgres-federation", "crates/adapters/sqlite-event-queue", "crates/adapters/postgres-event-queue", "crates/adapters/template-askama", "crates/adapters/activitypub", "crates/adapters/activitypub-base", "crates/adapters/export", "crates/adapters/event-payload", "crates/adapters/nats", "crates/api-types", "crates/application", "crates/domain", "crates/presentation", "crates/tui", "crates/worker", "crates/adapters/importer", ] resolver = "2" [workspace.dependencies] tokio = { version = "1.0", features = ["macros", "net", "rt", "rt-multi-thread", "sync", "time"] } futures = "0.3" dotenvy = "0.15" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" anyhow = "1.0" thiserror = "2.0" tracing = "0.1" tracing-subscriber = { version = "0.3.23", features = ["env-filter"] } async-trait = "0.1" uuid = { version = "1.23.0", features = ["v4", "v5", "serde"] } chrono = { version = "0.4", features = ["serde"] } sqlx = { version = "0.8.6", features = [ "runtime-tokio-rustls", "sqlite", "uuid", "macros", ] } reqwest = { version = "0.13", features = ["json", "query"] } object_store = { version = "0.11", features = ["aws"] } axum = { version = "0.8.8", features = ["macros", "multipart"] } csv = "1" api-types = { path = "crates/api-types" } domain = { path = "crates/domain" } application = { path = "crates/application" } presentation = { path = "crates/presentation" } auth = { path = "crates/adapters/auth" } metadata = { path = "crates/adapters/metadata" } poster-fetcher = { path = "crates/adapters/poster-fetcher" } image-storage = { path = "crates/adapters/image-storage" } poster-sync = { path = "crates/adapters/poster-sync" } event-publisher = { path = "crates/adapters/event-publisher" } rss = { path = "crates/adapters/rss" } export = { path = "crates/adapters/export" } sqlite = { path = "crates/adapters/sqlite" } sqlite-federation = { path = "crates/adapters/sqlite-federation" } postgres = { path = "crates/adapters/postgres" } postgres-federation = { path = "crates/adapters/postgres-federation" } template-askama = { path = "crates/adapters/template-askama" } activitypub = { path = "crates/adapters/activitypub" } activitypub-base = { path = "crates/adapters/activitypub-base" } event-payload = { path = "crates/adapters/event-payload" } nats = { path = "crates/adapters/nats" } sqlite-event-queue = { path = "crates/adapters/sqlite-event-queue" } postgres-event-queue = { path = "crates/adapters/postgres-event-queue" } importer = { path = "crates/adapters/importer" }