Error chain
It seems to me that high-level, convenient, extensible, and robust error handling in Rust has always been difficult to achieve (heck, it's just a hard thing period). It's never been super clear to me if there's a "recommended" way to deal with it. Apparently there was error-chain
, and then failure
came along to replace it, but then failure
fell out of favor, thiserror
is also popular, and error-chain
has come to be maintained again.
Long and short of it is, the last error handling overhaul basically implemented a stripped down version of error-chain without dynamic typing. I'm not opposed to a little dynamic typing in error handling because it makes it so much easier to handle on the development end.
I'm working on package construction right now, partially to try out this new setup to see how well it works, and so far I like it better than the other stuff I've come up with. Once I get my package builder mostly put together and some more tests written to generate some error conditions, this will be GTM.