Skip to content
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.0 #232

Merged
merged 90 commits into from
Aug 22, 2023
Merged

Merge v1.12.0 #232

merged 90 commits into from
Aug 22, 2023

Conversation

Tristan-Wilson
Copy link
Member

@Tristan-Wilson Tristan-Wilson commented Jun 10, 2023

This PR merges in the latest upstream release v1.12.0 into our fork of go-ethereum.

Please see commits and messages starting with 1468e5a to see conflicts resolved.

Corresponding Nitro PR: OffchainLabs/nitro#1691

holiman and others added 30 commits April 20, 2023 20:16
…27049)

* core/types, params: add blob transaction type, RLP encoded for now

* all: integrate Cancun (and timestamp based forks) into MakeSigner

* core/types: fix 2 back-and-forth type refactors

* core: fix review comment

* core/types: swap blob tx type id to 0x03
…27136)

* cmd/utils, node: switch to Pebble as the default db if none exists

* node: fall back to LevelDB on platforms not supporting Pebble

* core/rawdb, node: default to Pebble at the node level

* cmd/geth: fix some tests explicitly using leveldb

* ethdb/pebble: allow double closes, makes tests simpler
…7147)

* all: remove notion of trusted checkpoints in the post-merge world

* light: remove unused function

* eth/ethconfig, les: remove unused config option

* les: make linter happy

---------

Co-authored-by: Gary Rong <[email protected]>
* core, trie: rework trie database

* trie: fix comment
Co-authored-by: Exca-DK <[email protected]>
Co-authored-by: rjl493456442 <[email protected]>
* cmd/geth: fix test to not use explicit db

* cmd/geth: remove dao-test
This is a breaking GraphQL API change. All numeric values are now encoded as
hex strings. The motivation for this change is matching JSON-RPC outputs more
closely.

Numbers in query parameters are accepted as both decimal integers and hex strings.
eth: fix crash on querying nil finalized block
* trie: add node type common package

In trie/types package, a few node wrappers are defined, which will be used
in both trie package, trie/snap package, etc. Therefore, a standalone common
package is created to put these stuffs.

* trie: rename trie/types to trie/trienode
…g tags (#27114)

Regenerate receipt json code to remove omit empty. Previously, there was a discrepancy between the generated code and the source. 

---------

Co-authored-by: [email protected] <[email protected]>
Co-authored-by: Martin Holst Swende <[email protected]>
* light: use atomic type

* light: use a suitable name for the stopped switch in LightChain
Makes the `geth account ... ` commands usable even if a geth-process is already executing, since the account commands do not read the chaindata, it was not required for those to use the same locking mechanism. 

---
Signed-off-by: jsvisa <[email protected]>
Co-authored-by: Martin Holst Swende <[email protected]>
Co-authored-by: Sina Mahmoodi <[email protected]>
This changes TALKREQ message processing to run the handler on separate goroutine,
instead of running on the main discv5 dispatcher goroutine. It's better this way because
it allows the handler to perform blocking actions.

I'm also adding a new method TalkRequestToID here. The method allows implementing
a request flow where one node A sends TALKREQ to another node B, and node B later
sends a TALKREQ back. With TalkRequestToID, node B does not need the ENR of A to
send its request.
Adds an optional config parameter to eth_call which allows users to override block context fields (same functionality that was added to traceCall in #24871)

---------

Co-authored-by: Martin Holst Swende <[email protected]>
Fixes a discrepancy between source and generated files, which was introduced when ExcessDataGas was added in ethereum/go-ethereum#27046.
* ✏️ Fix typos

* ⏪️ Revert changes

* Update internal/web3ext/web3ext.go

---------

Co-authored-by: Martin Holst Swende <[email protected]>
…r (#26999)

This adds logic to prepend 'M' or 'E' to Solidity identifiers when they would
otherwise violate Go identifier naming rules.

Closes #26972

---------

Co-authored-by: Martin Holst Swende <[email protected]>
Co-authored-by: Sina Mahmoodi <[email protected]>
…sts (#27178)

* all: remove ethash pow, only retain shims needed for consensus and tests

* all: thank you linter

* all: disallow launching Geth in legacy PoW mode

* cmd/env/internal/t8ntool: remove dangling ethash flag
rpc: use atomic type
jsvisa and others added 8 commits May 24, 2023 14:45
* internal: replace noarg fmt.Errorf with errors.New

Signed-off-by: jsvisa <[email protected]>

* tests: replace noarg fmt.Errorf with errors.New

Signed-off-by: jsvisa <[email protected]>

* tests: go autoimport

Signed-off-by: jsvisa <[email protected]>

* tests: go autoimport

Signed-off-by: jsvisa <[email protected]>

---------

Signed-off-by: jsvisa <[email protected]>
* eth: replace noarg fmt.Errorf with errors.New

Signed-off-by: jsvisa <[email protected]>

* consensus: replace noarg fmt.Errorf with errors.New

Signed-off-by: jsvisa <[email protected]>

---------

Signed-off-by: jsvisa <[email protected]>
Main conflicts resolved:
- Resolved conflicts around addition of new parameters and return types
  to various functions, like types.MakeSigner, vm.NewEVM, IsShanghai
- Changed return type of new ethclient.Client() function to
  rpc.ClientInterface
- Added nil or zero returning 4844 methods to Arb Tx types, removed
  isFake() entirely since it's no longer used.
@Tristan-Wilson Tristan-Wilson changed the base branch from master to enable-lint-ci July 31, 2023 20:09
@cla-bot
Copy link

cla-bot bot commented Jul 31, 2023

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

The return value for skipAccountChecks() for the Arbitrum transactions
is the same for each transaction as isFake() previously returned.
@cla-bot
Copy link

cla-bot bot commented Jul 31, 2023

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

@cla-bot
Copy link

cla-bot bot commented Aug 9, 2023

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

@Tristan-Wilson Tristan-Wilson changed the base branch from enable-lint-ci to master August 9, 2023 23:49
@cla-bot
Copy link

cla-bot bot commented Aug 9, 2023

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

@Tristan-Wilson Tristan-Wilson marked this pull request as ready for review August 9, 2023 23:52
@cla-bot
Copy link

cla-bot bot commented Aug 10, 2023

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

@cla-bot
Copy link

cla-bot bot commented Aug 11, 2023

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

Copy link
Contributor

@ganeshvanahalli ganeshvanahalli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

IsShanghai: c.IsShanghai(timestamp, currentArbosVersion),
IsCancun: c.IsCancun(timestamp),
IsPrague: c.IsPrague(timestamp),
IsShanghai: c.IsShanghai(num, timestamp, currentArbosVersion),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

receipts := ReadReceipts(db, hash, number, config)
// The time can be zero since Arbitrum legacy receipts on Arbitrum One are pre-Cancun,
// and the time only affects which fork's signer is picked.
receipts := ReadReceipts(db, hash, number, 0, config)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, time can be set to 0 to initialize to a valid signer in types.Receipts.DeriveFields(...)

@cla-bot
Copy link

cla-bot bot commented Aug 22, 2023

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

@Tristan-Wilson Tristan-Wilson merged commit 9a31b62 into master Aug 22, 2023
2 checks passed
@Tristan-Wilson Tristan-Wilson deleted the merge-v1.12.0 branch August 22, 2023 20:31
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.