github IntersectMBO/cardano-node 1.34.0
Cardano Node 1.34.0

latest releases: 8.11.0-sancho, 8.11.0-pre, 8.9.3...
2 years ago

Node version 1.34 brings a number of important new features that will benefit stake pool operators and other users, including

  • a new tracing mechanism
  • a new command to query the local mempool
  • a new command to provide stake pool operators with their leadership schedule
  • a new command to check the validity of stake pool operational certificates (including verifying the KES period)
  • support for CBOR encoding in transaction build commands,
  • an option to output transaction bodies in ledger-compliant CDDL format,
  • an option to calculate the cost of executing a Plutus script,
  • incremental transaction signing.

It also includes a number of stability improvements, plus improvements to the performance of Plutus scripts.

Known Issues

To avoid increased synchronisation times, we recommended that Windows users DO NOT upgrade to node version 1.34.0. We recommend instead that they continue to run node 1.33.0. Future releases will address this issue which is specific to Windows.

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)
  • 12GB of RAM
  • 50GB of free storage
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
Supported roles
Platform Block Production Relay Client (Desktop)
Linux ✔️ ✔️ ✔️
Windows ✔️
MacOS ✔️
Downloads

Documentation

Changelogs

Node
Consensus
Ledger
Network
  • Add a new mini-protocol to query the local mempool. (#3404)
  • Stop the MUX in case of miniprotocol timeout. This can happen if a peer is demoted to cold, and could result in lingering miniprotocols in an unknown state if the peer is again promoted. (#3575, #3580)
  • Avoid ordering peers based upon peerid in block fetch. Ordering based on peerid would often result in all nodes choosing the same second, third choice peers etc. These are now based on a node-local random ordering. (#3535)
Cardano-cli
  • Add a prettier rendering of update proposals. (#3208)
  • Add support for CBOR-encoded blobs in the transaction build and transaction build-raw commands. (#3483)
  • Implement a leadership-schedule command. This can calculate a stake pool's leadership schedule for the current and following epoch. It requires access to the VRF signing key for that stake pool. (#3464, #3494)
    > cardano-cli query leadership-schedule \
       --testnet-magic 42 \
       --genesis example/shelley/genesis.json \
       --stake-pool-id  pool12t0y7agkqct89pf00eeytkvfjlquv76tjy27duannan9w63ckxv \
       --vrf-signing-key-file example/node-pool1/shelley/vrf.skey
       --current
    
       SlotNo                          UTC Time
       --------------------------------------------------------
       4073                   2021-12-29 17:26:54.998001755 UTC
       4126                   2021-12-29 17:27:00.298001755 UTC
       4206                   2021-12-29 17:27:08.298001755 UTC
       4256                   2021-12-29 17:27:13.298001755 UTC
       4309                   2021-12-29 17:27:18.598001755 UTC
       4376                   2021-12-29 17:27:25.298001755 UTC
       4423                   2021-12-29 17:27:29.998001755 UTC
       4433                   2021-12-29 17:27:30.998001755 UTC
    
  • The CLI now supports outputting transaction bodies in ledger-compliant CDDL in the transaction build and transaction build-raw commands. This is specified by using the --cddl-format flag. (#3505)
  • Implement a kes-period-info command in the CLI. This checks that your operational certificate is correct. It checks:
    • The counters match what is in the node's protocol state
    • The KES period in the operational certificate is correct (based on the current slot). (#3459, #3572, #3599)
    > cardano-cli query kes-period-info --testnet-magic 42  \
      --op-cert-file example/node-pool1/shelley/node.cert
    ✓ The operational certificate counter agrees with the node protocol state counter
    ✓ Operational certificate's kes period is within the correct KES period interval
    {
        "qKesNodeStateOperationalCertificateNumber": 6,
        "qKesCurrentKesPeriod": 404,
        "qKesOnDiskOperationalCertificateNumber": 6,
        "qKesRemainingSlotsInKesPeriod": 3760228,
        "qKesMaxKESEvolutions": 62,
        "qKesKesKeyExpiry": "2022-03-20T21:44:51Z",
        "qKesEndKesInterval": 434,
        "qKesStartKesInterval": 372,
        "qKesSlotsPerKesPeriod": 129600
    }
    
  • The CLI now displays collateral inputs in a nicer fashion. (#3463)
  • The transaction sign command now allows for incremental signing by providing an already signed transaction via --tx-file. This allows more easily adding multiple signatures to a transaction. (#3549)
  • The transaction build command now supports an option (--calculate-plutus-script-cost) to compute the cost for included scripts. (#3589)
    cardano-cli transaction build \
    --alonzo-era \
    --cardano-mode \
    --testnet-magic "$TESTNET_MAGIC" \
    --change-address "$utxoaddr" \
    --tx-in "$plutusutxotxin" \
    --tx-in-collateral "$txinCollateral" \
    --tx-out "$dummyaddress+10000000" \
    --tx-in-script-file "$plutusscriptinuse" \
    --tx-in-datum-file "$datumfilepath"  \
    --protocol-params-file "$WORK/pparams.json" \
    --tx-in-redeemer-file "$redeemerfilepath" \
    --calculate-plutus-script-cost "$WORK/create-datum-output.scriptcost"
    
    > cat $WORK/create-datum-output.scriptcost
    [
      {
          "executionUnits": {
              "memory": 1700,
              "steps": 476468
          },
          "lovelaceCost": 133,
          "scriptHash": "67f33146617a5e61936081db3b2117cbf59bd2123748f58ac9678656"
      }
    ]
    
Cardano-api
  • Expose lovelaceToTxOutValue. (#3381)
  • Implement two functions: currentEpochEligibleLeadershipSlots and nextEpochEligibleLeadershipSlots to get the leadership slots for the current/next epoch respectively. (#3464, #3494)
  • Add a capi library to support using the cardano node as a C library in other software. (#3501)
  • fromShelleyAddr now takes an explicit ShelleyBasedEra parameter to determine the era. The previous behaviour (with an implicit IsShelleyBasedEra constraint) can be obtained with fromShelleyAddrIsSbe. (#2253, #3606)
Plutus
  • Plutus script performance improvements
Deprecated features
Fixed issues
  • Fix some spelling errors in the CLI help text. (#3499)
  • Fix a spurious assertion failure that could be seen with regards to demoted hot peers. (#3588)

Sign off

Role Approval
Technical Lead ✔️
QA Engineer ✔️
Ops ✔️
Release Manager ✔️

Don't miss a new cardano-node release

NewReleases is sending notifications on new releases.