Skip to content

Releases: IntersectMBO/cardano-node

10.6.1

02 Dec 10:01
10.6.1
0c220b2

Choose a tag to compare

10.6.1 Pre-release
Pre-release

IMPORTANT If you're building from source you must upgrade to libblst 0.3.14.

** This version includes the hot fix in cardano-crypto-class addressing an issue with hash sizes**

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend (pending confirmation)
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS, 26.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1, 22.2; Debian 11, 12, 13)
  • Windows 64-bit (10, 11)
  • MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequoia), 26 (Tahoe)
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer N/A
Performance Engineer 🟢
Site Reliability Engineer N/A
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Detailed Changelogs

Package changelogs
Package Version Changelog
Win32-network 0.2.0.1 ChangeLog.md
base-deriving-via 0.1.0.2 CHANGELOG.md
byron-spec-chain 1.0.1.1 CHANGELOG.md
byron-spec-ledger 1.1.0.1 CHANGELOG.md
cardano-api 10.19.1.0 CHANGELOG.md
cardano-binary 1.7.2.0 CHANGELOG.md
cardano-cli 10.13.1.0 CHANGELOG.md
cardano-crypto-class 2.2.3.2 CHANGELOG.md
cardano-crypto-praos 2.2.1.1 CHANGELOG.md
cardano-crypto-test 1.6.0.0 CHANGELOG.md
cardano-crypto-tests 2.2.2.0 CHANGELOG.md
cardano-crypto-wrapper 1.6.1.0 CHANGELOG.md
cardano-data 1.2.4.1 CHANGELOG.md
cardano-git-rev 0.2.2.1
cardano-ledger-allegra 1.8.0.0 CHANGELOG.md
cardano-ledger-alonzo 1.14.0.0 CHANGELOG.md
cardano-ledger-alonzo-test 1.4.0.0 CHANGELOG.md
cardano-ledger-api 1.12.1.0 CHANGELOG.md
cardano-ledger-babbage 1.12.0.0 CHANGELOG.md
cardano-ledger-binary 1.7.0.0 CHANGELOG.md
cardano-ledger-byron 1.2.0.0 CHANGELOG.md
cardano-ledger-conway 1.20.0.0 CHANGELOG.md
cardano-ledger-core 1.18.0.0 CHANGELOG.md
cardano-ledger-dijkstra 0.1.0.0 CHANGELOG.md
cardano-ledger-mary 1.9.0.0 CHANGELOG.md ...
Read more

10.5.3

21 Nov 16:08
6c034ec

Choose a tag to compare

IMPORTANT If you're building from source you must upgrade to libblst 0.3.14.

This is a bugfix release addressing an issue with hash sizes and an issue in the networking stack concerning peer selection. In the diffusion layer under some conditions, the periodic churn mechanism may not meet its design intent and fail to demote sufficiently many warm peers. In turn, further sampling of active peers from this pool may not be sufficiently diverse over longer time frames.

This networking deficiency was discovered with cardano-ignite: a tool for managing Cardano testnets with multiple stake pools distributed across different simulated regions.

All node users running versions 10.3.1 through 10.5.1, including SPOs, must upgrade to this version promptly.

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend (pending confirmation)
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1; Debian 11, 12)
  • Windows 64-bit (10, 11)
  • MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequioa)
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢

Note: all checkmarks weren't available, but we deemed it worth publishing so SPOs stuck on preview could start upgrading.

Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

10.5.2

21 Nov 02:57
1ec98e9

Choose a tag to compare

This is a bugfix release addressing an issue with hash sizes and an issue in the networking stack concerning peer selection. In the diffusion layer under some conditions, the periodic churn mechanism may not meet its design intent and fail to demote sufficiently many warm peers. In turn, further sampling of active peers from this pool may not be sufficiently diverse over longer time frames.

This networking deficiency was discovered with cardano-ignite: a tool for managing Cardano testnets with multiple stake pools distributed across different simulated regions.

All node users running versions 10.3.1 through 10.5.1, including SPOs, must upgrade to this version promptly.

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend (pending confirmation)
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1; Debian 11, 12)
  • Windows 64-bit (10, 11)
  • MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequioa)
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢

Note: all checkmarks weren't availabe, but we deemed it worth publishing so SPOs stuck on preview could start upgrading.

Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Detailed Changelogs

