Skip to content

Cardano Node 9.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 08 Jul 18:47
· 311 commits to master since this release
2820a63

Node 9.0.0 is a major release of the Cardano node that contains all the changes that are needed for the Conway ledger era, including on-chain governance via CIP-1694, support for Plutus v1 reference scripts, and Plutus script signature support via CIP-69. It is recommended that all node users upgrade to this or a later version of the node.

This is the first node that can support crossing the 9.0 hard fork (Chang) boundary on mainnet and long-running testnets, such as PreProd). It only supports entering the bootstrap phase of CIP-1694 in production environments (Protocol Version 9.0) and not
the transition to enable DRep voting and all governance actions (Protocol Version 10.0).

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

No Conway Genesis File
Note that node 9.0.0 is supplied without a valid Conway-era Genesis file, which will be needed to cross the Chang hard fork. This will be supplied at a later date, necessitating a small configuration update.

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

Known Issues

Cardano CLI

  • In cardano-cli-9.0.0.0, in the Conway era, the transaction build command automatically populates the currentTreasuryValue on every transaction. This should, however, happen only on Treasury donation transactions. This issue causes:
    • Transactions running Plutus V1, Plutus V2 and Simple scripts to fail at submission with CurrentTreasuryFieldNotSupported.
    • Also, regular transactions created on one epoch and submitted on a different epoch fail with ConwayTreasuryValueMismatch.

⬆️ This is fixed on cardano-cli-9.0.0.1 Users are encouraged to use this latest version.

  • In cardano-cli-9.0.0.0, in the Conway era, transaction build command may underestimate Plutus script execution units. This causes script execution to fail with overspent budget. Use transaction build-raw instead.

No Conway Genesis File

Note that node 9.0.0 is supplied without a valid Conway-era Genesis file, which will be needed to cross the Chang hard fork. This will be supplied at a later date, necessitating a small configuration update.

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 or M3) 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

Node
  • Allows updating to conway era without ExperimentalHardForksEnabled
Consensus
  • Added GetSPOStakeDistr query.
  • Introduced ConwayMeasure, a Conway-specific TxMeasure adding the total
    reference scripts size as a new dimension on top of AlonzoMeasure.
  • Updated N2C part of latestReleasedNodeVersion to NodeToClientV_16.
Ledger
  • Authorization of hot credentials for constitutional committee members is now only
    possible for cold credentials that are present in the ledger state, either in the current
    committee or in one of the proposals.
  • Voting is restricted to entities that are present in the ledger state
  • DRep votes will be removed whenever DRep unregisters
  • Pricing model for the size of reference scripts was changed from linear to
    exponential. Moreover, extra limits on the total size of reference scripts being used
    have been put in place.
Network

NONE

Cardano-cli

NONE

Cardano-api

NONE

Submit-api

NONE

Plutus

NONE

