anoma / namada

Rust implementation of Namada, a Proof-of-Stake L1 for interchain asset-agnostic privacy
https://namada.net
GNU General Public License v3.0
2.39k stars 945 forks source link

consider using `std::io::Error` in place of `storage_api::Error` #1214

Closed tzemanovic closed 2 weeks ago

tzemanovic commented 1 year ago

The std::io::Error has the same design considerations that we want for storage_api::Error and is familiar to Rust devs, so it might be better to use it than to re-invent our own. Additionally, std::io::Error is well suited for no-std (wasm) env too.

tzemanovic commented 10 months ago

a new alternative that improves many things in error handling: https://github.com/hashintel/hash/tree/main/libs/error-stack

tzemanovic commented 4 months ago

another new crate that provides nice error handling ergonomics without giving up type-safety https://crates.io/crates/terrors (can be used in combination with some other crate)