From 1442d79a24292a9db961ad08c26dc7f75d40d460 Mon Sep 17 00:00:00 2001 From: Lennart <18233294+lennart-k@users.noreply.github.com> Date: Thu, 23 Jan 2025 18:56:21 +0100 Subject: [PATCH] Remove some anyhow dependencies --- Cargo.lock | 3 --- Cargo.toml | 1 - crates/caldav/Cargo.toml | 1 - crates/caldav/src/calendar/methods/post.rs | 3 +-- crates/caldav/src/error.rs | 8 ++++---- crates/carddav/Cargo.toml | 1 - crates/carddav/src/addressbook/methods/post.rs | 3 +-- crates/carddav/src/error.rs | 8 ++++---- crates/frontend/Cargo.toml | 1 - crates/store/src/calendar/object.rs | 1 - 10 files changed, 10 insertions(+), 20 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 868d87d..231170c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2765,7 +2765,6 @@ version = "0.1.0" dependencies = [ "actix-web", "actix-web-httpauth", - "anyhow", "async-trait", "base64 0.22.1", "chrono", @@ -2792,7 +2791,6 @@ version = "0.1.0" dependencies = [ "actix-web", "actix-web-httpauth", - "anyhow", "async-trait", "base64 0.22.1", "chrono", @@ -2838,7 +2836,6 @@ version = "0.1.0" dependencies = [ "actix-session", "actix-web", - "anyhow", "askama", "askama_actix", "futures-core", diff --git a/Cargo.toml b/Cargo.toml index 55053ae..add6694 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -56,7 +56,6 @@ hex = { version = "0.4.3", features = ["serde"] } mime_guess = "2.0.5" itertools = "0.14" log = "0.4" -strum = { version = "0.26", features = ["strum_macros", "derive"] } derive_more = { version = "1.0", features = [ "from", "try_into", diff --git a/crates/caldav/Cargo.toml b/crates/caldav/Cargo.toml index 6ab381c..549d28e 100644 --- a/crates/caldav/Cargo.toml +++ b/crates/caldav/Cargo.toml @@ -7,7 +7,6 @@ repository.workspace = true publish = false [dependencies] -anyhow = { workspace = true } actix-web = { workspace = true } async-trait = { workspace = true } thiserror = { workspace = true } diff --git a/crates/caldav/src/calendar/methods/post.rs b/crates/caldav/src/calendar/methods/post.rs index 0828a57..52a2e40 100644 --- a/crates/caldav/src/calendar/methods/post.rs +++ b/crates/caldav/src/calendar/methods/post.rs @@ -44,8 +44,7 @@ pub async fn route_post( let sub_id = uuid::Uuid::new_v4().to_string(); let expires = if let Some(expires) = request.expires { - chrono::DateTime::parse_from_rfc2822(&expires) - .map_err(|err| crate::Error::Other(err.into()))? + chrono::DateTime::parse_from_rfc2822(&expires).map_err(Error::from)? } else { chrono::Utc::now().fixed_offset() + chrono::Duration::weeks(1) }; diff --git a/crates/caldav/src/error.rs b/crates/caldav/src/error.rs index 955c2e9..949ffde 100644 --- a/crates/caldav/src/error.rs +++ b/crates/caldav/src/error.rs @@ -15,14 +15,14 @@ pub enum Error { #[error(transparent)] StoreError(#[from] rustical_store::Error), + #[error(transparent)] + ChronoParseError(#[from] chrono::ParseError), + #[error(transparent)] DavError(#[from] rustical_dav::Error), #[error(transparent)] XmlDecodeError(#[from] rustical_xml::XmlError), - - #[error(transparent)] - Other(#[from] anyhow::Error), } impl actix_web::ResponseError for Error { @@ -33,11 +33,11 @@ impl actix_web::ResponseError for Error { rustical_store::Error::InvalidData(_) => StatusCode::BAD_REQUEST, _ => StatusCode::INTERNAL_SERVER_ERROR, }, + Error::ChronoParseError(_) => StatusCode::INTERNAL_SERVER_ERROR, Error::DavError(err) => err.status_code(), Error::Unauthorized => StatusCode::UNAUTHORIZED, Error::XmlDecodeError(_) => StatusCode::BAD_REQUEST, Error::NotImplemented => StatusCode::INTERNAL_SERVER_ERROR, - Error::Other(_) => StatusCode::INTERNAL_SERVER_ERROR, Error::NotFound => StatusCode::NOT_FOUND, } } diff --git a/crates/carddav/Cargo.toml b/crates/carddav/Cargo.toml index d78defd..dcf02a3 100644 --- a/crates/carddav/Cargo.toml +++ b/crates/carddav/Cargo.toml @@ -7,7 +7,6 @@ repository.workspace = true publish = false [dependencies] -anyhow = { workspace = true } actix-web = { workspace = true } async-trait = { workspace = true } thiserror = { workspace = true } diff --git a/crates/carddav/src/addressbook/methods/post.rs b/crates/carddav/src/addressbook/methods/post.rs index 1778a7a..54a6815 100644 --- a/crates/carddav/src/addressbook/methods/post.rs +++ b/crates/carddav/src/addressbook/methods/post.rs @@ -29,8 +29,7 @@ pub async fn route_post( let sub_id = uuid::Uuid::new_v4().to_string(); let expires = if let Some(expires) = request.expires { - chrono::DateTime::parse_from_rfc2822(&expires) - .map_err(|err| crate::Error::Other(err.into()))? + chrono::DateTime::parse_from_rfc2822(&expires).map_err(Error::from)? } else { chrono::Utc::now().fixed_offset() + chrono::Duration::weeks(1) }; diff --git a/crates/carddav/src/error.rs b/crates/carddav/src/error.rs index 955c2e9..949ffde 100644 --- a/crates/carddav/src/error.rs +++ b/crates/carddav/src/error.rs @@ -15,14 +15,14 @@ pub enum Error { #[error(transparent)] StoreError(#[from] rustical_store::Error), + #[error(transparent)] + ChronoParseError(#[from] chrono::ParseError), + #[error(transparent)] DavError(#[from] rustical_dav::Error), #[error(transparent)] XmlDecodeError(#[from] rustical_xml::XmlError), - - #[error(transparent)] - Other(#[from] anyhow::Error), } impl actix_web::ResponseError for Error { @@ -33,11 +33,11 @@ impl actix_web::ResponseError for Error { rustical_store::Error::InvalidData(_) => StatusCode::BAD_REQUEST, _ => StatusCode::INTERNAL_SERVER_ERROR, }, + Error::ChronoParseError(_) => StatusCode::INTERNAL_SERVER_ERROR, Error::DavError(err) => err.status_code(), Error::Unauthorized => StatusCode::UNAUTHORIZED, Error::XmlDecodeError(_) => StatusCode::BAD_REQUEST, Error::NotImplemented => StatusCode::INTERNAL_SERVER_ERROR, - Error::Other(_) => StatusCode::INTERNAL_SERVER_ERROR, Error::NotFound => StatusCode::NOT_FOUND, } } diff --git a/crates/frontend/Cargo.toml b/crates/frontend/Cargo.toml index c9bd485..842a90a 100644 --- a/crates/frontend/Cargo.toml +++ b/crates/frontend/Cargo.toml @@ -11,7 +11,6 @@ askama.workspace = true askama_actix = { workspace = true } actix-session = { workspace = true } serde = { workspace = true } -anyhow = { workspace = true } thiserror = { workspace = true } tokio = { workspace = true } actix-web = { workspace = true } diff --git a/crates/store/src/calendar/object.rs b/crates/store/src/calendar/object.rs index 8d7bab0..7ea68cd 100644 --- a/crates/store/src/calendar/object.rs +++ b/crates/store/src/calendar/object.rs @@ -1,6 +1,5 @@ use super::{CalDateTime, EventObject, JournalObject, TodoObject}; use crate::Error; -use anyhow::Result; use ical::parser::{ical::component::IcalTimeZone, Component}; use serde::Serialize; use sha2::{Digest, Sha256};