Skip to content

Commit

Permalink
[autosync] Revamp error system (#1233)
Browse files Browse the repository at this point in the history
This commit rewrites the server's error system so that it can render
accurate protocol-specific HTTP responses adhering to the malformed
requests protocol tests' expectations. It also makes 400+ of the tests
relating to request deserialization pass.

Previously, we were rendering the `SmithyRejection` type in our HTTP responses
directly as we desired. However, AWS protocols' errors are not as granular:
many different request deserialization failure causes are conflated and
signaled to clients under a single `SerializationException` in the response.
This commit introduces a new concept, the `RuntimeEror` type, which groups
rejections and renders the responses that these protocols expect. Rejection
types now become an internal detail of the framework that only serve for us
maintainers to keep track and inventory all possible error causes in great
detail.

Extension types have also been renamed to better reflect their purpose.

For more information about this patch, read the added documentation to the
`rejection`, `extension`, and `runtime_error` modules.
  • Loading branch information
david-perez authored and jdisanti committed Mar 17, 2022
1 parent 9134e4c commit a38a6e9
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion .smithyrs-githash
Original file line number Diff line number Diff line change
@@ -1 +1 @@
e6d09ea686c1be31b7df0c24d87bc370173fb7b0
4afa8a3c8089b8c0cfe0100fec83f6412eac30e7

0 comments on commit a38a6e9

Please sign in to comment.