[package] name = "pinakes-core" edition.workspace = true version.workspace = true license.workspace = true [features] default = ["sqlite", "postgres"] ffmpeg-tests = [] sqlite = ["dep:rusqlite"] postgres = [ "dep:tokio-postgres", "dep:deadpool-postgres", "dep:postgres-types", "dep:postgres-native-tls", "dep:native-tls", ] [dependencies] tokio = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } toml = { workspace = true } chrono = { workspace = true } uuid = { workspace = true } thiserror = { workspace = true } anyhow = { workspace = true } tracing = { workspace = true } blake3 = { workspace = true } lofty = { workspace = true } lopdf = { workspace = true } epub = { workspace = true } matroska = { workspace = true } gray_matter = { workspace = true } rusqlite = { workspace = true, optional = true } tokio-postgres = { workspace = true, optional = true } deadpool-postgres = { workspace = true, optional = true } postgres-types = { workspace = true, optional = true } postgres-native-tls = { workspace = true, optional = true } native-tls = { workspace = true, optional = true } pinakes-migrations = { workspace = true } pinakes-types = { workspace = true } pinakes-metadata = { workspace = true } pinakes-plugin = { workspace = true } pinakes-enrichment = { workspace = true } pinakes-sync = { workspace = true } walkdir = { workspace = true } notify = { workspace = true } winnow = { workspace = true } mime_guess = { workspace = true } async-trait = { workspace = true } kamadak-exif = { workspace = true } image = { workspace = true } tokio-util = { workspace = true } reqwest = { workspace = true } url = { workspace = true } argon2 = { workspace = true } regex = { workspace = true } moka = { workspace = true } urlencoding = { workspace = true } image_hasher = { workspace = true } rustc-hash = { workspace = true } pinakes-plugin-api = { workspace = true } wasmtime = { workspace = true } ed25519-dalek = { workspace = true } [dev-dependencies] tempfile = { workspace = true } rand = { workspace = true } [lints] workspace = true