wrap kzgs/proofs/blobs fields as BlobsBundle#5562
Conversation
Less type conversion / copying by keeping the `BlobsBundle` together.
| forkyBlck is capella.BeaconBlock: | ||
| Opt.none(seq[BlobSidecar]) | ||
| else: | ||
| static: doAssert "Unknown BeaconBlock type" |
There was a problem hiding this comment.
Switching static: doAssert to Opt.none means that it won't trigger automatically anymore when the E-fork is added, but will incorrectly and silently use the pre-Deneb/sidecar version.
Better to find out about missing functionality at compile-time.
There was a problem hiding this comment.
It will take the Deneb version, not the none version (consensusFork >= ConsensusFork.Deneb), and will compile-time fail if no longer compatible
There was a problem hiding this comment.
The other one will compile-time break on Electra because DenebBlockContents requires a Deneb block, while the generated code will try to put an Electra block into it.
This instance here will be fine with Electra as well (using the blob logic from deneb)
Less type conversion / copying by keeping the
BlobsBundletogether.