pub fn error_chain(error: &dyn StdError) -> StringExpand description
Flatten an error and its source() chain into one line.
SyncwebError::operation keeps a Display rendering rather than the
source, so errors whose Display is empty (for example
iroh_blobs::api::Error::Io, whose message lives in the source io::Error)
would otherwise surface as a bare variant name.