graphql-engine/server/src-lib/Hasura/Backends/MSSQL/Instances
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
..
API.hs server/MSSQL: Event Delivery System (Incremental PR - 3) 2022-04-21 07:20:34 +00:00
Execute.hs Upgrade Ormolu to v0.5. 2022-11-02 20:55:13 +00:00
Metadata.hs Push capabilities resolution code into BackendMetadata type class 2022-09-05 02:44:10 +00:00
Schema.hs server: reduce schema contexts to the bare minimum 2022-11-17 10:35:54 +00:00
SchemaCache.hs Define IR types for AggregationPredicates. 2022-08-19 15:41:47 +00:00
Transport.hs server: support query tags for MSSQL data sources 2022-04-28 19:34:45 +00:00
Types.hs relocate 'ServerReplicas' and 'ResizePoolStrategy' types 2022-10-20 01:34:17 +00:00