Release Notes - v0.204.3
v0.204.3
Section titled “v0.204.3”Title: Align Dijkstra encoding and honor leadership ranges
Version: v0.204.3
Version 0.204.3 aligns Dijkstra block and protocol parameter encoding with the Leios prototype layout while making leadership searches honor caller-defined ranges, including large ranges and prompt cancellation.
💪 Improvements
Section titled “💪 Improvements”-
Improved Dijkstra Leios compatibility: Dijkstra block bodies now emit the Leios prototype 2026w36 three element
block_bodylayout, with eachblock_transactionencoded inline as four elements and a required trailingis_validflag. Decoders accept both this layout and legacy four element bodies, translate legacy invalid transaction indexes into per transactionTxIsValidvalues, and preserve validated indexes. Dijkstra protocol parameter decoding accepts 35 field legacy and 46 field current arrays, rejects unsupported or indefinite arrays, and writes updates through CBOR map keys 38–48. Dijkstra genesis data includes Leios fields and mapsPlutusV4CostModeltoCostModels[3]. -
Expanded leadership range searches:
FindNextSlotLeadershipContextnow searches the caller’s full inclusive range, so large ranges no longer fail at one million slots. Per slot context cancellation returnscontext.Canceled, while invalid range checks and overflow safe maximum slot termination remain.
⚠️ Breaking changes and migration
Section titled “⚠️ Breaking changes and migration”-
Updated Dijkstra block body consumers: Consumers that accept only the previous encoding must update their decoders before processing newly marshaled blocks.
-
Removed
consensus.MaxLeadershipSearchSlots: Code that references this exported constant must replace that reference with the caller supplied range.
Recommended Network Compatibility ⚠️
Section titled “Recommended Network Compatibility ⚠️”| Network | Compatible |
|---|---|
| mainnet | ⛔ |
| preprod-testnet | ✅ |
| preview-testnet | ✅ |
| musashi | ✅ |
Release: v0.204.3
Compare: v0.204.2…v0.204.3
Docs authored by Doc Holiday