Individual packages' 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 9.0.0.0 CHANGELOG.md
cardano-binary 1.7.1.0 CHANGELOG.md
cardano-cli 9.0.0.0 CHANGELOG.md
cardano-crypto 1.1.2
cardano-crypto-class 2.1.5.0 CHANGELOG.md
cardano-crypto-praos 2.1.2.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.2 CHANGELOG.md
cardano-data 1.2.3.0 CHANGELOG.md
cardano-git-rev 0.2.2.0
cardano-ledger-allegra 1.5.0.0 CHANGELOG.md
cardano-ledger-alonzo 1.10.0.0 CHANGELOG.md
cardano-ledger-alonzo-test 1.2.1.2 CHANGELOG.md
cardano-ledger-api 1.9.2.1 CHANGELOG.md
cardano-ledger-babbage 1.8.2.0 CHANGELOG.md
cardano-ledger-babbage-test 1.2.0.3 CHANGELOG.md
cardano-ledger-binary 1.3.3.0 CHANGELOG.md
cardano-ledger-byron 1.0.1.0 CHANGELOG.md
cardano-ledger-byron-test 1.5.1.1 CHANGELOG.md
cardano-ledger-conway 1.16.0.0 CHANGELOG.md
cardano-ledger-conway-test 1.2.1.7 CHANGELOG.md
cardano-ledger-core 1.13.2.0 CHANGELOG.md
cardano-ledger-mary 1.6.1.0 CHANGELOG.md
cardano-ledger-shelley 1.12.2.0 CHANGELOG.md
cardano-ledger-shelley-ma-test 1.2.2.2 CHANGELOG.md
cardano-ledger-shelley-test 1.4.0.2 CHANGELOG.md
cardano-ping 0.2.0.14 CHANGELOG.md
cardano-prelude 0.2.0.0 ChangeLog.md
cardano-prelude-test 0.1.0.3
cardano-protocol-tpraos 1.2.0.1 CHANGELOG.md
cardano-slotting 0.2.0.0 CHANGELOG.md
cardano-strict-containers 0.1.3.0 CHANGELOG.md
contra-tracer 0.1.0.2
ekg 0.4.0.15.0.0.0.0.2 CHANGELOG.md
ekg-core 0.1.1.7.0.0.0.0.1 CHANGELOG.md
ekg-forward 0.5 CHANGELOG.md
ekg-json 0.1.0.7.0.0.0.0.2 CHANGELOG.md
fs-api 0.2.0.1 CHANGELOG.md
fs-sim 0.2.1.1 CHANGELOG.md
heapwords 0.1.0.2 CHANGELOG.md
iohk-monitoring 0.1.11.4
libsystemd-journal 1.4.5.0.0.0.0.1 Changelog.md
lobemo-backend-aggregation 0.1.0.0
lobemo-backend-ekg 0.1.1.0
lobemo-backend-monitoring 0.1.0.0
lobemo-backend-trace-forwarder 0.1.0.0
lobemo-scribe-systemd 0.1.0.0
measures 0.1.0.2 CHANGELOG.md
monoidal-synchronisation 0.1.0.5 CHANGELOG.md
network-mux 0.4.5.2 CHANGELOG.md
non-integral 1.0.0.0 CHANGELOG.md
optparse-applicative-fork 0.18.1.0 CHANGELOG.md
ouroboros-consensus 0.20.0.0 CHANGELOG.md
ouroboros-consensus-cardano 0.18.0.0 CHANGELOG.md
ouroboros-consensus-diffusion 0.17.0.1 CHANGELOG.md
ouroboros-consensus-protocol 0.9.0.1 CHANGELOG.md
ouroboros-network 0.16.1.1 CHANGELOG.md
ouroboros-network-api 0.7.3.0 CHANGELOG.md
ouroboros-network-framework 0.13.2.1 CHANGELOG.md
ouroboros-network-mock 0.1.1.1 CHANGELOG.md
ouroboros-network-protocols 0.9.0.0 CHANGELOG.md
ouroboros-network-testing 0.6.2.0 CHANGELOG.md
plutus-core 1.30.0.0 CHANGELOG.md
plutus-ledger-api 1.30.0.0 CHANGELOG.md
plutus-tx 1.30.0.0 CHANGELOG.md
prettyprinter-configurable 1.30.0.0
quickcheck-monoids 0.1.0.0 CHANGELOG.md
set-algebra 1.1.0.3 CHANGELOG.md
small-steps 1.1.0.0 CHANGELOG.md
sop-extras 0.2.0.0 CHANGELOG.md
strict-checked-vars 0.2.0.0 CHANGELOG.md
strict-sop-core 0.1.1.0 CHANGELOG.md
tracer-transformers 0.1.0.4
typed-protocols 0.1.1.0 CHANGELOG.md
typed-protocols-cborg 0.1.0.4 CHANGELOG.md
typed-protocols-examples 0.2.0.2
validation-selective 0.2.0.0.0.0.0.0.1 CHANGELOG.md
vector-map 1.1.0.0 CHANGELOG.md
Legend
  • 🟢 - signed / agreed / supported

  • 🟥 - not agreed / unsupported