The claw product (the daemon, the feed integrations, the client tools, and the web and android trees) extracted from the framework repository, keeping its history. The framework crates the product pulls are all on crates.io at 0.2.3, so the in-tree path dependencies became versions and the workspace resolves without the framework checkout.
51 lines
1.8 KiB
TOML
51 lines
1.8 KiB
TOML
[package]
|
|
name = "rhema-calendar-integration"
|
|
description = "The calendar integration: ICS/webcal feeds, CalDAV collections, and the Google Calendar API normalized into one occurrence vocabulary for reminder-style dispatch"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
authors.workspace = true
|
|
# The resident tier is still indev: `cargo publish --workspace` skips
|
|
# it until the claw ships.
|
|
publish = false
|
|
|
|
[dependencies]
|
|
rusqlite = { version = "0.40", features = ["bundled"] }
|
|
# The reminder source: one `Source` over the feeds, detect-pass shaped
|
|
# like the task scheduler's
|
|
rhema-autonomous-agent = "0.2.3"
|
|
# The reminder source ingests its slots into a `Dispatcher`; the event
|
|
# and key-function shapes are the dispatcher's
|
|
rhema-rsd = "0.2.3"
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
# HTTP against the three feed kinds: one bounded request per poll, no
|
|
# streaming
|
|
reqwest = { version = "0.12", features = ["json"] }
|
|
# The CalDAV adapter reads 207 multistatus bodies; the element set it
|
|
# cares about is small enough that a pull parser beats a DOM
|
|
quick-xml = "0.41"
|
|
# Every wire time (RFC 3339, iCalendar's compact `YYYYMMDDTHHMMSS[Z]`,
|
|
# `VALUE=DATE` all-days) normalizes to an OffsetDateTime, and the
|
|
# vocabulary's instants round-trip as RFC 3339.
|
|
time = { version = "0.3", default-features = false, features = [
|
|
"parsing",
|
|
"formatting",
|
|
"serde-well-known",
|
|
] }
|
|
|
|
[dev-dependencies]
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "sync", "time"] }
|
|
# In-process HTTP mocks for offline tests
|
|
wiremock = "0.6"
|
|
# File-backed stores in offline tests (the fed-slot ledger's restart
|
|
# behavior)
|
|
tempfile = "3"
|
|
|
|
[lints]
|
|
workspace = true
|