Commit Graph

2675 Commits

Author SHA1 Message Date
Antoine Leblanc
353859db09 server: remove GraphQL.Utils
GitOrigin-RevId: 90639f9f3d263ccb0ce4e3b8b6e19ce784f4b25d
2021-01-26 13:14:35 +00:00
Antoine Leblanc
62a3bb0d9e Move text operator out of SQL.Types. (#406)
GitOrigin-RevId: 25adad545b302fd1dde25ea0365d492dfcdaa71d
2021-01-26 12:23:20 +00:00
Antoine Leblanc
6494229f54 server: generalize functions (#393)
Co-authored-by: Vamshi Surabhi <0x777@users.noreply.github.com>
GitOrigin-RevId: 5d2140152a2a18601c785ea80a7689cbe3bd277e
2021-01-25 10:13:54 +00:00
Swann Moreau
d4b474061f server: split server test suite to run in parallel on circleci (#309)
Co-authored-by: rakeshkky <12475069+rakeshkky@users.noreply.github.com>
Co-authored-by: Vishnu Bharathi P <vishnubharathi04@gmail.com>
Co-authored-by: Vamshi Surabhi <0x777@users.noreply.github.com>
Co-authored-by: Nizar Malangadan <nizar-m@users.noreply.github.com>
Co-authored-by: nizar-m <19857260+nizar-m@users.noreply.github.com>
GitOrigin-RevId: b8a1e9c3ba4797bad8dbb2daa75d23d4ad163546
2021-01-25 08:24:13 +00:00
Shraddha Agrawal
f64e2f1aab docs: add manage cards docs
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: f5ab0f02a812b016a1f97044bda4d4937772268b
2021-01-22 20:24:22 +00:00
hasura-bot
73462afbeb console: fix tooltip position (close #6180)
GITHUB_PR_NUMBER: 6409
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6409

Co-authored-by: ryo <11070996+kawamataryo@users.noreply.github.com>
GitOrigin-RevId: 47c32c59ff4289f81ed53b3631239441e4863961
2021-01-22 16:02:58 +00:00
hasura-bot
0b75e75d2f added export data option on data module (close #1438 #5158)
GITHUB_PR_NUMBER: 5440
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/5440

Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: e15ced3041fabc0df72314d404ca7b6176457437
2021-01-22 13:53:21 +00:00
Aleksandra Sikora
4daa8ad229 console: add missing source to count request
GitOrigin-RevId: 14a2d0e452fe41d7bfa3414a569a08ae8cc2a7d1
2021-01-22 11:56:39 +00:00
Antoine Leblanc
591db631ea ci: run stylish haskell on all incoming PRs
### Description

This PR adds two new github actions: one in the OSS repo, one in the monorepo. The OSS action runs `stylish-haskell` on all files touched by the PR, and displays a warning for each file that was in need of a formatting. The monorepo action does the same thing, with a twist: if the branch is not a shadow copy of an OSS branch, we assume that it is a local branch, and simply push a new commit with the changes.

Furthermore, this PR upgrades our stylish-haskell config to add record formatting, as close as possible to our styleguide.

Both actions use the standard stylish-haskell, not our modified fork.

### Known limitation

The monorepo action does not handle forks: pushing to the branch will fail, and checking the branch out might fail too. This is probably acceptable since we don't use forks with the monorepo, but it wouldn't be hard to handle that gracefully.

GitOrigin-RevId: 814138c5b9826098e2e4ea192778fc0d93fbe390
2021-01-21 23:37:26 +00:00
Karthikeyan Chinnakonda
3020150274 server: allow mapping session variables to standard JWT claims
fixes https://github.com/hasura/graphql-engine/issues/6449

A while back we added [support for customizing JWT claims](https://github.com/hasura/graphql-engine/pull/3575) and this enabled to map a session variable to any value within the unregistered claims, but as reported in #6449 , users aren't able to map the `x-hasura-user-id` session variable to the `sub` standard JWT claim.

This PR fixes the above issue by allowing mapping session variables to standard JWT claims as well.

GitOrigin-RevId: d3e63d7580adac55eb212e0a1ecf7c33f5b3ac4b
2021-01-21 16:50:46 +00:00
Aleksandra Sikora
8dad2da178 Revert "console: tag console requests"
Reverts hasura/graphql-engine-mono#143

GitOrigin-RevId: fa16726ec4ea6f69153b0105c08de017874d158a
2021-01-21 10:21:53 +00:00
Aleksandra Sikora
b4fd2e3f9f console and cli: run console in CLI mode for tests, misc CLI fixes (#368)
GitOrigin-RevId: 4563444387a4c9d02b5429729fe30bc87763288f
2021-01-20 20:18:44 +00:00
Antoine Leblanc
3f87d9e886 ci: hlint suggestions do not mark the check as failed
Instead of using hlint's return value to determine whether the check was successful, we parse the output to see if there was any error. In practice, that means that hlint suggestions, which are translated as warnings on a pr, will no longer mark the check as failed.

GitOrigin-RevId: dff2a50180de0c5f0702a9799b1f6359499da6a5
2021-01-20 17:50:50 +00:00
Aleksandra Sikora
e2c274570f cli: add Hasura-Internal-Request-Source to allowed headers
GitOrigin-RevId: 19e96852b02066ab6119e2cded21ce9518d4c1a0
2021-01-20 13:55:34 +00:00
Rakesh Emmadi
21fb33d709 fix oss server upgrade ci test from 1.3.3 stable release (#378)
GitOrigin-RevId: 1bcd4bb1e1f741ff44219dc1b559af5514c6df91
2021-01-20 12:00:00 +00:00
Antoine Leblanc
4815fcd500 server: progress on generic metadata
This PR generalizes a bunch of metadata structures.

Most importantly, it changes `SourceCache` to hold existentially quantified values:
```
data BackendSourceInfo =
  forall b. Backend b => BackendSourceInfo (SourceInfo b)

type SourceCache = HashMap SourceName BackendSourceInfo
```

This changes a *lot* of things throughout the code. For now, all code using the schema cache explicitly casts sources to Postgres, meaning that if any non-Postgres `SourceInfo` makes it to the cache, it'll be ignored.

That means that after this PR is submitted, we can split work between two different aspects:
  - creating `SourceInfo` for other backends
  - handling those other sources down the line

GitOrigin-RevId: fb9ea00f32e840fc33c5467896fb1dfa5283ab42
2021-01-20 00:32:45 +00:00
hasura-bot
98ccd81704 Server: Remote relationships permissions
GITHUB_PR_NUMBER: 6125
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6125

Co-authored-by: Karthikeyan Chinnakonda <15602904+codingkarthik@users.noreply.github.com>
GitOrigin-RevId: 53d0671e6335dad1af7cb00e3e05e7021a910673
2021-01-19 20:57:58 +00:00
hasura-bot
2c56254e5a server: simplify JSON instances
GITHUB_PR_NUMBER: 6152
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6152

Co-authored-by: Antoine Leblanc <1618949+nicuveo@users.noreply.github.com>
GitOrigin-RevId: 6c94aef8c57e852b3d41b8355c09e64fce756a7c
2021-01-19 19:15:42 +00:00
hasura-bot
38fc4cb677 server: consistently log request_id at the same level
GITHUB_PR_NUMBER: 6244
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6244

Co-authored-by: José Lorenzo Rodríguez <37621+lorenzo@users.noreply.github.com>
GitOrigin-RevId: fef22d98ac7be23ca21a63dc1c696fa7169253a4
2021-01-19 17:26:45 +00:00
Sameer Kolhar
bd2e6a0567 console: tag console requests
resolves #134

The PR adds a new header(`Hasura-Internal-Request-Source`) to every request sent to the server.

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 9d1538fcf92fd5a00c649884b910da3f3993cd47
2021-01-19 15:36:46 +00:00
Antoine Leblanc
e754190301 server: clean MaybeT usage, and introduce new hlint rules
### Description

Our Prelude provides the very convenient `hoistMaybe :: Maybe b -> MaybeT m b`. This PR adds hlint rules to replace uses of `MaybeT $ pure $ x` with the cleaner `hoistMaybe x`, and rules to specifically replace `MaybeT $ pure Nothing` with `empty`.

GitOrigin-RevId: 7254f4954e34e4d7ca972dc7c12073d3ab8cb0b8
2021-01-19 13:38:42 +00:00
Swann Moreau
c995cffbb5 server: misc ci improvements (#372)
* split ~/.cabal/{packages,store} caches

* use xlarge for {oss_,}build_server

GitOrigin-RevId: e37619e85459b3d05ebcbf93447b02d10b8b4841
2021-01-19 11:43:36 +00:00
Rikin Kachhia
0f26a24557 docs: remove posthog tracking script
as tracking scripts are managed via google tag manager they can be removed from code

GitOrigin-RevId: ed864944e3062f33c08bfce7f2aca9f79ded6b8c
2021-01-19 10:15:55 +00:00
Aleksandra Sikora
b829520f49 console: fix imports and raw sql regression
* Fixed imports ('../../../Common/utils/v1QueryUtils' -> '../../../../metadata/queryUtils') which will fix adding and dropping action permissions and table enum toggle.
* Fixed regression from 0dd1e4d58a (diff-2016a81d31343f475f94d13fe21aad0f56664f386c0455210021dc197b3d1dadL173) regarding setting `track this` for functions.

GitOrigin-RevId: 458b84ba06f002c89b5615dbef8c76920a978824
2021-01-18 19:03:37 +00:00
hasura-bot
a398d3b190 cli: support datasources
GITHUB_PR_NUMBER: 6111
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6111

Co-authored-by: Aravind K P <8335904+scriptonist@users.noreply.github.com>
GitOrigin-RevId: 1f6517acfacb58c566bb5e48f74ea0dfa5c6f063
2021-01-18 17:12:09 +00:00
Vladimir Ciobanu
6e752a7876 server: add type information to aggregates and stringify them (closes #5704)
Fixes https://github.com/hasura/graphql-engine/issues/5704 by checking, for aggregate fields whether we are handling a numeric aggregation.

This PR also adds type information to `ColFld` such that we know the type of the field.

This is the second attempt. See #319 for a less invasive approach. @nicuveo suggested type information might be useful, and since it wasn't hard to add, I think this version is better as well.

GitOrigin-RevId: aa6a259fd5debe9466df6302839ddbbd0ea659b5
2021-01-18 13:52:51 +00:00
Karthikeyan Chinnakonda
6c22132061 server: move remote schema permissions APIs to /v1/metadata
Earlier (pre catalog separation), the remote schema permissions were in `/v1/query`. This PR moves it to `/v1/metadata`.

GitOrigin-RevId: cb39d9df4cc2288f67231504e3a7909f2f8df4da
2021-01-18 10:39:29 +00:00
hasura-bot
513a3d0c19 Fix action relationship type and input arguments (closes #6402) (#284)
Co-authored-by: Antoine Leblanc <antoine@hasura.io>
GITHUB_PR_NUMBER: 6417
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6417
GitOrigin-RevId: 37b67a4d04e0ed3b16fc5fc9bf025b24b1f1bf6e
2021-01-18 06:57:24 +00:00
hasura-bot
647504ef99 docs: fix UserLogin action mutation definition
This PR was migrated from https://github.com/hasura/graphql-engine/pull/6300

---
Accept password instead of email in UserInfo Mutation type example

Co-authored-by: Tobias Törnros <17402497+tobiastornros@users.noreply.github.com>
GitOrigin-RevId: 9fbc0fc1ad4e6725b5411c271dd8e2d1ee7840be
2021-01-15 12:36:32 +00:00
Praveen Durairaju
4bc904f230 update hasura logo brand assets
This PR updates the svg logo assets inside the `assets/brand` directory with the new Hasura logo.

GitOrigin-RevId: 14c895be65dc3c149f4a78b07d83fa2c3ce3455e
2021-01-15 12:32:43 +00:00
hasura-bot
b9d31203c9 docs: add full page on pg permissions to cloud docs
GITHUB_PR_NUMBER: 6128
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6128

Co-authored-by: Marion Schleifer <5722022+marionschleifer@users.noreply.github.com>
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: 0ebd5fcbdfa6deaccd63d164c5ed8a07b63abca3
2021-01-14 08:17:38 +00:00
Rakesh Emmadi
648488ce7a server: fix computed field comment is not being saved in metadata (#337)
GitOrigin-RevId: 7eb1c5b86740d884a2718cead6dab962a45283d1
2021-01-14 07:03:42 +00:00
Karthikeyan Chinnakonda
c14bcb6967 server: accept new config allowed_skew in JWT config to provide leeway in JWT expiry
fixes https://github.com/hasura/graphql-engine/issues/2109

This PR accepts a new config `allowed_skew` in the JWT config to provide for some leeway while comparing the JWT expiry time.

GitOrigin-RevId: ef50cf77d8e2780478685096ed13794b5c4c9de4
2021-01-13 08:39:18 +00:00
Lyndon Maydwell
ece4fb4bce Merge pull request #342 from hasura/naveen/move-serverCtx-to-Config
server: Move 'serverMetrics' to Config.hs for better visibility
GitOrigin-RevId: 4f2b40ec81d4d4bb662cc16693b993fb3606b64a
2021-01-13 06:28:12 +00:00
Aleksandra Sikora
5aedaace28 console: support volatile functions (close #6228)
Close https://github.com/hasura/graphql-engine/issues/6228

GitOrigin-RevId: 814c38846f49abd8c5ee48129e61d1a00b81a41e
2021-01-13 04:22:40 +00:00
surendran82
3373bbc748 docs: update marketo form
GitOrigin-RevId: 474aa477bda27eaa262815c069a58c61d6cbf3f5
2021-01-12 15:37:34 +00:00
Karthikeyan Chinnakonda
f967a4b22e Server: fix query actions issue used with relationship and configured with permissions
Fixes https://github.com/hasura/graphql-engine/issues/6385

In the v1.3.4-beta.2 version, the SQL generated for a query action containing relationship and configured with permissions parsed the `x-hasura-user-id` session variable value through the `hasura.user` postgres setting instead of passing the session variables as an JSON object to the query as it was in v1.3.3.

This PR fixes the SQL generation to that of v1.3.3

Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
GitOrigin-RevId: 838ba812f89b51df7fcead81b9d3c2885dfa39b4
2021-01-12 12:04:21 +00:00
Aleksandra Sikora
efb5fd70f2 console: update connection_info to be optional
GitOrigin-RevId: 1bf93da749252057c41ef896cfa84f1e6189864e
2021-01-12 10:04:08 +00:00
Karthikeyan Chinnakonda
7b83018c39 Server: fix issue of not being able to track tables with non-compliant GraphQL names (#313)
* server: use only the valid tables in the node parser

* add test

GitOrigin-RevId: 90edf001220c7d78eaab86ff565ee4311844b5d3
2021-01-12 08:13:58 +00:00
Marion Schleifer
b4e72efeb7 docs: fix warning on build
Fix warning on docs build on main

GitOrigin-RevId: 3a5937539f4a1cebfe8770e75605240ab54a8c02
2021-01-12 06:31:27 +00:00
Sameer Kolhar
ffd5e57666 console: update set_table_custom_fields to use set_table_customization API
#### Changelog - (have added an entry)

#### PR Description

This PR resolves https://github.com/hasura/graphql-engine/issues/6284.

 - Updates the API being used as the issue requires.
 - Places a check to raise an error whenever the user tries to save the custom_fields without _any_ input (it was possible in the previous versions of the console)

 - Updated form (picture)

<img width="745" alt="image" src="https://user-images.githubusercontent.com/6604943/103933740-d866a480-5149-11eb-90b2-e1c1c4559902.png">

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: df3127c3c58b5ecf2d6ab79cb95610a96592ca12
2021-01-11 21:59:10 +00:00
hasura-bot
4cbebed2df docs: add <> around placeholders
GITHUB_PR_NUMBER: 5803
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/5803

Co-authored-by: Funmilayo E. Olaiya <35759534+codeliezel@users.noreply.github.com>
GitOrigin-RevId: 98c44e8497069ecaab8b74d81279a117cac4b57d
2021-01-11 19:21:40 +00:00
Aleksandra Sikora
0401ce82dc console: replace Hasura logo and favicon in oss and pro consoles
<img width="338" alt="Screenshot 2021-01-07 at 14 02 10" src="https://user-images.githubusercontent.com/9019397/103895599-f0f6a080-50f0-11eb-8bd9-d8b96a43c300.png">

GitOrigin-RevId: 1700238a5d18923120616e7f4944acb05ccd689c
2021-01-11 17:29:58 +00:00
hasura-bot
66a3ad4d36 docs: fix typo
This PR was migrated from https://github.com/hasura/graphql-engine/pull/6254

---
>

### Description
>

### Changelog

- [ ] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components

- [ ] Server
- [ ] Console
- [ ] CLI
- [ ] Docs
- [ ] Community Content
- [ ] Build System
- [ ] Tests
- [ ] Other (list it)

### Related Issues
->

### Solution and Design
>

### Steps to test and verify
>

### Limitations, known bugs & workarounds
>

### Server checklist

#### Catalog upgrade

Does this PR change Hasura Catalog version?
- [ ] No
- [ ] Yes
  - [ ] Updated docs with SQL for downgrading the catalog

#### Metadata

Does this PR add a new Metadata feature?
- [ ] No
- [ ] Yes
  - Does `run_sql` auto manages the new metadata through schema diffing?
    - [ ] Yes
    - [ ] Not required
  - Does `run_sql` auto manages the definitions of metadata on renaming?
    - [ ] Yes
    - [ ] Not required
  - Does `export_metadata`/`replace_metadata` supports the new metadata added?
    - [ ] Yes
    - [ ] Not required

#### GraphQL
- [ ] No new GraphQL schema is generated
- [ ] New GraphQL schema is being generated:
   - [ ] New types and typenames are correlated

#### Breaking changes

- [ ] No Breaking changes
- [ ] There are breaking changes:

  1. Metadata API

     Existing `query` types:
     - [ ] Modify `args` payload which is not backward compatible
     - [ ] Behavioural change of the API
     - [ ] Change in response `JSON` schema
     - [ ] Change in error code

  2. GraphQL API

     Schema Generation:

     - [ ] Change in any `NamedType`
     - [ ] Change in table field names

     Schema Resolve:-

     - [ ] Change in treatment of `null` value for any input fields

  3. Logging

     - [ ] Log `JSON` schema has changed
     - [ ] Log `type` names have changed

Co-authored-by: Thomas Güttler <414336+guettli@users.noreply.github.com>
GitOrigin-RevId: 8381a182e9f380b98e0ebe918727e0ccae103e14
2021-01-11 14:40:48 +00:00
Shraddha Agrawal
583405bf96 docs: update datadog integration snaps
### Description
This PR updates the datadog integration screenshots.

### Changelog

- [ ] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components
- [x] Docs

### Affected pages
https://deploy-preview-289--hasura-docs-mono.netlify.app/graphql/cloud/metrics/integrations/datadog.html

Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: 206234de7e461a04ea75715480fa714b35d185a1
2021-01-11 12:58:57 +00:00
surendran82
79095cf66d docs: update logos
GitOrigin-RevId: 0ea3ff19efe2ff93dac17ca903197ab155bad38f
2021-01-11 10:49:18 +00:00
Aleksandra Sikora
07bde9f577 console: tests improvements and misc fixes to multiple data sources (#315)
GitOrigin-RevId: db7dfce97ac5303cc09974ad7db97beb31e1ae18
2021-01-11 08:04:12 +00:00
Antoine Leblanc
3948ca84da server: RQL code health
This PR is a combination of the following other PRs:
- #169: move HasHttpManager out of RQL.Types
- #170: move UserInfoM to Hasura.Session
- #179: delete dead code from RQL.Types
- #180: move event related code to EventTrigger

GitOrigin-RevId: d97608d7945f2c7a0a37e307369983653eb62eb1
2021-01-08 23:10:36 +00:00
hasura-bot
e44b47f498 ci: activate -Werror in dev.sh config
This PR was migrated from https://github.com/hasura/graphql-engine/pull/6171

---
### Description
A trivial change to make `dev.sh` use -Werror. This is what our CI uses, and it's annoying to have a PR rejected because of a warning that was missed at dev time. Since this is only for `dev.sh`, it won't impact most people's normal workflow.

Co-authored-by: Antoine Leblanc <1618949+nicuveo@users.noreply.github.com>
GitOrigin-RevId: 37c2f088c37326c244533a003bf9b8169448abc8
2021-01-08 21:32:34 +00:00
Antoine Leblanc
0d194724ee server: generalize update schema
### Description

This PR updates the graphql schema to be backend-agnostic. To do so, it also moves the definition of operators to `BackendSchema`, to be specified differently per backend.

GitOrigin-RevId: 35b9d2d1bff93fb68b872d6ab0d3d12ec12c1b93
2021-01-08 19:46:34 +00:00