Releases: CardanoSolutions/ogmios
v6.9.0
Added
- Integrate
cardano-node==10.1.2
and associated dependencies.- New transaction submission / evaluation errors:
EmptyTreasuryWithdrawal
(code=3168
) triggered when a transaction contains a governance proposal with an empty treasury withdrawal.UnexpectedMempoolError
(code=3997
) triggered when a transaction is rejected due to custom arbitrary rules that prevented it from entering the mempool.
Changed
- N/A
Removed
- N/A
Tested with
- cardano-node
== 10.1.2
(Mainnet, Preprod, Preview)
Docker image(s)
Standalone
With cardano-node
- Mainnet cardanosolutions/cardano-node-ogmios:v6.9.0_10.1.2-mainnet
- Preprod cardanosolutions/cardano-node-ogmios:v6.9.0_10.1.2-preprod
- Preview cardanosolutions/cardano-node-ogmios:v6.9.0_10.1.2-preview
Details
v6.8.0
Added
-
Integrate
cardano-node==9.2.0
and associated dependencies. -
Add new ledger-state query:
queryLedgerState/governanceProposals
to retrieve currently active governance proposals and their ratification state (i.e. ongoig votes).
Caution
This new ledger-state query requires cardano-node >= 9.2.0
Changed
-
Fix automatic transaction upgrade to NOT change underlying binary format during upgrade. The previous implementation would on some occasions alter the serialized form, thus causing transaction hash to change and invalidating all signatures on it. The new approach does always preserve binary serialisation, but as a result, makes more scenario not translatable (e.g. trying to translate a multi-asset UTxOs containing a 0 quantity is impossible when targetting Conway).
-
Fix JSON deserialization of metadata on web platforms. 🔨 @Sluder
Removed
- N/A
Tested with
- cardano-node
== 9.2.0
(Mainnet, Preprod, Preview)
Docker image(s)
Standalone
With cardano-node
- Mainnet cardanosolutions/cardano-node-ogmios:v6.8.0_9.2.0-mainnet
- Preprod cardanosolutions/cardano-node-ogmios:v6.8.0_9.2.0-preprod
- Preview cardanosolutions/cardano-node-ogmios:v6.8.0_9.2.0-preview
Details
v6.7.0
Added
- Automatically upgrade transactions from previous era (up until Alonzo) on submission. This solves the issue where the ledger would complain about receiving a transaction in an invalid era (typically Babbage or Alonzo) while being in a more recent era (typically Conway).
Tested with
- cardano-node
== 9.1.1
(Mainnet, Preprod, Preview)
Docker image(s)
Standalone
With cardano-node
- Mainnet cardanosolutions/cardano-node-ogmios:v6.7.0_9.1.1-mainnet
- Preprod cardanosolutions/cardano-node-ogmios:v6.7.0_9.1.1-preprod
- Preview cardanosolutions/cardano-node-ogmios:v6.7.0_9.1.1-preview
Details
v6.6.2
Added
-
v6.6.0 Add missing
treasury.value
andtreasury.donation
for Conway transactions. -
v6.6.0 Add missing
protocolParametersUpdate.security
thresholds to stake pools voting thresholds in Conway governance actions. -
v6.6.0 Add missing
ancestor
to various governance actions, pointing to the previous action of the same group. -
v6.6.0 Add a new
from
field to objects referring to stake credential. The field allows to distinguish between verification key and script credentials. -
v6.6.0 The
stakePools
method on theLedgerStateQueryClient
now supports an extrafilter
. The filters were available on th standalone query but not via the client somehow. (🔨 @mirelon)
Changed
-
v6.6.2 Compile with
cardano-node==9.1.1
/cardano-ledger-shelley==1.12.3.0
carrying an important fix for pointer deserialization. -
v6.6.1 Fixed
"babbage"
being reported as the block era for Conway blocks. (🐛 @AndrewWestberg) -
v6.6.0 Fix upgradability of Alonzo/Babbage transactions into Conway transactions. Before, Babbage transaction submitted for evaluation that spent Plutus V3 Scripts while using a Babbage serialization format would failed to upgrade into Conway transactions due to incompatibility at the binary level. The translation has been fixed, except for truly incompatible transactions (e.g. those containing MIR or duplicate certificates). (🐞 @vladimirvolek)
-
v6.6.0 Refresh embedded configuration files to match those expected by
cardano-node==9.1.0
(in particular, genesis files for mainnet, preview and preprod). -
v6.6.0 Only return
OverlappingAdditionalUtxo
error during transaction simulation when overlapping utxo differ from the ones fetched from the ledger. (🔨 @Quantumplation)
Tested with
- cardano-node
== 9.1.1
(Mainnet, Preprod, Preview)
Docker image(s)
Standalone
With cardano-node
- Mainnet cardanosolutions/cardano-node-ogmios:v6.6.2_9.1.1-mainnet
- Preprod cardanosolutions/cardano-node-ogmios:v6.6.2_9.1.1-preprod
- Preview cardanosolutions/cardano-node-ogmios:v6.6.2_9.1.1-preview
Additional Acknowledgements
@waalge, @SeungheonOh finding and/or fixing bloopers in the documentation & spec.
Details
v6.5.0
Added
-
Integrated with
cardano-node==9.0.0
. -
New ledger-state query:
queryLedgerState/treasuryAndReserves
to retrieve the current Ada values of the treasury and reserves. -
New protocol parameters in Conway:
maximumReferenceScriptsSize
which indicates the maximum total number of bytes of scripts referenced by a transaction.minFeeReferenceScripts
with three sub fields:range
,base
andmultiplier
that now intervenes in the minimum fee calculation. See the annex at the end of the release notes for details about the new transaction min fee calculation.
-
New transaction submission / evaluation errors:
ReferenceScriptsTooLarge
(code=3166
) now raised when trying to submit a transaction that contains reference scripts whose total size is above 200KB (will become a protocol parameter in the next era).UnknownVoters
(code=3167
) returned when submitting votes from unregistered pools or credentials.
Changed
-
Roll back down to GHC-9.4.8 in an attempt to fix #399 possibly caused by a bug in GHC runtime system (possibly patched on 9.4.x).
-
Fixed transaction evaluation internal client not being properly terminated and cleaned up after use; resulting in active connections piling up over time. See #403.
-
Fixed the reported
activeStakeInEpoch
on thequeryLedgerState/rewardsProvenance
, which was mistakenly reporting thetotalStakeInEpoch
. A new valuetotalStakeInEpoch
also now correctly reports that information.
Removed
- N/A
Tested with
- cardano-node
== 9.0.0
(Mainnet, Preprod, Preview)
Docker image(s)
Standalone
With cardano-node
- Mainnet cardanosolutions/cardano-node-ogmios:v6.5.0_9.0.0-mainnet
- Preprod cardanosolutions/cardano-node-ogmios:v6.5.0_9.0.0-preprod
- Preview cardanosolutions/cardano-node-ogmios:v6.5.0_9.0.0-preview
- Sanchonet cardanosolutions/cardano-node-ogmios:v6.5.0_9.0.0-sanchonet
Details
Annex - Conway minimum transaction fee calculation
Starting in the Conway era, the min fee calculation is given by the following formula:
Where
Size range | Cost |
---|---|
... | ... |
Considering
Size range | Lovelace per byte | Plot |
---|---|---|
See online calculator | ||
... | ... | |
Note
In Conway, the maximum size of reference scripts is limited to 200KiB.
So for example, a transaction that carries reference scripts adding up to 80KiB of data would be priced -- in addition to the usual fees coming from the transaction size:
v6.4.0
Added
-
Integrated with
cardano-node==8.11.0-pre
. -
A new transaction submission / evaluation error:
UnauthorizedGovernanceAction
(code=3165
) raised when trying to submit a governance action other than protocol parameters change, hard fork initiation or info during the bootstrapping phase of the Conway era.
-
A new queryNetwork error:
InvalidGenesis
(code=2004
) raised when trying to query a genesis configuration which is invalid or missing (for instance, when there's a mismatch between the Conway configuration and the underlying ledger library parsing it). (🐞 @AndrewWestberg)
Changed
-
The
data.providedCollateral
anddata.computedTotalCollateral
from submission errors with code3128
and3135
can now be negative Ada values. -
Fixed missing
conway
option in the state query client for thegenesisConfiguration
query.
Removed
- N/A
Tested with
- cardano-node
== 8.9.3
(Mainnet, Preprod, Preview) - cardano-node
== 8.11.0-pre
(SanchoNet)
Docker image(s)
Standalone
With cardano-node
- Mainnet cardanosolutions/cardano-node-ogmios:v6.4.0_8.9.3-mainnet
- Preprod cardanosolutions/cardano-node-ogmios:v6.4.0_8.9.3-preprod
- Preview cardanosolutions/cardano-node-ogmios:v6.4.0_8.9.3-preview
- SanchoNet cardanosolutions/cardano-node-ogmios:v6.4.0_8.11.0-pre-sanchonet
Details
v6.3.0
Added
-
Integrated with
cardano-node==8.10.1-pre
. (🔨 @klarkc, 🔨 @KtorZ) -
A new ledger state query
queryLedgerState/constitutionalCommittee
. (🔨 @KtorZ) -
A new transaction submission error: ConflictingInputsAndReferences (
code=3164
). (🔨 @KtorZ) -
The server now reports (log) unexpected failures happening during protocol execution instead of only replying to clients with an error. See #383. (💡 @klarkc, 🔨 @KtorZ).
Changed
Warning
- BREAKING-CHANGE: Adjusted the schema of constitutional committee certificates in order to harmonize responses between certificates and the new
constitutionalCommittee
ledger query.
before | after |
---|---|
{ "type": "constitutionalCommitteeHotKeyRegistration", "member": { "id": "0000", }, "hotKey": "0000" } |
{ "type": "constitutionalCommitteeDelegation", "member": { "id": "0000", }, "delegate": { "status": "authorized", "id": "000" } } |
-
Fixed integer overflow happening when encoding relative time bounds in era summary, causing times to be shown as negative values. (🐞 @codybutz, 🔨@KtorZ)
-
Fixed parsing of the
constitution
ledger query which now resolves properly. (🔨 @KtorZ)
Removed
- N/A
Tested with
- cardano-node
== 8.9.2
(Mainnet, Preprod, Preview) - cardano-node
== 8.10.1-pre
(SanchoNet)
Docker image(s )
- (standalone) cardanosolutions/ogmios:v6.3.0
- (with cardano-node) cardanosolutions/cardano-node-ogmios:v6.3.0_8.10.1-pre-mainnet
Details
v6.2.0
Added
-
Transaction evaluation now automatically UTxO available from processing the mempool. This allows for chaining smart-contract transactions without the need to track the UTxO state on from the client's side. Ogmios now internally maintains a view of the node's mempool and ensure a consistent access to it when evaluating transaction. See also #375.
-
More log traces around transaction evaluation and submission.
Changed
- Retry
HasTx
on false with id wrapped in different eras, to cope with the hard-fork combinator inability to compare transaction id across eras. See also #376.
Removed
- N/A
Tested with
- cardano-node
== 8.9.0
(Mainnet, Preprod, Preview, SanchoNet)
Docker image(s )
- (standalone) cardanosolutions/ogmios:v6.2.0
- (with cardano-node) cardanosolutions/cardano-node-ogmios:v6.2.0_8.9.0-mainnet
Details
v6.1.0
Added
-
Two new script purposes (available from the Conway era onward):
propose
: for proposing new governance actions. When itemized, comes with aproposal
field that documents the associated governance proposal.vote
: for voting on a proposed governance action. When itemized, comes with anissuer
field that documents the associated governance issuer.
-
A new field
guardrails
is now present on governance proposals of typetreasuryWithdrawals
andprotocolParametersUpdate
. It is eithernull
or contains a script hash (blake2b, 28 bytes) that indicates the additional guardrails script that must successfully pass for the governance proposal to be considered valid. -
The object returned from
ledgerState/rewardAccountSummaries
now contain an extradeposit
field equals to the amount deposited and held by the associated stake credential. -
A new query
queryLedgerState/constitution
to obtain the current on-chain constitution. This query is only available when the ledger is in the Conway era onwards.
Changed
-
Configuration files no longer contain
mainnet_p2p
,preprod_p2p
,preview_p2p
andsanchonet_p2p
folders. The p2p configs are now replacing the default configurations; so we're back to configuration folders formainnet
,preprod
,preview
andsanchonet
. -
The constitution
hash
is now wrapped in a singleton objectguardrails
, to better capture its meaning. It isn't the hash of the constitution script (which is covered by theanchor
already), but the hash of the additional script policy which controls governance proposals of certain actions (e.g. treasury withdrawals, protocol parameters). -
Renamed all fields
anchor
tometadata
in the Conway era objects to be more consistent with other occurences of metadata in previous eras. -
Fixed a few minor JSON-schema oversights such as
TransactionOutputReference
's index now being aUInt64
(instead ofUInt32
).
Removed
InternalLedgerTypeConversionError
which can no longer occur.
Tested with
- cardano-node
== 8.7.3
(Mainnet, Preprod, Preview) - cardano-node
== 8.8.0-pre
(SanchoNet)
Docker image(s )
- (standalone) cardanosolutions/ogmios:v6.1.0
- (with cardano-node) cardanosolutions/cardano-node-ogmios:v6.1.0_8.7.3-mainnet
- (with cardano-node) cardanosolutions/cardano-node-ogmios:v6.1.0_8.8.0-pre-sanchonet
Details
v6.0.3
Added
- A new transaction submission / evaluation error (
code: 3161
) returned when a script evaluation goes beyond its allocated budget.
Changed
-
Mapped some internal errors to actual predicate failures. Before, Ogmios would simply return an
InternalLedgerTypeConversionError
with code3999
in cases where it should have been returning a more meaningful error resulting from either an excessive script evaluation (see new introduced error 3161) or a failed attempt to create a script context for a given transaction. -
Renamed types regarding Metadatum in the TypeScript client to provide more meaningful names.
Removed
- N/A
Tested with
- cardano-node
== 8.7.2
(Mainnet, Preprod, Preview, SanchoNet) - cardano-node
== 8.7.3
(Mainnet, Preprod, Preview, SanchoNet)