5ac33987c0
- Add tracing-appender and tracing-journald for production logging - Add LoggingConfig with trace_sample_rate, json_output, journald options - Expand init_logging() with file rotation, journald, and stderr layers - Add sanitize_path() helper for PII protection in logs - Instrument FUSE operations with #[instrument] and trace decision points - Instrument gRPC handlers (10 methods) with span correlation - Add spawn instrumentation for health monitor, indexer, watcher tasks - Add broadcast lag handling (RecvError::Lagged) in event subscribers - Fix webhook.rs expect() calls with proper error handling - Add logging to patterns.rs, collections.rs, artwork.rs database ops - Add Drop impl logging for PluginManager and WatchHandle - Update systemd service with rate limiting and journal output - Add logrotate config and example config.toml with logging section
86 lines
1.6 KiB
TOML
86 lines
1.6 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = ["crates/*"]
|
|
|
|
[workspace.package]
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "MIT OR Apache-2.0"
|
|
rust-version = "1.75"
|
|
authors = ["MusicFS Contributors"]
|
|
repository = "https://github.com/user/musicfs"
|
|
|
|
[workspace.dependencies]
|
|
# Async runtime
|
|
tokio = { version = "1", features = ["full"] }
|
|
async-trait = "0.1"
|
|
|
|
# Error handling
|
|
thiserror = "1"
|
|
anyhow = "1"
|
|
|
|
# Serialization
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
rmp-serde = "1"
|
|
toml = "0.8"
|
|
|
|
# Concurrent collections
|
|
dashmap = "5"
|
|
|
|
# Logging
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
|
|
tracing-appender = "0.2"
|
|
tracing-journald = "0.3"
|
|
|
|
# FUSE
|
|
fuser = "0.14"
|
|
|
|
# Database
|
|
rusqlite = { version = "0.31", features = ["bundled"] }
|
|
sled = "0.34"
|
|
|
|
# Hashing (per architecture 8.3)
|
|
xxhash-rust = { version = "0.8", features = ["xxh64"] }
|
|
hex = "0.4"
|
|
|
|
# Audio metadata
|
|
symphonia = { version = "0.5", default-features = false, features = [
|
|
"aac", "alac", "flac", "mp3", "ogg", "vorbis", "wav"
|
|
] }
|
|
|
|
# Bytes handling
|
|
bytes = "1"
|
|
|
|
# Platform directories
|
|
dirs = "5"
|
|
|
|
# CLI
|
|
clap = { version = "4", features = ["derive"] }
|
|
|
|
# Testing
|
|
tempfile = "3"
|
|
|
|
# Platform-specific
|
|
libc = "0.2"
|
|
|
|
# Search (Week 8)
|
|
tantivy = "0.22"
|
|
moka = { version = "0.12", features = ["sync"] }
|
|
|
|
# Concurrency
|
|
parking_lot = "0.12"
|
|
|
|
# gRPC (Week 8)
|
|
tonic = "0.11"
|
|
prost = "0.12"
|
|
tokio-stream = "0.1"
|
|
|
|
# Smart Features (Week 9)
|
|
image = { version = "0.24", default-features = false, features = ["jpeg", "png"] }
|
|
chrono = "0.4"
|
|
|
|
[workspace.dependencies.tonic-build]
|
|
version = "0.11"
|