リリースノート - v0.203.0
v0.203.0
Section titled “v0.203.0”タイトル: 互換性を拡張し、検証を強化
バージョン: v0.203.0
このリリースでは、型付きクエリおよび会計 API を拡張し、デコードとハッシュ計算の信頼性を高め、証明書、アドレス、ヘッダー、署名、スクリプト用途全体の検証を強化しました。
-
改善 LocalStateQuery の DRep stake distribution 結果:
DRepStakeDistrEntryとDRepStakeDistrResultにより、CBOR wrapper と map の厳格な検証、重複拒否、canonical encoding、型付きクエリ結果を利用できます。raw CBOR 結果に必要だった追加の decode 処理は不要になりました。 -
確実化 非パイプライン BlockFetch の終了処理: shutdown によって開始済みの
GetBlockRangeリクエストが終了すると、BatchDoneFuncを必ず 1 回だけ呼び出します。 -
保持 未知の Byron address attribute: Unparsed の attribute が元のバイト列を保持し、データを失わずに round trip できるようになりました。
-
拡張 Go test matrix の status 名: status 名に Go のバージョン、プラットフォーム、アーキテクチャが含まれるため、結果を識別しやすくなりました。
-
安定化 32 ビットデコード: Genesis と LocalStateQuery のデコードが
GOARCH=386でも固定幅整数を安全に使用し、必要な exported field type も更新しました。 -
再計算 現在の CBOR に基づく LeiosHash: ハッシュがキャッシュされた状態に依存しなくなり、CBOR の変更後に古い値を返す問題と race を防ぎます。
-
重複排除 transaction info signatory:
txInfoSignatoriesに重複したエントリが含まれなくなりました。
⚠️ 破壊的変更と移行
Section titled “⚠️ 破壊的変更と移行”-
拡大 operational certificate と KES period の値: sequence number、KES period、検証入力が
uint32からuint64になりました。OpCertExtractorとValidateHeaderInputの利用側は型を更新する必要があります。 -
削除 Dijkstra のデコード時 transaction size limit: 固定の 16 KiB デコード制限を削除し、
max_tx_sizeの適用は UTxO 検証に委ねます。サイズ超過した Dijkstra transaction の分類は維持し、不正な component array のデコードには上限を設け、dijkstra.MaxTxSizeは利用できなくなりました。 -
デコード MIR reward delta の符号付き値: MIR delta が
*big.Intになり、負の delta に protocol version の検証を適用します。Rewardsmap の値もuint64から*big.Intに変わるため、値を読み書きする利用側は更新が必要です。 -
保持 pool reward-account credential type: encoding には canonical な 29 バイトの reward-account metadata が必要です。プログラムまたは JSON から作成した certificate は、
MarshalCBORの前にSetRewardAccountCredentialを呼び出す必要があります。 -
適用 Byron 以外の strict Ed25519 検証: Byron 以外の署名では strict な検証を行い、Byron では従来の permissive な検証を維持します。
-
拒否 null block header: header のデコードで null header を拒否します。制御された内部デコードでこの動作を明示的に必要とする場合は
SkipHeaderValidationを使用できます。 -
必須化 すべての script purpose の redeemer: minting、certifying、rewarding、voting、proposing、Dijkstra guarding で redeemer が必須になり、欠落した redeemer は検証に失敗します。
推奨ネットワーク互換性 ⚠️
Section titled “推奨ネットワーク互換性 ⚠️”| ネットワーク | 互換性 |
|---|---|
| mainnet | ⛔ |
| preprod-testnet | ✅ |
| preview-testnet | ✅ |
| musashi | ✅ |
リリース: v0.203.0
Docs authored by Doc Holiday