Package changelogs
Package Version Changelog
Win32-network 0.2.0.1 ChangeLog.md
base-deriving-via 0.1.0.2 CHANGELOG.md
byron-spec-chain 1.0.1.1 CHANGELOG.md
byron-spec-ledger 1.1.0.1 CHANGELOG.md
cardano-api 10.16.3.0 CHANGELOG.md
cardano-binary 1.7.2.0 CHANGELOG.md
cardano-cli 10.11.0.0 CHANGELOG.md
cardano-crypto-class 2.2.3.2 CHANGELOG.md
cardano-crypto-praos 2.2.1.1 CHANGELOG.md
cardano-crypto-test 1.6.0.0 CHANGELOG.md
cardano-crypto-tests 2.2.2.0 CHANGELOG.md
cardano-crypto-wrapper 1.6.1.0 CHANGELOG.md
cardano-data 1.2.4.1 CHANGELOG.md
cardano-git-rev 0.2.2.1
cardano-ledger-allegra 1.7.0.0 CHANGELOG.md
cardano-ledger-alonzo 1.13.0.0 CHANGELOG.md
cardano-ledger-alonzo-test 1.3.1.0 CHANGELOG.md
cardano-ledger-api 1.11.0.0 CHANGELOG.md
cardano-ledger-babbage 1.11.0.0 CHANGELOG.md
cardano-ledger-babbage-test 1.3.1.0 CHANGELOG.md
cardano-ledger-binary 1.6.0.0 CHANGELOG.md
cardano-ledger-byron 1.1.0.0 CHANGELOG.md
cardano-ledger-byron-test 1.5.2.1 CHANGELOG.md
cardano-ledger-conway ...
Read more

10.6.0

18 Nov 17:56
f5ac0eb

Choose a tag to compare

10.6.0 Pre-release
Pre-release

Cardano Node version 10.6.0

IMPORTANT: This release has been superseded. Please skip version 10.6.0 entirely and upgrade directly to version 10.6.1

This release initiates the deprecation of the legacy tracing system, removes the legacy networking stack and introduces foundational work for two placeholder hard forks: a new Plutus Version (V4) via an intra-era hard fork (Protocol Version 11), and the new Dijkstra era (Protocol Version 12).

Tracing Systems:

  • Deprecation Notice: Node version 10.6.0 starts the deprecation window for the legacy tracing system in favor of the new tracing system.
  • Both the legacy and the new tracing systems are bundled in this release and will coexist temporarily.
  • The legacy tracing system will be completely decommissioned in a future release following this deprecation window.
  • For an overview of design and configuration changes, please see New Tracing: Quick Start
  • Adjusting monitoring to allow for changes in metric names will be required as a one-off effort. For details, please see New Tracing: Metrics Migration

Networking:

  • Implemented support for DNS SRV records, which provide a mechanism for exposing decentralised protocols co-deployed with a Cardano node, such as Mithril or Hydra. SPOs who wish to register their cardano-node stake pool via this facility may do so by prefixing their domain with _cardano._tcp. eg. _cardano._tcp.<SPO_DOMAIN_NAME> or for the upcoming DMQ node for Mithril under _dmq._mithril._cardano._tcp.<SPO_DOMAIN_NAME>. See CIP-0155 for details and current SRV registry.
  • When operating in relay mode and with Ouroboros Genesis enabled (configuration key ConsensusMode = GenesisMode, the default on preview/preprod, optional on mainnet), the node emits a warning when a ledger peer snapshot (key peerSnapshotFile in the topology file) is not specified or the file is missing. When Ouroboros Genesis becomes the mainnet default in a future release (possibly as early as 10.7), the peer snapshot file will be mandatory and the node will fail to start if it is not provided. It is recommended that SPOs run at least one of their non-block producing relays in GenesisMode.
  • Non-P2P mode is no longer available and has been dropped.

Benchmarking reports relevant to the 10.6.0-pre release can be found in this post on Cardano Updates.

Breaking changes

API & CLI Changes (Breaking): The cardano-api module structure underwent a major refactor according to ADR-009, resulting in extensive module renames (PR). Other breaking changes include using raw bytes instead of CBOR for CIP-129 identifier serialisation (PR) and modifications to the stake-address-info CLI command output (PR).

Networking: Support for the legacy Non-P2P stack has been removed in this release.

Known issues

There is a known issue with increased memory use when testing with large numbers of DReps

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3, M4 or M5) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS, 26.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1, 22.2; Debian 11, 12, 13)
  • Windows 64-bit (10, 11)
  • MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequoia), 26 (Tahoe)
GHC/Cabal supported versions
  • GHC 9.6.7
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer N/A
Performance Engineer N/A
Site Reliability Engineer N/A
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

Node
  • The bundled release configuration files are now provided as config.json which uses the new tracing system, and config-legacy.json which uses the legacy tracing system.
  • There is no longer a separate configuration file for block producers and non-block producers. Node will automatically assign PeerSharing, TargetNumberOfKnownPeers and TargetNumberOfRootPeers configuration parameters based on forging status. These can still be explicitly declared.
  • The EnableP2P parameter is no longer declared in the configuration file as p2p is now the only network operating mode.
  • The bundled release peer snapshot files are now included for all environments (mainnet, preview, preprod) at version 2, v2.
  • There is a new container for cardano-tracer. See the docker README.md for information.
  • cardano-submit-api configs were added to the binary release artifacts.
