Use wrapped exception instead of result for error propagation
The database use to handle issues with result type, which led to a complex Trace
module with a lot of bind and a complex codebase.
Instead, function that can fail are now wrapped in try_with
which create a local exception and requires an handler for this exception. The main function in trace for error casting and propagation have been adapted to this new formalism, the other are discarded
This transformation allowed to simplify several function that was returning result for homogeneity without actually ever failling. Thus removing many unecessary bind
-
has a changelog entry
Edited by Pierre-Emmanuel Wulfman