mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-20 22:11:45 +03:00
0a1628c0cc
## Description This PR does several different things that happen to overlap; the most important being: - it removes `RunT`: it was redundant in places where we already had `Handler`, and only used in one other place, `SchemaUpdate`, for which a local `SchemaUpdateT` is more than enough; - it reduces the number of places where we create a `ServerConfigCtx`, since now `HasServerConfigCtx` can be implemented directly by `SchemaUpdateT` and `Handler` based on the full `AppContext`; - it drastically reduces the number of arguments we pass around in the app init code, by introducing `HasAppEnv`; - it simplifies `HandlerCtx` to reduce duplication In doing so, this changes paves the way towards removing `ServerConfigCtx`, since there are only very few places where we construct it: we can now introduce smaller classes than `HasServerConfigCtx`, that expose only a relevant subset of fields, and implement them where we now implement `HasServerConfigCtx`. This PR is loosely based on ideas in #8337, that are no longer applicable due to the changes introduced in #8159. A challenge of this PR was the postgres tests, which were running in `PGMetadataStorageAppT CacheBuild` 🙀 PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8392 GitOrigin-RevId: b90c1359066d20dbea329c87762ccdd1217b4d69 |
||
---|---|---|
.. | ||
Server | ||
EventTriggerCleanupSuite.hs | ||
StreamingSubscriptionSuite.hs |