[package] name = "caldav-sync" version = "0.1.0" edition = "2021" authors = ["Your Name "] description = "A CalDAV calendar synchronization tool" license = "MIT OR Apache-2.0" repository = "https://github.com/yourusername/caldav-sync" keywords = ["caldav", "calendar", "sync", "productivity"] categories = ["command-line-utilities", "date-and-time"] readme = "README.md" rust-version = "1.70.0" [dependencies] # Async runtime tokio = { version = "1.0", features = ["full"] } # HTTP client reqwest = { version = "0.11", features = ["json", "rustls-tls"] } # CalDAV client library # minicaldav = { git = "https://github.com/julianolf/minicaldav", version = "0.8.0" } # Using direct HTTP implementation instead of minicaldav library # iCalendar parsing icalendar = "0.15" # Serialization serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" # Date and time handling chrono = { version = "0.4", features = ["serde"] } chrono-tz = "0.8" # XML parsing for CalDAV quick-xml = { version = "0.28", features = ["serialize"] } # Error handling thiserror = "1.0" anyhow = "1.0" # Configuration management config = "0.13" # Command line argument parsing clap = { version = "4.0", features = ["derive"] } # Logging and tracing tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] } # UUID generation for calendar items uuid = { version = "1.0", features = ["v4", "serde"] } # Base64 encoding for authentication base64 = "0.21" # URL parsing url = "2.3" # TOML parsing toml = "0.8" [dev-dependencies] tokio-test = "0.4" tempfile = "3.0" [[bin]] name = "caldav-sync" path = "src/main.rs" [profile.release] opt-level = 3 lto = true codegen-units = 1 panic = "abort" [profile.dev] debug = true opt-level = 0