Skip to content

0.20.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@v0d1ch v0d1ch released this 04 Feb 08:55
· 409 commits to master since this release
0.20.0

This release brings the new capability to Hydra node - adding funds while the Head is live - Incremental Commits 🎉
A part from this there are some bug fixes, new API filtering option and initial work to enable BlockFrost integration.

Warning

There are still several known issues, which are explained in the documentation.

Build artifacts

Hydra Scripts

Transaction IDs to be used as --hydra-scripts-tx-id when running hydra-node on common networks are also stored in the repository:

  • preview: b7b88533de303beefae2d8bb93fe1a1cd5e4fa3c4439c8198c83addfe79ecbdc,da1cc0eef366031e96323b6620f57bc166cf743c74ce76b6c3a02c8f634a7d20,6665f1dfdf9b9eb72a0dd6bb73e9e15567e188132b011e7cf6914c39907ac484
  • preprod: 5237b67923bf67e6691a09117c45fdc26c27911a8e2469d6a063a78da1c7c60a,5ed4032823e295b542d0cde0c5e531ca17c9834947400c05a50549607dbc3fa5,128af7ef4fd3fa8d1eda5cb1628aa2a1e8846d7685d91e0c6dae50b7d5f263b2
  • mainnet: 4f6db33d2e6940672e4a8061efd4dc999ac3e76c9d203961fabe1e15ed1aaf73,543d03edfbc54208338abc06c6f5b1bbd840b0169dffd010df8f2f54600ba1f9,8d833996cfe92b3bee45eb5fbef4eb7f8ed2e71772c396a3d0db5c21b3429476

See also networks.json

Compatible / tested with

  • cardano-node: 10.1.2
  • cardano-cli: 10.1.1.0
  • mithril: 2450.0

Upgrade instructions

This release contains breaking changes of the persisted data and on-chain scripts. This means that you'll need to apply the following procedure to upgrade all the nodes currently running a head:

  1. Close and fanout the head
  2. Stop hydra-node
  3. Remove persistent files stored in --persistence-dir, in particular server-output, acks and state
  4. Upgrade hydra-node to this version
  5. Upgrade cardano-node to compatible version (above)
  6. Start new hydra-node version with new --hydra-scripts-tx-id (above)
  7. Open a new head

Changelog

  • BETA hydra-node now supports incremental commits in beta mode. We would like to test out this feature
    with the community members building on Hydra. This feature means you can commit funds to a Head while it is running.

  • There is a new --deposit-deadline argument to hydra-node that determines the maximum time for the hydra-node to detect a deposit.
    After this time has passed users can recover a deposit in case it wasn't observed previously.

  • BREAKING hydra-node accepts multiple hydra-scripts-tx-id as a comma-seperated list, as the outcome of changes in the Hydra scripts publishing.

  • Tested with cardano-node 10.1.2 and cardano-cli 10.1.1.0.

  • BREAKING Rewrite of the commit script in aiken:

    • This makes abort and collectCom transactions more efficient and results
      in a new maximum number of head participants being 8.
    • Changes script hashes in hydra-plutus
  • BREAKING Rewrite of the initial script in aiken and update to Plutus V3:

    • This makes the initial script smaller by 1337 bytes
    • Changes script hashes in hydra-plutus
  • Fix the bug where commit endpoint drops withdraw redeemers #1643

  • BREAKING Change to SnapshotConfirmed and TxValid server outputs, as
    well as to persisted StateEvent format:

    • Snapshots now contain the full transactions in confirmed and field names changed.
    • Persisted StateChanged events containing a snapshot changed consequently
      and are not backward compatible.
    • TxValid only refers to the transaction by id.
    • Overall this results in transactions still to be submitted once per client,
      but requires signifanctly less book-keeping on the client-side.
  • Auto-debug and provide more information on PlutusFailure when validating transactions on L2 ledger. #1789

  • Bump docusaurus version. #1768

  • Add blockfrost support to hydra-chain-observer, to follow the chain via Blockfrost API. #1631

  • Fix bench-e2e single benchmarks and only use --output-directory to keep
    the whole benchmark state. #1693

  • Add inlineDatumRaw to transaction outputs on the hydra-node API. #1684

  • Use different versions of mithril depending on the network (Sanchonet/Preview: Unstable, Mainnet/Preproduction: 2450.0) #1743

  • New websocket URL parameter ?address=... to filter SnapshotConfirmed, TxValid and TxInvalid server outputs by address. #1739

  • Updated hydra-tui to handle incremental commits #1747.

New Contributors

Full Changelog: 0.19.0...0.20.0