Skip to content

Sync with master#8852

Merged
wurdum merged 177 commits into
feature/arbitrum-setupfrom
feature/arbitrum/sync-with-master
Jun 26, 2025
Merged

Sync with master#8852
wurdum merged 177 commits into
feature/arbitrum-setupfrom
feature/arbitrum/sync-with-master

Conversation

@wurdum

@wurdum wurdum commented Jun 24, 2025

Copy link
Copy Markdown
Contributor

Changes

Updates Arbitrum's branch with the latest changes from master.

asdacap and others added 30 commits May 10, 2025 13:36
* Move some method to pruning trie store

* Remove set

* Use raw trie store

* Snapsync to not use full trie store

* Further remove some code

* Create test

* Whitespace

* Update src/Nethermind/Nethermind.State.Test/PatriciaTreeTests.cs

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

* Update src/Nethermind/Nethermind.Trie/Pruning/RawScopedTrieStore.cs

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

* Whitespace

* Use a single trie store for state

* Move to factory function

* More constructor to test function

* Rename to Build

* Overridable world state to not inherit trie store

* Make it official then

* Remove some parameters out of IPruningStrategy

* TrackedPastKeyCountMemoryRatio to TrackPastKeys

* Fix build

* Fix benchmark build

* Fix test build

* Fix build

* Moved test factory to core test

* Added comment and test

* Seal triestore

* Address comment

* Fix build

* Fix build

* Fix build again?

