This release makes the hydra-node noticeably faster: snapshot processing no longer re-evaluates Plutus scripts for transactions it already validated on receipt, cutting redundant script execution from the hot path and significantly increasing sustained in-head throughput — especially for script-heavy workloads.
It also adds native support for HD-wallet (PaymentExtendedKey) signing keys and node configuration via a YAML file.
A batch of resilience fixes rounds it out: event-log rotation no longer drops pending deposits, deposit observations are scoped to the current head, the Blockfrost backend got error handling and datum-decoding fixes, and a network-layer PersistentQueue deadlock was resolved.
Build artifacts
- 📦 Binaries for Linux x86_64 and MacOS ARM64
- 🐋 Docker image
Hydra Scripts
-
preview:4797dc5e1c497d7dce0e591e6322855c836f9eac6a253d1342e58778962931e7,68c0f7527e9c8ddb5f76cb3b020faa60a623cee6abaf74fb33334c803f906a97 -
preprod:b88df0c62f9734f0a6dba0faa7636ed51699cbe21706ce4a9736684daf418d67,40ab074125b4734939cd45a00b2cfe1b20d679b2a1c52d6472aca193f637a2bc -
mainnet:f72df33dbc1001c9e65e454e97558b34afe254a77d6fd29270ad45a2328e06aa,d7adaca74e78536dfa7beb5c550d97675513e9b004afb1d9aba479b8972cdd8f
See also networks.json
Compatible / tested with
cardano-node:11.0.1cardano-cli:11.0.0mithril:2617
What's Changed
- Use reapplyTx when processing already validated snapshot transactions by @v0d1ch in #2717
- Head state visualisation tool by @noonio in #2719
- Try and get some more nix caching by @noonio in #2720
- Benchmark comparision comment by @noonio in #2721
- Skip preprod with mithril by @noonio in #2723
- Use makeIsDataIndexed instead of unstableMakeIsData by @vrom911 in #2724
- No delaying on the increment modal by @noonio in #2726
- Add fuel key option to tui by @noonio in #2731
- Move spec back to hydra repo by @v0d1ch in #2733
- User-friendly hydra-node configuration via config file by @noonio in #2581
- Stop benchmark working state from leaking into published docs by @vrom911 in #2739
- Keep pre-rotated databases around, for people that want history by @vrom911 in #2748
- Don't observe unrelated Head deposits by @vrom911 in #2743
- Fix Blockfrost error handling so HTTP errors are retried instead of crashing by @v0d1ch in #2729
- Fix blockfrost datum decoding by @v0d1ch in #2754
- Fix VACUUM race between rotation and API history streaming by @noonio in #2755
- Fix PersistentQueue deadlock and add operational visibility by @vrom911 in #2742
- Fix nightly CI silently running zero tests, add more test coverage by @vrom911 in #2756
- Accept PaymentExtendedKey (HD wallet keys) in hydra-node by @v0d1ch in #2583
- Fix bug related to non-canonical inline datums in UTxO JSON round-trips by @v0d1ch in #2746
- Preserve pending deposits after restarting after rotation by @noonio in #2758
- Use peak instead of per-snapshot as now there are less snapshots by @noonio in #2760
- Parallelize hydra-node test suite by @noonio in #2761
Full Changelog: 2.2.0...2.3.0