github hasura/graphql-engine v2.33.0-beta.1

latest releases: v2.45.0-beta.1, cli/v2.45.0-beta.1, v2.44.0...
pre-release14 months ago

Changelog

Highlights

ClickHouse support (Beta)

We’re delighted to release the beta version of our ClickHouse data connector, which supports queries, table relationships, remote relationships, and permissions for ClickHouse.

For more information on how to set this up, please see our docs. This integration is built using Hasura Data Connectors.

Support remote source relationships in permissions

Hasura now supports using remote source relationships in permission predicates. This means you can now define permission based on a column from a remote Postgres source.

Limitations

  • The remote relationship predicate must follow the following template:

    {
      "<rel name>": {
        "<remote column name>": {
          "<op>": "<some session variable name or some literal text>"
        }
      }
    }

    This implies the following:

    • The remote relationship predicate can only be one level deep although, the predicate can be nested in an _and, _or, _not or _exists node.
    • Only _eq, _neq, _gt, _lt, _gte, _lte, _in, _nin, _like, _nlike and _is_null operators are supported for comparing fields
    • Only columns from the remote source can be compared with session variables or literal text only.
  • The remote source relationship permission can only be defined for Postgres and data connector backends.

  • The remote source relationship RHS backend can be Postgres only.

Support for relationships between Tables and Native Queries

Hasura now allows returning data in a table along with related data returned from a Native Query using a nested GraphQL query.

Support for Logical Models & Native Queries on Snowflake (Cloud / Enterprise edition only)

Hasura now supports creating Logical Models & Native Queries on Snowflake data sources.

Behaviour changes

  • Adds Native Query support for Data Connectors and implements the feature in SQLite and Snowflake agents. This change breaks backwards compatibility for the Data Connector Agent API, and as such, agents will need to be upgraded along with HGE.

Bug fixes and improvements

Server

  • The Explain feature (also known as Analyze in the Hasura Console) now returns a full execution plan for SQL Server. Previously, the execution plan was not generated; only the generated SQL was shown.
  • Fixes issue where null valued variables with customized types were causing a GraphQL exception from the upstream server (fix #9757).
  • Adds support for the _contains and _contained_in operators for PostgreSQL arrays to be used with permissions.
  • Adds dynamic labels to Prometheus metric hasura_websocket_messages_sent_bytes_total. (Cloud / Enterprise edition only)
  • Adds new Prometheus metrics hasura_postgres_connection_init_time and hasura_postgres_pool_wait_time. (Cloud / Enterprise edition only)
  • Adds new Prometheus/OpenTelemetry metrics for monitoring OTLP telemetry export: hasura_otel_sent_spans and hasura_otel_dropped_spans. (Cloud / Enterprise edition only)

Console

  • Adds a feature flag to enable Performance Mode on the Data Tab. Performance Mode offers a faster experience, especially with larger databases, but with fewer database authoring features.
  • Fix saving permissions of string columns with numbers as value.
  • Improve Remote Schema permissions UI by allowing search and more clearly displaying available types.
  • Better descriptive error handling for Permissions on Logical Model and data-connector based databases.
  • Add console support for adding and editing remote schema to Data Connector-based databases
  • Fix issue with error handling on the table relationship UI for failed bulk responses.
  • Fix Apollo Federation UI to extend table types in other subgraphs.
  • New MongoDB collection tracking flow added to the Console. (Cloud / Enterprise edition only)
  • Add support for MongoDB nested objects in the permissions editor. (Cloud / Enterprise edition only)

CLI

  • Adds support for Snowflake functions. Fixes metadata export failure where Snowflake UDFs are configured. (Cloud / Enterprise edition only)

Data Connectors

  • Improved the performance of working with Data Connector-based data sources (such as Oracle, Snowflake, MySQL, MariaDB) that have many tables. Listing untracked tables in the Console is significantly faster, and tracking only a subset of all available tables is also significantly faster.

Don't miss a new graphql-engine release

NewReleases is sending notifications on new releases.