Tracing
  • Trace / metrics forwarding now supports connection over TCP (in addition to Unix domain sockets or Windows named pipes).
  • Failure to initialise the PrometheusSimple backend is now lenient - i.e., won't cause the Node to abort.
  • Improved structure and metadata of autogenerated trace documentation.
  • Fixed CPU resource tracing on MacOS (Darwin).
  • New KES Agent tracer (namespace Consensus.KESAgent).
  • New DNS tracer (namespace Net.DNS).
  • New churn mode tracer (namespace Net.PeerSelection.ChurnMode).
  • Canonicalized diffusion tracers to namespaces Net.Mux.{Local|Remote}.{Bearer|Channel}.
  • Several renames in the ChainDB.LedgerEvent.Flavor.V2, Consensus.GSM and Net.Peers.Ledger traces.
  • Fixed block replay tracer.
  • Removed non-P2P diffusion tracer.
  • For an exhaustive list of trace messages and metrics implemented in a particular Node build, please run the cardano-node trace-documentation CLI command.
Consensus
  • Added ShelleyNodeToClientVersion14 which adds SRV support in GetBigLedgerPeerSnapshot query.
  • Added CardanoNodeToClientVersion18 which maps to ShelleyNodeToClientVersion14.
  • Define new Node-To-Client versions CardanoNodeToClientVersion17, ShelleyNodeToClientVersion13.
  • Deprecate GetPoolDistr in favor of GetPoolDistr2 (new in NodeToClientV_21).
  • Deprecate GetStakeDistribution in favor of GetStakeDistribution2 (new in NodeToClientV_21).
  • Expose new query GetMaxMajorProtocolVersion as a Shelley query, for getting the max known protocol version for a node.
  • Return full map instead of emp...
Read more

10.5.1

22 Jul 16:35
ca1ec27

Choose a tag to compare

Node 10.5.1 provides a number of improvements over node 10.5.0. In particular, the Tracing system fixes the slotsMissed_int metric, while networking improvements include Windows socket fixes, reduced caching time of DNS lookup errors, refined PeerSharing configuration behavior (see networking changes below for details), and the deprecation of --non-producer-node in favor of --start-as-non-producer-node command line switch for starting the node. This release also removes a number of irrelevant binaries from the Node artifacts and adds tx-generator.

Benchmarking reports relevant to the 10.5.1 release can be found in this post on Cardano Updates.

System testing results for the 10.5.1 release can be found on the corresponding tag testing page.

Please note the changed default behavior for PeerSharing for relay nodes, but not for block producers. This reflects the recommendations for mainnet usage -- mainnet block producers may not meet the Praos performance guarantees if PeerSharing is enabled and IP will also be leaked, but this is not an issue for relays.

Known issues

  • There is a known bug when starting from a Byron snapshot. The node will reject the snapshot and replay the chain from the start. However the time it takes to replay the Byron era is small, and very few users are expected to need to start the node from a Byron snapshot. Therefore the issue will be fixed in 10.6.0.

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend (pending confirmation)
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1; Debian 11, 12)
  • Windows 64-bit (10, 11)
  • MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequioa)
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

Node
  • Some irrelevant binaries have been removed from the release binary artifacts, and tx-generator added.
Tracing
  • New Tracing System: fixed slotsMissed_int metric
Consensus
  • No changes
Ledger
  • No changes
Network
  • Fixed an issue on Windows: setting unsupported Windows socket option which resulted in connections being torn down
  • Lowered the time of caching DNS lookup errors to at most 15 minutes
  • Allow PeerSharing in InitiatorOnlyDiffusionMode
  • The default value of PeerSharing configuration parameter depends on whether the node is configured as a block producer (= PeerSharingDisabled) or a relay (= PeerSharingEnabled) for normal operations. For this purpose, the node is considered a BP if any of the protocol files are present at startup. The default can be overridden by explicitly setting the PeerSharing key in the configuration file to the desired value.
CLI
  • No changes
API
  • No changes
Submit API
  • No changes
Plutus
  • No changes

Detailed Changelogs

Individual packages' changelogs Package changelogs
Package Version Changelog
Win32-network 0.2.0.1 ChangeLog.md
base-deriving-via 0.1.0.2 CHANGELOG.md
byron-spec-chain 1.0.1.0 CHANGELOG.md
byron-spec-ledger 1.1.0.0 CHANGELOG.md
cardano-api 10.16.3.0 CHANGELOG.md
cardano-binary 1.7.1.0 CHANGELOG.md
cardano-cli 10.11.0.0 CHANGELOG.md
cardano-crypto-class 2.2.2.0 CHANGELOG.md
cardano-crypto-praos 2.2.1.0 CHANGELOG.md
cardano-crypto-test 1.6.0.0 CHANGELOG.md
cardano-crypto-tests 2.2.1.0 CHANGELOG.md
cardano-crypto-wrapper 1.6.0.0 CHANGELOG.md
cardano-data 1.2.4.0 CHANGELOG.md
cardano-git-rev 0.2.2.0 ...
Read more

10.5.0

18 Jun 17:10
7e045ab

Choose a tag to compare

10.5.0 Pre-release
Pre-release

