mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-16 09:51:59 +03:00
4b62f7decf
Update the changelog for new version --------- Co-authored-by: Anon Ray <ecthiender@users.noreply.github.com> V3_GIT_ORIGIN_REV_ID: b87f16ebaa1471f010ec461be097bcfd6648c99a
169 lines
4.2 KiB
Markdown
169 lines
4.2 KiB
Markdown
# Changelog
|
|
|
|
## [Unreleased]
|
|
|
|
## [v2024.07.04]
|
|
|
|
### Added
|
|
|
|
- Query Usage Analytics - usage analytics JSON data is attached to `execute`
|
|
span using `internal.query_usage_analytics` attribute
|
|
|
|
- Added a flag, `--partial-supergraph`, which instructs the metadata resolver to
|
|
prune relationships to unknown subgraphs rather than failing to resolve
|
|
|
|
#### Boolean Expression Types
|
|
|
|
A new metadata kind `BooleanExpressionType` can now be defined. These can be
|
|
used in place of `ObjectBooleanExpressionType` and
|
|
`DataConnectorScalarRepresentation`, and allow more granular control of
|
|
comparison operators and how they are used.
|
|
|
|
```yaml
|
|
kind: BooleanExpressionType
|
|
version: v1
|
|
definition:
|
|
name: album_bool_exp
|
|
operand:
|
|
object:
|
|
type: Album
|
|
comparableFields:
|
|
- fieldName: AlbumId
|
|
booleanExpressionType: pg_int_comparison_exp
|
|
- fieldName: ArtistId
|
|
booleanExpressionType: pg_int_comparison_exp_with_is_null
|
|
- field: Address
|
|
booleanExpressionType: address_bool_exp
|
|
comparableRelationships:
|
|
- relationshipName: Artist
|
|
booleanExpressionType: artist_bool_exp
|
|
logicalOperators:
|
|
enable: true
|
|
isNull:
|
|
enable: true
|
|
graphql:
|
|
typeName: app_album_bool_exp
|
|
```
|
|
|
|
```yaml
|
|
kind: BooleanExpressionType
|
|
version: v1
|
|
definition:
|
|
name: pg_int_comparison_exp
|
|
operand:
|
|
scalar:
|
|
type: Int
|
|
comparisonOperators:
|
|
- name: equals
|
|
argumentType: String!
|
|
- name: _in
|
|
argumentType: [String!]!
|
|
dataConnectorOperatorMapping:
|
|
- dataConnectorName: postgres_db
|
|
dataConnectorScalarType: String
|
|
operatorMapping:
|
|
equals: _eq
|
|
logicalOperators:
|
|
enable: true
|
|
isNull:
|
|
enable: true
|
|
graphql:
|
|
typeName: app_postgres_int_bool_exp
|
|
```
|
|
|
|
- Add flag to (`--expose-internal-errors`) toggle whether to expose internal
|
|
errors. ([#759](https://github.com/hasura/v3-engine/pull/759))
|
|
|
|
#### Aggregates of Array Relationships
|
|
|
|
Aggregates of array relationships can now be defined by specifying an
|
|
`aggregate` in the `Relationship`'s target. Note that this is only supported
|
|
when the target of the relationship is a `Model`. You must also specify the
|
|
`aggregateFieldName` under the `graphql` section.
|
|
|
|
```yaml
|
|
kind: Relationship
|
|
version: v1
|
|
definition:
|
|
name: invoices
|
|
sourceType: Customer
|
|
target:
|
|
model:
|
|
name: Invoice
|
|
relationshipType: Array
|
|
aggregate: # New!
|
|
aggregateExpression: Invoice_aggregate_exp
|
|
description: Aggregate of the customer's invoices
|
|
mapping:
|
|
- source:
|
|
fieldPath:
|
|
- fieldName: customerId
|
|
target:
|
|
modelField:
|
|
- fieldName: customerId
|
|
graphql: # New!
|
|
aggregateFieldName: invoicesAggregate
|
|
```
|
|
|
|
- One can now configure the engine to set response headers for GraphQL requests,
|
|
if NDC function/procedures returns headers in its result
|
|
|
|
#### Field arguments
|
|
|
|
Add field arguments to the OpenDD `ObjectType`:
|
|
|
|
```yaml
|
|
kind: ObjectType
|
|
version: v1
|
|
definition:
|
|
name: institution
|
|
fields:
|
|
- name: id
|
|
type: Int!
|
|
- name: name
|
|
type: String!
|
|
arguments:
|
|
- name: hash
|
|
argumentType: String
|
|
- name: limit
|
|
argumentType: Int
|
|
- name: offset
|
|
argumentType: Int
|
|
graphql:
|
|
typeName: Institution
|
|
dataConnectorTypeMapping:
|
|
- dataConnectorName: custom
|
|
dataConnectorObjectType: institution
|
|
fieldMapping:
|
|
id:
|
|
column:
|
|
name: id
|
|
name:
|
|
column:
|
|
name: name
|
|
argumentMapping:
|
|
hash: hash
|
|
offset: offset
|
|
limit: limit
|
|
```
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
|
|
- Engine now respects `relation_comparisons` capability, when generating GraphQL
|
|
schema for relationship fields in model filter
|
|
- The OpenDD schema for `DataConnectorLink` now references the correct version
|
|
(v0.1.4) of the NDC schema when using the NDC `CapabilitiesResponse` and
|
|
`SchemaResponse` types
|
|
|
|
## [v2024.06.13]
|
|
|
|
Initial release.
|
|
|
|
<!-- end -->
|
|
|
|
[Unreleased]: https://github.com/hasura/v3-engine/compare/v2024.06.13...HEAD
|
|
[v2024.06.13]: https://github.com/hasura/v3-engine/releases/tag/v2024.06.13
|
|
[v2024.07.04]: https://github.com/hasura/v3-engine/releases/tag/v2024.07.04
|