graphql-engine/server/src-lib/Hasura/Eventing
Samir Talwar 40617719ef server: Remove the Show instance from QErr and anything that touches it.
We only use these `Show` instances in error messages (where we call
`show` explicitly anyway) and test cases (in which Hspec requires `Show
a` for any `a` in an assertion).

This removes the instance in favor of a custom `showQErr` function
(which serializes the error to JSON). It is then used in certain error
message production which previously called `show` on a `QErr`.

There are two places where we serialize a QErr and then construct a new
QErr from the resulting string. Instead, we modify the existing QErr to
add extra information.

An orphan `Show QErr` instance is retained for tests so that we can have
nice test failure messages.

This is preparation for future changes in which the error message within
`QErr` will not be exposed directly, and therefore will not have a
`Show` instance. That said, it feels like a sensible kind of cleanup
anyway.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4897
GitOrigin-RevId: 8f79f7a356f0aea571156f39aefac242bf751f3a
2022-07-01 11:48:26 +00:00
..
ScheduledTrigger server: Remove the Show instance from QErr and anything that touches it. 2022-07-01 11:48:26 +00:00
Common.hs server, pro: actually reformat the code-base using ormolu 2021-09-23 22:57:37 +00:00
EventTrigger.hs server: Remove the Show instance from QErr and anything that touches it. 2022-07-01 11:48:26 +00:00
HTTP.hs server: Refactor TByteString to SerializableBlob 2022-06-17 09:57:38 +00:00
ScheduledTrigger.hs server: Remove the Show instance from QErr and anything that touches it. 2022-07-01 11:48:26 +00:00