这是indexloc提供的服务,不要输入任何密码
Skip to content

Releases: hasura/graphql-engine

v1.3.4

13 Mar 22:09

Choose a tag to compare

Changelog

❗ Patch for a critical security vulnerability. See more details in the security advisory.

v2.11.5

13 Mar 22:09

Choose a tag to compare

Changelog

❗ Patch for a critical security vulnerability. See more details in the security advisory.

v2.21.0-beta.1

10 Mar 07:51

Choose a tag to compare

v2.21.0-beta.1 Pre-release
Pre-release

Changelog

Bug fixes and improvements

Server

  • Remote relationships now cannot be configured when the target data source does not support them. Previously these were allowed to be added but would fail at query time.
  • Data Connector data sources can now be used as the source and/or target of remote relationships. Please note that only data connector agents that support foreach queries can be used as a target in a remote relationship.
  • Fix graphql-default naming convention bugs (#9426, #9430)

Console

  • Fix headers getting removed from event triggers configuration while updating trigger options
  • Fix subscriptions in CLI console API explorer when connected to a Hasura instance that only supports https/wss (fix #9475)
  • Show year in the date column while displaying event triggers, cron triggers and scheduled events
  • Respect the GraphQL API naming convention while tracking a suggested relationship.
  • Fix a bug that would cause the DB tree view to not show up if a Data Connector backed database is the only connected database.
  • Allow removing event trigger auto clean-up configuration (Enterprise edition only)

Data Connectors

  • The SQLite data connector agent now supports being a target of a remote relationship

v2.20.1

13 Mar 22:08

Choose a tag to compare

Changelog

❗ Patch for a critical security vulnerability. See more details in the security advisory.

v2.20.0

01 Mar 13:18

Choose a tag to compare

Changelog

Highlights

Import Action from OpenAPI (GA) (Cloud / Enterprise edition only)

Import Action from OpenAPI is used to easily create Hasura actions from an OpenAPI specification. You can upload the OpenAPI specification and create actions from the endpoints defined in the specification.

openapi

Read more in the docs or in the RFC.

Behaviour changes

  • Checks the Agent availability when adding Data Connector Agents to the metadata. The check can be skipped by adding setting the optional field skip_check to true.

Bug fixes and improvements

Server

  • Accept an optional strict URL parameter in /healthz endpoint with either false (default) or true value.
    In strict mode, the /healthz endpoint returns 500 status code if the server is running with inconsistent metadata.
  • Add warning to the response of replace_metadata API when something unexpected but non-fatal happens e.g. source is not available when event triggers are dropped.
  • Properly quote delimited identifiers in SQL Server.

Console

  • Fix API explorer error highlighting (fix #9470).
  • Filter out Views from select table dropdown while creating event trigger.
  • Use naming convention for suggested relationships
  • Allow executing SQL queries in read only mode via console
  • Fix latency check error that pops up after adding Snowflake/Athena/MySQL sources. (Cloud / Enterprise edition only)
  • Unify webhook handler experience for action, remote schemas and events
  • Updated design for top header menu.
  • Updated design for the settings sidebar.
  • Support suffix on TLS allow list.

CLI

  • Add contextual information of errors in debug logs (--log-level debug).
  • Support for BigQuery sources in the CLI Console.

Data Connectors

  • Mutation support added to SQLite Data-Connector.

v2.20.0-beta.1

23 Feb 11:07

Choose a tag to compare

v2.20.0-beta.1 Pre-release
Pre-release

Changelog

Highlights

Import Action from OpenAPI (GA) (Cloud / Enterprise edition only)

Import Action from OpenAPI is used to easily create Hasura actions from an OpenAPI specification. You can upload the OpenAPI specification and create actions from the endpoints defined in the specification.

openapi

Read more in the docs or in the RFC.

Behaviour changes

  • Checks the Agent availability when adding Data Connector Agents to the metadata. The check can be skipped by adding setting the optional field skip_check to true.

Bug fixes and improvements

Server

  • Accept an optional strict URL parameter in /healthz endpoint with either false (default) or true value.
    In strict mode, the /healthz endpoint returns 500 status code if the server is running with inconsistent metadata.
  • Add warning to the response of replace_metadata API when something unexpected but non-fatal happens e.g. source is not available when event triggers are dropped.
  • Properly quote delimited identifiers in SQL Server.

Console

  • Filter out Views from select table dropdown while creating event trigger.
  • Use naming convention for suggested relationships
  • Allow executing SQL queries in read only mode via console
  • Fix latency check error that pops up after adding Snowflake/Athena/MySQL sources. (Cloud / Enterprise edition only)
  • Unify webhook handler experience for action, remote schemas and events
  • Updated design for top header menu.
  • Updated design for the settings sidebar.
  • Support suffix on TLS allow list.

CLI

  • Add contextual information of errors in debug logs (--log-level debug).
  • Support for BigQuery sources in the CLI Console.

Data Connectors

  • Mutation support added to SQLite Data-Connector.

v2.19.0

16 Feb 07:32

Choose a tag to compare

Changelog

Highlights

MySQL support (alpha) (Cloud / Enterprise Edition only)

We’re delighted to release the alpha version of our MySQL data connector, that supports queries, table relationships and
permissions for MySQL databases version 8.0 and higher. For more information on how to set this up, please see
our docs. This data connector has been built using Hasura GraphQL Engine Data Connectors.

Note: The previous MySQL preview implementation has been deprecated in favor of this new implementation.

Behaviour changes

  • Query Tags will no longer include the request_id field by default. This can be changed by setting the value of the omit_request_id field in the set_query_tags command to false, but is not recommended when Prepared Statements are enabled. (Cloud / Enterprise Edition only)

Bug fixes and improvements

Server

  • Fix a race condition in the metadata update logic which could cause metadata updates (of any kind) to be silently reverted
  • Fix nullable field omitted from action response if not present in the webhook response
  • Log cron triggers fetched for event generation within 10-minute timeframe under cron-event-generator-process log type.
  • Make pg_run_sql as an alias of run_sql
  • Fix suggestion issue with the *_suggest_relationships metadata API.
  • Increase the granularity of interpretation of the omit_tracked argument to *_suggest_relationships API
  • Add a content-length response header to all endpoints
  • Improve phrasing for the "conflicting type definitions" error message

Console

  • Add suggested relationships (foreign keys based) to the new table relationships page
  • Remove the GraphQL Data Connectors experimental feature flag.
  • Allow creating remote joins from and to the same remote schema
  • Fix the export data dropdown menu visibility on browse rows page
  • Fix suggested relationship name creation
  • Add streamlined UX for creating and maintaining database relationships. This feature can be enabled by a feature flag in the settings menu.
  • Improve code formatting of GraphQL editor in the modify action form
  • Fix the issue with the edit connection form for GDC sources not populated with the saved values.
  • Fix edit row when the column is "generated always" (fix #9389)

Data Connectors

  • Add check to verify that source in header and jdbc_url line up with the request path. (Cloud / Enterprise Edition only)
  • Bugfix for failure of the super-connector to properly order results based on a single column aggregate. (Cloud / Enterprise Edition only)
  • Single column aggregates in query API requests now include the scalar type of the result of the aggregation function

v2.19.0-beta.1

09 Feb 14:41

Choose a tag to compare

v2.19.0-beta.1 Pre-release
Pre-release

Changelog

Bug fixes and improvements

Server

  • Fix nullable field omitted from action response if not present in the webhook response.
  • Log cron triggers fetched for event generation within 10-minute timeframe under cron-event-generator-process log type.
  • Make pg_run_sql as an alias of run_sql
  • Fix suggestion issue with the *_suggest_relationships metadata API.
  • Add a content-length response header to all endpoints
  • Improve phrasing for the "conflicting type definitions" error message
  • Add a new option to set_query_tags API to omit the request_id field from Query Tags. Recommended when Query Tags are used in conjunction with Prepared Statements. (Cloud / Enterprise Edition only)

Console

  • Add suggested relationships (foreign keys based) to the new table relationships page
  • Allow creating remote joins from and to the same remote schema
  • Fix the export data dropdown menu visibility on browse rows page
  • Fix suggested relationship name creation
  • Add streamlined UX for creating and maintaining database relationships. This feature can be enabled by a feature flag in the settings menu.
  • Fix the issue with the edit connection form for GDC sources not populated with the saved values.
  • Fix edit row when the column is "generated always" (fix #9389)

Data Connectors

  • Add check to verify that source in header and jdbc_url line up with the request path. (Cloud / Enterprise Edition only)
  • Bugfix for failure of the super-connector to properly order results based on a single column aggregate. (Cloud / Enterprise Edition only)
  • Single column aggregates in query API requests now include the scalar type of the result of the aggregation function

v2.18.0

07 Feb 13:38

Choose a tag to compare

Changelog

Highlights

Dynamically route GraphQL requests to different database connections of a Postgres source

Before this release, Hasura only executed queries against a connection that was configured when the source is added in the metadata. In this release we provide an extention to the graphql-engine where a query can be executed against a dynamically (during runtime) resolved connection. Currently this is configurable only via the metadata API or the CLI.

The configuration object of Postgres source metadata now accepts the following new fields:

  1. connection_set - A set of database connections to which the GraphQL queries can be routed to.
  2. connection_template - A Kriti template in which the routing logic is defined using various request parameters like session variables, client headers etc.

Find a sample Postgres source metadata here. A new query type, pg_test_connection_template is introduced in metadata API to test connection template of a Postgres source. Learn more about the API here.

Runtime behavior: Connection template, if configured, is resolved for all non-admin GraphQL requests and the SQL generated is executed on the resolved connection.

Please refer to the RFC at #9310 to learn more about the feature and current limitations. Below is an example of metadata configuration of connection set and connection template:

image

Export Traces in the OpenTelemetry format (Beta) (Enterprise edition only)

Traces are generated by instrumenting application code. Hasura has instrumented all API queries, mutations and subscriptions with the OpenTelemetry format. These traces can be exported directly from your Hasura instances to your observability tool that supports OpenTelemetry traces. This can be configured in the Settings section of the Hasura Console. For more information please refer to the docs.

OpenTelemetry Configuration

One Click Deploy to Hasura Cloud

This new feature enables you to quickly try out sample applications on Hasura Cloud with just a click. It takes the
Hasura metadata, migrations and seeds from a GitHub repository and creates a new Hasura Cloud project to instantly
try out the generated GraphQL API of the sample application. Check out the workflow in our docs.

If you’re working on a cool project that you’d like to share with the community to try out, you can also create a
sample application and enable One Click deploy on it using our deploy button! Check out more on this in our docs.

Try out some sample apps from the Hasura Hub!

One Click Deploy

Support for string query parameters in actions, event and cron triggers

Added console support for string query parameters in actions, event and cron triggers request transforms. This is a follow up enhancement to a previous metadata API enhancement of supporting arrays in query parameters. One example of using string query parameters is to import a REST endpoint such as GET/resource/findByTags via Actions.

Screenshot 2023-01-10 at 4 12 37 PM

Bug fixes and improvements

Server

  • Log the statistics of event trigger and scheduled trigger events fetched under event-trigger-process and scheduled-trigger-process log types respectively, for every 10 minutes.
  • Fix a tracing issue where errors sometimes prevented enclosing spans from being reported (Cloud / Enterprise edition only)
  • Adjusting the *_suggest_relationships Metadata API to provide contextual constraint_name keys.
  • Fix next_retry_at for MSSQL event triggers and update the timezone of created_at and locked columns to UTC.
    Note: The default value of created at is altered for tables event_log and event_invocation_logs. After source migration, earlier events might be delayed or deliver earlier depending on the timezone of the SQL server.
  • Changes the list_source_kinds metadata API to return per-agent availability information rather than fail the API call.
  • Few new fields added to the livequery-poller-log log:
    • a kind field, which indicates if its a streaming subscription or a live-query subscription.
    • a new field db_execution_time to replace pg_execution_time, and intent to deprecate pg_execution_time in the future. With this change pg_execution_time will only be present only for vanilla PG backends (i.e. not in Cockroach, Citus etc.)
    • a new field subscription_options to replace live_query_options, and intent to deprecate live_query_options in the future. With this change live_query_options will only be present for live-query subscriptions.
  • Fix handling of special language characters in MS SQL Server event trigger payload (fixes: #9293, #8747)

Console

  • Fix editing columns with bigint arrays, when the column was not touched
  • Add console support for string query parameters in actions, event and cron triggers request transforms
  • Load filter and sort conditions from URL and preserve them while switching between tables.

CLI

  • Add EE support in CLI console (Enterprise edition only)
  • Fix broken CLI console when server console is disabled and local console assets are being used (fix #9378)
  • Support migrations for Cockroach DB in CLI Console
  • Add a new flag --console-hge-endpoint to hasura console command that allows the CLI console to be correctly configured when running the CLI inside of a container. (fix #2824)
  • Make the version update notifications when running Hasura CLI commands non-blocking (fix #9367)

Data Connectors

  • Added connection parameters to Snowflake connect strings to indicate that connections were initiated by Hasura. (Cloud / Enterprise edition only)
  • Bugfix for failure of the super-connector to properly order results based on a single column aggregate. (Cloud / Enterprise edition only)
  • Adding a new Data Connectors /datasets API for creating new databases from templates. For more information, see dc-agents/README.md.
  • Remove builtin scalar types from Data Connector backend. This means that HGE no longer assumes that all Data Connector agents support a minimal set of scalar types (number, string, and bool) or any particular aggregate functions. All scalar types, must now be explicitly specified in the agent capabilities, along with any aggregate functions they support.

v2.18.0-beta.1

01 Feb 14:26

Choose a tag to compare

v2.18.0-beta.1 Pre-release
Pre-release

Changelog

Highlights

Export Traces in the OpenTelemetry format (Beta) (Enterprise edition only)

Traces are generated by instrumenting application code. Hasura has instrumented all API queries, mutations and subscriptions with the OpenTelemetry format. These traces can be exported directly from your Hasura instances to your observability tool that supports OpenTelemetry traces. This can be configured in the Settings section of the Hasura Console. For more information please refer to the docs.

OpenTelemetry Configuration

Dynamically route GraphQL requests to different database connections of a Postgres source (Cloud / Enterprise edition only)

The configuration object of Postgres source metadata accepts the following new fields.

  1. connection_set - A set of database connections to which the GraphQL queries can be routed to.
  2. connection_template - A Kriti template in which the routing logic is defined using various request parameters like session variables, client headers etc.

Find a sample Postgres source metadata here. A new query type, pg_test_connection_template is introduced in metadata API to test connection template of a Postgres source. Learn more about the API here.

Runtime behavior: Connection template, if configured, is resolved for all non-admin GraphQL requests and the SQL generated is executed on the resolved connection.

Please refer to the RFC at #9310 to learn more about the feature.

Bug fixes and improvements

Server

  • Log the statistics of event trigger and scheduled trigger events fetched under event-trigger-process and scheduled-trigger-process log types respectively, for every 10 minutes.
  • Fix a tracing issue where errors sometimes prevented enclosing spans from being reported (Cloud / Enterprise edition only)
  • Adjusting the *_suggest_relationships Metadata API to provide contextual constraint_name keys.
  • Fix next_retry_at for MSSQL event triggers and update the timezone of created_at and locked columns to UTC.
    Note: The default value of created at is altered for tables event_log and event_invocation_logs. After source migration, earlier events might be delayed or deliver earlier depending on the timezone of the SQL server.
  • Changes the list_source_kinds metadata API to return per-agent availability information rather than fail the API call.
  • Few new fields added to the livequery-poller-log log:
    • a kind field, which indicates if its a streaming subscription or a live-query subscription.
    • a new field db_execution_time to replace pg_execution_time, and intent to deprecate pg_execution_time in the future. With this change pg_execution_time will only be present only for vanilla PG backends (i.e. not in Cockroach, Citus etc.)
    • a new field subscription_options to replace live_query_options, and intent to deprecate live_query_options in the future. With this change live_query_options will only be present for live-query subscriptions.
  • Fix handling of special language characters in MS SQL Server event trigger payload (fixes: #9293, #8747)

Console

  • Fix editing columns with bigint arrays, when the column was not touched
  • Add console support for string query parameters in actions, event and cron triggers request transforms
  • Load filter and sort conditions from URL and preserve them while switching between tables.

CLI

  • Add EE support in CLI console (Enterprise edition only)
  • Fix broken CLI console when server console is disabled and local console assets are being used (fix #9378)
  • Support migrations for Cockroach DB in CLI Console
  • Add a new flag --console-hge-endpoint to hasura console command that allows the CLI console to be correctly configured when running the CLI inside of a container. (fix #2824)
  • Make the version update notifications when running Hasura CLI commands non-blocking (fix #9367)

Data Connectors

  • Added connection parameters to Snowflake connect strings to indicate that connections were initiated by Hasura. (Cloud / Enterprise edition only)
  • Adding a new Data Connectors /datasets API for creating new databases from templates. For more information, see dc-agents/README.md.
  • Remove builtin scalar types from Data Connector backend. This means that HGE no longer assumes that all Data Connector agents support a minimal set of scalar types (number, string, and bool) or any particular aggregate functions. All scalar types, must now be explicitly specified in the agent capabilities, along with any aggregate functions they support.