Commit Graph

316 Commits

Author SHA1 Message Date
Antoine Leblanc
5b54f9d766
server: add support for webhook connection expiration (#4196)
* add expiry time to webhook user info

This also adds an optional message to webhook errors: if we fail to
parse an expiry time, we will log a warning with the parse error.

* refactored Auth

This change had one main goal: put in common all expiry time
extraction code between the JWT and WebHook parts of the
code. Furthermore, this change also moves all WebHook specific code to
its own module, similarly to what is done for JWT.

* Remove dependency on string-conversions in favor of text-conversions

string-conversions silently uses UTF8 instead of being explicit about
it, and it uses lenientDecode when decoding ByteStrings when it’s
usually better to reject invalid UTF8 input outright. text-conversions
solves both those problems.

Co-authored-by: Alexis King <lexi.lambda@gmail.com>
2020-04-02 19:00:13 -05:00
Anurag Goel
d7b94f467b
docs: add One-Click Render deployment guides (close #3683) (#4209) 2020-04-01 15:25:28 +05:30
Tirumarai Selvan
df0e8b619c
docs: add statement to grant hasura permissions for PG functions (#4238) 2020-03-30 13:48:13 +05:30
Rakesh Emmadi
fd6535b861
option to reload remote schemas in 'reload metadata' (fix #3792, #4117) (#4141)
* option to reload remote schemas in 'reload_metadata' API, fix #3792, #4117

* add tests

* update changelog

* update docs api reference for 'reload_metadata'

* send reload_remote_schemas: true with the reload_metadata query

* add reload remote schemas checkbox; minor refactor

* Add a Note about cache invalidation and inconsistent metadata objects

* Small pluralization agreement tweak in docs

* Remove duplicated line in CHANGELOG

* no-op refactor

Suggested by Alexis @lexi-lambda

* Update server/src-lib/Hasura/RQL/DDL/RemoteSchema.hs

As suggested by @lexi-lambda

Co-Authored-By: Alexis King <lexi.lambda@gmail.com>

* fix tests

* requested changes

* comment 'replaceMetadataToOrdJson' unit tests

Co-authored-by: Rishichandra Wawhal <rishi@hasura.io>
Co-authored-by: Alexis King <lexi.lambda@gmail.com>
Co-authored-by: Tirumarai Selvan <tiru@hasura.io>
2020-03-26 17:22:20 +05:30
Tirumarai Selvan
f0d0547900
add docs for redeliver_event api (fix #4176) (#4177) 2020-03-24 18:45:25 +05:30
Rikin Kachhia
3c6e1a39e8
console: unique filenames for exported metadata (close #1772) (#4106)
Generate metadata filenames such as: hasura_metadata_2020_03_13_18_10_31_711.json
2020-03-18 20:27:18 +05:30
Phil Freeman
979dedccc2
docs: update permission.rst for check constraint api (#4124)
* Update permission.rst for check constraint API

* Apply suggestions from code review

Co-Authored-By: Marion Schleifer <marion@hasura.io>

* update UpdatePermission

Co-authored-by: Marion Schleifer <marion@hasura.io>
Co-authored-by: Tirumarai Selvan <tiru@hasura.io>
2020-03-17 14:52:37 +05:30
Marion Schleifer
e031e99d73
docs: replace doc with ref (close #4054) (#4068) 2020-03-12 01:12:36 +05:30
Marion Schleifer
f97937c912
docs: add metadata descriptions to actions docs (#4082)
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
2020-03-11 15:39:25 +05:30
Tirumarai Selvan
308482c529
docs: remove spaces from action handler templated url (#4081) 2020-03-11 14:24:12 +05:30
Tim Whitbeck
1f51dbbe2d
docs: fix typo in action example (#4064)
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
2020-03-11 12:16:28 +05:30
Brandon Simmons
c425b554b8
server(events): utilize proper backpressure scheme (close #3839) (#4013)
* Test working through a backlog of change events

* Use a slightly more performant threaded http server in eventing pytests

This helped locally but not on CI it seems...

* Rework event processing for backpressure. Closes #3839

With loo low `HASURA_GRAPHQL_EVENTS_FETCH_INTERVAL` and/or slow webhooks
and/or too small `HASURA_GRAPHQL_EVENTS_HTTP_POOL_SIZE` we might
previously check out events from the DB faster than we can service them,
leading to space leaks, weirdness, etc.

Other changes:
- avoid fetch interval sleep latency when we previously did a non-empty
  fetch
- prefetch event batch while http pool is working
- warn when it appears we can't keep up with events being generated
- make some effort to process events in creation order so we don't
  starve older ones.

ALSO NOTE: HASURA_GRAPHQL_EVENTS_FETCH_INTERVAL changes semantics
slightly, since it only comes into play after an empty fetch. The old
semantics weren't documented in detail, so I think this is fine.
2020-03-11 11:57:31 +05:30
Marion Schleifer
1436f310d5
docs: add latest prerelease build info (close #4041) (#4048) 2020-03-09 22:26:59 +05:30
Dmitry Minkovsky
b6780e8a15
cli: fix typo in cli example for squash (fix #4047) (#4049) 2020-03-09 15:19:00 +05:30
Marion Schleifer
ab54e47335
docs: add note on pg versions for actions (#4034) 2020-03-09 14:27:29 +05:30
Rikin Kachhia
8bbdbb037b
docs: correct version info for config v2 section (close #4019) (#4026) 2020-03-05 15:58:35 +05:30
Praveen Durairaju
2c13ba5a28
docs: fix broken link (#4005) 2020-03-03 23:18:45 +05:30
Rikin Kachhia
80a239c735
docs: update connecting actions page title (#4008) 2020-03-03 17:44:28 +05:30
Rikin Kachhia
08bc778bf1
update actions docs (#4007) 2020-03-03 17:32:40 +05:30
Sean Grove
90f46c0e23
docs: add AuthGuardian JWT guide (#3958) 2020-03-02 18:19:56 +05:30
Praveen Durairaju
5387ba0c44
revert auth heading changes in docs (#3992) 2020-03-02 16:54:19 +05:30
Praveen Durairaju
865b150c82
noop: replace subdomain links with subpath (#3869)
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
2020-02-27 15:43:07 +05:30
Luis Fernando
85dae9be9f
docs: add reference to QualifiedTable to table args (#3880) 2020-02-27 15:32:46 +05:30
Rikin Kachhia
87706158b1
update actions docs (#3953) 2020-02-25 21:00:00 +05:30
Rikin Kachhia
bea1de28f3
update docs (#3947)
* update catalogue downgrade docs
* update CLI doownload link for actions
2020-02-25 14:59:14 +05:30
Rikin Kachhia
048c1de414
docs: add actions docs (#3907) 2020-02-24 21:49:14 +05:30
Rikin Kachhia
0805719523
docs: remove wip actions docs (#3909)
* revert actions docs
2020-02-19 17:49:35 +05:30
Rikin Kachhia
b0d180efa2
docs: use install manifests from stable branch (#3906)
* update docs install manifests to use stable branch

* change the link to master at some more places

Co-authored-by: Shahidh K Muhammed <muhammedshahid.k@gmail.com>
2020-02-19 17:13:08 +05:30
Vamshi Surabhi
b84db36ebb
allow custom mutations through actions (#3042)
* basic doc for actions

* custom_types, sync and async actions

* switch to graphql-parser-hs on github

* update docs

* metadata import/export

* webhook calls are now supported

* relationships in sync actions

* initialise.sql is now in sync with the migration file

* fix metadata tests

* allow specifying arguments of actions

* fix blacklist check on check_build_worthiness job

* track custom_types and actions related tables

* handlers are now triggered on async actions

* default to pgjson unless a field is involved in relationships, for generating definition list

* use 'true' for action filter for non admin role

* fix create_action_permission sql query

* drop permissions when dropping an action

* add a hdb_role view (and relationships) to fetch all roles in the system

* rename 'webhook' key in action definition to 'handler'

* allow templating actions wehook URLs with env vars

* add 'update_action' /v1/query type

* allow forwarding client headers by setting `forward_client_headers` in action definition

* add 'headers' configuration in action definition

* handle webhook error response based on status codes

* support array relationships for custom types

* implement single row mutation, see https://github.com/hasura/graphql-engine/issues/3731

* single row mutation: rename 'pk_columns' -> 'columns' and no-op refactor

* use top level primary key inputs for delete_by_pk & account select permissions for single row mutations

* use only REST semantics to resolve the webhook response

* use 'pk_columns' instead of 'columns' for update_by_pk input

* add python basic tests for single row mutations

* add action context (name) in webhook payload

* Async action response is accessible for non admin roles only if
  the request session vars equals to action's

* clean nulls, empty arrays for actions, custom types in export metadata

* async action mutation returns only the UUID of the action

* unit tests for URL template parser

* Basic sync actions python tests

* fix output in async query & add async tests

* add admin secret header in async actions python test

* document async action architecture in Resolve/Action.hs file

* support actions returning array of objects

* tests for list type response actions

* update docs with actions and custom types metadata API reference

* update actions python tests as per #f8e1330

Co-authored-by: Tirumarai Selvan <tirumarai.selvan@gmail.com>
Co-authored-by: Aravind Shankar <face11301@gmail.com>
Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
2020-02-13 23:08:23 +05:30
Phil Freeman
94102c0460
Add downgrade command (close #1156) (#3760)
* Add downgrade command

* Add docs per @lexi-lambda's suggestions

* make tests pass

* Update hdb_version once, from Haskell

* more work based on feedback

* Improve the usage message

* Small docs changes

* Test downgrades exist for each tag

* Update downgrading.rst

* Use git-log to find tags which are ancestors of the current commit

Co-authored-by: Vamshi Surabhi <0x777@users.noreply.github.com>
2020-02-07 16:33:12 +05:30
Anon Ray
c6e34baad8
fix parsing JWK expiry time from headers on startup (fix #3655) (#3779) 2020-02-05 12:37:30 +05:30
Lyndon Maydwell
be6f966ce0
New ENV variable support for disabling CORS headers (close #3782) (#3785) 2020-02-03 16:43:03 +05:30
Marion Schleifer
2b977bb9b9
docs: document explain api (close #870) (#3739) 2020-02-03 12:04:44 +05:30
Rikin Kachhia
5702881d5c
docs: misc updates (#3700)
* added example for select_by_pk query
* improved notes on _or and _and behaviour
* improve distinct and order_by usage note
2020-01-20 17:17:49 +05:30
Phil Freeman
9ed8f717a7 remove hdb_views for inserts (#3598)
* WIP: Remove hdb_views for inserts

* Show failing row in check constraint error

* Revert "Show failing row in check constraint error"

This reverts commit dd2cac29d0.

* Use the better query plan

* Simplify things

* fix cli test

* Update downgrading.rst

* remove 1.1 asset for cli
2020-01-16 10:23:28 +05:30
Marion Schleifer
265cf7f12e docs: add meta descriptions to pages (#3631) 2020-01-14 18:27:45 +05:30
Rikin Kachhia
db6b2aa378
add computed fields support on console (close #3203 #3565) (#3522) 2020-01-13 12:41:30 +05:30
Marion Schleifer
28914022fc docs: add alt tags for all images (#3634) 2020-01-08 18:50:18 +05:30
Don Livanec
fa1805dc59 docs: update url for community wiki tools and boilerplates (#3619) 2020-01-06 12:39:45 +05:30
Phylor
3ca92b9ac1 docs: fix Auth0 integration instructions (fix #2655) (#3214)
Co-authored-by: Praveen Durairaju <praveend.web@gmail.com>
2020-01-06 12:38:03 +05:30
Praveen Durairaju
8ee21368f9 docs: add canonical url, fix accessibility (#3599) 2019-12-30 14:32:06 +05:30
Rikin Kachhia
3a7a3bf6bf
refactor docs schema section (#3489) 2019-12-26 17:35:37 +05:30
Shahidh K Muhammed
6ef5b438c0
add git clone command to heroku update guide (close #3582) (#3587) 2019-12-24 19:00:54 +05:30
Phil Freeman
c766881125 Support batched queries (fix #1812) (#3490) 2019-12-20 10:04:02 -06:00
Fabian
528f16a1e5 docs(fix) minor typo in auth0 integration guide (#3450)
Variable should be "userId" not "id", will throw an error by GraphQL server otherwise.
2019-12-19 16:50:10 +05:30
Aravind Shankar
756d8abd54 add rename_relationship metadata api docs (#3389) 2019-12-17 22:04:49 +05:30
Rikin Kachhia
deeae45b9e
add boolean expressions syntactic sugar notes in docs (#3510) 2019-12-17 19:52:39 +05:30
Tirumarai Selvan
eeb0c7acdd add note about abac to auth docs (#3537) 2019-12-17 14:01:33 +05:30
Kevin Menard
5634dbfa16 add notes about auth0-spa-js to auth0 docs (#3367) 2019-12-17 12:15:52 +05:30
Rikin Kachhia
4ef9bc4309
add cursor pagination section to docs (#3498) 2019-12-16 18:16:13 +05:30