Cardano Node version 10.5.0 introduces several key improvements and fixes across the Cardano ecosystem. The Node now exposes an LMDB MaxReaders configuration option, while Consensus includes optimizations for Ouroboros Genesis, drops GHC 8.10 support, and removes deprecated features such as SlotForgeTimeOracle. Network changes reduce the default peer connection targets, add configurable egress buffering, and fix synchronisation issues. The Cardano Node CLI standardizes JSON/YAML outputs, enables offline Plutus cost calculations, and removes legacy commands. Meanwhile, the Cardano Node API enhances governance credential handling, deprecates outdated functions, and resolves auto-balancing bugs.

This is a pre-release version of the node - it is not recommended for Mainnet use at this point in time.

Benchmarking reports relevant to the 10.5.0 release can be found in this post on Cardano Updates.

Breaking changes

  • Removed legacy governance command group: use compatible instead
  • Deleted governance...-poll commands

Known issues

  • There is a known bug when starting from a Byron snapshot. The node will reject the snapshot and replay the chain from the start. However the time it takes to replay byron is small, and the chance of users starting the node from a Byron snapshot is also low. Therefore the issue will be fixed in 10.6.0.
  • An unsupported socket option is set by the diffusion layer on a Windows deployment which results in WSAENOPROTOOPT (bad protocol option) error returned by the syscall leading to connection tear down.

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend (pending confirmation)
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS; Mint 20, 21, 21.1, 21.2, 21.3, 22, 22.1; Debian 11, 12)
  • Windows 64-bit (10, 11)
  • MacOS 10.15, 11 (Big Sur), 12 (Monterey), 13 (Ventura), 14 (Sonoma), 15 (Sequioa)
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer N/A
Performance Engineer 🟢
Site Reliability Engineer N/A
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

Node
  • Expose MaxReaders config option for LMDB.
  • Set Preview and Preprod network configurations to use Ouroboros Genesis mode by default.
  • Set node configuration's LedgerDB QueryBatchSize to match the UTXO-HD migration guide default.
Tracing
Consensus
  • Bug fix in Ouroboros Genesis. Added the GsmState argument to the registerClient function for the ChainSync Jumping optimization. If the node is in the GSM.CaughtUp state, new peers now immediately disengage from CSJ.
  • Drop GHC 8.10 support.
  • Use HeaderWithTime for the ChainSync candidates.
  • Remove SlotForgeTimeOracle and its use in the BlockFetch client interface, as we no longer translate time in the BlockFetch client.
  • Rename GetLedgerConfig to DebugLedgerConfig, indicating that it is a debug query, meaning that compatibility across node versions is not guaranteed. Please let us know if you want to rely on this query and would benefit from proper backwards-compatibility guarantees.
  • Removed reference to deleted NodeToNodeV_13 from SupportedNetworkProtocolVersion.
Ledger
  • No changes
Network
  • Removed support for legacy node-to-node protocol version 13 for clients unable to cross past Chang HF.
  • To diminish socket usage, the default peer selection target for established outbound connections was lowered from 40 to 30 in deadline/caught up node. Also lowered the same parameter from 50 to 40 for a node syncing in Genesis mode.
  • Implemented mux egress buffering via configurable polling parameter (EgressPollInterval key in the node configuration file) which lets operators tune latency vs. network efficiency to their preference. The default value is 0 [s] effectively disabling this feature, but values up to 0.200 (200 ms) are currently supported, which trades network latency for expected gains in network efficiency under high load conditions where many downstream peers are served. See IntersectMBO/ouroboros-network#5113
  • Fixed churn regression introduced in node 10.3 affecting a node syncing in Genesis mode.
  • The default value of PeerSharing in the node has changed to true; this follows the published configuration, which has been using peer sharing for a while now.
CLI

Release Notes for cardano-cli (10.9.0.0 to 10.11.0.0)

Main changes

  • Standardized output format parameters and output across the cardano-cli and added support for new formats, especially yaml and json:

    • New --output-yaml option for the following commands:

      • conway query ledger-state
      • conway query ref-script-size
      • conway query stake-distribution
      • conway query stake-pools
      • conway query utxo
      • conway text-view decode-cbor
      • conway transaction calculate-min-fee
      • conway transaction txid
      • latest query ledger-state
      • latest query ref-script-size
      • latest query stake-distribution
      • latest query stake-pools
      • latest query utxo
      • latest text-view decode-cbor
      • latest transaction calculate-min-fee
      • latest transaction txid
      • query ledger-state
      • query stake-distribution
      • query stake-pools
      • query utxo

      (compatible)
      PR 1192

    • New --output-json and --output-yaml flags for the following commands:

      • conway query committee-state
      • conway query constitution
      • conway query drep-stake-distribution
      • conway query drep-state
      • conway query future-pparams
      • conway query gov-state
      • conway query proposals
      • conway query ratify-state
      • latest query committee-state
      • latest query constitution
      • latest query drep-stake-distribution
      • latest query drep-state
      • latest query future-pparams
      • latest query gov-state
      • latest query proposals
      • latest query ratify-state

      (compatible)
      PR 1188

    • The following commands have been updated to take output format:

      • conway query kes-period-info
      • conway query ledger-peer-snapshot
      • conway query pool-params
      • conway query pool-state
        *...
