chart/4.39.71
pcapriotti
tagged this
07 Dec 08:38
* Remove redundant copy of error body from Wai.Error * Prevent unnecessary federator error wrapping Federator is return Wai errors extended with extra data. However, that extra data contains the infrastructure domain of the target backend, which is not the right domain to show in the error. Furthermore, when running integration tests locally, the domain reported there is simply `localhost`, which is not considered a valid domain by our JSON parser. That caused the error not to be recognised as a valid Wai.Error, and therefore the error-catching middleware was rewrapping it. * Remove dead code * Remove more dead code. The `AsWai` class had a `waiErrorDescription` method, which forced every error to implement that function even if they were not using it to construct a `Wai.Error` value. This is now gone, which means that two of the errors don't have to implement it. * Add inner error to Wai.Error This can be used to represent nested failures (e.g. a federator reporting a remote error) without having to serialise the nested error into the message. * Add nested error to federation remote error value * Add CHANGELOG entry * Test error wrapping This test creates a fake ingress that always returns an error, then tries to access it by making a federated user query. * Lint * Fix federation denied check in startBackend * Make sure mock server is killed in the finaliser * Fix root path in integration Mock * Lint * Use correct certificate paths in CI * Set fallback inner error * Spawn federator instead of ingress on error test * Minor refactoring Co-authored-by: Mango The Fourth <[email protected]> * Restore explicit pattern matching * Avoid boolean argument in mock server --------- Co-authored-by: Mango The Fourth <[email protected]>