github IntersectMBO/cardano-node 10.7.1

pre-release12 hours ago

Release Notes

Node version 10.7.1 is a minor update to the Cardano node that includes a numbers of fixes and improvements to the Plutus and Consensus layers, as well as to the tracing system. This version of the node addresses a number of performance issues that were found in node version 10.7.0.

For linux, liburing and snappy-c are new dependencies.

Known issues

Release Benchmarks

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 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 N/A
Site Reliability Engineer 🟢
Release Engineer 🟢
Legend
  • 🟢 - signed / agreed / supported
  • 🟥 - not agreed / unsupported

Changelogs

cardano-node
  • Bulk credentials handling was fixed (#6502)
cardano-tracer
  • Support for TLS encrypted HTTPS connections to endpoints. To use that, the config needs to provide a "tlsCertificate": {} object and set the optional field "epForceSSL": true on individual has* endpoints. For a detailed example, see cardano-tracer's Changelog.
  • Experimental: New (optional) hasTimeseries endpoint. By configuring this, cardano-tracer will maintain an internal timeseries store for all connected Nodes' metrics. The store can be queried via the /timeseries/query path, POSTing the query as plain UTF8 text. Query examples can be found in folder bench/cardano-timeseries-io/examples; the query language is heavily inspired by PromQL.
cardano-testnet
cardano-cli
cardano-api
cardano-rpc
Network
Consensus
  • Significantly improve mempool performance: transaction differences are cached the first time the transaction is validated, and re-used when revalidating the mempool on forging and syncing with the LedgerDB.
  • Fix directory management in LSM-trees snapshot conversion.
  • Ignore exceptions when deleting a snapshot.
Ledger
Plutus
  • Added ScriptContextBuilder test utility (PlutusLedgerApi.Test.ScriptContextBuilder) to plutus-ledger-api-testlib for constructing realistic ScriptContext values in tests using a composable builder pattern.
  • Improved the performance and testing of the flat library.
  • Improved the performance of writeBits.
  • Improved the uplc executable: it now supports taking contract blueprints as input (#7685), and configuring optimization options (#7682).
Tracing
  • Exposed some PrometheusSimple backend DoS protection parameters in the Node config (see example below). All of those fields are optional and will selectively override the hard-coded default.
  • The ChainDB.AddBlockEvent.SwitchedToAFork trace message now contains a "reason" field stating why a chain fork was chosen. Example messages in #6014 .
  • New rpc.request.* metrics denoting the timespan for evaluating gRPC methods.
  • Performance optimizations for evaluation of some metrics.

Example:

    "TracePrometheusSimpleRun": {
		"connCountGlobal": 20,
		"connCountPerHost": 8,
		"connPerSecond": 10.0,
		"connTimeout": 30
    }

Detailed Changelogs

Details

Package changelogs

Package Version Changelog
Win32-network 0.2.0.1 ChangeLog.md
acts-generic 0.1.1.0 CHANGELOG.md
base-deriving-via 0.1.0.2 CHANGELOG.md
basement 0.0.16
bech32 1.1.10 ChangeLog.md
bech32-th 1.1.10 ChangeLog.md
byron-spec-chain 1.0.1.1 CHANGELOG.md
byron-spec-ledger 1.1.0.1 CHANGELOG.md
cardano-addresses 4.0.2 ChangeLog.md
cardano-api 10.26.0.0 CHANGELOG.md
cardano-base 0.1.3.0 CHANGELOG.md
cardano-binary 1.8.0.0 CHANGELOG.md
cardano-cli 10.16.0.0 CHANGELOG.md
cardano-crypto 1.3.0
cardano-crypto-class 2.3.2.0 CHANGELOG.md
cardano-crypto-praos 2.2.2.0 CHANGELOG.md
cardano-crypto-wrapper 1.7.0.0 CHANGELOG.md
cardano-data 1.3.0.0 CHANGELOG.md
cardano-diffusion 1.0.0.0 CHANGELOG.md
cardano-git-rev 0.2.2.1
cardano-ledger-allegra 1.9.0.0 CHANGELOG.md
cardano-ledger-alonzo 1.15.0.1 CHANGELOG.md
cardano-ledger-alonzo-test 1.4.0.1 CHANGELOG.md
cardano-ledger-api 1.13.0.0 CHANGELOG.md
cardano-ledger-babbage 1.13.0.0 CHANGELOG.md
cardano-ledger-binary 1.8.1.0 CHANGELOG.md
cardano-ledger-byron 1.3.0.0 CHANGELOG.md
cardano-ledger-conway 1.22.0.0 CHANGELOG.md
cardano-ledger-core 1.20.0.0 CHANGELOG.md
cardano-ledger-dijkstra 0.2.0.1 CHANGELOG.md
cardano-ledger-mary 1.10.0.0 CHANGELOG.md
cardano-ledger-shelley 1.18.1.0 CHANGELOG.md
cardano-ledger-shelley-ma-test 1.4.0.2 CHANGELOG.md
cardano-ledger-shelley-test 1.8.0.0 CHANGELOG.md
cardano-lmdb 0.4.0.3 CHANGELOG.md
cardano-lmdb-simple 0.8.1.1 CHANGELOG.md
cardano-ping 0.10.2.0 CHANGELOG.md
cardano-prelude 0.2.2.0 ChangeLog.md
cardano-prelude-test 0.1.0.5
cardano-protocol-tpraos 1.5.0.0 CHANGELOG.md
cardano-rpc 10.2.0.0 CHANGELOG.md
cardano-slotting 0.2.1.0 CHANGELOG.md
cardano-strict-containers 0.1.6.0 CHANGELOG.md
contra-tracer 0.1.0.2
cuddle 1.1.1.0 CHANGELOG.md
diff-containers 1.3.0.0 CHANGELOG.md
digest 0.0.2.1.0.0.0.1 CHANGELOG.md
dmq-node 0.4.2.0 CHANGELOG.md
ekg-core 0.1.2.0
ekg-forward 1.2 CHANGELOG.md
ekg-json 0.1.1.1
ekg-wai 0.1.2.0
fingertree-rm 1.0.0.4 CHANGELOG.md
foundation 0.0.30
fs-api 0.4.0.0 CHANGELOG.md
fs-sim 0.4.1.0 CHANGELOG.md
heapwords 0.1.0.2 CHANGELOG.md
hedgehog 1.7 CHANGELOG.md
hedgehog-extras 0.10.1.0 CHANGELOG.md
io-classes 1.8.0.1 CHANGELOG.md
io-sim 1.8.0.1 CHANGELOG.md
iohk-monitoring 0.2.1.2
kes-agent 1.2.0.0 CHANGELOG.md
kes-agent-crypto 1.1.0.0 CHANGELOG.md
libsystemd-journal 1.4.6.0 Changelog.md
lobemo-backend-aggregation 0.1.0.3
lobemo-backend-ekg 0.2.0.1
lobemo-backend-monitoring 0.1.0.3
lobemo-backend-trace-forwarder 0.1.0.0
lobemo-scribe-systemd 0.1.0.0
measures 0.1.0.3 CHANGELOG.md
monoidal-synchronisation 0.1.0.7 CHANGELOG.md
network-mux 0.10.1.0 CHANGELOG.md
non-integral 1.0.0.0 CHANGELOG.md
optparse-applicative 0.19.0.0 CHANGELOG.md
optparse-applicative-fork 0.18.1.0 CHANGELOG.md
ouroboros-consensus 3.0.1.0 CHANGELOG.md
ouroboros-network 1.1.0.0 CHANGELOG.md
plutus-core 1.61.0.0 CHANGELOG.md
plutus-ledger-api 1.61.0.0 CHANGELOG.md
plutus-tx 1.61.0.0 CHANGELOG.md
prettyprinter-configurable 1.36.0.0
quickcheck-monoids 0.1.1.0 CHANGELOG.md
servant-server 0.20.3.0 CHANGELOG.md
small-steps 1.1.3.0 CHANGELOG.md
snappy-c 0.1.3 CHANGELOG.md
sop-extras 0.4.1.0 CHANGELOG.md
streaming 0.2.4.0 changelog.md
strict-checked-vars 0.2.1.0 CHANGELOG.md
strict-sop-core 0.1.3.0 CHANGELOG.md
trace-dispatcher 2.12.1 CHANGELOG.md
tracer-transformers 0.1.0.4
typed-protocols 1.2.0.0 CHANGELOG.md
validation-selective 0.2.0.0.0.0.0.0.1 CHANGELOG.md
vector-algorithms 0.9.1.0 CHANGELOG.md
vector-map 1.2.0.0 CHANGELOG.md

Don't miss a new cardano-node release

NewReleases is sending notifications on new releases.