Box<dyn Error> — standard. anyhow::Error — rich context.
Box<dyn Error>:
anyhow::Error:
1// Box<dyn Error>2fn read() -> Result<String, Box<dyn std::error::Error>> {3 let s = std::fs::read_to_string("file.txt")?;4 Ok(s)5}67// anyhow8fn read() -> anyhow::Result<String> {9 let s = std::fs::read_to_string("file.txt")10 .context("Failed to read config")?;11 Ok(s)12}
Key: Box<dyn Error> for std, anyhow for apps.