@cardano-ogmios/repl
Advanced tools
Changelog
[6.11.0] - 2025-01-12
The queryLedgerState/stakePools
query now take an optional includeStake: bool
parameter. When provided and set to true
, each stake pool result will include an additional stake
field with its current absolute live stake (reflecting its governance power).
A new query queryLedgerState/delegateRepresentatives
to fetch all registered (and pre-defined) DReps, alongside their metadata and live stake. In a similar fashion to many other queries, DReps can be filtered using keys
or scripts
credentials in the query parameters. When both are omitted, all representatives are returned.
cardano-node==10.1.4
Changelog
[6.10.0] - 2024-12-14
![TypeScript][] The ConnectionConfig
can now take an optional address
object, so that URL with paths can be provided instead of only host/port; allowing for more flexible connection options.
New ledger-state query ledgerState/dump
which dumps the ENTIRE ledger-state as base16-encoded CBOR. That query is mostly for advanced used only, and spits out a lot of data. Use only if you know what you're doing.
Changelog
[6.9.0] - 2024-11-08
cardano-node==10.1.2
and associated dependencies.
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.Changelog
[6.8.0] - 2024-09-21
cardano-node==9.2.0
and associated dependencies.queryLedgerState/governanceProposals
to retrieve currently active governance proposals and their ratification state (i.e. ongoig votes).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).
![TypeScript][] Fix JSON deserialization of metadata on web platforms.
Changelog
[6.7.0] - 2024-09-13
Changelog
[6.6.2] - 2024-09-10
cardano-node==9.1.1
/ cardano-ledger-shelley==1.12.3.0
carrying an important fix for pointer deserialization.Changelog
[6.6.1] - 2024-09-01
"babbage"
being reported as the block era for Conway blocks.Changelog
[6.6.0] - 2024-08-15
Add missing treasury.value
and treasury.donation
for Conway transactions.
Add missing protocolParametersUpdate.security
thresholds to stake pools voting thresholds in Conway governance actions.
Add missing ancestor
to various governance actions, pointing to the previous action of the same group.
Add a new from
field to objects referring to stake credential. The field allows to distinguish between verification key and script credentials.
![TypeScript][] The stakePools
method on the LedgerStateQueryClient
now supports an extra filter
. The filters were available on th standalone query but not via the client somehow.
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).
Refresh embedded configuration files to match those expected by cardano-node==9.1.0
(in particular, genesis files for mainnet, preview and preprod).
Only return OverlappingAdditionalUtxo
error during transaction simulation when overlapping utxo differ from the ones fetched from the ledger.
Changelog
[6.5.0] - 2024-07-12
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
and multiplier
that now intervenes in the minimum fee calculation. Note that, starting in the Conway era, the min fee calculation is given by the following formula:$$ minFee = A + B + C $$
$$ \begin{array}{lll} A & = & sizeOf(transaction) \times minFeeCoefficient \ B & = & minFeeConstant \ C & = & referenceScriptsTierPrice \ \end{array} $$
Where $referenceScriptsTierPrice$ is a tier-price depending on the total size of the serialized reference scripts. The total size (in bytes) of reference scripts is priced according to a different, growing tier, given by the following table:
| Size range | Cost | | --- | --- | | $[ 0; range[$ | $\rfloor sizeOf(referenceScripts) \times base\lfloor$ | | $[range; 2 \times range[$ | $\rfloor sizeOf(referenceScripts) \times multiplier \times base\lfloor$ | | $[2 \times range; 3 \times range[$ | $\rfloor sizeOf(referenceScripts) \times {multiplier}^2 \times base\lfloor$ | | $[3 \times range; 4 \times range[$ | $\rfloor sizeOf(referenceScripts) \times {multiplier}^3 \times base\lfloor$ | | ... | ... | | $[n \times range; (n + 1) \times range [$ | $\rfloor sizeOf(referenceScripts) \times {multiplier}^n \times base\lfloor$ |
Considering $range = 25600$, $multiplier = 1.2$ and $base = 44$, we get:
<table> <thead> <tr> <th>Size range</th> <th>Price per byte</th> <th>Plot</th> </tr> </thead> <tbody> <tr> <td>$[ 0; 25600[$</td> <td>$44.000$</td> <td rowspan=6 align="center"> <img src="https://raw.githubusercontent.com/CardanoSolutions/ogmios/master/docs/static/referenceScriptsTierFee.png"> <a target="_blank" align="center" href="https://www.geogebra.org/graphing/x2aa47uu">See online calculator</a> </td> </tr> <tr> <td>$[25600; 51200[$</td> <td>$52.800$</td> </tr> <tr> <td>$[51200; 76800[$</td> <td>$63.360$</td> </tr> <tr> <td>$[76800; 102400[$</td> <td>$76.032$</td> </tr> <tr> <td>...</td> <td>...</td> </tr> <tr> <td>$[179200; 204800[$</td> <td>$157.6599552$</td> </tr> </tbody> </table>[!NOTE]
In Conway, the maximum size of reference scripts is limited to 200KiB.
Hence, a transaction that carries reference scripts adding up to 80KiB of data would be priced:
$$ referenceScriptTierPrice_{80KiB} = 25600 \times (44 + 52.8 + 63.36) + 5120 \times 76.032 = 4489379 $$
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.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 the queryLedgerState/rewardsProvenance
, which was mistakenly reporting the totalStakeInEpoch
. A new value totalStakeInEpoch
also now correctly reports that information.
Changelog
[6.4.0] - 2024-06-06
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).The data.providedCollateral
and data.computedTotalCollateral
from submission errors with code 3128
and 3135
can now be negative Ada values.
![TypeScript][] Fixed missing conway
option in the state query client for the genesisConfiguration
query.