Read more

10.4.1

30 Apr 16:52
10.4.1
420c94f

Choose a tag to compare

Node 10.4.1 integrates UTxO-HD into the Cardano node. UTxO-HD is a rework of the Consensus layer of the node which allows the UTxO set to be stored either fully in-memory (as with previous node versions) or else on some external storage medium (e.g. SSD or HD). The latter lowers the memory requirements of the running node at the cost of some speed. This first version of UTxO-HD provides an LMDB backend, but future releases will incorporate a more fine-tailored backend based on LSM trees. More information on UTxO-HD can be found in the consensus website.

This release also provides fixes and enhancements to the tracing system, to the location of LedgerDB configuration options, and to the node CLI and API. It also updates the dependency on Plutus to 1.45.

System testing results for the 10.4.1 release can be found on the corresponding tag testing page.

Benchmarking reports relevant to the 10.4.1 release can be found in this post on Cardano Updates.

Important

Users migrating from a previous version of the node should read the migration guide to properly configure the node and convert the database such that a replay from genesis can be avoided. Mainnet block producers and associated relays should only use the V2InMemory UTXO-HD backend.

This version of the node is mainnet ready. It is recommended for production use using the in-memory backend only.

Warning

The LMDB backend has not yet been benchmarked. While it may provide sufficient performance for edge nodes (wallets, explorers, exchanges etc.) at a valuable reduction in memory usage, it should not be used for block producer or relay nodes on mainnet.

Known Issues

