|
1 | 1 | Changelog
|
2 | 2 | =========
|
3 | 3 |
|
| 4 | +## 2.0.0-beta.0 |
| 5 | +This new major version brings the first round of Shelley-era features to the API, |
| 6 | +introduces a new genesis file API package, and hardens the migrations and metadata handling. |
| 7 | +This version is required for transitioning through the upcoming Shelley hard fork. |
| 8 | + |
| 9 | +### Compatible with: |
| 10 | + |
| 11 | +- [`cardano-node`: `1.18.0`](https://github.com/input-output-hk/cardano-node/releases/tag/1.18.0) |
| 12 | +- [`cardano-db-sync`: `3.0.0`](https://github.com/input-output-hk/cardano-db-sync/releases/tag/3.0.0) - Note: The database must be recreated using the new version. |
| 13 | + |
| 14 | +## Features |
| 15 | +### New Queries |
| 16 | +- `stakePools`, `stakePools_aggregate` |
| 17 | +- `delegations`, `delegations_aggregate` |
| 18 | +- `stakeRegistrations`, `stakeRegistrations_aggregate` |
| 19 | +- `stakeDeregistrations`, `stakeDeregistrations_aggregate` |
| 20 | +- `withdrawals`, `withdrawals_aggregate` |
| 21 | +- `genesis` |
| 22 | +- Metadata and SQL migrations are now performed within the application layer, and make the service immune to schema |
| 23 | +being removed should `cardano-db-sync` restart. using the |
| 24 | +[Hasura CLI](https://hasura.io/docs/1.0/graphql/manual/hasura-cli/install-hasura-cli.html), which |
| 25 | +is included in the [Dockerfile](./Dockerfile) and [NixOS](./nix/nixos/cardano-graphql-service.nix) |
| 26 | +service, however outside of this you must install and place `hasura` on PATH. |
| 27 | +- A new API package [`@cardano-graphql/api-genesis`](./packages/api-genesis/README.md) allows |
| 28 | +access to the network genesis files. It's integrated into the server, with the config exposed |
| 29 | +as environment variables. As usual, the docker-compose.yaml serves as a good reference. |
| 30 | + |
| 31 | +## Breaking Changes :warning: |
| 32 | +### Removed fields |
| 33 | +- `cardanoDbSync.slotDiffFromNetworkTip` **removed** in reponse to a change in strategy for determining |
| 34 | +sync status with `cardano-db-sync` determining sync status relies on a chain |
| 35 | +that has produce |
| 36 | +- `Block.slotWithinEpoch` **removed** due to complexity with variation across eras. The Genesis API has information |
| 37 | +for calculations based on context. |
| 38 | + |
| 39 | +### Changed fields |
| 40 | +Dates we're previously formatted to ISO 3339, however ISO 8601 is being adopted with this release for |
| 41 | +alignment with the Shelley genesis file format and simplification when the precision is not required. |
| 42 | +- `2017-10-03T21:43:51.000Z` -> `2017-10-03T21:43:51Z` |
| 43 | +- `Block.createdAt` -> `Block.forgedAt` |
| 44 | +- `Block.createdBy` -> `Block.slotLeader` links to an object, with a nullable `stakePool` field. For |
| 45 | +previous behaviour, `Block.slotLeader.description` can be used, however the description prefixes have |
| 46 | +changed upstream from `SlotLeader` to `ByronGenesis` |
| 47 | + |
| 48 | +## Chores |
| 49 | +- Migrations have been squashed into a single step. |
| 50 | + |
4 | 51 | ## 1.0.0
|
5 | 52 | ## Features
|
6 | 53 | - Optimised versions of some key aggregated queries:
|
|
0 commit comments