decoupled parent block header from block creators
optionalized some fields of ProtocolSchedule constructor, which will allow us to reduce number of constructors later.
Refactored JsonBlockImporterTest so it can provide a BesuComponent
ProtocolScheduleBuilder optionalizes the default chainid
Blocks SubCommand is now Dagger aware
Creates but rarely uses ProtocolSpec and ProtocolSchedule modules. Deeper adoption pending.
Adds a Coinbase module with fixed values for use in testing.
Introduces an EthereumCoreComponent, to be used as a subcomponent of BesuComponent in the future.
Introduces a MiningParameters module with common static values used by tests. Removes MiningParameters static constructor.
---------
Signed-off-by: Justin Florentine <justin+github@florentine.us>
Signed-off-by: jflo <justin+github@florentine.us>
* Move EOF to the Osaka Fork
* Ensure Osaka activations are working
* Remove CancunEOF and PragueEOF forks
* Move EOF tools to default to Osaka
Signed-off-by: Danno Ferrin <danno@numisight.com>
* remove eof tests that fail only because of fork
Signed-off-by: Danno Ferrin <danno@numisight.com>
* Restore CancunEOF
* Update unit tests to use "Cancun" as pre-eof fork
* Make PC in trace zeroed to start of code section 0
* Update extcall to consider precompiles warm
* Add stack checking to CALLF operation
Signed-off-by: Danno Ferrin <danno@numisight.com>
---------
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Updates MetricsOptions to implement CLIOptions, and to contain its unstable options.
---------
Signed-off-by: Justin Florentine <justin+github@florentine.us>
Implemented support for emptyBlockPeriodSeconds in QBFT (Issue #3810)
Introduces experimental xemptyblockperiodseconds genesis config option for producing empty blocks at a specific interval independently of the value of the existing blockperiodseconds setting.
https://github.com/hyperledger/besu/issues/3810
---------
Signed-off-by: Antonio Mota <antonio.mota@citi.com>
Signed-off-by: amsmota <amsmota@gmail.com>
* Dev mode for short BFT block periods
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
* Refactoring
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
* Fix comment
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
* Refactor to make BFT block milliseconds an experimental QBFT config option
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
* Update Json BFT config options
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
---------
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
* Include Commit-Hash in manifests
* Add commit method in BesuInfo
* Use 8 character hash in EngineGetClientVersionV1 and revert calculateVersion back to original spec
Signed-off-by: Matilda Clerke <matilda.clerke@consensys.net>
Co-authored-by: garyschulte <garyschulte@gmail.com>
Add Genesis ("CancunEOFTime") and reference test ("CancunEOF") support
for a temporary Cancun+EOF fork, in anticipation of potential devnets.
Signed-off-by: Danno Ferrin <danno@numisight.com>
A complete and up to date implementation of EIP-7692 EOF v.1. For genesis
file activation use "PragueEOFTime", for references tests it activates as
part of Prague.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Promote option: create --bonsai-limit-trie-logs-enabled as alias of --Xbonsai-limit-trie-logs-enabled and unhide.
Also bonsai-trie-logs-pruning-window-size.
Remove --bonsai-historical-block-limit=512 from minimalist_staker profile so it inherits the default which is the same value
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Upgrade spotless to 1.22.0 and reformat.
This is required for Java21 support.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
* add dns address for holesky
Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
* remove typo
Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
---------
Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Move Besu custom error-prone checks into its own repository and use it as an external dependency. This allows to move to a newer version of Google errorprone checks as well while cleaning up build.gradle file.
Key changes resulted due to this change:
* String toLowerCase and toUpperCase to use Locale.ROOT as argument
* Use interface such as List,Map or NavigatableMap instead of concrete class where appropriate.
* Simplify StringBuilder to plain String
* Suppress warnings where appropriate.
-----
Signed-off-by: Usman Saleem <usman@usmans.info>
Support clique transitions for createemptyblocks boolean
---------
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Jason Frame <jason.frame@consensys.net>
Add BFT-style transitions to Clique, modelled with ForksSchedule<CliqueConfigOptions>
Add ability to transition the blockperiodseconds config.
---------
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Jason Frame <jason.frame@consensys.net>
* test each profile
* removed duplicated line
* use non-deprecated name for sync mode
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
---------
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Wire through configuration for the Prague fork, including speculative
PragueGasCalculator, precompiles, genesis options, and implied
forks in GenesisState.
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
* Set ENR tree for DNS discovery for ETC mainnet network
Signed-off-by: Diego López León <dieguitoll@gmail.com>
* Set activation block number for ECIP-1109 on ETC mainnet
Signed-off-by: Diego López León <dieguitoll@gmail.com>
---------
Signed-off-by: Diego López León <dieguitoll@gmail.com>
* updates static integration test so txs are committed to using mainnet trusted setup
* new static vectors for precompile checks
* moves trusted setup to main
---------
Signed-off-by: Justin Florentine <justin+github@florentine.us>
* Add 23.10.2 section to changelog
Signed-off-by: Diego López León <dieguitoll@gmail.com>
* Set ENR tree for DNS discovery for Mordor network
Signed-off-by: Diego López León <dieguitoll@gmail.com>
* Add ECIP-1109: 'Spiral' network upgrade support
Signed-off-by: Diego López León <dieguitoll@gmail.com>
---------
Signed-off-by: Diego López León <dieguitoll@gmail.com>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
* Add Holešky testnet network name
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
* CHANGELOG
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
* Add a fake KZG setup since Holesky define Cancun as future fork
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
* Tear down KZG trusted setup after each test
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
* Fix test
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
* Prevent another trusted setup already loaded error during tests
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
---------
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>