graphql-engine/server/src-lib/Hasura/Backends/MySQL
Antoine Leblanc 42e5205eb5 server: reduce schema contexts to the bare minimum
### Description

This monster of a PR took way too long. As the title suggests, it reduces the schema context carried in the readers to the very strict minimum. In practice, that means that to build a source, we only require:
  - the global `SchemaContext`
  - the global `SchemaOptions` (soon to be renamed `SchemaSourceOptions`)
  - that source's `SourceInfo`

Furthermore, _we no longer carry "default" customization options throughout the schema_. All customization information is extracted from the `SourceInfo`, when required. This prevents an entire category of bugs we had previously encountered, such as parts of the code using uninitialized / unupdated customization info.

In turn, this meant that we could remove the explicit threading of the `SourceInfo` throughout the schema, since it is now always available through the reader context.

Finally, this meant making a few adjustments to relay and actions as well, such as the introduction of a new separate "context" for actions, and a change to how we create some of the action-specific postgres scalar parsers.

I'll highlight with review comments the areas of interest.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6709
GitOrigin-RevId: ea80fddcb24e2513779dd04b0b700a55f0028dd1
2022-11-17 10:35:54 +00:00
..
DataLoader Upgrade Ormolu to v0.5. 2022-11-02 20:55:13 +00:00
Instances server: reduce schema contexts to the bare minimum 2022-11-17 10:35:54 +00:00
Types server: remaining codecs for function metadata 2022-11-10 16:17:13 +00:00
Connection.hs Increase timeout for DC Agents 2022-07-27 07:19:44 +00:00
FromIr.hs server: transform enum with upper for graphql-default 2022-07-19 06:56:45 +00:00
Meta.hs Remove strictness annotations from data types in the Hasura.Backends hierarchy 2022-07-29 14:06:23 +00:00
Plan.hs Move Hasura.GraphQL.Parser.Column to .RQL.IR. and .GraphQL.Schema. 2022-05-30 22:07:57 +00:00
SQL.hs Remove strictness annotations from data types in the Hasura.Backends hierarchy 2022-07-29 14:06:23 +00:00
ToQuery.hs Upgrade Ormolu to v0.5. 2022-11-02 20:55:13 +00:00
Types.hs server, pro: actually reformat the code-base using ormolu 2021-09-23 22:57:37 +00:00