Commit Graph

6736 Commits

Author SHA1 Message Date
Vijay Prasanna
110e9aa2a2 console: fix a bug that causes the console to crash when parsing internal property of the metadata error response
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8733
GitOrigin-RevId: ba614f95ed563bdc6ae3bb8e7633579cd7dc8f07
2023-04-12 08:05:51 +00:00
Naveen Naidu
0720c6a66c server: always read latest appContext in v1alpha1/config endpoint
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8727
GitOrigin-RevId: 0139a3d98262bfdf0a39ad7fc986482fb1bfe156
2023-04-12 05:55:19 +00:00
Tom Harding
168037df02 Add a test for multiplexing logical models
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8720
GitOrigin-RevId: da435a5700929592eb95d49dbaa9b4531c10042e
2023-04-11 16:59:41 +00:00
Nicolas Beaussart
eaf6385a28 frontend: remove vendor source maps
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8715
GitOrigin-RevId: 10a0666e2676d9fdc9a5bc5a9120021d0d94095b
2023-04-11 16:15:54 +00:00
Julian@Hasura
7b6e81e789 Re-mount browse rows when users switch between tables DSF-291
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8718
GitOrigin-RevId: c497c499b507a257057ad29f4a777a1d0b4a1c50
2023-04-11 15:42:00 +00:00
Sean Park-Ross
7053b87616 Docs: Refactor UPPERCASE admonitions
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8717
GitOrigin-RevId: 1bd5c2dff9fe19f5d2bc3fec674c1d77f7d53861
2023-04-11 15:00:49 +00:00
Vijay Prasanna
69949eff60 console: fix refresh metadata issue and misc UI improvements
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8714
GitOrigin-RevId: 291d90482f55df3d5aeaa4ccb0d69ebc71795d4e
2023-04-11 14:23:55 +00:00
Samir Talwar
6747ee9872 cli: Add the custom_return_types field.
This has been split out from logical models.

Name pending; it may change in the future.

[NDAT-593]: https://hasurahq.atlassian.net/browse/NDAT-593?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8712
GitOrigin-RevId: 25776af883e94bead05af7c97cdf258f4b65c5d1
2023-04-11 13:49:28 +00:00
Toan Nguyen
713b434aef server,frontend: generic EE SSO login for console with multiple identity providers
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8035
Co-authored-by: Vishnu Bharathi <4211715+scriptnull@users.noreply.github.com>
Co-authored-by: Stefano Magni <173663+NoriSte@users.noreply.github.com>
GitOrigin-RevId: 3c5d5d899578c2fe50af8569318e25495f380878
2023-04-11 13:15:27 +00:00
Sean Park-Ross
8849bc5f78 Docs: Remove Hasura Data
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8586
GitOrigin-RevId: ae9383fd10972d2b441f66b59a6ce5cb1c0ae7b3
2023-04-11 12:05:12 +00:00
Sean Park-Ross
3509ef8afc Docs: Mark Migrations as applied
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8437
GitOrigin-RevId: 3d0cfbdd7c2fb14af1d761abc1bf4f883fc5d516
2023-04-11 12:02:41 +00:00
Rob Dominguez
a5dec6ca72 docs: add env var instructions for snowflake
[DOCS-837]: https://hasurahq.atlassian.net/browse/DOCS-837?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8628
GitOrigin-RevId: 7441f15dea3aaf21d18df8b5606a4b4bd971c9d3
2023-04-11 11:07:37 +00:00
Vijay Prasanna
a1f82dde61 console: update CockroachDB release type to GA
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8671
GitOrigin-RevId: 78f79c0cf01abae4d749ded7c9613630c42ca1bd
2023-04-11 11:03:33 +00:00
Gil Mizrahi
5d518f62a9 cleanup(tests): remove the type class in logimo typechecking test
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8698
GitOrigin-RevId: 367cbc38ee7260c499a42b249b94463f2235ae0f
2023-04-11 10:29:39 +00:00
Abhijeet Khangarot
51afe114a5 frontend: fix react-bootstrap modal with radix modal
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8706
Co-authored-by: Varun Choudhary <68095256+Varun-Choudhary@users.noreply.github.com>
Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: 7b6db44363bd797d1af00517d6a7b2ef6471fff7
2023-04-11 09:50:46 +00:00
Gil Mizrahi
4696b60ec7 chore(debugging): convert trace ghc warnings to hlint warnings
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8700
GitOrigin-RevId: 29b1ee9172bb10823420de9555c3e22f9846facd
2023-04-11 09:06:56 +00:00
Vijay Prasanna
6df11fbf2c console: add mariadb to the list of enterprise drivers
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8692
GitOrigin-RevId: d3a72c26212bb388dc3945e1d28d5d181385d9d6
2023-04-11 08:29:43 +00:00
David Overton
346804fc67 Support nested object fields in DC API and use this to implement nest…
## Description

This change adds support for nested object fields in HGE IR and Schema Cache, the Data Connectors backend and API, and the MongoDB agent.

### Data Connector API changes

- The `/schema` endpoint response now includes an optional set of GraphQL type definitions. Table column types can refer to these definitions by name.
- Queries can now include a new field type `object` which contains a column name and a nested query. This allows querying into a nested object within a field.

### MongoDB agent changes

- Add support for querying into nested documents using the new `object` field type.

### HGE changes

- The `Backend` type class has a new type family `XNestedObjects b` which controls whether or not a backend supports querying into nested objects. This is currently enabled only for the `DataConnector` backend.
- For backends that support nested objects, the `FieldInfo` type gets a new constructor `FINestedObject`, and the `AnnFieldG` type gets a new constructor `AFNestedObject`.
- If the DC `/schema` endpoint returns any custom GraphQL type definitions they are stored in the `TableInfo` for each table in the source.
- During schema cache building, the function `addNonColumnFields` will check whether any column types match custom GraphQL object types stored in the `TableInfo`. If so, they are converted into `FINestedObject` instead of `FIColumn` in the `FieldInfoMap`.
- When building the `FieldParser`s from `FieldInfo` (function `fieldSelection`) any `FINestedObject` fields are converted into nested object parsers returning `AFNestedObject`.
- The `DataConnector` query planner converts `AFNestedObject` fields into `object` field types in the query sent to the agent.

## Limitations

### HGE not yet implemented:
- Support for nested arrays
- Support for nested objects/arrays in mutations
- Support for nested objects/arrays in order-by
- Support for filters (`where`) in nested objects/arrays
- Support for adding custom GraphQL types via track table metadata API
- Support for interface and union types
- Tests for nested objects

### Mongo agent not yet implemented:

- Generate nested object types from validation schema
- Support for aggregates
- Support for order-by
- Configure agent port
- Build agent in CI
- Agent tests for nested objects and MongoDB agent

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7844
GitOrigin-RevId: aec9ec1e4216293286a68f9b1af6f3f5317db423
2023-04-11 01:30:37 +00:00
Sean Park-Ross
a1cd2b8176 Docs: Websocket Auth Clarification
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8695
GitOrigin-RevId: c19c121083e768d805d2adad38f7027ecd134957
2023-04-10 15:33:44 +00:00
Daniel Harvey
99b0139275 chore(server): variable renaming around custom return type permissions
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8624
Co-authored-by: Gil Mizrahi <8547573+soupi@users.noreply.github.com>
GitOrigin-RevId: 901db6df865ce0433399731f878c6f3a10cf6e87
2023-04-10 14:17:20 +00:00
Puru Gupta
c54697b958 server: enable remote schema to remote schema relationship for unauthenticated context
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8562
GitOrigin-RevId: 2b1e2241fd2dbe379d5f9e40224e1245f1188475
2023-04-10 13:35:38 +00:00
Karthikeyan Chinnakonda
ddf34d9ffa Miscellaneous scheduled triggers fixes
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8618
GitOrigin-RevId: f9e3eb0d3d8b2ba36344b9ce0739c6a51e77f59e
2023-04-10 12:27:21 +00:00
Rakesh Emmadi
b18c86c7f7 docs: document the strict parameter in healthz API reference
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8693
GitOrigin-RevId: 9201279658a474da7624ab439345ef62fbc56fc4
2023-04-10 11:45:48 +00:00
Vijay Prasanna
33bea64ed1 console (fix): Remove cloud/pro only check for dynamic db routing
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8661
Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: 9216c4a04e49a35b13ace6aa0312a0fe4665ab87
2023-04-10 10:57:07 +00:00
Toan Nguyen
5715fe4931 console: remove the response_size > 0 filter in the Operations table
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8656
GitOrigin-RevId: c6d160a75dfe87dae8f870e9bc0a2113bb0f846d
2023-04-07 12:03:08 +00:00
Vishnu Bharathi
eabbb917ed ci: tag release v2.22.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8681
GitOrigin-RevId: 79762246e1115f6495d9f4b06d2ec9f43254b5e2
2023-04-07 11:15:45 +00:00
Naveen Naidu
2814735a20 server: fix dirty read of schema cache
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8677
GitOrigin-RevId: 615bfb4dc8d22a46a87ceb76c5f89d608e88f97d
2023-04-07 09:23:03 +00:00
Daniel Chambers
2e443401f3 Update super connector version in Oracle compose file
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8674
GitOrigin-RevId: 985bf9249e63756d082748b0fafc8ead18916ec7
2023-04-07 02:16:08 +00:00
Daniel Chambers
a93fb4f11a Update versions of HGE in super connector-based compose files used by docs
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8673
GitOrigin-RevId: f9372eb69398cc058f81606d46f5250c77240890
2023-04-07 01:37:10 +00:00
Daniele Cammareri
9140d2c83b doc: add validation for dynamic routing
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8669
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
GitOrigin-RevId: a1fe971ae0b62ea90da6f4a1ac303293fa7b8a44
2023-04-06 18:21:59 +00:00
Varun Dey
5addb8cfca console: Use case experiment
[GT-555]: https://hasurahq.atlassian.net/browse/GT-555?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8621
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: f7d192f637948eebdf157d7ee6e9834da42bd3a9
2023-04-06 17:35:47 +00:00
Daniele Cammareri
904803c09d console: add connection template validation for dynamic routing
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8527
GitOrigin-RevId: 8906b92e4ab97e92547220fada146707d8085e57
2023-04-06 16:27:57 +00:00
Antoine Leblanc
0476331136 small cleanups of pro's init
### Description

(This PR is better reviewed commit by commit.)

This PR is an aggregation of small incremental changes to Pro's init:
- it deletes some dead code,
- it starts reorganizing the code of that file by sections, similar to OSS' init,
- it extracts and cleans up license key cache init (groups several blocks of code in one separate function)
- makes some changes to a service class to reduce the dependency on `_acAppStateRef`

This PR is a first step: our goal is to move the schema cache build _in_ the app monad, in order to achieve #8344. To do so, we will need to remove `_acAppStateRef` from Pro's `AppContext`. There are two different paths we can take from here, which is why i cut this PR here:
- the first would be to change the different instances we implement on `AppM` to take as an argument the parts of the schema cache they depend on, rather than reading them from `_acAppStateRef`; as of this PR, `MetricsConfig` is the only such field;
- the second would be to apply the same strategy we already used for the TLSAllowList, and use a `IORef` that can be updated after the schema cache is built; this change would have a smaller footprint, but introduces one new `IORef` per such field, which feels something we don't want to generalize

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8655
GitOrigin-RevId: 809697d460bdb5c83ef7d30a2e835f589bcd80a6
2023-04-06 15:37:15 +00:00
Rikin Kachhia
ed9f120241 docs: add cloud use case based onboarding guides
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8578
Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Aaysha <109507451+aayshasura@users.noreply.github.com>
Co-authored-by: nevermore <31686586+OjasWadhwani@users.noreply.github.com>
Co-authored-by: Priya Sharma <25654753+PriyaSharma45@users.noreply.github.com>
Co-authored-by: Vaishnavi <85152989+vaishnavigvs@users.noreply.github.com>
Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com>
GitOrigin-RevId: a2f5154c1dece4513c8b86849a5e54cbf3560cbb
2023-04-06 14:45:21 +00:00
Julian@Hasura
ec0fec5166 console: Fix empty columns on mysql permissions builder
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8654
GitOrigin-RevId: 40a29888d94856792b454b73c052a4bd1b6c4dc4
2023-04-06 13:38:13 +00:00
Sean Park-Ross
32fd3e04be Docs: Zero downtime env var updates admonition
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8642
GitOrigin-RevId: 43489870696ec745e885d466e45554c48f814ba7
2023-04-06 12:54:55 +00:00
Tirumarai Selvan
8b49d28ea8 Rename title for dynamic routing and other edits
- Renames feature to Dynamic Routing or Dynamic Routing for Databases (as appropriate)
- Adds a heading for How it works

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8663
Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com>
GitOrigin-RevId: dea48043ce490cd4cda7d37e8a2e1633945596fb
2023-04-06 12:20:19 +00:00
Samir Talwar
6d79b7dfaf make: Add run-oss-server, and associated frontend targets.
`make run-oss-server` will now build the Console for OSS ("CE"), start PostgreSQL, and run a simply-configured server.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8652
GitOrigin-RevId: cada25e66fe216867ff331d597764e64aaf2dc19
2023-04-06 08:53:13 +00:00
Stefano Magni
ab02ed21f6 chore(console): Mention another source of flakiness in the testing best practices
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8660
GitOrigin-RevId: 07f38ad31a256b55b570aad72d127698dbb50042
2023-04-06 08:03:54 +00:00
Rob Dominguez
281f23f8b6 docs: update ee trial instructions
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8653
GitOrigin-RevId: d4a3a2762d347584cdf8c160e866c6987f5b4e30
2023-04-06 03:14:38 +00:00
paritosh-08
774075a709 server: add code field to warning object in metadata API responses
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8601
GitOrigin-RevId: 7034c0a04b87c44731680917aa3946084b705959
2023-04-06 02:41:24 +00:00
Tom Harding
3cef692dd7 feature(server): Get _all_ source tables
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8649
GitOrigin-RevId: 4bb9311d1d7ab4e8ee641bde5df2babcb1b8b306
2023-04-05 20:16:14 +00:00
Philip Lykke Carlsen
41a5092b97 refactor(tests): Support componentised Postgres fixtures, port SimpleObjectSpec
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8607
GitOrigin-RevId: b068f7308fa8fa4b626aa2f9352da3965b03fa34
2023-04-05 18:05:37 +00:00
Rishichandra Wawhal
660ba821c6 README, docs: add Telemetry note
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8648
GitOrigin-RevId: 0678a0099c11f948ffaf327b6df02538e41834db
2023-04-05 17:23:15 +00:00
Tom Harding
7c1345b4ba hotfix(console): Prefix get_source_tables in the console
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8647
GitOrigin-RevId: 212dfe78345a6f2b59ccfeb655fe6212e60a1cad
2023-04-05 16:38:29 +00:00
Daniel Harvey
9c83934869 chore(tooling): add make repl-postgres command
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8638
GitOrigin-RevId: 8cbc8317a661e2bb43e965be5c32696d03d394bd
2023-04-05 13:24:04 +00:00
Erik Magnusson
215c447dad Erik/permission/quickfixes
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8639
GitOrigin-RevId: bc8d53d358fa340abc9ee4ad51c8ee949a2556cd
2023-04-05 13:01:39 +00:00
Vishnu Bharathi
60afce2b94 ci: tag release v2.23.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8641
GitOrigin-RevId: e4395099602829a41d66c47e2c821b7a8912acef
2023-04-05 12:27:36 +00:00
Vaishnavi
91c3a4ec09 EE Trial Docs
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8432
Co-authored-by: Manas Agarwal <5352361+manasag@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com>
Co-authored-by: Rishichandra Wawhal <27274869+wawhal@users.noreply.github.com>
GitOrigin-RevId: cc03d4602057f0032abad2a4c0f915e68024f3b9
2023-04-05 11:40:55 +00:00
Antoine Leblanc
d00f4ef497 Always flush the loggers without explicitly relying on onException
### Description

This PR makes use of the fact that the `LoggerSet` is created in a `ManagedT` context to guarantee that we flush it when the `ManagedT` context terminates, which is guaranteed even when an exception is thrown since `allocate` is implemented using `bracket`.

This allows us to remove several manual calls to `flip onException flushLoggers`, and avoids having to manually perform that check everywhere.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8629
GitOrigin-RevId: 47657b910dc1bb7cfc0594f02e6cce9893ae3439
2023-04-05 11:07:14 +00:00