Release Notes - v0.204.2
v0.204.2
Section titled “v0.204.2”Title: Improve peer handling and protocol validation
Version: v0.204.2
Version 0.204.2 improves LocalStateQuery response handling, strengthens CBOR and Point validation, makes connection formatting safe for incomplete addresses, and prevents invalid transaction acknowledgements from advancing state.
💪 Improvements
Section titled “💪 Improvements”-
Expanded LocalStateQuery response handling: Applications can override the muxer segment read timeout with
ouroboros.WithMuxerSegmentReadTimeoutormuxer.NewWithSegmentReadTimeout; a value<= 0disables the deadline. They can also override the default 16 MB reassembly limit withProtocolConfig.MaxReadBufferSizeorlocalstatequery.WithMaxReadBufferSize. The implementation drains queued segments opportunistically, bounds buffer growth, observes shutdown, and reads current era data without a race. Trusted, slow peers can support long-running or large multi-segment replies without premature disconnects. -
Updated Plutus general constructor encoding: General constructors now use CBOR tag
102with[constructor_number, fields]. The decoder rejects legacy tag101and constructor numbers that exceed the platformuintrange while preserving compact alternatives. Applications must re-encode tag101constructors as tag102. -
Hardened Cardano Point validation: The decoder accepts only definite arrays containing zero or two elements. Two-element values must contain a
uint64slot and a hash of exactly 32 bytes. The decoder rejects trailing data, indefinite arrays, tagged values, and malformed input without changing the Point value when validation fails. -
Made connection formatting safe:
ConnectionId.String()now renders a missing local or remote address as<nil>while preserving thelocal<->remoteformat. A partially populated connection ID now formats without a panic. -
Prevented transaction acknowledgement inflation: The protocol rejects
ReplyTxIdsresponses that contain more identifiers than requested withprotocol.ErrProtocolViolationRequestExceededbefore it advancesackCount. Zero, exact, and partial replies remain supported.
Recommended Network Compatibility ⚠️
Section titled “Recommended Network Compatibility ⚠️”| Network | Compatible |
|---|---|
| mainnet | ⛔ |
| preprod-testnet | ✅ |
| preview-testnet | ✅ |
| musashi | ✅ |
Release: v0.204.2
Compare: v0.204.1…v0.204.2
Docs authored by Doc Holiday