diff options
Diffstat (limited to 'lib/domain')
68 files changed, 198 insertions, 189 deletions
diff --git a/lib/domain/libimagbookmark/Cargo.toml b/lib/domain/libimagbookmark/Cargo.toml index eb441965..fbabc17c 100644 --- a/lib/domain/libimagbookmark/Cargo.toml +++ b/lib/domain/libimagbookmark/Cargo.toml @@ -22,7 +22,7 @@ maintenance = { status = "actively-developed" } [dependencies] url = "2" regex = "1.1.7" -failure = "0.1.5" +anyhow = "1" libimagstore = { version = "0.10.0", path = "../../../lib/core/libimagstore" } libimagerror = { version = "0.10.0", path = "../../../lib/core/libimagerror" } diff --git a/lib/domain/libimagbookmark/src/bookmark.rs b/lib/domain/libimagbookmark/src/bookmark.rs index 0e2d7695..a7f8438c 100644 --- a/lib/domain/libimagbookmark/src/bookmark.rs +++ b/lib/domain/libimagbookmark/src/bookmark.rs @@ -17,7 +17,7 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA // -use failure::Fallible as Result; +use anyhow::Result; use libimagentryutil::isa::Is; use libimagentryutil::isa::IsKindHeaderPathProvider; diff --git a/lib/domain/libimagbookmark/src/lib.rs b/lib/domain/libimagbookmark/src/lib.rs index bef622cf..c46486e4 100644 --- a/lib/domain/libimagbookmark/src/lib.rs +++ b/lib/domain/libimagbookmark/src/lib.rs @@ -40,7 +40,7 @@ extern crate url; extern crate uuid; extern crate regex; -#[macro_use] extern crate failure; +#[macro_use] extern crate anyhow; #[macro_use] extern crate libimagstore; #[macro_use] extern crate libimagentryutil; diff --git a/lib/domain/libimagbookmark/src/store.rs b/lib/domain/libimagbookmark/src/store.rs index 536e8900..a9519302 100644 --- a/lib/domain/libimagbookmark/src/store.rs +++ b/lib/domain/libimagbookmark/src/store.rs @@ -17,7 +17,7 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA // -use failure::Fallible as Result; +use anyhow::Result; use uuid::Uuid; use url::Url; @@ -73,7 +73,7 @@ impl BookmarkStore for Store { fn get_bookmark_by_id<'a>(&'a self, sid: StoreId) -> Result<Option<FileLockEntry<'a>>> { if let Some(entry) = self.get(sid)? { if !entry.is_bookmark()? { - Err(format_err!("Not a bookmark: {}", entry.get_location())) + Err(anyhow!("Not a bookmark: {}", entry.get_location())) } else { Ok(Some(entry)) } @@ -92,7 +92,7 @@ impl BookmarkStore for Store { drop(fle); self.delete(id) } else { - Err(format_err!("Not a bookmark: {}", fle.get_location())) + Err(anyhow!("Not a bookmark: {}", fle.get_location())) } } diff --git a/lib/domain/libimagcalendar/Cargo.toml b/lib/domain/libimagcalendar/Cargo.toml index b63ad0c3..cc733fc7 100644 --- a/lib/domain/libimagcalendar/Cargo.toml +++ b/lib/domain/libimagcalendar/Cargo.toml @@ -20,12 +20,13 @@ is-it-maintained-open-issues = { repository = "matthiasbeyer/imag" } maintenance = { status = "actively-developed" } [dependencies] -failure = "0.1" +anyhow = "1" log = "0.4" toml = "0.5" toml-query = "0.9" vobject = "0.7" chrono = "0.4" +failure = "0.1" libimagentrylink = { version = "0.10.0", path = "../../../lib/entry/libimagentrylink" } libimagentryref = { version = "0.10.0", path = "../../../lib/entry/libimagentryref" } diff --git a/lib/domain/libimagcalendar/src/event.rs b/lib/domain/libimagcalendar/src/event.rs index e2aaaccb..550d2c1a 100644 --- a/lib/domain/libimagcalendar/src/event.rs +++ b/lib/domain/libimagcalendar/src/event.rs @@ -17,7 +17,7 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA // -use failure::Fallible as Result; +use anyhow::Result; use libimagentryutil::isa::Is; use libimagentryutil::isa::IsKindHeaderPathProvider; diff --git a/lib/domain/libimagcalendar/src/lib.rs b/lib/domain/libimagcalendar/src/lib.rs index fd3b8721..360ecc64 100644 --- a/lib/domain/libimagcalendar/src/lib.rs +++ b/lib/domain/libimagcalendar/src/lib.rs @@ -38,10 +38,11 @@ #![recursion_limit="128"] #[macro_use] extern crate log; -#[macro_use] extern crate failure; +#[macro_use] extern crate anyhow; extern crate vobject; extern crate toml; extern crate toml_query; +extern crate failure; #[macro_use] extern crate libimagstore; extern crate libimagerror; diff --git a/lib/domain/libimagcalendar/src/store.rs b/lib/domain/libimagcalendar/src/store.rs index e18b8fe1..14d27921 100644 --- a/lib/domain/libimagcalendar/src/store.rs +++ b/lib/domain/libimagcalendar/src/store.rs @@ -19,10 +19,11 @@ use std::path::Path; -use failure::Fallible as Result; +use anyhow::Result; use toml::Value; use toml_query::insert::TomlValueInsertExt; use vobject::ICalendar; +use failure::Fail; use libimagentryutil::isa::Is; use libimagentryref::reference::Config; @@ -75,7 +76,8 @@ impl<'a> EventStore<'a> for Store { Coll: AsRef<str> { let text = std::fs::read_to_string(p.as_ref())?; - Ok(ICalendar::build(&text)? + Ok(ICalendar::build(&text) + .map_err(|e| e.compat())? .events() .filter_map(|rresult| match rresult { Ok(event) => Some(event), @@ -86,7 +88,7 @@ impl<'a> EventStore<'a> for Store { }) .map(|event| { let uid = event.uid().ok_or_else(|| { - format_err!("Event in {} has no UID, but icalendar events must have one.", p.as_ref().display()) + anyhow!("Event in {} has no UID, but icalendar events must have one.", p.as_ref().display()) })?; let sid = crate::module_path::new_id(uid.raw())?; diff --git a/lib/domain/libimagcontact/Cargo.toml b/lib/domain/libimagcontact/Cargo.toml index 0e13a0e0..74dc3fd0 100644 --- a/lib/domain/libimagcontact/Cargo.toml +++ b/lib/domain/libimagcontact/Cargo.toml @@ -20,7 +20,8 @@ is-it-maintained-open-issues = { repository = "matthiasbeyer/imag" } maintenance = { status = "actively-developed" } [dependencies] -failure = "0.1.5" +anyhow = "1" +failure = "0.1" log = "0.4.6" toml = "0.5.1" toml-query = "0.9.2" diff --git a/lib/domain/libimagcontact/src/contact.rs b/lib/domain/libimagcontact/src/contact.rs index 50f7a58d..b32edaa6 100644 --- a/lib/domain/libimagcontact/src/contact.rs +++ b/lib/domain/libimagcontact/src/contact.rs @@ -20,13 +20,13 @@ use toml::to_string as toml_to_string; use toml::from_str as toml_from_str; use toml_query::read::TomlValueReadExt; -use failure::Fallible as Result; -use failure::Error; +use anyhow::Result; +use anyhow::Error; use libimagstore::store::Entry; use libimagentryutil::isa::Is; use libimagentryutil::isa::IsKindHeaderPathProvider; -use libimagerror::errors::ErrorMsg as EM; +use libimagerror::errors::Error as EM; use crate::deser::DeserVcard; diff --git a/lib/domain/libimagcontact/src/iter.rs b/lib/domain/libimagcontact/src/iter.rs index 148ff594..c69f2f75 100644 --- a/lib/domain/libimagcontact/src/iter.rs +++ b/lib/domain/libimagcontact/src/iter.rs @@ -20,12 +20,12 @@ use libimagstore::storeid::StoreIdIterator; use libimagstore::store::Store; use libimagstore::store::FileLockEntry; -use libimagerror::errors::ErrorMsg as EM; +use libimagerror::errors::Error as EM; use crate::contact::Contact; -use failure::Fallible as Result; -use failure::Error; -use failure::ResultExt; +use anyhow::Result; +use anyhow::Error; +use anyhow::Context; pub struct ContactIter<'a>(StoreIdIterator, &'a Store); diff --git a/lib/domain/libimagcontact/src/lib.rs b/lib/domain/libimagcontact/src/lib.rs index 7e0d05ac..24692465 100644 --- a/lib/domain/libimagcontact/src/lib.rs +++ b/lib/domain/libimagcontact/src/lib.rs @@ -38,12 +38,13 @@ #![recursion_limit="128"] #[macro_use] extern crate log; -#[macro_use] extern crate failure; +#[macro_use] extern crate anyhow; extern crate vobject; extern crate toml; extern crate toml_query; extern crate uuid; extern crate serde; +extern crate failure; #[macro_use] extern crate serde_derive; #[macro_use] extern crate libimagstore; diff --git a/lib/domain/libimagcontact/src/store.rs b/lib/domain/libimagcontact/src/store.rs index 1b679044..527a8fe8 100644 --- a/lib/domain/libimagcontact/src/store.rs +++ b/lib/domain/libimagcontact/src/store.rs @@ -25,9 +25,10 @@ use toml::to_string as toml_to_string; use toml::from_str as toml_from_str; use toml_query::insert::TomlValueInsertExt; use vobject::vcard::Vcard; -use failure::Error; -use failure::Fallible as Result; -use failure::ResultExt; +use anyhow::Error; +use anyhow::Result; +use anyhow::Context; +use failure::Fail; use libimagstore::storeid::StoreId; use libimagstore::iter::Entries; @@ -153,11 +154,14 @@ impl<'a> ContactStore<'a> for Store { /// /// That means calculating the StoreId and the Value from the vcard data fn prepare_fetching_from_store(buf: &str) -> Result<(StoreId, Value)> { - let vcard = Vcard::build(&buf).context("Cannot parse Vcard").map_err(Error::from)?; + let vcard = Vcard::build(&buf) + .map_err(|e| e.compat()) + .map_err(Error::from) + .context("Cannot parse Vcard")?; debug!("Parsed: {:?}", vcard); let uid = vcard.uid() - .ok_or_else(|| format_err!("UID Missing: {}", buf.to_string()))?; + .ok_or_else(|| anyhow!("UID Missing: {}", buf.to_string()))?; let value = { // dirty ugly hack let serialized = DeserVcard::from(vcard); diff --git a/lib/domain/libimagcontact/src/util.rs b/lib/domain/libimagcontact/src/util.rs index 6ef5fdb1..cbe82378 100644 --- a/lib/domain/libimagcontact/src/util.rs +++ b/lib/domain/libimagcontact/src/util.rs @@ -22,7 +22,7 @@ use std::fmt::Debug; use std::fs::File; use std::io::Read; -use failure::Fallible as Result; +use anyhow::Result; pub fn read_to_string<A: AsRef<Path> + Debug>(pb: A) -> Result<String> { let mut cont = String::new(); diff --git a/lib/domain/libimagdiary/Cargo.toml b/lib/domain/libimagdiary/Cargo.toml index ef2ee3d2..50ae0ac6 100644 --- a/lib/domain/libimagdiary/Cargo.toml +++ b/lib/domain/libimagdiary/Cargo.toml @@ -25,7 +25,7 @@ log = "0.4.6" toml = "0.5.1" toml-query = "0.9.2" itertools = "0.8.0" -failure = "0.1.5" +anyhow = "1" filters = "0.3.0" libimagstore = { version = "0.10.0", path = "../../../lib/core/libimagstore" } diff --git a/lib/domain/libimagdiary/src/diary.rs b/lib/domain/libimagdiary/src/diary.rs index 95dad9e7..5a30ebc6 100644 --- a/lib/domain/libimagdiary/src/diary.rs +++ b/lib/domain/libimagdiary/src/diary.rs @@ -29,9 +29,9 @@ use chrono::Datelike; use itertools::Itertools; use chrono::naive::NaiveDateTime; use chrono::Timelike; -use failure::Fallible as Result; -use failure::ResultExt; -use failure::Error; +use anyhow::Result; +use anyhow::Context; +use anyhow::Error; use crate::entry::IsDiaryEntry; use crate::diaryid::DiaryId; diff --git a/lib/domain/libimagdiary/src/diaryid.rs b/lib/domain/libimagdiary/src/diaryid.rs index 14c94f81..353a7c35 100644 --- a/lib/domain/libimagdiary/src/diaryid.rs +++ b/lib/domain/libimagdiary/src/diaryid.rs @@ -26,10 +26,10 @@ use chrono::naive::NaiveTime; use chrono::naive::NaiveDate; use chrono::Datelike; use chrono::Timelike; -use failure::Fallible as Result; -use failure::ResultExt; -use failure::Error; -use failure::err_msg; +use anyhow::Result; +use anyhow::Context; +use anyhow::Error; + use libimagstore::storeid::StoreId; use libimagstore::storeid::IntoStoreId; @@ -202,7 +202,7 @@ fn component_to_str<'a>(com: Component<'a>) -> Result<&'a str> { Component::Normal(s) => Some(s), _ => None, }.and_then(|s| s.to_str()) - .ok_or_else(|| err_msg("ID Parse error")) + .ok_or_else(|| anyhow!("ID Parse error")) } impl FromStoreId for DiaryId { @@ -215,7 +215,7 @@ impl FromStoreId for DiaryId { fn next_component<'a>(components: &'a mut Rev<Components>) -> Result<&'a str> { components.next() - .ok_or_else(|| err_msg("ID parse error")) + .ok_or_else(|| anyhow!("ID parse error")) .and_then(component_to_str) } @@ -235,7 +235,7 @@ impl FromStoreId for DiaryId { match (hour, minute, second) { (Some(h), Some(m), Some(s)) => Ok((h, m, s)), - _ => Err(err_msg("ID Parse error")), + _ => Err(anyhow!("ID Parse error")), } })?; @@ -244,7 +244,7 @@ impl FromStoreId for DiaryId { s.parse::<u32>() .context("Failed to parse day from u32") .map_err(Error::from) - .context(err_msg("ID parse error")) + .context(anyhow!("ID parse error")) .map_err(Error::from) }); @@ -253,7 +253,7 @@ impl FromStoreId for DiaryId { s.parse::<u32>() .context("Failed to parse month from u32") .map_err(Error::from) - .context(err_msg("ID Parse error")) + .context(anyhow!("ID Parse error")) .map_err(Error::from) }); @@ -262,7 +262,7 @@ impl FromStoreId for DiaryId { s.parse::<i32>() .context("Failed to parse year from i32") .map_err(Error::from) - .context(err_msg("ID Parse error")) + .context(anyhow!("ID Parse error")) .map_err(Error::from) }); diff --git a/lib/domain/libimagdiary/src/entry.rs b/lib/domain/libimagdiary/src/entry.rs index 7707fd2b..3e3df58a 100644 --- a/lib/domain/libimagdiary/src/entry.rs +++ b/lib/domain/libimagdiary/src/entry.rs @@ -21,7 +21,7 @@ use libimagstore::store::Entry; use libimagentryutil::isa::Is; use libimagentryutil::isa::IsKindHeaderPathProvider; -use failure::Fallible as Result; +use anyhow::Result; use crate::diaryid::DiaryId; use crate::diaryid::FromStoreId; diff --git a/lib/domain/libimagdiary/src/iter.rs b/lib/domain/libimagdiary/src/iter.rs index 6c43e75b..3d79b9e6 100644 --- a/lib/domain/libimagdiary/src/iter.rs +++ b/lib/domain/libimagdiary/src/iter.rs @@ -26,9 +26,9 @@ use libimagstore::storeid::StoreIdIterator; use libimagstore::storeid::StoreId; use crate::is_in_diary::IsInDiary; -use failure::Fallible as Result; +use anyhow::Result; + -use failure::err_msg; /// A iterator for iterating over diary entries pub struct DiaryEntryIterator { @@ -150,7 +150,7 @@ impl Iterator for DiaryNameIterator { s.split("diary/") .nth(1) .and_then(|n| n.split('/').nth(0).map(String::from)) - .ok_or_else(|| err_msg("Error finding diary name")) + .ok_or_else(|| anyhow!("Error finding diary name")) })); }, } diff --git a/lib/domain/libimagdiary/src/lib.rs b/lib/domain/libimagdiary/src/lib.rs index 11a21093..78c8cf4f 100644 --- a/lib/domain/libimagdiary/src/lib.rs +++ b/lib/domain/libimagdiary/src/lib.rs @@ -42,7 +42,7 @@ extern crate chrono; extern crate toml; extern crate toml_query; extern crate itertools; -#[macro_use] extern crate failure; +#[macro_use] extern crate anyhow; extern crate filters; #[macro_use] extern crate libimagstore; diff --git a/lib/domain/libimagdiary/src/viewer.rs b/lib/domain/libimagdiary/src/viewer.rs index 1a458a1c..c79e0483 100644 --- a/lib/domain/libimagdiary/src/viewer.rs +++ b/lib/domain/libimagdiary/src/viewer.rs @@ -22,14 +22,13 @@ use std::io::Write; use std::ops::Deref; -use failure::ResultExt; -use failure::err_msg; +use anyhow::Context; +use anyhow::Result; +use anyhow::Error; use libimagstore::store::Entry; use libimagentryview::viewer::Viewer; use libimagentryview::builtin::plain::PlainViewer; -use libimagentryview::error::Error; -use libimagentryview::error::Result; use crate: |