Commit Graph

4041 Commits

Author SHA1 Message Date
Aravind K P
96cfacb58b cli: wrap errors
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3146
GitOrigin-RevId: 5dd78bf9145d3bfc9ff4281239d849e796a36246
2021-12-15 17:55:44 +00:00
Philip Lykke Carlsen
37ecb0e3b2 server/mssql: Generate upsert mutation schema
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3056
GitOrigin-RevId: 8d58ae983c4d3ad55dfeff744c891d77c7c6de1a
2021-12-15 17:08:26 +00:00
Kirill Zaborsky
279f22ed08 Fix support for multiple array relationships in BigQuery
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3003
GitOrigin-RevId: 7a9bf10be6436da2d87d5555f589e23c40c76dd6
2021-12-15 15:19:49 +00:00
Rakesh Emmadi
f00404e0f6 server/mssql: update mutation, SQL generation and execution
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3059
GitOrigin-RevId: 4ed0cbf54ac2a7103cb2b7adc97b2dfdf9994c4f
2021-12-15 13:56:34 +00:00
Vijay Prasanna
ae124e2ee8 console/hotfix: use legacy create_remote_relationship for pg
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3149
GitOrigin-RevId: 578d0bdf916df04beb5900fb99a2d063370fc7c7
2021-12-15 11:53:42 +00:00
Evie Ciobanu
aff1ebb060 server: add more MSSQL tests to CI
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3129
Co-authored-by: Gil Mizrahi <8547573+soupi@users.noreply.github.com>
GitOrigin-RevId: 1e8fc7ed2426fc07f64ca042c9a0be005cc9d052
2021-12-15 10:44:09 +00:00
Vishnu Bharathi
291de84179 tag release v2.1.0
GitOrigin-RevId: 3456e09d2c096a3a89866f9e92c86605237b9693
2021-12-14 15:38:26 +00:00
Vishnu Bharathi
9b7495c4ae ci: add build and test job for arm64 oss cli migrations
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3128
GitOrigin-RevId: a8ab8fc8e022166e27fcc68199311b1626930759
2021-12-14 14:51:21 +00:00
Anon Ray
4121c1dd3d Revert "Feature/multiple jwt secrets"
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3136
Co-authored-by: pranshi06 <85474619+pranshi06@users.noreply.github.com>
GitOrigin-RevId: aa41817e39f932f909067f2effca9d9973a5fb94
2021-12-14 14:29:52 +00:00
Abhijeet Khangarot
5726852c54 console: add sample context section to request transforms
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3110
GitOrigin-RevId: 1c11b8d1a465802490ce12cefce1469a9d24522d
2021-12-14 09:29:18 +00:00
Tirumarai Selvan
52fb772b83 docs: add rest connectors to action transform docs
<!-- Thank you for ss in the Title above ^ -->

## Description ✍️

Introduce the phrase "REST connectors" in action transforms

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3131
GitOrigin-RevId: 557592690530f23a0624f88092b0f404d37d1729
2021-12-14 08:42:01 +00:00
Vamshi Surabhi
0728a9e60e fixes remote relationships format in metadata (fixes graphql-engine-mono/issues/3108)
## Description

