From 2591d21e94803c9fda53decc2c2b81fdd17aa65d Mon Sep 17 00:00:00 2001 From: Tim Kuehn Date: Thu, 23 Sep 2021 13:57:43 -0700 Subject: [PATCH] Update release notes to mention io::Error = --- RELEASES.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/RELEASES.md b/RELEASES.md index e2e42f5..f061b4e 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -2,6 +2,28 @@ ### Breaking Changes +### RPC error type is changing + +RPC return types are changing from `Result` to `Result`. + +Becaue tarpc is a library, not an application, it should strive to +use structured errors in its API so that users have maximal flexibility +in how they handle errors. io::Error makes that hard, because it is a +kitchen-sink error type. + +RPCs in particular only have 3 classes of errors: + +- The connection breaks. +- The request expires. +- The server decides not to process the request. + +RPC responses can also contain application-specific errors, but from the +perspective of the RPC library, those are opaque to the framework, classified +as successful responsees. + +### Open Telemetry + The Opentelemetry dependency is updated to version 0.16.x. ## 0.27.0 (2021-09-22)