caldir-core 0.15.0

Core library for caldir calendar storage, sync, and provider protocol
Documentation
use std::path::PathBuf;

#[derive(Debug, thiserror::Error)]
pub enum EventError {
    #[error("failed to read event from {0}: {1}")]
    Io(PathBuf, #[source] std::io::Error),

    #[error("failed to parse ICS {0}: {1}")]
    InvalidIcs(String, String),

    #[error("expected {expected} event(s) in ICS, found {found}")]
    UnexpectedEventCount { expected: usize, found: usize },

    #[error("event is missing a start time (DTSTART)")]
    MissingStart,

    #[error("event is missing a UID")]
    MissingUid,

    #[error("no attendee matching {email}")]
    AttendeeNotFound { email: String },
}