Divi
a53a2115dc
ci: tag release v2.20.0
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8155
GitOrigin-RevId: 61672266190411c792c77d8fddd25dc3bac47c01
2023-03-01 08:09:54 +00:00
Daniel Chambers
81ffaafe6f
Fixed unstable ordering in Data Connector agent test
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8143
GitOrigin-RevId: 4926e95f327123e8925340fed35c24687bd8189e
2023-03-01 01:30:44 +00:00
Nicolas Beaussart
f3951e1680
frontend: update nx to latest 15
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8079
Co-authored-by: Stefano Magni <173663+NoriSte@users.noreply.github.com>
GitOrigin-RevId: 46b1ed03ab225fccc9d769203d1af11a6bcdb63e
2023-02-28 19:42:51 +00:00
Nicolas Beaussart
fc4aec4330
console: fix graphiql version resolution
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8144
GitOrigin-RevId: 858ff17d6c12b7252ce43c85b5b6e883c741a466
2023-02-28 15:05:37 +00:00
Krushan Bauva
5319fe6bfc
server: redact sensitive fields from multitenant logs
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8085
GitOrigin-RevId: acf23c6eaaf84fa3218898be6484431ccc646ee9
2023-02-28 14:32:52 +00:00
Samir Talwar
6d9d774bae
docs: Add documentation for the variants of run_sql
.
...
Each database has its own `run_sql` command and assorted parameter support. Previously, we were only documenting PostgreSQL.
[NDAT-147]: https://hasurahq.atlassian.net/browse/NDAT-147?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8137
GitOrigin-RevId: cc40fa9441f12c08898ddb2563205744ad2ec14e
2023-02-28 13:55:56 +00:00
Daniel Chambers
6b19069c37
Only load the schema once for all schema tests in the Data Connector agent test suite
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8142
GitOrigin-RevId: 1e2340fa5670a9c11e424e85045dc18f5286cff7
2023-02-28 13:52:30 +00:00
Samir Talwar
987a0187e9
docs: Add API documentation for if_matched
.
...
We document `on_conflict`, which handles upserts for Postgres, but we were missing the equivalent feature for MS SQL Server, `if_matched`.
[NDAT-145]: https://hasurahq.atlassian.net/browse/NDAT-145?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8136
GitOrigin-RevId: 6ed2f7b24356879156145e2d6a8c2825bc8b6881
2023-02-28 12:45:57 +00:00
Manas Agarwal
fbb92230bb
Deprecation message in Console Folder Readme
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8131
Co-authored-by: Nicolas Beaussart <7281023+beaussan@users.noreply.github.com>
GitOrigin-RevId: d0c187bb322e26105a8ecdb19da4e8478b7d09dd
2023-02-28 12:05:04 +00:00
Gil Mizrahi
7872be0e82
feature(server): support subscriptions in logical models
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8076
GitOrigin-RevId: 84a3e89d97bdb81c02803b644f417dfe51834405
2023-02-28 11:18:43 +00:00
Varun Choudhary
1971f4f6e4
console: allow users to remove event trigger auto clean-up configuration
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8036
Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: da8df15ac3591a0fd5dfce8e0be26690479ef066
2023-02-28 09:59:14 +00:00
Puru Gupta
4e7fbbc2d6
server: use only server context and app env for dependent functions (remove passing of ServeOptions
)
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7920
Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
GitOrigin-RevId: 6ebc4d0429fdfecf93950879b69e8b5f8f56b502
2023-02-28 09:11:27 +00:00
Vijay Prasanna
3034988a3b
feature (console): clean up the ConnectPostgresWidget
component
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8022
Co-authored-by: Matthew Goodwin <49927862+m4ttheweric@users.noreply.github.com>
GitOrigin-RevId: 870474c4e4f546a4c3876416b93cf0d932a97de5
2023-02-28 07:16:51 +00:00
Daniel Chambers
6a5fe902b7
Do nested JSON decoding in SQL in SQLite
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8138
GitOrigin-RevId: f22ebe94664a112536acaa37e13189d9fddcd222
2023-02-28 02:40:44 +00:00
Brandon Martin
bf16f628ec
Update manifests for athena, snowflake, mysql
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8134
GitOrigin-RevId: d19a07efd7c372ee4ca26a414e6ca50c87afe3df
2023-02-27 16:51:26 +00:00
Varun Choudhary
546902240a
console: show year in the date column while displaying event triggers, cron triggers and scheduled triggers
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8128
GitOrigin-RevId: 4522406f5e79dbb352778fa6849c284b813a0386
2023-02-27 14:54:42 +00:00
Daniel Chambers
bbe756dbcc
Upgrade sqlite3 in SQLite agent, upgrade deps with security flaws, remove Sequelize dep
...
[GDC-812]: https://hasurahq.atlassian.net/browse/GDC-812?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8120
GitOrigin-RevId: c15d5aaf0c9e71fcfcaa8d580d6d1423efcc416f
2023-02-27 14:02:16 +00:00
hasura-bot
aaf20b971f
community: add graphql benchmark
...
GITHUB_PR_NUMBER: 9401
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/9401
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7672
Co-authored-by: arjunyel <11153289+arjunyel@users.noreply.github.com>
Co-authored-by: Praveen Durairaju <14110316+praveenweb@users.noreply.github.com>
GitOrigin-RevId: 9b0e9a3dd4cee1ef0a76fb45dee3d5e76d404512
2023-02-27 13:15:01 +00:00
Nicolas Inchauspe
0b72259c1f
Plat 473
...
[PLAT-473]: https://hasurahq.atlassian.net/browse/PLAT-473?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8123
GitOrigin-RevId: ed7d749e5ccf575419ca436dfcc0a28e15f8ca64
2023-02-27 10:47:17 +00:00
Puru Gupta
50f0e1df51
server: centralize various application state (introducing AppContext
and AppEnv
)
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8108
Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
Co-authored-by: Naveen Naidu <30195193+Naveenaidu@users.noreply.github.com>
Co-authored-by: Anon Ray <616387+ecthiender@users.noreply.github.com>
GitOrigin-RevId: 4a1f1ba960be4e0d4838188645d10162c73ecf06
2023-02-24 18:11:05 +00:00
Erik Magnusson
601e1951bc
console: support for relationship array handling for permissions builder
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8089
GitOrigin-RevId: d24ee20ca56d5dc17a5857754770fbba5574759a
2023-02-24 16:28:52 +00:00
Erik Magnusson
938423ec54
console: add create "delete" permissions
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8071
GitOrigin-RevId: efb545e134908b61eef71f79a477061753a4bb1c
2023-02-24 13:20:35 +00:00
Tom Harding
318cf1b692
Boolean expressions should talk about fields, not tables
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8098
GitOrigin-RevId: 93b6e5b675a9421e6079ca344e308e7362839bc1
2023-02-24 12:32:38 +00:00
Nicolas Inchauspe
975d4ae91b
console: fix operations filters
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8097
GitOrigin-RevId: 33a72186a38094bbcdee85d87d0f0a05aadb1736
2023-02-24 11:57:50 +00:00
Daniel Harvey
fbab8cd755
Revert "server: centralize various application state (introducing AppContext
and AppEnv
)"
...
The Postgres integration tests failed [here](https://buildkite.com/hasura/graphql-engine-mono/builds/30176#01867eb5-9635-4aaf-a147-44d43df03cbd ), yet this merged. Looks like a missing required check. Have resolved that, but in the meantime, we should revert this PR until the test can be fixed.
Reverts hasura/graphql-engine-mono#7905
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8107
GitOrigin-RevId: 6ea329bc54f42d8c8686c5d26f0b2dbd43f991cf
2023-02-24 11:27:16 +00:00
Rikin Kachhia
a963fdcace
console: fix browse rows page UI glitches
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8105
GitOrigin-RevId: 8ab4e3f77f7ca0b9e4dd7092423b01762c6dc33d
2023-02-24 10:51:53 +00:00
Stefano Magni
cb4334c78a
fix(console): Disable the DropDown trigger when the disabled flag is passed
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8104
GitOrigin-RevId: 4bd1ad2089693b6c1dda10b5eed2c3559113fc27
2023-02-24 09:34:11 +00:00
Erik Magnusson
f9ec262ac0
NDAT-519-wrong-indexes-listed-when-multiple-schemas-have-tables-with-the-same-name-9420
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8083
GitOrigin-RevId: ca41229ac0227fb9e52c48c6a76eb80d0cf43fd4
2023-02-24 08:44:14 +00:00
Philip Lykke Carlsen
1af8d53c6f
refactor(hlint): Demote Environment-from-OS to a suggestion
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8092
GitOrigin-RevId: 042aec936638fcb7890ecaa8cb368ed442100904
2023-02-23 21:44:44 +00:00
Samir Talwar
0271094df7
CI: Disable Python integration test groups covered by the new job.
...
We now run a lot of these at once by spawning a new HGE instance per
test class. The commented-out tests are now duplicated.
We have a lot of work to do to take care of the rest, but this should be
a decent start. With this change, we drop from 42 to 19 test groups.
[NDAT-533]: https://hasurahq.atlassian.net/browse/NDAT-533?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8060
GitOrigin-RevId: e38e1a72cfa6eafac97065a435d2c8e1508b834e
2023-02-23 15:45:20 +00:00
Stefano Magni
926b8c272e
chore(ci, console): Prioritize the Chromatic diagnostic file over the CLI error
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8090
GitOrigin-RevId: 557c051bd0d0706897c08163bfbefaf9d0fe546c
2023-02-23 15:16:16 +00:00
Puru Gupta
f45928b03b
server: centralize various application state (introducing AppContext
and AppEnv
)
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7905
Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
Co-authored-by: Naveen Naidu <30195193+Naveenaidu@users.noreply.github.com>
Co-authored-by: Anon Ray <616387+ecthiender@users.noreply.github.com>
GitOrigin-RevId: 74ce763b266dc053c10888767d5b4a0d9692508a
2023-02-23 14:45:24 +00:00
Daniel Chambers
6f50261274
Additional tests for mutations in the Data Connector agent test suite
...
[GDC-719]: https://hasurahq.atlassian.net/browse/GDC-719?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8080
GitOrigin-RevId: 2e35dd72723e0e9fc63426dc90b1a89aedbe4774
2023-02-23 13:54:37 +00:00
Nithin
063d7fbc2e
Add scaling & load balancer related docs
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8003
Co-authored-by: Sean Park-Ross <94021366+seanparkross@users.noreply.github.com>
Co-authored-by: Toan Nguyen <1615675+hgiasac@users.noreply.github.com>
GitOrigin-RevId: d9b0038dd41d0b6e8e96b5e785ca27c62f1a4da0
2023-02-23 12:23:01 +00:00
Stefano Magni
5ed0d78d35
chore(ci): Drop a message in GitHub when Chromatic fails
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8012
GitOrigin-RevId: b8fb00ec847cad189b589bb3b60121ee9f68e37b
2023-02-23 11:34:33 +00:00
Luca Restagno
9387981034
console: suggested relationships respect the user naming convention while generating the relationship name [DSF-126]
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8041
Co-authored-by: Matthew Goodwin <49927862+m4ttheweric@users.noreply.github.com>
GitOrigin-RevId: 9b1261a453a4aa7e0c81f90552e12b43cac881df
2023-02-23 08:51:31 +00:00
ananya-2410
4a24e7d962
ci: add jobs to scan images
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7965
Co-authored-by: Divi <32202683+imperfect-fourth@users.noreply.github.com>
GitOrigin-RevId: 5fe28e133c6f578d8cf3e62559e331d0f770884d
2023-02-23 08:20:28 +00:00
ananya-2410
36db970a34
ci: tag release v2.20.0-beta.1
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8081
GitOrigin-RevId: 0e13f833e881a5acf648f43ce16358a13945f5c3
2023-02-23 06:52:12 +00:00
Daniel Chambers
190e429eef
Add tests for delete mutations to the Data Connector agent test suite
...
[GDC-721]: https://hasurahq.atlassian.net/browse/GDC-721?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8067
GitOrigin-RevId: bf5b7e7c20c6011d438888be6017331def7063bf
2023-02-22 23:41:47 +00:00
Nicolas Beaussart
d2832f1067
frontend: use relative paths instead of absolute within modules
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8050
GitOrigin-RevId: 7fc12b2855d1632919613c77348119238b88ce6f
2023-02-22 16:38:45 +00:00
Antoine Leblanc
6e574f1bbe
harmonize network manager handling
...
## Description
### I want to speak to the `Manager`
Oh boy. This PR is both fairly straightforward and overreaching, so let's break it down.
For most network access, we need a [`HTTP.Manager`](https://hackage.haskell.org/package/http-client-0.1.0.0/docs/Network-HTTP-Client-Manager.html ). It is created only once, at the top level, when starting the engine, and is then threaded through the application to wherever we need to make a network call. As of main, the way we do this is not standardized: most of the GraphQL execution code passes it "manually" as a function argument throughout the code. We also have a custom monad constraint, `HasHttpManagerM`, that describes a monad's ability to provide a manager. And, finally, several parts of the code store the manager in some kind of argument structure, such as `RunT`'s `RunCtx`.
This PR's first goal is to harmonize all of this: we always create the manager at the root, and we already have it when we do our very first `runReaderT`. Wouldn't it make sense for the rest of the code to not manually pass it anywhere, to not store it anywhere, but to always rely on the current monad providing it? This is, in short, what this PR does: it implements a constraint on the base monads, so that they provide the manager, and removes most explicit passing from the code.
### First come, first served
One way this PR goes a tiny bit further than "just" doing the aforementioned harmonization is that it starts the process of implementing the "Services oriented architecture" roughly outlined in this [draft document](https://docs.google.com/document/d/1FAigqrST0juU1WcT4HIxJxe1iEBwTuBZodTaeUvsKqQ/edit?usp=sharing ). Instead of using the existing `HasHTTPManagerM`, this PR revamps it into the `ProvidesNetwork` service.
The idea is, again, that we should make all "external" dependencies of the engine, all things that the core of the engine doesn't care about, a "service". This allows us to define clear APIs for features, to choose different implementations based on which version of the engine we're running, harmonizes our many scattered monadic constraints... Which is why this service is called "Network": we can refine it, moving forward, to be the constraint that defines how all network communication is to operate, instead of relying on disparate classes constraint or hardcoded decisions. A comment in the code clarifies this intent.
### Side-effects? In my Haskell?
This PR also unavoidably touches some other aspects of the codebase. One such example: it introduces `Hasura.App.AppContext`, named after `HasuraPro.Context.AppContext`: a name for the reader structure at the base level. It also transforms `Handler` from a type alias to a newtype, as `Handler` is where we actually enforce HTTP limits; but without `Handler` being a distinct type, any code path could simply do a `runExceptT $ runReader` and forget to enforce them.
(As a rule of thumb, i am starting to consider any straggling `runReaderT` or `runExceptT` as a code smell: we should not stack / unstack monads haphazardly, and every layer should be an opaque `newtype` with a corresponding run function.)
## Further work
In several places, i have left TODOs when i have encountered things that suggest that we should do further unrelated cleanups. I'll write down the follow-up steps, either in the aforementioned document or on slack. But, in short, at a glance, in approximate order, we could:
- delete `ExecutionCtx` as it is only a subset of `ServerCtx`, and remove one more `runReaderT` call
- delete `ServerConfigCtx` as it is only a subset of `ServerCtx`, and remove it from `RunCtx`
- remove `ServerCtx` from `HandlerCtx`, and make it part of `AppContext`, or even make it the `AppContext` altogether (since, at least for the OSS version, `AppContext` is there again only a subset)
- remove `CacheBuildParams` and `CacheBuild` altogether, as they're just a distinct stack that is a `ReaderT` on top of `IO` that contains, you guessed it, the same thing as `ServerCtx`
- move `RunT` out of `RQL.Types` and rename it, since after the previous cleanups **it only contains `UserInfo`**; it could be bundled with the authentication service, made a small implementation detail in `Hasura.Server.Auth`
- rename `PGMetadaStorageT` to something a bit more accurate, such as `App`, and enforce its IO base
This would significantly simply our complex stack. From there, or in parallel, we can start moving existing dependencies as Services. For the purpose of supporting read replicas entitlement, we could move `MonadResolveSource` to a `SourceResolver` service, as attempted in #7653 , and transform `UserAuthenticationM` into a `Authentication` service.
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7736
GitOrigin-RevId: 68cce710eb9e7d752bda1ba0c49541d24df8209f
2023-02-22 15:55:54 +00:00
Erik Magnusson
3423e53480
console: add insert handling for permissions
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7973
Co-authored-by: Julian@Hasura <118911427+julian-mayorga@users.noreply.github.com>
GitOrigin-RevId: 6367c6bbf66e58fe2e08caacdf3217125c29a4c7
2023-02-22 15:27:16 +00:00
Varun Choudhary
d3287e5fb3
console: filter view from event trigger while selecting table
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8073
GitOrigin-RevId: 6f47bc21c5ec9ef6f20d420bb87849c9129b98ec
2023-02-22 14:58:22 +00:00
Gil Mizrahi
625e41cd77
rename naqi to logimo part 3 - data types
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8068
GitOrigin-RevId: 435527a98e645ed69c9be484ff0bd21af8181d69
2023-02-22 13:46:54 +00:00
Vijay Prasanna
983a08d296
bugfix (console): fix alignment issue in manage database section
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8072
GitOrigin-RevId: 32c1d47c044c110d47c56a2e31cc6423eb8e9f8e
2023-02-22 11:31:10 +00:00
Daniele Cammareri
a5e4141eef
console: use naming convention for suggested relationships
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8058
GitOrigin-RevId: 5a47e814478fe29e0abf47430992ec6217041659
2023-02-22 09:59:27 +00:00
Gil Mizrahi
2b0e9ea14c
rename NativeQuery module hierarchy to LogicalModel
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8063
GitOrigin-RevId: 0ed0cee7fb1d77f166770caae21cc05d5dd30b75
2023-02-22 09:23:54 +00:00
Varun Choudhary
68e8091fda
console: allow users to execute read only SQL queries
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8057
Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: 3685e43e52ce3c7e29b8afef52169720e26bb67c
2023-02-22 07:52:04 +00:00
Daniel Chambers
72e319e486
Add tests for update mutations to the Data Connector agent test suite
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8054
GitOrigin-RevId: 6869e8938e7a70128770f959bf34e3a291074d14
2023-02-22 04:19:16 +00:00
Nicolas Beaussart
7dfd2d60f9
frontend: rework import between ce and ee libs
...
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/8034
GitOrigin-RevId: 317eeaccea1318451cc14b4c94086cb54720dd33
2023-02-21 14:56:41 +00:00