There is a known bug with the experimental Ouroboros Genesis feature that is not yet recommended for mainnet use.
ChainSync Jumping (CSJ) is not disabled once a node is caught up. This should not affect normal operation of the syncing node, but does risk a DoS attack for the caught-up node. It will be corrected in a future release (Issue IntersectMBO/ouroboros-consensus#1490).

There is also a known bug when starting from a Byron snapshot. The node will reject the snapshot and replay the chain from the start. However the time it takes to replay byron is small, and the chance of users starting the node from a Byron snapshot is also low. Therefore the issue will be fixed in 10.6.0.

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM when running with the InMemory backend, 8GB when running with the OnDisk backend (pending confirmation)
  • 300GB of free storage (350GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 18.04 LTS, 20.04 LTS, 22.04 LTS; Mint 19.3, 20; Debian 10.3)
  • Windows 64-bit (8.1, 10, 11)
  • MacOS 10.13, 10.14, 10.15, 11
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

Node
  • Relocate configuration options related to the LedgerDB under a new "LedgerDB" key in the configuration file. See Consensus' webpage for more information.
Tracing
  • New tracing: fix the following faulty metrics: connectionManager_*, slotsMissed.

  • Old Tracing: rename metric connectionManager.prunableConns to connectionManager.fullDuplexConns for incerased consistency.

  • Reworded human description of some traces to be more explanatory.

  • Relocate LedgerDB related traces under the LedgerEvent namespace.

Consensus
  • Release UTxO-HD rework. For more information check the webpage.
  • Decrease the maximum permissible clock skew from 5s to 2s.
Ledger
  • No changes
Network
  • No changes
CLI
  • Corrected the flipped text & JSON output format for query stake-pools command.
    (bugfix)
    PR 1139

  • Make the output format flag for the query utxo command only have one default: JSON (rather than a different default depending on whether the output file is specified).
    (breaking, refactoring)
    PR 1133

  • Add canonical CBOR output toggle for transaction building and signing commands.
    (feature, compatible)
    PR 1092

API
  • Better reporting of negative balance in transaction balancing.
    (breaking, refactoring, bugfix)
    PR 799

  • Add outputs, fromShelleyUTxO and toShelleyUTxO functions to Cardano.Api.Tx.UTxO.
    (compatible)
    PR 812

Submit API
  • No changes
Plutus
  • No changes

Detailed Changelogs

Individual packages' changelogs
Package Version Changelog
Win32-network 0.2.0.1 ChangeLog.md
base-deriving-via 0.1.0.2 CHANGELOG.md
byron-spec-chain 1.0.1.0 CHANGELOG.md
byron-spec-ledger 1.1.0.0 CHANGELOG.md
cardano-api 10.14.1.0 CHANGELOG.md
cardano-binary 1.7.1.0 CHANGELOG.md
cardano-cli 10.8.0.0 CHANGELOG.md
cardano-crypto-wrapper 1.6.0.0 [CHANGELOG.md](https://github.com/intersectmbo/carda...
Read more

10.3.1

17 Apr 12:51
10.3.1
b3f237b

Choose a tag to compare

Node 10.3.1 primarily improves on performance: it improves execution speed, reduces memory usage and gives faster synchronisation times. In addition, it provides several enhancements to the new tracing system. It also provides support for light-weight checkpointing that is needed to enable ouroboros-genesis. Finally, it includes bug-fixes for a number of CLI commands. The docker images for node and submit-api have also received improvements to streamline operations.

System testing results for the 10.3.1 release can be found on the corresponding tag testing page.

Benchmarking reports relevant to the 10.3.1 release can be found in this post on Cardano Updates.

Known Issues

  • New tracing system: connectionManager_* metrics are incorrect; the underlying trace message ConnectionManagerCounters however logs the correct values.

  • New tracing system: slotsMissed metric is incorrect; it falsely counts slots since the most recent block production as missed. However, the block producer does not actually miss a slot.

  • GenesisMode: the optional peerSnapshotFile declaration in the topology file interprets relative paths with respect to node's binary directory rather than the topology file directory.

  • There is a known bug with the experimental Ouroboros Genesis feature that is not yet recommended for mainnet use.
    ChainSync Jumping (CSJ) is not disabled once a node is caught up. This should not affect normal operation of the syncing node, but does risk a DoS attack for the caught-up node. It will be corrected in a future release (Issue IntersectMBO/ouroboros-consensus#1490).

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM
  • 200GB of free storage (250GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 18.04 LTS, 20.04 LTS, 22.04 LTS; Mint 19.3, 20; Debian 10.3)
  • Windows 64-bit (8.1, 10, 11)
  • MacOS 10.13, 10.14, 10.15, 11
GHC/Cabal supported versions
  • GHC 9.6
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

Node
  • Update the default compiler version from 8.10.x to 9.6.x.

  • Add ForkPolicy to the configuration (this is an experimental option for network behaviour)

  • Optionally support light-weight check-pointing for ouroboros-genesis.

  • Tracing

    • New PrometheusSimple backend which runs a simple TCP server for direct exposition of metrics, without forwarding, under the URL /metrics.
    • New maxReconnectDelay config option in TraceOptionForwarder: Specifies maximum delay (seconds) between (re-)connection attempts of a forwarder (default: 60s).
    • Fix: change semantics of several Forge.* metrics to counters - to match semantics of legacy tracing.
    • Fix: correct blockdelay_cdf* metric
    • Fix: correct blockReplayProgress metric
    • Optimizations to trace + metrics forwarding, aimed at reducing CPU usage when under low / idle load.
  • Docker

    • Add baseline network configuration references for the node image
    • Add a new merge mode for the node image
    • Reduce default path inconsistencies within and between the node and submit-api images
    • Improve documentation
    • Implemented in PR#6110 where breaking changes are also noted
Consensus
  • Queries and mini-protocols
    • Removed legacy {HardForkSpecific,Shelley,Cardano}NodeToClientVersions and related code.
    • Export new function querySupportedVersions. For this, add method blockQueryIsSupportedOnVersion to BlockSupportsLedgerQuery.
    • Use NodeToClientV_20.
      • Expose new query QueryStakePoolDefaultVote.
      • Query GetProposedPParamsUpdates has been deprecated and is not supported in ShelleyNodeToClientV12 (NodeToClientV_20).
  • Tracers
    • Added a new CSJ tracer to ChainSync client interface.
    • Renamed the existing tracer in Ouroboros.Consensus.Node.Tracers.Tracers.
    • Added peer sharing tracer to NTN tracers.
  • Renaming and relocation
    • Move Ouroboros.Consensus.Cardano.ByronHFC to Ouroboros.Consensus.Byron.ByronHFC.
  • Expose blockchain time as getBlockchainTime :: BlockchainTime m in the NodeKernel
  • Deprecate the StandardX type aliases for eras.
Ledger
  • Removed crypto-parametrization from ledger eras, which finally allowed us to avoid regression in ghc-9 and stop using ghc-8.10.7 for building cardano-node releases.
  • Improve performance of ledger snapshot creation by changing how we serialize UTxO in the ledger state. This should sove an issue with missed leadership checks due to snapshot creation problem ouroboros-consensus#868
  • Add cli to plutus-debug executable and provide ability for overridding different parts used for script execution.
  • Much cleanup, re-organization of the code and various minor performance optimizations
Network
  • keep-alive mini-protocol receiver is always (re)started, when we receive traffic on any other node-to-node mini-protocol
  • experimental option which binds mini-protocol threads to lower capabilities, leaving two capabilities free for other threads

Link to the development tracker

CLI
  • Bump cardano-api to include bug fixes for:

    • Silently dropping simple scripts in transaction construction
    • Not selecting the highest protocol version in a given era. This resulted in erroneous plutus script decoding failures.

    (compatible, bugfix)
    PR 1127

  • Bump to cardano-api-10.13.0.0 - Fix bug in the construction of the redeemer pointer map
    (bugfix)
    PR 1124

  • Delete top level babbage command group
    (breaking)
    PR 1117

  • Source import of the vary package
    (feature)
    PR 1121

  • Bumped ledger and dependencies for node 10.3 release.

    • Removed use of parameterised crypto (EraCrypto c, this enables many other data types to become mono-morphic over StandardCrypto)
    • Added query stake-pool-default-vote
    • Ensured security parameter is non-zero
      (breaking, feature)
      PR 1075
  • Add a new query for stake-pool default vote
    (feature, release)
    PR 1081

  • Delete top-level shelley command group and delete associated tests
    (breaking)
    PR 1111

  • Parallelised help golden test generation and validation
    (optimisation)
    PR 1103

  • Added support for mnemonic sentence generation and extended key derivation from mnemonic sentences.
    (feature)
    [PR 975](https://github.com/...

Read more

10.2.1

19 Feb 23:23
52b708f

Choose a tag to compare

Node 10.2.1 provides support for the new tracing system and an initial integration of Ouroboros Genesis, a new feature which enables nodes to bootstrap from the network. It also provides a number of bug fixes and enhancements, including fixes and improvements to a number of CLI commands.

Benchmarking reports relevant to the 10.2.x release series can be found in this post on Cardano Updates.

Limitations

Note that lightweight checkpoints are not integrated into node 10.2.1, so it is recommended to only use Ouroboros Genesis for testing purposes (on e.g. Preview or PreProd) and not on Mainnet.

Known Issues

There is a known bug with the experimental Ouroboros Genesis feature that is not yet recommended for mainnet use.
ChainSync Jumping (CSJ) is not disabled once a node is caught up. This should not affect normal operation of the syncing node, but does risk a DoS attack for the caught-up node. It will be corrected in a future release (Issue IntersectMBO/ouroboros-consensus#1490).

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM
  • 200GB of free storage (250GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 18.04 LTS, 20.04 LTS, 22.04 LTS; Mint 19.3, 20; Debian 10.3)
  • Windows 64-bit (8.1, 10, 11)
  • MacOS 10.13, 10.14, 10.15, 11
GHC/Cabal supported versions
  • GHC 8.10.7
  • Cabal 3.8/3.12
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign-off

Role Approval
Technical Steering Committee (Intersect) 🟢
Product Committee (Intersect) 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

Node

cardano-node

  • Ledger peer snapshot path entry added to topology JSON parser,
    which a new decoder function readPeerSnapshotFile processes
    at startup and SIGHUP. Data is available to the diffusion layer
    via TVar.

  • Configuration changes:

    • Add ConsensusMode and MinBigLedgerPeersForTrustedState
    • Add Genesis config
    • Add diffusionMode to local root peers group configuration
    • Add DoDiskSnapshotChecksum
  • Use new tracing system by default. To continue using the current system, explicitly set "UseTraceDispatcher": false in the config.

  • Change fallback node name for trace forwarding from host:port to host_port

  • Replace snap-server based web stack inside the Node with warp / wai

  • Tracing updates:

    • Add support for ChainSelStarvationEvent, ExtValidationError
    • Add support for KeepAlive protocol
    • Add support for LocalStateQuery protocol
    • Add support for UsingBigLedgerPeerSnapshot, VerifyPeerSnapshot
    • Add support for ConnectionError
    • Add support for AddNewNodeIdMapping
    • Add support for PeerFetch and PeerStarvedUs
    • Add support for SnapshotMissingChecksum
    • Add support for stateful messages
    • Add maximumKesEvolutions to InvalidKesSignatureOCERT event
    • Rename kind field of all MuxXxx trace messages to be Mux.Xxx
    • Rename fields in RotatedDynamo event to oldPeer, newPeer
    • Rename ConnectTo to Connect
    • Change format of GenesisPoint, LabelPeer, DecisionEvent
    • Change format of ConnectionManagerState
    • Change format of AddedToCurrentChain
    • Drop support for ClientAgency, ServerAgency
    • Drop support for FetchDecision declined, FetchDecision results
    • Drop support for StakeKeyInRewardsDELEG
    • Drop support for ChainSelectionForFutureBlock, BlockInTheFuture,
      CandidateContainsFutureBlocks, CandidateContainsFutureBlocksExceedingClockSkew,
      InvalidBlockReason
  • Drop NodeToClient versions 9 through 15, and add 19

  • Increase minor protocol version to 10.3

Consensus
  • Snapshots are now CRC-checksum checked (link).
  • Drop NodeToClient versions < 16 (link).
  • Remove cdbFutureBlocks as headers now will be delayed until they are no
    longer "from the future" (link).
  • Implement new bulk sync logic for BlockFetch for Genesis (link).
  • Update to typed-protocols-0.3.0.0 API and add KeepAlive tracer (link).
  • Fixed a bug where a valid tx with less than 4 bytes less than the max tx size
    would be incorrectly rejected by the mempool (link).
  • TestXxxHardForkAtVersion was removed in favor of CardanoHardForkTriggers (link).
Ledger
  • Add registered DRep stake distribution query
Network
cardano-cli

Release Notes for cardano-cli (10.2.0.0 to 10.4.0.0)

Main changes

  • Added cardano-cli latest query ledger-peer-snapshot for a snapshot of big ledger peers used when syncing in Genesis
    (feature)
    PR 727

    A new query subcommand ledger-peer-snapshot was introduced to serialize a snapshot of big ledger peers. These relays will be relied on by network layer when a node is syncing up in Genesis consensus mode, since a node may not have any or up to date information from its own ledger which are the big ledger peer relays.

  • Added the debug check-node-configuration --node-configuration-file node-config.json command
    that reads node-config.json and checks that the hashes of genesis files are correct.
    (feature)
    PR 923 based on ADR 5

  • Added anchor data hash checks to transaction build
    (feature)
    PR 951

    This version adds a built-in check that allows cardano-cli to verify anchor data linked by a transaction at the time it is being built if using the command transaction build. The cardano-cli will automatically try to download the referenced anchor data, hash it, and check the obtained hash against the one in the transaction, letting the user know if there is a mismatch.

Other features

  • Added cardano-cli conway query future-pparams
    (feature, compatible)
    PR 1038

  • Added the ratify-state query
    (feature, compatible)
    PR 1036

  • Added certificates to CLI interface in compatible transaction-sign
    (feature, compatible)
    PR 972

  • DRep ID: support key hash as input
    (compatible)
    PR 1009

  • transaction id: added --output-[json,text] flag to control format of the output
    (feature, compatible)
    [PR 1005](https...

Read more

10.1.4

07 Jan 21:32
1f63dbf

Choose a tag to compare

It is required that all Cardano stake pools and relays upgrade to this node version in order to mitigate a potential DoS attack following a hard fork to Protocol Version 10 ("Plomin" hard fork on mainnet). It is recommended that all other node users upgrade to this version. Node users who do not upgrade put themselves at risk of a potential DoS attack following the hard fork.

Node 10.1.4 is a mainnet-ready release of the Cardano node that is capable of crossing the Chang#2 ("Plomin") hard fork.
It adds safeguards at the mempool level to block specific types of transaction that could lead to a DoS attack following the hard fork.

For further details about cardano-node 10.1.4 please see the release notes for node versions 10.1.1, 10.1.2 and 10.1.3.

Benchmarking reports relevant to the 10.1.4 release can be found in this post on Cardano Updates.

Technical Specification

Minimum System Requirements
  • An Intel or AMD x86 processor with two or more cores, at 1.6GHz or faster (2GHz or faster for a stake pool or relay)
  • Or, for MacOS, an Apple Silicon (M1, M2, M3 or M4) processor
  • 24GB of RAM
  • 200GB of free storage (250GB recommended for future growth)
Platforms
  • Linux 64-bit (Ubuntu 18.04 LTS, 20.04 LTS; Mint 19.3, 20; Debian 10.3)
  • Windows 64-bit (8.1, 10, 11)
  • MacOS 10.13, 10.14, 10.15, 11
GHC/Cabal supported versions
  • GHC 8.10.7/Cabal 3.8.1.0
Supported roles
Platform Block Production Relay Client (Desktop)
Linux 🟢 🟢 🟢
Windows 🟥 🟥 🟢
MacOS 🟥 🟥 🟢
Downloads

Documentation

Sign off

Role Approval
Cardano Head of Engineering 🟢
Cardano Head of Product 🟢
Test Engineer 🟢
Performance Engineer 🟢
Site Reliability Engineer 🟢
Release Engineer 🟢

Changelogs

Individual packages' changelogs Package changelogs
Package Version Changelog
Win32-network 0.2.0.0 ChangeLog.md
base-deriving-via 0.1.0.2 CHANGELOG.md
byron-spec-chain 1.0.1.0 CHANGELOG.md
byron-spec-ledger 1.0.1.0 CHANGELOG.md
cardano-api 10.1.0.0 CHANGELOG.md
cardano-binary 1.7.1.0 CHANGELOG.md
cardano-cli 10.1.1.0 CHANGELOG.md
cardano-crypto 1.1.2
cardano-crypto-class 2.1.5.0 CHANGELOG.md
cardano-crypto-praos 2.2.0.0 CHANGELOG.md
cardano-crypto-test 1.5.0.2
cardano-crypto-tests 2.1.2.0 CHANGELOG.md
cardano-crypto-wrapper 1.5.1.3 CHANGELOG.md
cardano-data 1.2.3.1 CHANGELOG.md
cardano-git-rev 0.2.2.0
cardano-ledger-allegra 1.6.0.1 CHANGELOG.md
cardano-ledger-alonzo 1.11.0.0 CHANGELOG.md
cardano-ledger-alonzo-test 1.3.0.0 CHANGELOG.md
cardano-ledger-api 1.9.4.0 CHANGELOG.md
cardano-ledger-babbage 1.10.0.0 CHANGELOG.md
cardano-ledger-babbage-test 1.3.0.0 CHANGELOG.md
cardano-ledger-binary 1.4.0.0 CHANGELOG.md
cardano-ledger-byron 1.0.1.0 CHANGELOG.md
cardano-ledger-byron-test 1.5.2.0 CHANGELOG.md
cardano-ledger-conway 1.17.4.0 CHANGELOG.md
cardano-ledger-conway-test 1.3.0.0 CHANGELOG.md
cardano-ledger-core 1.15.0.0 [CHANGELOG.md](https://github.com/input-output-hk/cardano-ledger/blob/0ba8e73c418...
Read more