This PR fixes two issues:
  - in [#2903](https://github.com/hasura/graphql-engine-mono/pull/2903), we introduced a new metadata representation of remote relationships, which broke parsing a metadata blob containing an old-style db-to-rs remote relationship
  - in [#1179](https://github.com/hasura/graphql-engine-mono/pull/1179), we silently and mistakenly deprecated `create_remote_relationship` in favour of `<backend>_create_remote_relationship`

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3124
Co-authored-by: jkachmar <8461423+jkachmar@users.noreply.github.com>
Co-authored-by: Antoine Leblanc <1618949+nicuveo@users.noreply.github.com>
GitOrigin-RevId: 45481db7a8d42c7612e938707cd2d652c4c81bf8
2021-12-14 06:46:11 +00:00
Aravind K P
0c7e233125 cli: revert split remote schema permissions metadata into seperate files
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3123
GitOrigin-RevId: f327c7324edd66e1f57fafe7703c3318e1362049
2021-12-14 05:08:08 +00:00
Lyndon Maydwell
36a987811e Fix interpreting urls from environment in the TestWebhookTransform endpoint
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3127
GitOrigin-RevId: 0e5ceaa01f3f27275accd828647ae8587216c80f
2021-12-14 03:25:13 +00:00
Chris Parks
038a6113c3 Remove Identifier associated type family from Backend class (close #1758)
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3096
GitOrigin-RevId: 03f218a76c5f333a77646a60c8c69767e2286ea6
2021-12-13 16:49:09 +00:00
jkachmar
44fa624ee9 server: Bumps 'network' to a version that supports M1 ARM
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3111
GitOrigin-RevId: be76385679a49715daf0bbafa7cbf56a0b6b0b70
2021-12-13 08:13:05 +00:00
hasura-bot
b3228150e8 Use proxy if env vars set (close #7781)
GITHUB_PR_NUMBER: 7796
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/7796

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2814
Co-authored-by: Rob Hayes <3910392+robhayesmba@users.noreply.github.com>
GitOrigin-RevId: b01e8f7e91f36cf1b5bfb9c078a4744f71c34f17
2021-12-13 04:17:08 +00:00
Brandon Simmons
d1efe81ac0 dev: add ci build flags that improved compile times to dev.sh cabal c…
…onfig

After, on my 8-core machine, for a full rebuild of just the 360 oss
modules, I get build times:

    unoptimized: 2:45 (previously:  3:37)
    optimized:   9:30 (previously: 13:35)

## Should this live in the repo?

Arguably this should go in a user's `~/.cabal/config`, but I think if merging this improves things for a decent number of devs it's worth having (rather than another thing to document in onboarding docs)

Downsides:

- this might override someone's settings that work even better for them?
- A few folks might have systems not powerful enough for these to be appropriate?

of course some people use their own cabal.project.local anyway

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3095
GitOrigin-RevId: a767f609b676764312c31b2c7574caf9f7ca7f3a
2021-12-10 16:22:38 +00:00
Solomon
7a7498137b Precedence Semantics for JWT/Admin Secrets
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3103
GitOrigin-RevId: 7a85786280c5792c1439111e9d8b28924ac15adc
2021-12-10 06:34:55 +00:00
Kali Vara Purushotham Santhati
8c41ff539a cli: enhance metadata diff command
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2581
Co-authored-by: Aravind K P <8335904+scriptonist@users.noreply.github.com>
GitOrigin-RevId: 327c26868102ea1c277b795b9f508847faa2ae8b
2021-12-09 17:26:53 +00:00
Brandon Simmons
c415cd7c0d server benchmarks: add introspection queries
This excercises a different code path from regular queries and is
pretty slow. Motivated by https://github.com/hasura/graphql-engine-mono/pull/2835

We may need to break chinook up into two sets if it keeps growing or
becomes a bottleneck, but do that later.

GitOrigin-RevId: 5832aef520db85f694924e038c0f2c9a7dd17a13
2021-12-09 15:10:42 +00:00
Brandon Simmons
a94be908df benchmarks: add to interpretation guide docs
GitOrigin-RevId: 89ae86f688e0186960ae116ba05357c1eedde817
2021-12-09 15:10:37 +00:00
Evie Ciobanu
392dec868e server/gardening: change BackendInsert's kind to PostgresKind
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3100
GitOrigin-RevId: 9978969bad501d5792e23363b4808b2dbb5826fb
2021-12-09 14:17:47 +00:00
Aravind K P
048471bdc0 cli: stop parsing unnecessary fields from config API
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2899
GitOrigin-RevId: 99dacb9dcbc6f1093b01aefbf7cbdc975d47569e
2021-12-09 12:52:21 +00:00
Vishnu Bharathi
a835d95b17 tag release v2.1.0-beta.3
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3099
GitOrigin-RevId: 7aa2926871bd44d80490768f86fab7bac02a7758
2021-12-09 11:28:19 +00:00
Divi
ef585f70e6 ci: create draft release in oss repo
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3077
Co-authored-by: Vishnu Bharathi <4211715+scriptnull@users.noreply.github.com>
GitOrigin-RevId: 88d67689cbdd120d48504e3c94ba6f7a7ff180e6
2021-12-09 09:46:33 +00:00
Vishnu Bharathi
6cfbde92e4 ci: add support for linux/arm64 docker image
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2933
GitOrigin-RevId: ceeab6164d8437703cd6e37e3dad9d63940ef966
2021-12-09 09:34:22 +00:00
Philip Lykke Carlsen
2fbcd783e7 Refactor XOnConflict and ExtraInsertData
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3055
GitOrigin-RevId: 06f7f92f0e09695f5f7bc02df457d3b96ac9f5f6
2021-12-09 09:06:56 +00:00
Solomon
e4064c9a90 Allows for mock env vars in test-webhook-transform endpoint
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3097
Co-authored-by: Lyndon Maydwell <92299+sordina@users.noreply.github.com>
GitOrigin-RevId: f0cd00b8f972a1b96213bd098ea09d72b3aba723
2021-12-09 07:59:46 +00:00
pranshi06
dee86453ea server: fallback to unauthorised role when JWT is not found in cookie
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2882
GitOrigin-RevId: ad03fbd0572e00ffe7abea106388a4df4d12af2c
2021-12-08 18:29:29 +00:00
Abhijeet Khangarot
d7ac98db44 console: request transform bugfixes
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3089
GitOrigin-RevId: ed251ea81c77f3cb2832c7f6cc6dbf801464afae
2021-12-08 12:00:06 +00:00
Abhijeet Khangarot
16006a1cbc console: fix console crash while selecting columns in event trigger
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3075
GitOrigin-RevId: 82096c9ab3b42d58fd150a8efc4077e18baa9335
2021-12-08 07:14:33 +00:00
Naveen Naidu
3773ba98b0 multitenant: support for starting multitenant in read only mode
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2993
Co-authored-by: Anon Ray <616387+ecthiender@users.noreply.github.com>
GitOrigin-RevId: e598d340d81aa96a85bd1ec043f9b7ed847934ef
2021-12-08 06:27:49 +00:00
hasura-bot
1376293e40 make pg_table_metadata CockroachDB compatible
GITHUB_PR_NUMBER: 7788
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/7788

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2805
Co-authored-by: Oliver Tan <3646147+otan@users.noreply.github.com>
GitOrigin-RevId: 9de4ddc4b13a9780edee5d1d12579d225ce3bffe
2021-12-07 17:25:33 +00:00
hasura-bot
c5cedbd84b community: update sample realtime-chat dependencies
GITHUB_PR_NUMBER: 7844
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/7844

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2964
Co-authored-by: arjunyel <11153289+arjunyel@users.noreply.github.com>
GitOrigin-RevId: 34c4054e24fc1fa6c44c6c8a84db5b0d887faddb
2021-12-07 13:15:03 +00:00
Vamshi Surabhi
23e1cb218a simplification of generalized joins execution
This PR simplifies the types that represent a remote relationship in IR so that they can be reused in other parts (in remote schema types) which could have remote relationships.

The comments on the PR explain the main changes.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2979
GitOrigin-RevId: 559c51d9d6ae79e2183ce4347018741b9096ac74
2021-12-07 13:12:57 +00:00
Solomon
0faa92337d Use transformed request body in event invocation logs
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3057
GitOrigin-RevId: 7e001830f97c81289553e37c35098ccaeadbdf22
2021-12-06 22:40:31 +00:00
Robert
5473bfa952 tests: simplify command line of Haskell test suite
# Description

The tests were only being run with fully qualified postgresql and
mssql connection env vars anyhow. Makes it a bit simpler to run the
tests.

- the test suite now requires only plain connection strings as
  `HASURA_GRAPHQL_DATABASE_URL` (postgres) or
  `HASURA_MSSQL_CONN_STR` (mssql)
- update `CONTRIBUTING.md` for this change, and make it
  generally a bit less inaccurate

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3065
GitOrigin-RevId: b0b2f01ef867645d55c87a0e5c2bc1c0e94ee41f
2021-12-06 15:47:45 +00:00
Ikechukwu Eze
ac14e9a3f4 console (chore): upgrade typescript to 4.5.2
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3048
GitOrigin-RevId: 3a19ce1a4bb5ec9102e5da18dad84fefc2b5fc3e
2021-12-06 12:40:01 +00:00
Gil Mizrahi
2ac04384a0 Add tip for writing unit tests for SQL generation
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3045
GitOrigin-RevId: a74947471dd2132582ab6be890e80887d272d3ff
2021-12-06 07:59:44 +00:00
Lyndon Maydwell
87426fdef4 Fixing REST Enpoints list variable bug
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3034
GitOrigin-RevId: af1c182879754359b253e630f1393d97d8bcfa2a
2021-12-03 21:57:25 +00:00
Solomon
4a33d6c979 Allows for env var use in test_webhook_transform mock request url
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3009
GitOrigin-RevId: e678cef69d3d4dcb47f80cd584aa0d3c25a091b8
2021-12-03 07:13:35 +00:00
surendran82
46d8ef940d docs: header links updated
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2905
GitOrigin-RevId: 9996fdc7f5135c871e29bc56ff56793bb80114c9
2021-12-02 20:25:49 +00:00
Brandon Simmons
0f21cbd6fa ci: make server upgrade test run in parallel and introduce build pro image job
These changes improve build time by 26%
- old: 75 min
- new: 55 min

For context: https://github.com/hasura/ci-timing

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3007
Co-authored-by: Vishnu Bharathi <4211715+scriptnull@users.noreply.github.com>
GitOrigin-RevId: 6bd4e615303a8749b43258a04d9681476cf6e797
2021-12-02 17:18:06 +00:00
Rakesh Emmadi
7194dc691c server/mssql: fix SQL generation for aggregation queries in sql server (fixes #7773 & #7871)
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3024
GitOrigin-RevId: 30c0e7d713375d0c54ff7145d00985e3ade4f1a9
2021-12-02 14:22:42 +00:00
Kali Vara Purushotham Santhati
4edc723d64 cli: codesign the cli binaries
closes https://github.com/hasura/graphql-engine/issues/7147

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2100
Co-authored-by: Aravind K P <8335904+scriptonist@users.noreply.github.com>
GitOrigin-RevId: 1816493b6cdf1b00b267ee8852c7b8a7c5fc3ee9
2021-12-02 10:21:30 +00:00
Vijay Prasanna
2abd5a464a console: remove raw sql timeout for postgres
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3011
GitOrigin-RevId: 7363b58fdf015dbe653c604eacc328899c90d265
2021-12-02 08:45:26 +00:00
Matt Hardman
58829693e8 Permissions Component Showcase stories (close #2863)
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2985
GitOrigin-RevId: 6d0410fcfb9252e71e6e6cc969284b084eca22a0
2021-12-02 06:23:42 +00:00
Solomon
f243760398 Feature/multiple jwt secrets
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2765
Co-authored-by: Philip Lykke Carlsen <358550+plcplc@users.noreply.github.com>
Co-authored-by: Chris Done <11019+chrisdone@users.noreply.github.com>
Co-authored-by: Aishwarya Rao <59638722+aishwaryarao712@users.noreply.github.com>
Co-authored-by: Tirumarai Selvan <8663570+tirumaraiselvan@users.noreply.github.com>
Co-authored-by: Karthikeyan Chinnakonda <15602904+codingkarthik@users.noreply.github.com>
Co-authored-by: Ikechukwu Eze <22247592+iykekings@users.noreply.github.com>
Co-authored-by: Brandon Simmons <210815+jberryman@users.noreply.github.com>
Co-authored-by: awjchen <13142944+awjchen@users.noreply.github.com>
Co-authored-by: Martin Mark <74692114+martin-hasura@users.noreply.github.com>
Co-authored-by: Abby Sassel <3883855+sassela@users.noreply.github.com>
Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
Co-authored-by: Sameer Kolhar <6604943+kolharsam@users.noreply.github.com>
Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
Co-authored-by: hasura-bot <30118761+hasura-bot@users.noreply.github.com>
Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
Co-authored-by: Sibi Prabakaran <737477+psibi@users.noreply.github.com>
Co-authored-by: Robert <132113+robx@users.noreply.github.com>
Co-authored-by: Vishnu Bharathi <4211715+scriptnull@users.noreply.github.com>
Co-authored-by: Praveen Durairaju <14110316+praveenweb@users.noreply.github.com>
Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com>
GitOrigin-RevId: b3b07c3b42da9f3daa450d6d9e5fbf0bf506c651
2021-12-02 05:36:46 +00:00
Auke Booij
caf9957aca Remove Unique from Definition
GraphQL types can refer to each other in a circular way. The PDV framework used to use values of type `Unique` to recognize two fragments of GraphQL schema as being the same instance. Internally, this is based on `Data.Unique` from the `base` package, which simply increases a counter on every creation of a `Unique` object.

**NB**: The `Unique` values are _not_ used for knot tying the schema combinators themselves (i.e. `Parser`s). The knot tying for `Parser`s is purely based on keys provided to `memoizeOn`. The `Unique` values are _only_ used to recognize two pieces of GraphQL _schema_ as being identical. Originally, the idea was that this would help us with a perfectly correct identification of GraphQL types. But this fully correct equality checking of GraphQL types was never implemented, and does not seem to be necessary to prevent bugs.

Specifically, these `Unique` values are stored as part of `data Definition a`, which specifies a part of our internal abstract syntax tree for the GraphQL types that we expose. The `Unique` values get initialized by the `SchemaT` effect.

In #2894 and #2895, we are experimenting with how (parts of) the GraphQL types can be hidden behind certain permission predicates. This would allow a single GraphQL schema in memory to serve all roles, implementing #2711. The permission predicates get evaluated at query parsing time when we know what role is doing a certain request, thus outputting the correct GraphQL types for that role.

If the approach of #2895 is followed, then the `Definition` objects, and thus the `Unique` values, would be hidden behind the permission predicates. Since the permission predicates are evaluated only after the schema is already supposed to be built, this means that the permission predicates would prevent us from initializing the `Unique` values, rendering them useless.

The simplest remedy to this is to remove our usage of `Unique` altogether from the GraphQL schema and schema combinators. It doesn't serve a functional purpose, doesn't prevent bugs, and requires extra bookkeeping.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2980
GitOrigin-RevId: 50d3f9e0b9fbf578ac49c8fc773ba64a94b1f43d
2021-12-01 16:21:35 +00:00