[package] name = "anni-provider" version = "0.3.0" description = "Storage providers for Project Anni." edition.workspace = true authors.workspace = true repository.workspace = true license.workspace = true [dependencies] tokio = { version = "1", features = ["time", "fs", "rt"] } tokio-util = { version = "0.7.2", features = ["compat", "io"] } tokio-stream = "0.1.8" futures = "0.3" async-trait = "0.1" anni-google-drive3 = { version = "0.1.0", path = "../third_party/google-drive3", optional = true } anni-repo = { version = "0.4.1", path = "../anni-repo", features = [ "db-read", ], optional = true } anni-common = { version = "0.1.4", path = "../anni-common" } thiserror.workspace = true log.workspace = true uuid.workspace = true parking_lot = "0.12.0" dashmap = "5.2.0" lru = "0.10.0" anni-flac = { version = "0.2.2", path = "../anni-flac", features = ["async"] } reqwest = { workspace = true, features = ["json", "stream"], optional = true } [features] default = ["full"] full = ["convention", "drive", "proxy", "strict", "priority"] convention = ["repo"] drive = ["repo", "anni-google-drive3"] proxy = ["reqwest"] repo = ["anni-repo"] strict = [] priority = []