From d152fbf2af2224ab8faefee1f5542e3b92e9e3bf Mon Sep 17 00:00:00 2001 From: Simon Dudley Date: Fri, 23 Dec 2022 11:33:24 +1000 Subject: [PATCH] For TimestampSchedule (Shanghai) remove evmBuilder override but leave other mods in Signed-off-by: Simon Dudley --- .../consensus/merge/MergeProtocolSchedule.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/consensus/merge/src/main/java/org/hyperledger/besu/consensus/merge/MergeProtocolSchedule.java b/consensus/merge/src/main/java/org/hyperledger/besu/consensus/merge/MergeProtocolSchedule.java index 78d681de72e..ec2ee95f4df 100644 --- a/consensus/merge/src/main/java/org/hyperledger/besu/consensus/merge/MergeProtocolSchedule.java +++ b/consensus/merge/src/main/java/org/hyperledger/besu/consensus/merge/MergeProtocolSchedule.java @@ -69,9 +69,7 @@ public static TimestampSchedule createTimestamp( DEFAULT_CHAIN_ID, ProtocolSpecAdapters.create( config.getShanghaiTime().orElse(0), - (specBuilder) -> - MergeProtocolSchedule.applyMergeSpecificModifications( - specBuilder, config.getChainId())), + MergeProtocolSchedule::applyMergeSpecificModificationsForShanghai), privacyParameters, isRevertReasonEnabled, config.isQuorum(), @@ -79,6 +77,18 @@ public static TimestampSchedule createTimestamp( .createTimestampSchedule(); } + // TODO Withdrawals remove this as part of https://github.com/hyperledger/besu/issues/4788 + private static ProtocolSpecBuilder applyMergeSpecificModificationsForShanghai( + final ProtocolSpecBuilder specBuilder) { + + return specBuilder + .blockProcessorBuilder(MergeBlockProcessor::new) + .blockHeaderValidatorBuilder(MergeProtocolSchedule::getBlockHeaderValidator) + .blockReward(Wei.ZERO) + .difficultyCalculator((a, b, c) -> BigInteger.ZERO) + .skipZeroBlockRewards(true); + } + private static ProtocolSpecBuilder applyMergeSpecificModifications( final ProtocolSpecBuilder specBuilder, final Optional chainId) {