[ax] Add new error types so that it’s easier to avoid crashing #3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context
We make a few requests from one application to another application for each request. For example, we call Exit when user clicks on
deactivate
in TPS or Engage.With those external requests, it's a good practice that we don't crash our application given another application crash. For the above example, if Exit crashes, TINYpulse shouldn't crash. It should simply return an error instead.
However, some errors, such as
Curl::Err::ConnectionFailedError
is bubbling up from TinyClient to TINYpulse. While we can certainly catch those errors in TINYpulse, it's better if TinyClient provides a generic error type so that we don't have to care about the internal implementation of TinyClient.Change
This PR addresses the above problem: