Commit Graph

6480 Commits

Author SHA1 Message Date
paritosh-08
b36971f637 server: webhook auth token caching
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7925
Co-authored-by: Sean Park-Ross <94021366+seanparkross@users.noreply.github.com>
GitOrigin-RevId: eae1f4023a9e9144c9eb230529c214cb4327e44f
2023-03-14 18:28:56 +00:00
Auke Booij
88488362e0 chore(server): various code cleanups
- Derive a few `instance`s
- Delete some dead code (methods and types)
- Delete some `INLINE` pragmas that are unlikely to have a big effect
- Monomorphize Postgres `LISTEN` code to avoid effect juggling
- Generalize some methods in `pg-client` so that others can be simplified
- Handle errors differently for `TxET` to deduplicate code
- Use `hoist` instead of specialized combinators such as `mapActionT`

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8130
GitOrigin-RevId: bc1e908b6c0869f440a214a76744e92d40fea1e6
2023-03-14 17:47:49 +00:00
Auke Booij
f14b47cf42 chore(server): stricter GHC warnings for libraries
#7730 added some `package` stanzas to the Cabal project files so that we enable more GHC warnings.

#7761 recognized that these package stanzas used incorrect package names, and were therefore dysfunctional.

Simultaneously with that PR, #7758 renamed some of our Cabal packages, to the same ones used by #7730. However, it didn't change the names used by the package stanzas.

So finally, this reverts the names in the stanzas to the ones used by #7730 (and which are now correct).

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8275
GitOrigin-RevId: 1a3748ed79d1fa699c5e543b1af16f359c35c028
2023-03-14 17:01:46 +00:00
Julian@Hasura
2ea72dac8a console: Remove Read Replicas for BigQuery Connections DSF-109
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8239
Co-authored-by: Julian <843342+okjulian@users.noreply.github.com>
GitOrigin-RevId: b3607ba5d4ec3e8efc409392ea5715adce64b4b4
2023-03-14 16:20:35 +00:00
Antoine Leblanc
a0a2492fe3 add -fsolve-constant-dicts to local environment
## Description

When working locally, we often run into [ghc#16932](https://gitlab.haskell.org/ghc/ghc/-/issues/16932): redundant constraints warnings do not fire, because optimizations are disabled, but they end up making the build fail on CI where optimizations are enabled. This PR enables `-fsolve-constant-dicts` in the local environment, which guarantees that this warning will always fire locally. This doesn't seem to have a measurable impact on compilation time or memory use, as far as i could tell.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8305
GitOrigin-RevId: 0eac572464a3c6861be8b8c176ea9257f14e4226
2023-03-14 15:41:27 +00:00
Rikin Kachhia
df10e08c8b console: use common pattern to access local storage
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8231
GitOrigin-RevId: 7c19b211abd9c4ed1878efaba6ccb5d9bcdf9b2a
2023-03-14 15:08:42 +00:00
Mohd Bilal
69c8e8bb4a Make command to generate types from typed metadata in languages other than Typescript
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8238
GitOrigin-RevId: 9a4730e0d311916c0d837586485382c58033c914
2023-03-14 14:27:15 +00:00
Tom Harding
a119260a5d chore(server): tidy up the FromJSON Job instance
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8303
GitOrigin-RevId: bfdbb47ed1dd545df79f7e8604138d575489a0b9
2023-03-14 13:57:16 +00:00
pranshi06
b4157f58e8 server: fix scheduled events not showing up on console when the payload construction is failed
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8154
GitOrigin-RevId: ce3e4df13a55a260bc7b684818181c7ec156632c
2023-03-14 12:28:49 +00:00
Tom Harding
2124fa0f08 feature(server): make execution statistics available through logging
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8286
Co-authored-by: Daniel Harvey <4729125+danieljharvey@users.noreply.github.com>
GitOrigin-RevId: 72de592c08778649693d8ff0a0555b16fb28c4bd
2023-03-14 11:33:45 +00:00
Varun Choudhary
6ac06561e6 console: add unit test for generateCreateEventTriggerQuery
This PR added unit test for the function `generateCreateEventTriggerQuery`

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8221
GitOrigin-RevId: b990b938a02c623f47ceb56bc22b8e1021c48501
2023-03-14 10:16:10 +00:00
Rakesh Emmadi
b98a51c644 server/multitenant: addressing review comments in #8146
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8297
GitOrigin-RevId: caf82e358eed6ca6f94b2388e7bb4b75135b2793
2023-03-14 05:54:19 +00:00
Naveen Naidu
14f177862d server: remove redundant ExitCodes
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8280
GitOrigin-RevId: 20142da0dc8059d31442b41f2deb02c176dd395c
2023-03-14 05:18:25 +00:00
Rakesh Emmadi
0c3244c2c0 multitenant: switch schema sync listener to polling mechanism
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8146
GitOrigin-RevId: 7fe82899ca8ef9eba526fe4b298b0ffbce32be82
2023-03-14 04:39:34 +00:00
timothy-hasura
341254eaaf docs: add licenses and dependencies
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8245
Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com>
GitOrigin-RevId: ce2c899951876a97ccf584de88fc1be823308b0e
2023-03-14 00:56:45 +00:00
Luca Restagno
551b340632 console: enable insert row form based on the agent capabilities
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8258
Co-authored-by: Matthew Goodwin <49927862+m4ttheweric@users.noreply.github.com>
GitOrigin-RevId: 6bbfb4d1ea92c1b26efad8fd7050d5757db2a3da
2023-03-13 18:49:17 +00:00
Philip Lykke Carlsen
1bad75e3d8 feat(logical models): Add validation of types and parameters
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8267
GitOrigin-RevId: 827852edf074eb72c95ac379fe3ac5d095fd26ab
2023-03-13 18:15:27 +00:00
Antoine Leblanc
cf531b05cb Rewrite Tracing to allow for only one TraceT in the entire stack.
This PR is on top of #7789.

### Description

This PR entirely rewrites the API of the Tracing library, to make `interpTraceT` a thing of the past. Before this change, we ran traces by sticking a `TraceT` on top of whatever we were doing. This had several major drawbacks:
- we were carrying a bunch of `TraceT` across the codebase, and the entire codebase had to know about it
- we needed to carry a second class constraint around (`HasReporterM`) to be able to run all of those traces
- we kept having to do stack rewriting with `interpTraceT`, which went from inconvenient to horrible
- we had to declare several behavioral instances on `TraceT m`

This PR rewrite all of `Tracing` using a more conventional model: there is ONE `TraceT` at the bottom of the stack, and there is an associated class constraint `MonadTrace`: any part of the code that happens to satisfy `MonadTrace` is able to create new traces. We NEVER have to do stack rewriting, `interpTraceT` is gone, and `TraceT` and `Reporter` become  implementation details that 99% of the code is blissfully unaware of: code that needs to do tracing only needs to declare that the monad in which it operates implements `MonadTrace`.

In doing so, this PR revealed **several bugs in the codebase**: places where we were expecting to trace something, but due to the default instance of `HasReporterM IO` we would actually not do anything. This PR also splits the code of `Tracing` in more byte-sized modules, with the goal of potentially moving to `server/lib` down the line.

### Remaining work

This PR is a draft; what's left to do is:
- [x] make Pro compile; i haven't updated `HasuraPro/Main` yet
- [x] document Tracing by writing a note that explains how to use the library, and the meaning of "reporter", "trace" and "span", as well as the pitfalls
- [x] discuss some of the trade-offs in the implementation, which is why i'm opening this PR already despite it not fully building yet
- [x] it depends on #7789 being merged first

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7791
GitOrigin-RevId: cadd32d039134c93ddbf364599a2f4dd988adea8
2023-03-13 17:38:39 +00:00
Naveen Naidu
99a7a89fa3 docs: fix remove_api_limits metadata spec
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8277
GitOrigin-RevId: e17d8c90485568121d4a5f1dd7cbc3b5f6cee97d
2023-03-13 16:31:44 +00:00
Krushan Bauva
52cacabad0 server: expose server_type information to version API in CE
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8278
GitOrigin-RevId: 245ec64544c67e1fdfd52203ff827af17c04a626
2023-03-13 16:06:30 +00:00
rsd1122
3b9e408ba8 docs: update MySQL docs with support for mutations and enterprise doc with pointers to databases
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8192
GitOrigin-RevId: 308216808ab1c9a88d9461d35591d4b817d3e2b3
2023-03-13 15:31:06 +00:00
Anon Ray
58fc87e3e6 Revert "server/benchmarks: update the postgres version to 15"
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8290
GitOrigin-RevId: 8192f8dd5859acd82a93199c2c2408cbe5885782
2023-03-13 15:27:38 +00:00
Meet Zaveri
b4ca5f3605 update: update BigQuery API docs
## Description

As per this [BQ configuration docs](https://hasura.io/docs/latest/api-reference/syntax-defs/#bigqueryconfiguration), the `datasets` field must contain list of strings (array of strings).

In given example [here](https://hasura.io/docs/latest/api-reference/metadata-api/source/#metadata-bigquery-update-source), the `datasets` field in the example request contains comma seperated string ( ). Expected data type for that field is List of strings as per above-mentioned configuration docs ( ).

We came across this when @BenoitRanque and I were troubleshooting a ticket, and we faced an error while using this example request. Thanks !

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8161
GitOrigin-RevId: ca4179261e009648ab9007988bf60b388875b117
2023-03-13 13:42:27 +00:00
Nicolas Inchauspe
f92d695704 console: fix non clickable elements
[PLAT-487]: https://hasurahq.atlassian.net/browse/PLAT-487?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[PLAT-488]: https://hasurahq.atlassian.net/browse/PLAT-488?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8273
GitOrigin-RevId: 00855e10d09eb6f860df3d206630c918858252e2
2023-03-13 12:16:52 +00:00
pranshi06
823fca2d1c multitenant, server: throw a warning if user sets a time limit greater than the system limit
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7315
Co-authored-by: Sean Park-Ross <94021366+seanparkross@users.noreply.github.com>
GitOrigin-RevId: 639a99fc0651b74f187108613be3086bc52e3a65
2023-03-13 11:45:45 +00:00
Anon Ray
120f413cd1 server/benchmarks: update the postgres version to 15
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8256
GitOrigin-RevId: 5285280cd8be9785e7d615ef444afcba42880abd
2023-03-13 11:09:21 +00:00
surendran82
42be9ffc9b docs: update thin strip banner for observability webinar
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8272
GitOrigin-RevId: 48928111f935ce0a9e2e4bdbaca54d62902afcb0
2023-03-10 18:46:11 +00:00
Jesse Hallett
83104b2c57 server: codecs for computed field definitions
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8270
GitOrigin-RevId: a0954d79c1fecb7eeba4eb47983e65d3637a23c3
2023-03-09 23:46:41 +00:00
Jesse Hallett
3ee6b54962 server: codecs for metrics, roles, allow list
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8114
GitOrigin-RevId: 1a1f8b6360edbdddad5cf364b533a255c15e2f4a
2023-03-09 23:11:08 +00:00
Tom Harding
c18c36db62 Add a debugger function for testing
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8268
GitOrigin-RevId: 52db2dabc168da5fef56ecc989ff47336c3ee5f1
2023-03-09 18:35:16 +00:00
Vishnu Bharathi
2ed20bae74 ci: tag multiple releases
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8263
GitOrigin-RevId: 051548dd1b179d9d4d5838a9eb794375cb2a382f
2023-03-09 14:47:25 +00:00
Luca Restagno
f92791954a Convert mutation payload values according to the column data type
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8210
GitOrigin-RevId: 18a0909f3b99b5ef93891baf03454b88cade2055
2023-03-09 13:53:38 +00:00
Varun Dey
2a99b9269a Revert "console: [experiment] Remove familiarity survey"
Reverts hasura/graphql-engine-mono#8028

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8259
GitOrigin-RevId: 7363c1369d92a7fbc3469e9062accbcb1c680aa1
2023-03-09 12:57:58 +00:00
Daniel Harvey
52082f0911 chore(tooling): add make run-pro-server
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8260
GitOrigin-RevId: f69ce5249bdc2b606ecb574049dd98558062399e
2023-03-09 12:05:02 +00:00
Varun Dey
6440d73d14 console: [experiment] Remove familiarity survey
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8028
Co-authored-by: Daniel Harvey <4729125+danieljharvey@users.noreply.github.com>
Co-authored-by: Rob Dominguez <24390149+robertjdominguez@users.noreply.github.com>
Co-authored-by: hasura-bot <30118761+hasura-bot@users.noreply.github.com>
Co-authored-by: Aaysha <109507451+aayshasura@users.noreply.github.com>
Co-authored-by: Tom Harding <6302310+i-am-tom@users.noreply.github.com>
Co-authored-by: Nicolas Inchauspe <710410+nicoinch@users.noreply.github.com>
Co-authored-by: Jesse Hallett <9622+hallettj@users.noreply.github.com>
Co-authored-by: Shraddha Agrawal <26995115+ShraddhaAg@users.noreply.github.com>
Co-authored-by: Solomon <24038+solomon-b@users.noreply.github.com>
Co-authored-by: Daniel Chambers <1214352+daniel-chambers@users.noreply.github.com>
Co-authored-by: Varun Choudhary <68095256+Varun-Choudhary@users.noreply.github.com>
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
Co-authored-by: Philip Lykke Carlsen <358550+plcplc@users.noreply.github.com>
Co-authored-by: Sean Park-Ross <94021366+seanparkross@users.noreply.github.com>
Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
Co-authored-by: Samir Talwar <47582+SamirTalwar@users.noreply.github.com>
Co-authored-by: Gil Mizrahi <8547573+soupi@users.noreply.github.com>
Co-authored-by: Erik Magnusson <32518962+ejkkan@users.noreply.github.com>
Co-authored-by: Mohd Bilal <24944223+m-Bilal@users.noreply.github.com>
GitOrigin-RevId: 28e9f16717f25e10be8924da3719d6b84eb42ede
2023-03-09 11:43:03 +00:00
Gil Mizrahi
413d8d2bb4 name conflicts for logical models
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8236
GitOrigin-RevId: e8edc914b34f362ee3391f0a70bfcbea6d6fa11f
2023-03-09 07:02:41 +00:00
Tom Harding
d0037e0f79 Remove redundant basic object query pytests
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8240
GitOrigin-RevId: 1e700613b96c78805318519ca5593eca61b4a088
2023-03-08 17:07:38 +00:00
Erik Magnusson
109c700798 Dsf 151 allow users to create update permissions
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8188
GitOrigin-RevId: a1a4d58abd52b4ef230adc4a904af9ef1c6ce443
2023-03-08 14:52:24 +00:00
Sean Park-Ross
639c4866d5 Docs: Small Changes 01
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8074
GitOrigin-RevId: a752acd8a71bec8495bb7c295f2a6151992e1720
2023-03-08 12:27:28 +00:00
surendran82
cffd64ee6a docs: update thin strip banner for snowflake webinar
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8235
GitOrigin-RevId: 50397fbec0fd9845384c9af60cbc0a06387c6561
2023-03-08 12:11:21 +00:00
Daniel Chambers
1727b5236a Block adding remote relationships where they are not supported by the Data Connector agent
[GDC-1015]: https://hasurahq.atlassian.net/browse/GDC-1015?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8232
GitOrigin-RevId: 0cc3b7b1f17b2e6d4cdfa713b1581357de62f359
2023-03-08 06:01:04 +00:00
Samir Talwar
650e17df3c CI: Add commentary on how the Python integration test scripts work.
And links to documentation for the various Buildkite plugins, while we're at it.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8099
GitOrigin-RevId: ead112ffbb0c04278b586520f1f349a5a8afbd99
2023-03-07 20:59:31 +00:00
Samir Talwar
1cd2891407 CI: Upgrade server-pytest-runner's dependencies.
Part of [NDAT-561](https://hasurahq.atlassian.net/browse/NDAT-561).

It's time for a refresh.

This upgrades Python and all the other dependencies. We mostly care about the Google Cloud CLI, as it's crashing sometimes.

I also upgraded the Python integration test dependencies themselves, as otherwise the image fails to build. I didn't look too much into it.

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

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8216
GitOrigin-RevId: ce48a89df7e0ede2fbcf686b71e96182dc91ee58
2023-03-07 17:41:00 +00:00
Daniele Cammareri
0dc3073559 add dynamic db routing storybook component
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8152
Co-authored-by: Varun Choudhary <68095256+Varun-Choudhary@users.noreply.github.com>
GitOrigin-RevId: 89a15b336d85301308e18e82754f10f4ed856563
2023-03-07 16:33:28 +00:00
Tom Harding
061c6aa0f9 Test all simple queries with websockets
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8228
GitOrigin-RevId: a4aacb08892e489d5209aaf8efce8c7f3adb5b80
2023-03-07 15:50:24 +00:00
Matthew Goodwin
aa39203e13 console: fixes incorrect data type shown in GDC modify tab
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8180
GitOrigin-RevId: 0b4272f7161759541b28ae04bf0a517fb9e42823
2023-03-07 14:38:46 +00:00
Daniel Harvey
8064d6fe2b chore(server): fix logical models tests to parse raw number values
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8223
GitOrigin-RevId: 3a0b0b26b4295f00d84b0032e3c098502a295239
2023-03-07 10:49:23 +00:00
Daniel Harvey
e93d3d2735 feature(server): allow nullability in Logical Model arguments
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8214
GitOrigin-RevId: 1ecf4c9c362aad9eabad2134a70266ff1170577b
2023-03-07 10:04:58 +00:00
Priya Sharma
1f2212a82f cli : add a function to accept logger as parameter for deploy function
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8195
GitOrigin-RevId: 745bcae76e0f0c2a9ca2fc6dec06e39cd7b05f40
2023-03-07 08:31:57 +00:00
Daniel Chambers
116c290288 Added remote relationship target support to SQLite agent
[GDC-1010]: https://hasurahq.atlassian.net/browse/GDC-1010?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8218
GitOrigin-RevId: b0173d1dbeb4f71b079a90cbabd6ce48d05c1858
2023-03-07 07:16:40 +00:00