You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sorry, I am still not willing to fully throw Ethash and Clique out. 🫣 😆 What we can do though is to (easily) further separate.
For Block the consensus related methods should go into separate methods additionally taking in the block object as a first parameter being placed into:
consensus/ethash.ts
consensus/clique.ts
consensus/index.ts (for export as usual, all methods should also be available from root)
Following methods:
ethashCanonicalDifficulty()
_requireClique() (should also go out from Block and used with additional block parameter from the new location, but not being exposed to users)
cliqueSigHash()
cliqueIsEpochTransition()
cliqueExtraVanity()
cliqueExtraSeal()
NOT cliqueSealBlock() (separate topic, at least not for this round of work (bound to a constructor option, at least substantially more difficult to substitute/move/replace))
cliqueEpochTransitionSigners()
cliqueVerifySignature()
cliqueSigner()
I would cautiously think we can just keep the method names.
If there are method checks like if Block.ethashCanonicalDifficulty !== undefined in the code base these checks can be removed.
Bundle size for a block example before/after should be provided especially on this one since this should be pretty satisfactory! 😂
The text was updated successfully, but these errors were encountered:
Sorry, I am still not willing to fully throw Ethash and Clique out. 🫣 😆 What we can do though is to (easily) further separate.
For
Block
the consensus related methods should go into separate methods additionally taking in the block object as a first parameter being placed into:consensus/ethash.ts
consensus/clique.ts
consensus/index.ts
(for export as usual, all methods should also be available from root)Following methods:
ethashCanonicalDifficulty()
_requireClique()
(should also go out fromBlock
and used with additional block parameter from the new location, but not being exposed to users)cliqueSigHash()
cliqueIsEpochTransition()
cliqueExtraVanity()
cliqueExtraSeal()
cliqueSealBlock()
(separate topic, at least not for this round of work (bound to a constructor option, at least substantially more difficult to substitute/move/replace))cliqueEpochTransitionSigners()
cliqueVerifySignature()
cliqueSigner()
I would cautiously think we can just keep the method names.
If there are method checks like
if Block.ethashCanonicalDifficulty !== undefined
in the code base these checks can be removed.Bundle size for a block example before/after should be provided especially on this one since this should be pretty satisfactory! 😂
The text was updated successfully, but these errors were encountered: