Skip to content

Tags: angerman/ogmios

Tags

v6.0.0-rc6

Toggle v6.0.0-rc6's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v6.0.0-rc6

  ## Added

  - Add missing `sanchonet` network to the list of well-known networks. It'll now be properly displayed instead of showing `unknown (4)`.

  ## Changed

  - ![TypeScript][] Add an extra promise handler to cope with unexpected websocket disconnections when submitting messages to the server. See [CardanoSolutions#346](CardanoSolutions#346).

  ## Removed

  - N/A

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort

v6.0.0-rc4

Toggle v6.0.0-rc4's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v6.0.0-rc4

  ## Added

  - Integration with `cardano-ledger-conway==1.9.0.0`. The previous release did (mistakenly) include an older version of the ledger. This caused synchronization of the **Conway** era to fail unexpectedly. This release now includes the latest version of the ledger currently available. It adds new elements to the Conway era:
    - A new certificate `DelegateRepresentativeUpdate`.
    - New transaction submission errors:
      - `GovernanceProposalDepositMismatch`
      - `ConflictingCommitteeUpdate`
      - `InvalidCommitteeUpdate`
      - `TreasuryWithdrawalMismatch`.
    - New protocol parameters, only present in Conway onwards:
      - `stakePoolVotingThresholds`
      - `constitutionalCommitteeMinSize`
      - `constitutionalCommitteeMaxTermLength`
      - `governanceActionLifetime`
      - `governanceActionDeposit`
      - `delegateRepresentativeVotingThresholds`
      - `delegateRepresentativeDeposit`
      - `delegateRepresentativeMaxIdleTime`

  ## Changed

  - The integration with `cardano-ledger-conway==1.9.0.0` also causes a few (breaking) changes to the existing interface. Mostly located in the **Conway** era:
    - `UnknownGovernanceProposal` transaction submission failure is now `UnknownGovernanceProposals` and its data field now contains a list of invalid proposals instead of a single proposal.
    - `ConstitutionalCommitteeMember` may now contain an optional `mandate` field.
    - The `ConstitutionalCommitte` governance action `members`' field no longer holds a member id. Instead, it contains two fields `added` and `removed` pointing to a list of `ConstitutionalCommitteeMember`.
    - The certificate `DelegateRepresentativeRegistration` may now contain an optional `anchor` field.
    - The governance action `Constitution` now has a mandatory `anchor` field and an optional `hash` field.
    - The `returnAccount` for all governance proposal is now a (bech32-encoded) stake address instead of a key or script hash digest.
    - The Conway's genesis has been completely redefined and now contains fields `constitution`, `constitutionalCommittee` and `updatableParameters`.
    - The `CredentialDepositMismatch` transaction submission failure now has extra `data`.

  - **⚠️ BREAKING-CHANGE ⚠️** The Alonzo's genesis `initialParameters` field has been renamed to `updatableParameters`.

  ## Removed

  N/A

v6.0.0-rc3

Toggle v6.0.0-rc3's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v6.0.0-rc3

  ## Added

  - Integration with `cardano-node==8.5.0`. This adds new elements to the Conway era.
    - New transaction certificates: `DelegateRepresentativeRegistration`, `DelegateRepresentativeRetirement`, `ConstitutionalCommitteeHotKeyRegistration` and `ConstitutionalCommitteeRetirement`.
    - A new governance action `Information`, empty.
    - New transaction submission errors: `ForbiddenWithdrawal`, `CredentialDepositMismatch`, `DRepAlreadyRegistered`, `DRepNotRegistered` and `UnknownConstitutionalCommitteeMember`

  ## Changed

  - Integration with `cardano-node==8.5.0`. This introduces a few breaking-change in the Conway era:
    - The `DelegateRepresentative` schema has changed to now be a JSON `object` in all cases, with at least a field `type` to discriminate over it. Abstain and NoConfidence delegate representatives have no other fields.
    - The stake pool operator id is now always included in the `GovernanceVoter` schema.
    - The `ScriptExecutionFailure<MissingScripts>` schema now includes a `data.missingScripts` field for debugging.
    - The `SubmitTransactionFailure<UnauthorizedVote>` has been changed to `SubmitTransactionFailure<UnauthorizedVotes>` and now contains a list of unauthorized voters.

  - Fixed `inputSource` being set on Byron transactions instead of `spends`.
  - Now conditionally include Byron's cbor bytes like for other eras (`--include-transaction-cbor`).
  - Fixed transaction metadata's objects being encoded as lists of singletons in the JSON encoding. Now properly encoded as objects.

  ## Removed

  N/A

v6.0.0

Toggle v6.0.0's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v6.0.0-rc1

  #### Added

  - (Premilinary) support for the Conway era. This support only covers what is currently available in the Cardano node / ledger. However, since the implementation of this era isn't finalized yet it will likely break in the future. New updates will be issued until Conway stabilizes.

  - Ogmios now accept queries via HTTP (POST). Request bodies are the same as those passed to the websocket and so are responses. In fact, most Ogmios queries follow a simple request/response pattern and are therefore well-suited to be run over HTTP. While there's an obvious performance trade-off (especially for the local-chain-sync protocol), it is a reasonable approach for many queries (e.g. the local-state-query protocol).

    > **Note**
    > The HTTP server and the WebSocket server are both mounted on the same port. So, it suffices to route HTTP requests through `/`. The JSON payload is the same.

  - Ability to retrieve any genesis configuration (Byron, Shelley, Alonzo or Conway) via the state-query protocol.

  - A new command `inspect transaction` to help with debugging the deserialization of transaction.

  - The health now contains an extra `network` and `version`. Also, beware that era names are now returned in lowercase (first letter used to be capitalised!).

  #### Changed

  - **⚠️ BREAKING-CHANGE ⚠️** Many major changes in the interface. A complete migration guide is available in [ADR-017](https://github.com/CardanoSolutions/ogmios/blob/master/architectural-decisions/accepted/017-api-version-6-major-rewrite.md), yet please refer to the [API reference](https://ogmios.dev/api/) for details and exhaustiveness. Many representations have been made easier to parse and field names have been improved (more consistent across the entire API and better self-documented).

    > **Note**
    > There are still many [test vectors](https://github.com/CardanoSolutions/ogmios/tree/master/server/test/vectors) available for every element of the Ogmios API. Use them!

  - Ogmios will no longer retry connecting to a node that is configured for another network but exit with an non-zero code and a clear error message indicating the network mismatch.

  - The default dashboard on localhost has been greatly rework and simplified. It also better handles errors.

  - Responses from the server no longer includes raw binary cbor by default. This was the case in particular for transactions. This behavior can be restored by configuring the server with `--include-cbor` to always include binary version of some specific objects such as transactions. This flag can be declined in more fine-grained flags if necessary:

    - `--include-transaction-cbor`
    - `--include-metadata-cbor`
    - `--include-script-cbor`

    where `--include-cbor` turns all three flags at once.

  #### Removed

  - **⚠️ BREAKING-CHANGE ⚠️** Compact mode is no more. Responses are more compact by default already and it is no longer possible to ask for a compact mode.

  - **⚠️ BREAKING-CHANGE ⚠️** Ogmios no longer returns null or empty fields. Where a field's value would be `null` prior to v6.0.0, Ogmios now simply omit the field altogether. This is also true for most responses that return empty lists as well. All-in-all, please refer to the documentation / JSON-schema in case of doubts (fields that may be omitted are no longer marked as `required`).

v6.0.0-rc2

Toggle v6.0.0-rc2's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v6.0.0-rc2

  #### Added

  N/A

  #### Changed

  - Fixed protocol version negotiation during handshake to actually negotiate for the latest protocol (with Conway enabled)
  - Slot length in era summaries and genesis is now given in milliseconds wrapped in a singleton object: `{ "milliseconds": 1234 }`. Before, it used to be given as a floating number of seconds.
  - Byron's genesis JSON-schema was wrongly pointing at `protocolParameters` instead of `updatableParameters`.
  - Fixed Plutus' cost models examples in the JSON-schema to match the new format.
  - Fixed version not showing software revision

  #### Removed

  N/A

v5.6.0

Toggle v5.6.0's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v5.6.0

  ### [5.6.0] - 2023-02-02

  #### Added

  - ![TypeScript][] Add a new helper function `unsafeMetatumAsJSON` which converts a detailed metadata schema into plain JavaScript, whenever possible.
    For example:

    `{ "list": [ { "string": "foo" }, { "int": 42 } ] }` → `["foo", 42]`

    This should work for any [CIP-0025](https://cips.cardano.org/cips/cip25/) metadata, and a few other formats. Yet it is _unsound_ in the general case since not every on-chain metadata can actually be represented as JavaScript objects.

  #### Changed

  - ![TypeScript][] Now targets ES2020.

  - ![TypeScript][] Fixed a bug in the JSON parser where `coins` quantities from all eras prior to Mary would be parsed as `Number` instead of `BigInt`.

  #### Removed

  N/A

v5.5.8

Toggle v5.5.8's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v5.5.8

  #### Added

  N/A

  #### Changed

  - Bump internal packages to match [email protected] dependencies set.

  - Bundle the docker image with more recent versions of the cardano-configurations.

  - ![TypeScript][] Fix `TxMonitorClient`'s `nextTx` wrongly throwing an error when called with no argument. The signature of that method has also been reworked slightly to provide better usage at call-site.

  - ![TypeScript][] Add missing `required` constraints in the JSON schema for Byron witness representation that caused TypeScript types to be generated as optional.

  #### Removed

  N/A

v5.5.7

Toggle v5.5.7's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v5.5.7

  #### Added

  - `delegationAndRewards` and `nonMyopicMemberRewards` queries now both accept credentials in the form of bech32 strings as parameters, with the following expected prefixes and semantic (according to [CIP-0005](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0005#specification):

    - `stake` (resp. `stake_test` on test networks) for stake addresses
    - `stake_vkh` for stake key hash digests
    - `script` for stake script hash digests

    See also [CardanoSolutions#277](CardanoSolutions#277).

  - ![TypeScript][] Allow `additionalUtxoSet` to be passed as argument in the repl.

  #### Changed

  - ![TypeScript][] Fixed `additionalUtxoSet` being ignored in the `TxSubmissionClient` of the TypeScript client.

  #### Removed

  N/A

v5.5.6

Toggle v5.5.6's commit message

Verified

This tag was signed with the committer’s verified signature.
KtorZ Matthias Benkort
v5.5.6

    ## Added

    - Prometheus metrics exported at `/metrics` endpoint

    ## Changed

    - Fixed network synchronization reporting `0.99999` even when fully synchronized. There was sometimes a possible discrepancy between the ledger internal clock and Ogmios' clock, causing a few seconds of drift time.

    - ![TypeScript][] Fixed a couple of data-types with fields parsed as `number` instead of `bigint`. See [CardanoSolutions#274](CardanoSolutions#274)

      > **Warning** This is technically an internal breaking-change, however it actually comes as a bug fix since this does not change the announced _interface_ in the TypeScript schema (which was correctly indicated 'bigint'). Still, this may cause issues with those using `number` where there will now be `bigint`.

    - ![TypeScript][] Fixed browser detection for the `IsomorphicWebSocket` abstraction. See [CardanoSolutions#273](CardanoSolutions#274)

    ## Removed

    N/A

    [TypeScript]: https://upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Typescript_logo_2020.svg/16px-Typescript_logo_2020.svg.png