spacedrive/core/Cargo.toml
Brendan Allan a9da6a0093
[ENG-1495] Pull new instance data when receiving cloud sync operations (#1882)
* add sd-cloud-api

* consume sd-cloud-api & leave instance writing to receiving

* module-ise api crate

* put back logging

* remove 'join cloud library'
2023-12-12 07:47:21 +00:00

132 lines
3.4 KiB
TOML

[package]
name = "sd-core"
version = "0.1.4"
description = "Virtual distributed filesystem engine that powers Spacedrive."
authors = ["Spacedrive Technology Inc."]
rust-version = "1.73.0"
license = { workspace = true }
repository = { workspace = true }
edition = { workspace = true }
[features]
default = []
# This feature allows features to be disabled when the Core is running on mobile.
mobile = []
# This feature controls whether the Spacedrive Core contains functionality which requires FFmpeg.
ffmpeg = ["dep:sd-ffmpeg"]
location-watcher = ["dep:notify"]
heif = ["sd-images/heif"]
[dependencies]
sd-media-metadata = { path = "../crates/media-metadata" }
sd-prisma = { path = "../crates/prisma" }
sd-ffmpeg = { path = "../crates/ffmpeg", optional = true }
sd-crypto = { path = "../crates/crypto", features = [
"rspc",
"specta",
"serde",
"keymanager",
] }
sd-cache = { path = "../crates/cache" }
sd-images = { path = "../crates/images", features = [
"rspc",
"serde",
"specta",
] }
sd-file-ext = { path = "../crates/file-ext" }
sd-sync = { path = "../crates/sync" }
sd-p2p = { path = "../crates/p2p", features = ["specta", "serde"] }
sd-utils = { path = "../crates/utils" }
# sd-cloud-api = { path = "../crates/cloud-api" }
sd-core-sync = { path = "./crates/sync" }
rspc = { workspace = true, features = [
"uuid",
"chrono",
"tracing",
"alpha",
"unstable",
] }
prisma-client-rust = { workspace = true }
specta = { workspace = true }
tokio = { workspace = true, features = [
"sync",
"rt-multi-thread",
"io-util",
"macros",
"time",
"process",
] }
serde = { version = "1.0", features = ["derive"] }
chrono = { version = "0.4.31", features = ["serde"] }
serde_json = { workspace = true }
serde_repr = "0.1"
futures = "0.3"
rmp-serde = "^1.1.2"
rmpv = "^1.0.1"
blake3 = "1.5.0"
hostname = "0.3.1"
uuid = { workspace = true }
sysinfo = "0.29.10"
thiserror = "1.0.50"
async-trait = "^0.1.74"
image = "0.24.7"
webp = "0.2.6"
tracing = { workspace = true }
tracing-subscriber = { workspace = true, features = ["env-filter"] }
tracing-appender = { workspace = true }
async-stream = "0.3.5"
once_cell = "1.18.0"
ctor = "0.2.5"
globset = { version = "^0.4.13", features = ["serde1"] }
itertools = "^0.11.0"
http-range = "0.1.5"
mini-moka = "0.10.2"
serde_with = "3.4.0"
notify = { version = "=5.2.0", default-features = false, features = [
"macos_fsevent",
], optional = true }
static_assertions = "1.1.0"
serde-hashkey = "0.4.5"
normpath = { version = "1.1.1", features = ["localization"] }
strum = { version = "0.25", features = ["derive"] }
strum_macros = "0.25"
regex = "1.10.2"
int-enum = "0.5.0"
tokio-stream = { version = "0.1.14", features = ["fs"] }
futures-concurrency = "7.4.3"
async-channel = "2.0.0"
tokio-util = { version = "0.7.10", features = ["io"] }
slotmap = "1.0.6"
flate2 = "1.0.28"
tar = "0.4.40"
tempfile = "^3.8.1"
axum = "0.6.20"
http-body = "0.4.5"
pin-project-lite = "0.2.13"
bytes = "1.5.0"
reqwest = { version = "0.11.22", features = ["json", "native-tls-vendored"] }
directories = "5.0.1"
async-recursion = "1.0.5"
base64 = "0.21.5"
sd-cloud-api = { version = "0.1.0", path = "../crates/cloud-api" }
# Override features of transitive dependencies
[dependencies.openssl]
version = "=0.10.57"
features = ["vendored"]
[dependencies.openssl-sys]
version = "=0.9.93"
features = ["vendored"]
[target.'cfg(target_os = "macos")'.dependencies]
plist = "1"
[target.'cfg(windows)'.dependencies.winapi-util]
version = "0.1.6"
[dev-dependencies]
tracing-test = "^0.2.4"
aovec = "1.1.0"