feat: bubble up the entire reqwest error #175
Merged
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.
This PR changes the conversion of the reqwest error, that may occur in the
iceberg-rest-catalog
crate, fromInvalidFormat
toExternal
variant.Besides the fact that
External
seems a more appropriate choice semantically, there's also the matter of obfuscating relevant information buried in the error. The present "downcasting" the reqwest error into a string wrapped up byInvalidFormat
results in error messages likeerror sending request for url (https://lakekeeper-ssl.dev/catalog/v1/568203c4-2034-11f0-894d-bb6b55e6f56f/namespaces) doesn't have the right format
. This is not informative enough, but it also does not allow users of this crate to further troubleshoot the error as only its string representation remains.In contrast, if wrapped by
External
, one could use a recipe like seanmonstar/reqwest#2342 (reply in thread), in order to unravel more information and present it to the user.