ethereum-optimism / op-geth

GNU Lesser General Public License v3.0
255 stars 653 forks source link

Merge upstream geth v1.13.9 into op-geth #273

Closed roberto-bayardo closed 2 months ago

roberto-bayardo commented 3 months ago

Description

This brings geth commits up to v1.13.9 into op-geth. The most notable change is the removal of the old simulated backend class and replacing it with a new one that rather unfortunately has more asynchrony in its behavior: If you call SendTransaction, then it is no longer guaranteed the transaction is in the "Pending" block at the point you call Commit(). This is a bit tricky to deal with during monorepo e2e testing (see in-progress monorepo PR linked below).

Tests

Additional context

Re: https://github.com/ethereum-optimism/protocol-quest/issues/186

Corresponding monorepo updates: https://github.com/ethereum-optimism/optimism/pull/9935

Some of this change was upstreamed here: https://github.com/ethereum/go-ethereum/pull/29316

Metadata

BlocksOnAChain commented 3 months ago

@roberto-bayardo - I added @op-geth-maintainers for a potential review, depending of their availability, so we can have more eyes on it and try to get those reviews sooner for you.

roberto-bayardo commented 3 months ago

Could we also update the version specified in forkdiff (fork.yaml). I do not believe that we need to modify the content for fork.yaml because it appeared to have very minimal changes

done

roberto-bayardo commented 2 months ago

@trianglesphere @sebastianst figured out a clean wait to get rid of the sleep() calls in the monorepo so I think this is good to go.

roberto-bayardo commented 2 months ago

apologies! It was a merge against upstream geth, but I think a later rebase against op-geth must have broken it. redoing this PR here: https://github.com/ethereum-optimism/op-geth/pull/284