Blazing fast, instant realtime GraphQL APIs on your DB with fine grained access control, also trigger webhooks on database events.
APACHE-2.0 License
Bot releases are hidden (Show)
Published by manasag 10 months ago
We're thrilled to announce the alpha release of Hasura V3! 🎉
@include
and @skip
for fields.{{argument_name}}
syntaxThis release marks the initial phase of our alpha rollout. Please note that Hasura V3 is still in its early stages and has limited functionality. We encourage feedback, bug reports, and contributions from the community to help us shape the future of this project.
We're excited to have you on board as we embark on this journey together.
Your participation and feedback are invaluable as we work towards more updates and exciting features in the upcoming releases! 🚀
Published by scriptnull over 1 year ago
This is a patch release for v2.11
Hasura doesn't allow certain queries to be cached. Namely, Remote Schema or Action queries with forward_client_headers
set to true
.
Currently, Hasura throws an error and fails the query. The behavior is now changed to not throw an error. Hasura now always fetches data from the upstream API, skips the cache, and returns the response with a Warning header.
The warning headers are as follows:
warning: 199 - Actions that forward client headers cannot currently be cached
warning: 199 - Remote schemas or joins that forward client headers cannot currently be cached
Note that Remote Schemas with forward_client_headers: true
were erroneously allowed to cache before.
The following bugs are also fixed -
(Enterprise edition only)
Updates base image of graphql-engine to the latest available ubuntu update to avail all the security patches.
Published by scriptnull over 1 year ago
❗ Patch for a critical security vulnerability. See more details in the security advisory.
Published by scriptnull over 1 year ago
❗ Patch for a critical security vulnerability. See more details in the security advisory.
Published by imperfect-fourth almost 2 years ago
While creating a new Action, now you can use a type generator on the Console to easily create GraphQL types from JSON sample requests
We now support aggregation functions in where-clauses, initially requested in #1498, see docs.
This allows queries such as the following to fetch the names of students that have an average grade above a certain value across their science classes:
query {
students(_where: {
classes_aggregate: {
average: {
arguments: "grade",
filter: {department: {_eq: "science"}},
predicate: { _gt: 10 }
}
})
{
name
}
hide_aggregation_predicates
.IF EXISTS
while dropping the constraint in source migrations (2 -> 3)pg_dump
has been upgraded in order to support PostgreSQL 15.batch_size
behaviour for auto event trigger log cleanup (Enterprise edition only)
idle_timeout
and max_connections
fields for MySQL connection pool settings while applying metadata.hide_update_many_fields
experiment feature flag which allows GraphQL Engine to be started without including _updates
fields. This is useful for resolving errors where the new fields conflict with existing table names. (fix #8844)backend_only
flag for delete permissions if it is set to false
while exporting metadata to make it consistent with insert and update permissions.update_many
operationinvocation logs
on the console if only event logs
are cleaned.in
, not in
, like
, not like
) (fix #9023)Try it
button on the table pages to quickly try GraphQL operations on the table using the API explorer.query_collections.yaml
when query_collections
object in metadata JSON contains at least one definition.queries
as an empty array. (fixes #8787)Published by imperfect-fourth almost 2 years ago
hide_aggregation_predicates
.IF EXISTS
while dropping the constraint in source migrations (2 -> 3)Add operation to allowlist
button on the monitoring tabPublished by imperfect-fourth about 2 years ago
We now support aggregation functions in where-clauses, initially requested in #1498, see docs.
This allow queries such as the following to fetch the names of students that have an average grade above a certain value across their science classes:
query {
students(_where: {
classes_aggregate: {
average: {
arguments: "grade",
filter: {department: {_eq: "science"}},
predicate: { _gt: 10 }
}
})
{
name
}
While creating a new Action, now you can use a type generator on the Console to easily create GraphQL types from JSON sample requests
idle_timeout
and max_connections
fields for MySQL connection pool settings while applying metadata.hide_update_many_fields
experiment feature flag which allows GraphQL Engine to be started without including _updates
fields. This is useful for resolving errors where the new fields conflict with existing table names. (fix https://github.com/hasura/graphql-engine/issues/8844)backend_only
flag for delete permissions if it is set to false
while exporting metadata to make it consistent with insert and update permissions.update_many
operationinvocation logs
on the console if only event logs
are cleaned.in
, not in
, like
, not like
) (fix https://github.com/hasura/graphql-engine/issues/9023)Try it
button on the table pages to quickly try GraphQL operations on the table using the API explorer.query_collections.yaml
when query_collections
object in metadata JSON contains at least one definition.queries
as an empty array. (fixes #8787)Published by imperfect-fourth about 2 years ago
(Enterprise edition only)
You can now configure automatic clean up of event triggers logs with various configuration parameters. Read more about it here
(Enterprise edition only)
Introducing health checks for data sources. Health check on a source can be enabled and configurable via an optional health_check
field in the source metadata.
Example for a Postgres source.
POST /v1/metadata HTTP/1.1
Content-Type: application/json
X-Hasura-Role: admin
{
"type":"pg_add_source",
"args":{
"name":"<db_name>",
"configuration":{
"connection_info":{
"database_url":{
"from_env":"<DATABASE_URL_ENV>"
}
}
},
"health_check": {
"test": {
"sql": "SELECT 1"
},
"interval": 300,
"timeout": 5,
"retries": 3,
"retry_interval": 5
}
}
}
Please refer to our docs for more information.
(Enterprise edition only)
Health check reports of sources can be obtained through a GET
request from the /healthz/sources
, an admin-only endpoint, on demand. Learn more about the API here.
Currently, Hasura supports enabling health checks on Postgres and MS SQL Server databases. Support for other data sources will be added soon.
args
optional in BigQuery computed fields that are backed by functions that don't take any user-specified arguments. (close #8904)graphql-ws
protocol, in which the server can cause an infinite ping-pong loop. (fix #8967)get_rows_count
arg in get_event_invocations
and get_scheduled_events
metadata APIs, when it is false
, the total rows count is not included in the response.replace_metadata
metadata APIschema
block being dropped from SDL when exporting remote schema permissions (fix #8579)Published by shahidhk over 4 years ago
If you’re on v1.2.0-beta.5
or v1.2.0
, please upgrade to v1.2.1
immediately since you may be impacted. Please reach out to us at [email protected] or on our website chat if you have any questions and need help.
Security advisory and details published here: https://github.com/hasura/graphql-engine/security/advisories/GHSA-j622-hw7j-c72x
Published by shahidhk over 4 years ago
This release brings few server-only changes that resolve potential space leaks:
HASURA_GRAPHQL_EVENTS_FETCH_INTERVAL
changes semantics slightly: we sleep for the interval only when there were previously no events to process: c425b554b8ecf2ef8897be70127d445bc8ac9326Published by shahidhk over 4 years ago
This release fixes bugs that were identified in the 1st beta release.
Use the following docker image:
hasura/graphql-engine:v1.2.0-beta.2
Download the binary:
Published by shahidhk over 4 years ago
Actions are a way to extend Hasura’s auto-generated mutations with entirely custom ones which can handle various use cases such as data validation, data enrichment from external sources and any other complex business logic.
A new mutation can be created either by defining its GraphQL SDL or by deriving it from an existing Hasura-generated mutation. The resolver is exposed to Hasura as a webhook which can be called synchronously or asynchronously. This release also includes an ever evolving codegen workflow to make managing the custom resolvers easier.
Read more about actions in the docs.
(#3042) (#3252) (#3859)
A new command is added to the server executable for downgrading to earlier releases. Previously, if you ran a newer Hasura version and wanted to go back to an old version on the same database, you had to stop Hasura, run some SQL statements and start Hasura again. With the new downgrade
command, these SQL statements can be run automatically.
Example: Downgrade from v1.2.0
to v1.0.0
:
# stop hasura v1.2.0
# run the following command:
docker run hasura/graphql-engine:v1.2.0 graphql-engine --database-url <db-url> downgrade --to-v1.0.0
# start hasura v1.0.0
Read more about this command in the docs.
(close #1156) (#3760)
Use the following docker image:
hasura/graphql-engine:v1.2.0-beta.1
Download the binary:
Published by shahidhk over 6 years ago
Published by shahidhk over 6 years ago
Published by shahidhk over 6 years ago
Published by shahidhk over 6 years ago
Pre-release version v1.0.0-alpha01