Release Notes - v0.205.3
v0.205.3
Section titled “v0.205.3”Title: Improve consensus selection, decoding controls, and query efficiency
Version: v0.205.3
This release makes mixed candidate selection deterministic, adds configurable CBOR nesting limits, updates the Plutigo dependency, and caches successful current-era queries during an acquired snapshot.
✨ New Features
Section titled “✨ New Features”- Configured CBOR nesting limits:
cbor.MaxNestedLevelsandcbor.MaxUntrustedNestedLevelsare now package variables with a default of16384. Set both values before the firstDecodecall because decoder modes cache lazily;ParseDiagnosticalso enforces the configuredMaxNestedLevelsvalue.
🐛 Bug Fixes
Section titled “🐛 Bug Fixes”-
Improved consensus candidate selection:
PraosChainSelectornow compares every candidate on one scale selected byGenesisWindowSlots. Configured selectors use block counts within the window and project legacyChainTip.Densityonto that window, saturating atuint64limits; unconfigured selectors use normalized legacy density. Mixed candidate selection remains deterministic regardless of arrival order, includingNaNanduint64boundary cases. The selector is copyable again forgo vet, and exported comments accurately describe the API. -
Optimized current era queries: Successful
LocalStateQuery.GetCurrentEraresults now cache for the acquired snapshot. Releasing or reacquiring invalidates the cache, failed reacquisition and failed queries do not populate it, and calls after shutdown returnErrProtocolShuttingDowneven when a cached result exists.
Additional Changes
Section titled “Additional Changes”- Updated Plutigo dependency: The root module and every example module now use
github.com/blinklabs-io/plutigov0.7.1, with synchronized checksums.
Release: v0.205.3
Compare: v0.205.2…v0.205.3
Docs authored by Doc Holiday