---------

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>
* Reapply "Perf/parallel block downloader" (#8574)

This reverts commit b9a2a93.

* Fix aura not thread safe

* Fix validate suggested block cannot run out of order

* Fix test

* Fix test

* Whitespace

* Some extra log

* Update src/Nethermind/Nethermind.Consensus/Validators/BlockValidator.cs

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

* Update src/Nethermind/Nethermind.State/Proofs/WithdrawalTrie.cs

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

* Update src/Nethermind/Nethermind.Synchronization.Test/BlockDownloaderTests.cs

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

* Update src/Nethermind/Nethermind.Synchronization.Test/BlockDownloaderTests.cs

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

* Make sure only  one request at a time

* Fix build

* Remove comment

* Remove comment

* Check disposed

---------

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>
Co-authored-by: emlautarom1 <emlautarom1@users.noreply.github.com>
* Fix trie tests

* Fix build

* Whitespace

* Does this work?

* How about now?

* What if I copy it first

* Ok, how about nwo?

* Back to memory

* You know, if you could just reproduce locally, this would be faster.

* Screw it.
Co-authored-by: rubo <rubo@users.noreply.github.com>
* Remove `IMessageSerializationService.Register`

* Check banned registration

* Slight cleanup

* Fix build

* Whitespace

* Add more check
* Track CL calls directly

* Fix tests

* Add test

* Fix suggestions

* Remove class

* Update src/Nethermind/Nethermind.HealthChecks/ClHealthRequestsTracker.cs

Co-authored-by: Lautaro Emanuel <31224949+emlautarom1@users.noreply.github.com>

* Update HealthChecksPlugin.cs

---------

Co-authored-by: Lautaro Emanuel <31224949+emlautarom1@users.noreply.github.com>
* Remove upgradeable allocation

* Remove unused method

* Remove allocate best peer

* Slight cleanup
Replace cast with `as` operator
* Use console over TestContext in EthereumTests as they can be run from Test.Runner and not flushed for a long time

* whitespace
* Start

* support clef sign transaction in RPC

* fix

* also works with eth_sign

* format

* restore

* review comments

* eth_sign rpc bug fix

* fixed personal_sign

* fix

* revert

* sig fix

* format
* Enable p2p

* Improve startup logic

* PayloadByNumber protocol

* Peer manager

* Reverse peers

* Fix formatting

* Fix build

* Fix xml

* Move CL parameters to op config

* Use external ip

* Fix npe

* Lock in EL manager

* Fix formatting

* Simplify sync

* Small fixes

* Fix config description

* Add constants

* Update src/Nethermind/Nethermind.Optimism/IOptimismConfig.cs

Co-authored-by: Ruben Buniatyan <rubo@users.noreply.github.com>

* Add logging

* typo

* Fix return

* Remove return

* Update Libp2p

* Remove test feed

* Reuse sessions

* Improve logging

* Remove sessions

* Use LocalPeer sessions

* Shuffle peers

* Fix build

* Update parentHash

* Improve logging

* Log peer

* Update head while processing

* Fix missing payloads

* Head block

* Do not shuffle

* P2P Payload status

* Update libp2p

* Remove return

* Update src/Nethermind/Nethermind.Optimism/CL/ExecutionEngineManager.cs

Co-authored-by: Lautaro Emanuel <31224949+emlautarom1@users.noreply.github.com>

* Fix formatting

---------

Co-authored-by: Ruben Buniatyan <rubo@users.noreply.github.com>
Co-authored-by: Lautaro Emanuel <31224949+emlautarom1@users.noreply.github.com>
* Enable p2p

* Improve startup logic

* PayloadByNumber protocol

* Peer manager

* Reverse peers

* Fix formatting

* Fix build

* Fix xml

* Move CL parameters to op config

* Use external ip

* Fix npe

* Lock in EL manager

* Fix formatting

* Simplify sync

* Small fixes

* Fix config description

* Add constants

* Update src/Nethermind/Nethermind.Optimism/IOptimismConfig.cs

Co-authored-by: Ruben Buniatyan <rubo@users.noreply.github.com>

* Add logging

* typo

* Fix return

* Remove return

* Update Libp2p

* Remove test feed

* Reuse sessions

* Include L1 parameters for validation

* Add `eth_chainId`

* Initial `L1ConfigValidator`

* Validate L1 config on CL startup

* Rename parameters

* Fix license date

* Adjust interface summary

* Improve logging

* Remove sessions

* Add `ArgumentNullException.ThrowIfNull`

* Use LocalPeer sessions

* Shuffle peers

* Fix build

* Update parentHash

* Improve logging

* Log peer

* Update head while processing

* Run `superchain.py`

* Fix missing payloads

* Fix `eth_chainId` deserialization

* Only use `fullTxs = true`

* Empty commit

* Empty commit

---------

Co-authored-by: Nikita Meshcheriakov <root@nikitam.io>
Co-authored-by: Ruben Buniatyan <rubo@users.noreply.github.com>
* Report on issues with system contracts

* Externalise conditional logic; intrinsic gas = 0

* Handle deposit layout issues

* Fix more tests

* More tests

* Add system call

* More tests

* Tests

* Fix more

* Fix clique

* Fix more

* Add granular exceptions; separate type fo a system call

* Update tests

* Fix solution; remove redundant changes

* Use the same code
* Extract node record provider

* DiscV5 to DI

* DiscV4 to DI

* Consolidate the network storage initialization

* Allow more margin

* Override discovery db in test also

* Whitespace
* Check if state is available in debug trace calls

* Add GetFailureResult methods

* Fix formatting

* Set block state as always available in test stub

* Mock relevant methods in unit test stubs

* Set year in copyright text

* Simplify header searches in favor of finds

* Add TryGetHeader

* Expose Block-based interfaces in IGethStyleTracer

* Avoid re-decoding block RLP

* Fix formatting

* Refactor TryGet methods to return header/block

* Set block difficulty if null
Co-authored-by: kamilchodola <kamilchodola@users.noreply.github.com>
Co-authored-by: rubo <rubo@users.noreply.github.com>
* Remove SkipLocalsInit to avoid garbage in first bytes of hash

* Use Ben's ToHash implementation

* Improve test

Co-authored-by: Ben {chmark} Adams <thundercat@illyriad.co.uk>

---------

Co-authored-by: Ben {chmark} Adams <thundercat@illyriad.co.uk>
Co-authored-by: emlautarom1 <emlautarom1@users.noreply.github.com>
Co-authored-by: Ahmad Bitar <smartprogrammer@windowslive.comm>
* Fixed `Block.AccountChanges` not being disposed in some cases

* Code cleanup

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

---------

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>
benaadams and others added 8 commits June 22, 2025 22:25
* TransactionSubstate to readonly struct

* destory list

* ref struct

* Apply suggestions from code review

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>

---------

Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>
* Adjusted CL Block size - EIP 7934 

Adjusted CL Block size - EIP 7934 https://eips.ethereum.org/EIPS/eip-7934

* Update BlocksConfig.cs
…rchive.json (#8834)

* Initial plan for issue

* Remove AncientReceiptsBarrier and AncientBodiesBarrier from sepolia_archive.json and update test

Co-authored-by: MarekM25 <9356351+MarekM25@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: MarekM25 <9356351+MarekM25@users.noreply.github.com>
Co-authored-by: Marek Moraczyński <marekm2504@gmail.com>
* warmup evm

* Improve

* Format
…PoW history expiry (#8835)

* Initial plan for issue

* Initial plan for issue

Co-authored-by: MarekM25 <9356351+MarekM25@users.noreply.github.com>

* Update Sepolia AncientBarriers to 1450409 per EIP-3675 and update tests

Co-authored-by: MarekM25 <9356351+MarekM25@users.noreply.github.com>

* Remove unrelated dotnet-install.sh file

Co-authored-by: MarekM25 <9356351+MarekM25@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: MarekM25 <9356351+MarekM25@users.noreply.github.com>
@wurdum wurdum requested a review from rubo as a code owner June 24, 2025 14:41
@wurdum wurdum requested a review from a team June 24, 2025 14:41
* Add Eip7907 params

* Add constants

* Gas metering

* Set params

* Formatting

* Fix

* Format

* Osaka activation

* revert

* Try enabling tests

* Based on address

* Remove EvmState from interface

* Rename code sizes

* Move Div32Ceiling

* Remove codehash return

* Reduce changes

* Reduce changes

* Empty jumpdst
benaadams and others added 11 commits June 24, 2025 18:12
* Split SSTORE to two Opcodes

* Move trace out
* set V minus offset

* refactor auth list rpc

* Test for setcode RPC
* Remove RegisterEthRpcModule

* Remove more code

* Slight cleanup

* To primary constructor

* Add test

* Peerpool and subscription factory out of nethermind api

* Filter store and filter manager

* Slight cleanup

* Remove unnecessary code

* Make sure context aware rpc is not singleton

* Whitespace

* Fix test
* Fix test

* Fix on actual run

* Remove the test rpc module provider

* Whitespace
* Fix parity style tracer test in debug mode

* Whitespace

* Fix arraypool dispose

* Test for success

* Dont change unnecessary code
* Remove INethermindPlugin.GetSteps

* Whitespace

* Fix parallelization config
@wurdum wurdum merged commit dc00b97 into feature/arbitrum-setup Jun 26, 2025
62 checks passed
@wurdum wurdum deleted the feature/arbitrum/sync-with-master branch June 26, 2025 12:33
@wurdum wurdum restored the feature/arbitrum/sync-with-master branch June 26, 2025 12:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.