Releases: cardano-foundation/cardano-graphql
Cardano GraphQL 3.1.1
Cardano GraphQL 3.1.0
This feature release is compatible with the upcoming token locking Cardano update. It adds transaction validity interval fields and includes fixes as documented in the CHANGELOG.
Compatible with:
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Ops | ✔️ |
Release Manager | ✔️ |
Cardano GraphQL 3.0.1
This patch release incorporates the cardano-db-sync@6.0.1
fix, updates to Hasura v1.3.3, and includes internal fixes as documented in the CHANGELOG.
Compatible with:
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Ops | ✔️ |
Cardano GraphQL 3.0.0
This new major version brings the second round of Shelley-era features to the API, including rewards, active stake captured at each epoch boundary, transaction metadata, protocol parameters in effect during the epoch, and custom types for the Bech32 values covered by CIP5.
You may be impacted by breaking changes, which are listed in the CHANGELOG
Compatible with:
cardano-node
:1.21.1
cardano-db-sync
:6.0.0
- Note: The database must be recreated using the new version.hasura/graphql-engine
:1.3.2
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Ops | ✔️ |
Cardano GraphQL 2.2.1
This is a maintenance release with cardano-db-sync
dependency upgrade to its latest cardano-db-sync 5.0.3 release to move off cardano-db-sync 5.0.2
, which has a known critical issue.
Compatible with
Improvements
cardano-db-sync
dependency upgrade to its latest cardano-db-sync 5.0.3
Documentation
README provides complete overview and documentation:
Supported Platforms
- Linux 64-bit
- Docker
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Release Manager | ✔️ |
Cardano GraphQL 2.2.0
This minor update makes it possible to naturally access withdrawals from the context of a transaction, rather than performing two separate queries and combining the result sets. Now the total output for a transaction can be accounted for using Transaction.withdrawals
in addition to Transaction.inputs
. A combined schema is also now included in the TypeScript client package, to simplify IDE configuration and code generation operations.
Compatible with
New Features
- Added
Transaction.withdrawals
inapi-cardano-db-hasura
: #318
Improvements
Documentation
README provides complete overview and documentation:
Supported Platforms
- Linux 64-bit
- Docker
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Ops | ✔️ |
Release Manager | ✔️ |
2.2.0-beta
Merge pull request #322 from input-output-hk/release/2.2.0-beta release 2.2.0-beta
Cardano GraphQL 2.1.0
This minor update provides schema and build enhancements, aligns with cardano-db-sync DB changes, resolves a few issues, replaces `whitelist` with `allow list`.
Compatible with
cardano-node
:1.19.1
cardano-db-sync
:5.0.0
- NB: the database must be recreated when upgrading to the new version
New Features
Improvements
- Improved logging during retry attempts #275
- Replaced DB polling with postgres notification listener for migrations #275
- Improved error handling with Cardano query delegation #275
- #282 Added support of 28 byte hex encoded hashes #280
Bug Fixes
- Added missing GraphQL model for Delegation.transaction #294
- Corrected address ordering type mismatch in GraphQL schema #315
- #308 Included pools without metadata in StakePool view to fix delegation query #312
- #303 WHITELIST_PATH is deprecated in favour of ALLOW_LIST_PATH #272, #304,
- #281 Hardened schema introspection #309
- #267 Aligned server configuration options #272
- #266 Added return of HTTP 403 error code when rejecting disallowed queries #272
Known issues
- #164 Field aliasing via delegated schema does not remap field names
Documentation
README provides complete overview and documentation:
Supported Platforms
- Linux 64-bit
- Docker
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Ops | ✔️ |
Release Manager | ✔️ |
Cardano GraphQL 2.0.0
This new major version brings the first round of Shelley era features to the API, introduces a new genesis file API package, and hardens the migrations and metadata handling. This version is required for transitioning through the upcoming Shelley hard fork.
Compatible with
- cardano-node 1.18.0
- cardano-db-sync 3.1.0 (note, the database must be recreated using the new version)
New Features
- New queries
stakePools
,stakePools_aggregate
delegations
,delegations_aggregate
stakeRegistrations
,stakeRegistrations_aggregate
stakeDeregistrations
,stakeDeregistrations_aggregate
withdrawals
,withdrawals_aggregate
genesis
- A new API package
@cardano-graphql/api-genesis
allows access to the network genesis files. It's integrated into the server, with the config exposed as environment variables. Thedocker-compose.yaml
serves as a good reference - Metadata and SQL migrations are now performed within the application layer, and make the service immune to schema mutation during
cardano-db-sync
restart. The Hasura CLI is included in the Dockerfile and NixOS service; however outside of this you must install and placehasura
onPATH
Breaking Changes ⚠️
- The
docker-compose
file now mounts configuration managed in the repository, restoring the usual separation of concerns with service configuration. The Docker images still have the configuration included at build time, however, in practice, being ready to manage your own configuration if required is a good strategy. Simply copying the top level config and committing to source control gives you full control over the services using their native interface
Removed fields
Cardano.networkName
removed. Use network magic from the Genesis API to identify networksCardano.protocolConst
,Cardano.slotDuration
,Cardano.startTime
,Cardano.slotsPerEpoch
removed. Access this information from the Genesis APIcardanoDbSync.slotDiffFromNetworkTip
removed in response to a change in strategy for determining sync status withcardano-db-sync
Changed fields
- Dates were previously formatted according to ISO 3339, however, ISO 8601 is being adopted with this release for alignment with the Shelley genesis file format and simplification when the precision is not required, e.g.
2017-10-03T21:43:51.000Z
changed to2017-10-03T21:43:51Z
Block.createdBy
changed toBlock.slotLeader
that links to an object, with a nullablestakePool
field. For previous behaviour,Block.slotLeader.description
can be used, however the description prefixes have changed upstream fromSlotLeader
toByronGenesis
Block.createdAt
changed toBlock.forgedAt
Block.slotWithinEpoch
changed toBlock.slotInEpoch
Known issues
- #164 Field aliasing via delegated schema does not remap field names
Documentation
README provides complete overview and documentation:
Supported Platforms
- Linux 64-bit
- Docker
Sign off
Role | Approval |
---|---|
Technical Lead | ✔️ |
QA Engineer | ✔️ |
Ops | ✔️ |
Release Manager | ✔️ |
Cardano GraphQL 2.0.0 Beta
This new major version brings the first round of Shelley-era features to the API, introduces a new genesis file API package, and hardens the migrations and metadata handling. This version is required for transitioning through the upcoming Shelley hard fork.
Compatible with
- cardano-node 1.18.0
- cardano-db-sync 3.0.0 (note, the database must be recreated using the new version)
New Features
- New queries
stakePools
,stakePools_aggregate
delegations
,delegations_aggregate
stakeRegistrations
,stakeRegistrations_aggregate
stakeDeregistrations
,stakeDeregistrations_aggregate
withdrawals
,withdrawals_aggregate
genesis
- Metadata and SQL migrations are now performed within the application layer, and make the service immune to schema
being removed shouldcardano-db-sync
restart using the Hasura CLI, which is included in the Dockerfile and NixOS service; however outside of this you must install and placehasura
onPATH
. - A new API package
@cardano-graphql/api-genesis
allows access to the network genesis files. It's integrated into the server, with the config exposed as environment variables. Thedocker-compose.yaml
serves as a good reference.
Breaking Changes ⚠️
Removed fields
cardanoDbSync.slotDiffFromNetworkTip
removed in response to a change in strategy for determining
sync status withcardano-db-sync
Block.slotWithinEpoch
removed due to complexity with variation across eras. The Genesis API has information
for calculations based on the context
Changed fields
- Dates were previously formatted according to ISO 3339, however, ISO 8601 is being adopted with this release for alignment with the Shelley genesis file format and simplification when the precision is not required, e.g.
2017-10-03T21:43:51.000Z
->2017-10-03T21:43:51Z
Block.createdAt
->Block.forgedAt
Block.createdBy
->Block.slotLeader
links to an object, with a nullablestakePool
field. For previous behaviour,Block.slotLeader.description
can be used, however the description prefixes have changed upstream fromSlotLeader
toByronGenesis