replace anyhow and log with color_eyre and tracing

Since Himalaya is intended to be ran as a CLI in the terminal emulator
environment, their user experience could vastly improve with better and
more colorful error messages and logging.

This change will replace more minimal libraries for error-reporting/han-
dling with their more advanced counterparts.

Since these crates have tight integrations, this commit will change both
in one shot.

Also we have don't need env_logger any more. So I also have removed that
guy as well.

Signed-off-by: Perma Alesheikh <me@prma.dev>
This commit is contained in:
Perma Alesheikh
2024-04-15 00:10:46 +03:30
committed by Clément DOUIN
parent cc79f5cc38
commit 5a0ff83a5e
68 changed files with 376 additions and 198 deletions
+2 -2
View File
@@ -1,7 +1,7 @@
use anyhow::Result;
use clap::Parser;
use color_eyre::Result;
use email::{backend::feature::BackendFeatureSource, folder::add::AddFolder};
use log::info;
use tracing::info;
#[cfg(feature = "account-sync")]
use crate::cache::arg::disable::CacheDisableFlag;
+2 -2
View File
@@ -1,9 +1,9 @@
use anyhow::Result;
use clap::Parser;
use color_eyre::Result;
use dialoguer::Confirm;
use email::{backend::feature::BackendFeatureSource, folder::delete::DeleteFolder};
use log::info;
use std::process;
use tracing::info;
#[cfg(feature = "account-sync")]
use crate::cache::arg::disable::CacheDisableFlag;
+2 -2
View File
@@ -1,7 +1,7 @@
use anyhow::Result;
use clap::Parser;
use color_eyre::Result;
use email::{backend::feature::BackendFeatureSource, folder::expunge::ExpungeFolder};
use log::info;
use tracing::info;
#[cfg(feature = "account-sync")]
use crate::cache::arg::disable::CacheDisableFlag;
+2 -2
View File
@@ -1,7 +1,7 @@
use anyhow::Result;
use clap::Parser;
use color_eyre::Result;
use email::{backend::feature::BackendFeatureSource, folder::list::ListFolders};
use log::info;
use tracing::info;
#[cfg(feature = "account-sync")]
use crate::cache::arg::disable::CacheDisableFlag;
+1 -1
View File
@@ -4,7 +4,7 @@ mod expunge;
mod list;
mod purge;
use anyhow::Result;
use color_eyre::Result;
use clap::Subcommand;
use crate::{config::TomlConfig, printer::Printer};
+2 -2
View File
@@ -1,9 +1,9 @@
use anyhow::Result;
use clap::Parser;
use color_eyre::Result;
use dialoguer::Confirm;
use email::{backend::feature::BackendFeatureSource, folder::purge::PurgeFolder};
use log::info;
use std::process;
use tracing::info;
#[cfg(feature = "account-sync")]
use crate::cache::arg::disable::CacheDisableFlag;
+1 -1
View File
@@ -2,7 +2,7 @@ pub mod arg;
pub mod command;
pub mod config;
use anyhow::Result;
use color_eyre::Result;
use serde::Serialize;
use std::ops;