-
Notifications
You must be signed in to change notification settings - Fork 107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge v1.12.1 #258
Merge v1.12.1 #258
Conversation
* core: replace noarg fmt.Errorf with errors.New Signed-off-by: jsvisa <[email protected]> * console: replace noarg fmt.Errorf with errors.New Signed-off-by: jsvisa <[email protected]> * core: go autoimport Signed-off-by: jsvisa <[email protected]> * core: dry Signed-off-by: jsvisa <[email protected]> --------- Signed-off-by: jsvisa <[email protected]>
* accounts: replace noarg fmt.Errorf with errors.New Signed-off-by: jsvisa <[email protected]> * accounts: go autoimport Signed-off-by: jsvisa <[email protected]> --------- Signed-off-by: jsvisa <[email protected]>
This change implements async log retrievals via feeding logs in channels, instead of returning slices. This is a first step to implement #15063. --------- Signed-off-by: jsvisa <[email protected]> Co-authored-by: Sina Mahmoodi <[email protected]> Co-authored-by: Martin Holst Swende <[email protected]> Co-authored-by: Sina Mahmoodi <[email protected]>
RPC methods `eth_getHeaderBy*` returned a size value which was meant for internal processes. Please instead use `size` field returned by `eth_getBlockBy*` if you're interested in the RLP encoded storage size of the block. Signed-off-by: jsvisa <[email protected]>
This change splits up the multiple API functions / namespaces currently defined in the eth package into different per-namespace files.
Signed-off-by: jsvisa <[email protected]> Co-authored-by: Sina Mahmoodi <[email protected]>
eth: make StorageRangeAt take a block hash or number Co-authored-by: Martin Holst Swende <[email protected]> Co-authored-by: Sina Mahmoodi <[email protected]>
This is a minor optimization/refactoring of Feed. --------- Co-authored-by: Felix Lange <[email protected]>
…mplementation (#27310) Deserialize hex keys early to shortcut on invalid input, and re-use the account storageTrie for each proof for each proof in the account, preventing repeated deep-copying of the trie. Closes #27308 -------- Co-authored-by: Martin Holst Swende <[email protected]> Co-authored-by: Marius van der Wijden <[email protected]>
Drop the notions of uncles, and disables activities while syncing - Disable activities (e.g. generate pending state) while node is syncing, - Disable empty block submission (but empty block is still kept for payload building), - Drop uncle notion since (ethash is already deprecated)
go.mod:golang upgrade
* p2p/discover: remove ReadRandomNodes Even though it's public, this method is not callable by code outside of package p2p/discover because one can't get a valid instance of Table. * p2p/discover: add Table.Nodes * p2p/discover: make Table settings configurable In unit tests and externally developed cmd/devp2p test runs, it can be useful to tune the timer intervals used by Table.
Continuing with a series of PRs to make the Trie interface more generic, this PR moves the RLP encoding of storage slots inside the StateTrie and light.Trie implementations, as other types of tries don't use RLP.
This changes the journal logic to mark the state object dirty immediately when it is reset. We're mostly adding this change to appease the fuzzer. Marking it dirty immediately makes no difference in practice because accounts will always be modified by EVM right after creation.
…(#27397) * eth/downloader: drop beacon head updates if the syncer is restarting * eth/donwloader: v2 of the goroutine spike preventer
* core/state: remove cached snap data if reset occurs * core/state: address comment from peter * core/state: skip revert in case data is nil
* core: crypto: implement BLOBHASH and pointEval precompile * core: crypto: fixed nitpicks, moved precompile return value * core/vm: fix review comments
… (#27323) * core/state/snapshot, core/types, eth: move account definition to type * core, eth: revert snapshot Account API change
* cmd/evm: make evm blocktest output logs if so instructed * Apply suggestions from code review Co-authored-by: Marius van der Wijden <[email protected]> --------- Co-authored-by: Marius van der Wijden <[email protected]>
This fix a minor implementation issue with the newly introduced isGapped function and it is described in ticket: ethereum/go-ethereum#27401
Fixed conflict around block number arg added to addStateVerify upstream, while we had changed code surrounding a call to it on master.
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
Co-authored-by: Martin Holst Swende <[email protected]> (cherry picked from commit f56ee7d)
…e) (#27992) Signed-off-by: jsvisa <[email protected]> Co-authored-by: Jared Wasinger <[email protected]> (cherry picked from commit cde462c)
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
Conflicts: rpc/handler.go In master we made more changes to our batch limit handling code that had already been reverted in merge-v1.12.1 because we are using upstream geth's batch limiting code instead, so we resolve the conflicts in this file by going with what was already on merge-v1.12.1.
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
statedb must now be recreated after Commit is called on it, see ethereum/go-ethereum#27428
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
Conflicts: core/txpool/txpool.go We added max code size to ChainConfig on master (#255) and this conflicted with upstream changes to refactoring txpool. Resolved by putting the check in ValidateTransaction in the file it was moved to.
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
…x-update fastcache fix update for v.1.12.1
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
Fix conflicts between adding apiFilter and rpcEndpointConfig.
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
initial
arbitrum/export.go
Outdated
@@ -12,7 +12,7 @@ import ( | |||
type TransactionArgs = ethapi.TransactionArgs | |||
|
|||
func EstimateGas(ctx context.Context, b ethapi.Backend, args TransactionArgs, blockNrOrHash rpc.BlockNumberOrHash, gasCap uint64) (hexutil.Uint64, error) { | |||
return ethapi.DoEstimateGas(ctx, b, args, blockNrOrHash, gasCap) | |||
return ethapi.DoEstimateGas(ctx, b, args, blockNrOrHash, nil, gasCap) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we'll want to also get the overrides *StateOverride argument and pass it to DoEstimateGas, just like the EstimateGas func in BlockChainAPI
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tiny comments. great job on the merge commits
rlp.Encode(w, data) | ||
default: | ||
w.WriteByte(r.Type) | ||
// Arbitrum: same as above, but this should help prevent future merge conflicts, | ||
// by keeping above case statement the same. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A thought: maybe add a case with all arbitrum types that will do rlp.Encode, and add a default that does nothing (including the original comment)?
I think it will be clearer / easier to merge future geth changes, but require us to remember updating new Arbitrum types
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
We require contributors to sign our Contributor License Agreement. In order for us to review and merge your code, please sign the linked documents below to get yourself added. https://na3.docusign.net/Member/PowerFormSigning.aspx?PowerFormId=b15c81cc-b5ea-42a6-9107-3992526f2898&env=na3&acct=6e152afc-6284-44af-a4c1-d8ef291db402&v=2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Merge upstream geth's v1.12.1 release into our geth fork: https://github.com/ethereum/go-ethereum/releases/tag/v1.12.1
Merges were done with my gradual merging script to create a merge commit for the first conflict that is found: https://github.com/Tristan-Wilson/MyScripts/blob/main/bin/merge-helper. This makes for more merge commits but hopefully each one is easier to review.
Companion nitro PR: OffchainLabs/nitro#1903
Testing done
geth and nitro tests pass.