## Description 🔖
This adds the ability to edit **GraphQL Field Customization** when either connecting or editing a db connection for an agent.
This was implemented using the newest form and form components:
<img width="548" alt="Screen Shot 2022-09-29 at 3 42 16 PM" src="https://user-images.githubusercontent.com/49927862/193155139-c0eb71fb-4829-42d9-8ec1-90582fe8054a.png">
## Solution and Design 🎨
This is a fairly minimal addition that makes use of the existing `react-hook-form` compatible `Form` and components. I had to edit the zod schema with the correct properties from the spec for GQL Sources.
I created a new dir for the `CustomizationForm` and implemented it in both the Connect and Edit components.
A quick note on a directory convention I am using here:
It's fairly common to have a components folder, and then within that, have sub-directories for more complicated components.
In that model, I have found it useful to use a `parts` directory as a next level of granularity within a component directory.
This helps to avoid cluttered components folder, by optionally adding a `parts` folder inside a component's folder for pieces that you want to break out but are NOT shared with anything else.
I've done this here with a fairly simple component `src/features/ConnectDB/components/Customization/parts/SectionHeader.tsx`, but one that benefits from having it's own component.
## Review Setup 💻
Video of feature:
https://www.loom.com/share/d737afca4be04da28f6943c1c8164d6f
### Tests
Added new customization form to storybook here ->> http://localhost:6006/?path=/story/data-connect-graphql-field-customization--primary
### Note on commit history
We had some issues trying to fix my accidental commital of a package-lock.json file and ended up doing some song and dance which involved @solomon-b ending up with credit for the first few commits. Just as a note for history, his name is on them, but it's my code, so if there's something to comment on, direct it to me.
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6134
Co-authored-by: Solomon <24038+solomon-b@users.noreply.github.com>
GitOrigin-RevId: 0c8891e246e5d048e70b6a8a91331f21049d1c8c
I didn't track why these were left behind. Presumably GHC 9.2 has an improved redundant constraint checker, so that explains a few. Otherwise, perhaps code got refactored along the way.
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6256
GitOrigin-RevId: b6275edf3e867f8e33bdec533ce9932381d36bbb
- Remove a few unnecessary helper functions
- Delete kind annotations
- Bring GHC warnings and language extensions more in line with those of the `graphql-engine` library
- Constrain unconstrained dependency on `hasql-pool`
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6251
GitOrigin-RevId: 10c2530f007f70cf1464cec36566ee2264589881
What fun!
Tested on x86_64 Linux and aarch64 macOS. I had to add a bunch of Haskell package overrides specifically for macOS on aarch64, but I made them apply to all macOS users because, well, it's just a couple of us right now and we're both using aarch64.
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6239
GitOrigin-RevId: 4e5a20d21eb24c736e8663de3f1e05ce5705284a
This updates _docker-compose.yml_ to use the new image tags, and updates _run.sh_ accordingly.
While I was at it, I also added a `docker compose pull` instruction to make sure that we don't have surprises half-way through the script, and a few `echo` lines for clarity.
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6235
GitOrigin-RevId: 3855f6898bd3e906c5f423d9d0d6a7031de3777a
Now that we use the mssql-tools image for running `sqlcmd`, we no longer need this (or indeed use it very much).
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6152
GitOrigin-RevId: be8852a93889553c3ffd2ec00c0dda81b36c3d05
Trying to run the image while debugging: https://github.com/hasura/graphql-engine-mono/pull/6172/ I get:
$ docker run -it hasura/graphql-engine:dev-b91a92b-jberrymanalexghc92-ci-REBASE10-cherry-.ubuntu.amd64
graphql-engine: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
It seems as though the ubuntu image has been broken in some way since
moving to jammy (Which only ships with `libssl.3`), but strangely this
only shows up on main, not in PRs (except on the 9.2 branch…?)
we use this in tests for instance: .buildkite/scripts/test-dc-sdk.sh
Strangely I don't get the error with an image from recent PRs:
https://github.com/hasura/graphql-engine-mono/pull/6148https://github.com/hasura/graphql-engine-mono/pull/6156 (to latest release)
...although Samir sees it on some he looked at
```
docker run -it hasura/graphql-engine:dev-46eaa39-plcreleasev2.13bq-scalars.ubuntu.amd64 graphql-engine version
Fatal Error: Either of --metadata-database-url or --database-url option expected
```
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6176
Co-authored-by: Samir Talwar <47582+SamirTalwar@users.noreply.github.com>
GitOrigin-RevId: 6eea65f2d1dc7f0d13bcd58f94737810d290cb89
We seem to be rebuilding hpack on every PR. I'm hoping this will allow PRs to share a cache.
I have also changed the cache key to include the entirety of _server/VERSIONS.json_, and added the GHC version there, to make sure it's properly invalidated.
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6142
GitOrigin-RevId: fc61a26ad721f59f52687913f6978902f4c2ca0a
- Remove `onJust` in favor of the more general `for_`
- Remove `withJust` which was used only once
- Remove `hashNub` in favor of `Ord`-based `uniques`
- Simplify some of the implementations in `Hasura.Prelude`
- Add `hlint` hint from `maybe True` to `all`, and `maybe False` to `any`
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6173
GitOrigin-RevId: 2c6ebbe2d04f60071d2a53a2d43c6d62dbc4b84e