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.13.5 #302

Merged
merged 64 commits into from
Apr 17, 2024
Merged

Merge v1.13.5 #302

merged 64 commits into from
Apr 17, 2024

Commits on Oct 17, 2023

  1. Configuration menu
    Copy the full SHA
    aeb0abf View commit details
    Browse the repository at this point in the history
  2. core, trie, eth: refactor stacktrie constructor (#28350)

    This change enhances the stacktrie constructor by introducing an option struct. It also simplifies the `Hash` and `Commit` operations, getting rid of the special handling round root node.
    rjl493456442 authored Oct 17, 2023
    Configuration menu
    Copy the full SHA
    1b1611b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1f11d2d View commit details
    Browse the repository at this point in the history
  4. internal/ethapi, accounts/abi/bind: use errors.Is for error compari…

    …son (#28348)
    
    
    Co-authored-by: lightclient <[email protected]>
    bnovil and lightclient authored Oct 17, 2023
    Configuration menu
    Copy the full SHA
    f62502e View commit details
    Browse the repository at this point in the history
  5. api/bind: add CallOpts.BlockHash to allow calling contracts at a spec…

    …ific block hash (#28084)
    
    * api/bind: Add CallOpts.BlockHash to allow calling contracts at a specific block hash.
    
    * ethclient: Add BalanceAtHash, NonceAtHash and StorageAtHash functions
    ajsutton authored Oct 17, 2023
    Configuration menu
    Copy the full SHA
    b85c860 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    20d5256 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d782dc2 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    da55b23 View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2023

  1. tests/fuzzers: update fuzzers to be based on go-native fuzzing (#28352)

    This change modifies the fuzzers to use the native golang fuzzing framework instead of go-fuzz
    MariusVanDerWijden authored Oct 18, 2023
    Configuration menu
    Copy the full SHA
    d10a2f6 View commit details
    Browse the repository at this point in the history

Commits on Oct 19, 2023

  1. Configuration menu
    Copy the full SHA
    ec1a050 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4d3c0d4 View commit details
    Browse the repository at this point in the history
  3. crypto/blake2b: put architecture-dependent features behind build-tag …

    …(#28381)
    
    This change to fixes a compilation-flaw on master, by putting architecture-specific functions behind corresponding build tags.
    MariusVanDerWijden authored Oct 19, 2023
    Configuration menu
    Copy the full SHA
    cd29535 View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2023

  1. core/state, tests: fix memory leak via fastcache (#28387)

    This change fixes a memory leak, when running either state-tests or blockchain-tests, we allocate a `1MB` fastcache during snapshot generation. `fastcache` is a bit special, and requires a `Reset()` (it has it's own memory allocator). 
    
    The `1MB` was hidden [here](https://github.com/ethereum/go-ethereum/blob/master/tests/state_test_util.go#L333) and [here](https://github.com/ethereum/go-ethereum/blob/master/tests/block_test_util.go#L146) respectively.
    holiman authored Oct 20, 2023
    Configuration menu
    Copy the full SHA
    c1d5a01 View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2023

  1. crypto/kzg4844: use the new trusted setup file and format (#28383)

    Changes the trusted_setup to the one created during the kzg-ceremony. The trusted setup file can be found in the consensus specs: https://github.com/ethereum/consensus-specs/blob/dev/presets/mainnet/trusted_setups/trusted_setup_4096.json
    ---------
    
    Co-authored-by: Marius van der Wijden <[email protected]>
    kevaundray and MariusVanDerWijden authored Oct 22, 2023
    Configuration menu
    Copy the full SHA
    a6a0ae4 View commit details
    Browse the repository at this point in the history
  2. event: fix Resubscribe deadlock when unsubscribing after inner sub en…

    …ds (#28359)
    
    A goroutine is used to manage the lifetime of subscriptions managed by
    resubscriptions. When the subscription ends with no error, the resub
    goroutine ends as well. However, the resub goroutine needs to live
    long enough to read from the unsub channel. Otheriwse, an Unsubscribe
    call deadlocks when writing to the unsub channel.
    
    This is fixed by adding a buffer to the unsub channel.
    Inphi authored Oct 22, 2023
    Configuration menu
    Copy the full SHA
    ffc6a0f View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2023

  1. Configuration menu
    Copy the full SHA
    6c69821 View commit details
    Browse the repository at this point in the history
  2. ethstats: fix bug in block reporting (#28398)

    Fixes a bug where the ethstats omits to report full block contents. This bug was a side-effect of ethereum/go-ethereum#26777,  where `CurrentBlock` was changed to return a header instead of a block, leading to a failed type assertion.
    kaliubuntu0206 authored Oct 23, 2023
    Configuration menu
    Copy the full SHA
    54f35c6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    062598b View commit details
    Browse the repository at this point in the history
  4. trie/triedb/pathdb, core/rawdb: enhance error message in freezer (#28…

    …198)
    
    This PR adds more error message for debugging purpose.
    rjl493456442 authored Oct 23, 2023
    Configuration menu
    Copy the full SHA
    3853f50 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    43e6a3c View commit details
    Browse the repository at this point in the history
  6. core, eth, trie: filter out boundary nodes and remove dangling nodes …

    …in stacktrie (#28327)
    
    * core, eth, trie: filter out boundary nodes in stacktrie
    
    * eth/protocol/snap: add comments
    
    * Update trie/stacktrie.go
    
    Co-authored-by: Martin Holst Swende <[email protected]>
    
    * eth, trie: remove onBoundary callback
    
    * eth/protocols/snap: keep complete boundary nodes
    
    * eth/protocols/snap: skip healing if the storage trie is already complete
    
    * eth, trie: add more metrics
    
    * eth, trie: address comment
    
    ---------
    
    Co-authored-by: Martin Holst Swende <[email protected]>
    rjl493456442 and holiman authored Oct 23, 2023
    Configuration menu
    Copy the full SHA
    ab04aeb View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a8617c6 View commit details
    Browse the repository at this point in the history

Commits on Oct 25, 2023

  1. cmd/evm: make t8ntool handle transaction decoding errors better (#28397)

    This change closes ethereum/go-ethereum#27730 . By using an iterator instead of a slice of transactions, we can better handle the case when an individual transaction (within an otherwise well-formed RLP-list) cannot be decoded.
    holiman authored Oct 25, 2023
    Configuration menu
    Copy the full SHA
    300df87 View commit details
    Browse the repository at this point in the history
  2. trie: use explicit errors in stacktrie (instead of panic) (#28361)

    This PR removes panics from stacktrie (mostly), and makes the Update return errors instead. While adding tests for this, I also found that one case of possible corruption was not caught, which is now fixed.
    holiman authored Oct 25, 2023
    Configuration menu
    Copy the full SHA
    96b7503 View commit details
    Browse the repository at this point in the history
  3. graphql: logs return error if from block > to (#28412)

    As per discussion in ethereum/execution-apis#475
    
    Signed-off-by: jsvisa <[email protected]>
    jsvisa authored Oct 25, 2023
    Configuration menu
    Copy the full SHA
    f7b62e5 View commit details
    Browse the repository at this point in the history
  4. rpc: use correct stringer-method for serializing BlockNumberOrHash (#…

    …28358)
    
    The String() version of BlockNumberOrHash uses decimal for all block numbers, including negative ones used to indicate labels. Switch to using BlockNumber.String() which encodes it correctly for use in the JSON-RPC API.
    ajsutton authored Oct 25, 2023
    Configuration menu
    Copy the full SHA
    d8c6ae0 View commit details
    Browse the repository at this point in the history
  5. cmd/geth: test for logging-output (#28373)

    This PR is a bit in preparation for the slog work in #28187 .
    
    Our current test re logging mostly test the internals, but we have no real end-to-end test of the logging output. This PR introduces a simple reexec-based log tester. This also relies upon a special mode in geth, which can be made to eject a set of predefined log messages (only available if the build-tag `integrationtests` is used
    
    e.g. go run --tags=integrationtests ./cmd/geth --log.format terminal logtest
    
    While working on this, I also noticed a quirk in the setup: when geth was configured to use a file output, then two separate handlers were used (one handler for the file, one handler for the console). Using two separate handlers means that two formatters are used, thus the formatting of any/all records happened twice. This PR changes the mechanism to use two separate io.Writers instead, which is both more optimal and fixes a bug which occurs due to a global statefulness in the formatter.
    holiman authored Oct 25, 2023
    Configuration menu
    Copy the full SHA
    58ae1df View commit details
    Browse the repository at this point in the history

Commits on Oct 26, 2023

  1. graphql: fix an issue of nil pointer panic (#28416)

    Signed-off-by: jsvisa <[email protected]>
    jsvisa authored Oct 26, 2023
    Configuration menu
    Copy the full SHA
    abe3fca View commit details
    Browse the repository at this point in the history

Commits on Oct 27, 2023

  1. core, cmd/geth: add --override.* flags to geth init (#28407)

    * core, cmd/geth: add --override.* flags to geth init
    
    * also apply overrides before genesis commit with new block
    
    * review feedback
    gballet authored Oct 27, 2023
    Configuration menu
    Copy the full SHA
    4cbca51 View commit details
    Browse the repository at this point in the history
  2. graphql: always set content-type to application/json (#28417)

    ---------
    
    Signed-off-by: jsvisa <[email protected]>
    jsvisa authored Oct 27, 2023
    Configuration menu
    Copy the full SHA
    2d7dba0 View commit details
    Browse the repository at this point in the history
  3. all: make vendored copy of reexec (#28382)

    a little copying is better than a little dependency
    
    -- go proverb
    
    We have this dependency on docker, a.k.a moby: a gigantic library, and we only need ~70 LOC,
    so here I tried moving it inline instead.
    
    Co-authored-by: Felix Lange <[email protected]>
    holiman and fjl authored Oct 27, 2023
    Configuration menu
    Copy the full SHA
    233db64 View commit details
    Browse the repository at this point in the history

Commits on Oct 31, 2023

  1. trie/triedb/pathdb: improve dirty node flushing trigger (#28426)

    * trie/triedb/pathdb: improve dirty node flushing trigger
    
    * trie/triedb/pathdb: add tests
    
    * trie/triedb/pathdb: address comment
    rjl493456442 authored Oct 31, 2023
    Configuration menu
    Copy the full SHA
    ea2e66a View commit details
    Browse the repository at this point in the history
  2. core/rawdb: add logging and fix comments around AncientRange function…

    …. (#28379)
    
    This adds warning logs when the read does not match the expected count.
    We can also remove the size limit since the function documentation explicitly states
    that callers should limit the count.
    jakub-freebit authored Oct 31, 2023
    Configuration menu
    Copy the full SHA
    447945e View commit details
    Browse the repository at this point in the history
  3. core: add basic chain history support in GenerateChain (#28428)

    This change improves GenerateChain to support internal chain history access (ChainReader)
    for the consensus engine and EVM.
    
    GenerateChain takes a `parent` block and the number of blocks to create. With my changes,
    the consensus engine and EVM can now access blocks from `parent` up to the block currently
    being generated. This is required to make the BLOCKHASH instruction work, and also needed
    to create real clique chains.  Clique uses chain history to figure out if the current signer is in-turn,
    for example.
    
    I've also added some more accessors to BlockGen. These are helpful when creating transactions:
    
    - g.Signer returns a signer instance for the current block
    - g.Difficulty returns the current block difficulty
    - g.Gas returns the remaining gas amount
    
    Another fix in this commit concerns the receipts returned by GenerateChain. The receipts now
    have properly derived fields (BlockHash, etc.) and should generally match what would be
    returned by the RPC API.
    fjl authored Oct 31, 2023
    Configuration menu
    Copy the full SHA
    bc42e88 View commit details
    Browse the repository at this point in the history
  4. cmd/evm: add --run option to blocktest command (#28421)

    Co-authored-by: lightclient <[email protected]>
    marioevz and lightclient authored Oct 31, 2023
    Configuration menu
    Copy the full SHA
    285202a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f4ac548 View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2023

  1. core/vm: performance tweak of OpCode.String() (#28453)

    make `opCodeToString` a `[256]string` array
    
    Co-authored-by: lmittmann <[email protected]>
    lmittmann and lmittmann authored Nov 2, 2023
    Configuration menu
    Copy the full SHA
    a3be381 View commit details
    Browse the repository at this point in the history

Commits on Nov 3, 2023

  1. eth/tracers: add position field for callTracer logs (#28389)

    Currently, one can use the "withLogs" parameter to include logs in the
    callTracer results, which allows the user to see at which trace level
    was each log emitted.
    This commit adds a position field to the logs which determine
    the exact ordering of a call's logs and its subcalls. This would
    be useful e.g. for explorers wishing to display the flow of execution.
    
    Co-authored-by: jsvisa <[email protected]>
    alvarosevilla95 and jsvisa authored Nov 3, 2023
    Configuration menu
    Copy the full SHA
    b1cec85 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e91cdb4 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2023

  1. .travis: enable cross building to macos arm64 (#28474)

    Co-authored-by: Felix Lange <[email protected]>
    karalabe and fjl authored Nov 7, 2023
    Configuration menu
    Copy the full SHA
    51b5ad3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    97ae324 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f20b334 View commit details
    Browse the repository at this point in the history
  4. eth: set networkID to chainID by default (#28250)

    Co-authored-by: Felix Lange <[email protected]>
    MariusVanDerWijden and fjl authored Nov 7, 2023
    Configuration menu
    Copy the full SHA
    4d9f3cd View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2023

  1. core/vm: set basefee to 0 internally on eth_call (#28470)

    * core/vm: set basefee to 0 internally on eth_call
    
    * core: nicer 0-basefee, make it work for blob fees too
    
    * internal/ethapi: make tests a bit more complex
    
    * core: fix blob fee checker
    
    * core: make code a bit more readable
    
    * core: fix some test error strings
    
    * core/vm: Get rid of weird comment
    
    * core: dict wrong typo
    karalabe authored Nov 8, 2023
    Configuration menu
    Copy the full SHA
    470dba8 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2023

  1. graphql: type of yParity from Long to BigInt (#28456)

    Signed-off-by: jsvisa <[email protected]>
    jsvisa authored Nov 9, 2023
    Configuration menu
    Copy the full SHA
    7ea860d View commit details
    Browse the repository at this point in the history
  2. cmd/geth: more testcases for logging (#28501)

    * cmd/geth: more testcases for logging
    
    This adds more edgecases around logging, particularly around handling of different types of nil-values
    as concrete types and within interfaces.
    
    Also adds tests with 'reserved' values which breaks json/logfmt formats. The json output is checked in,
    but not actively used by any testcase at the moment.
    
    * cmd/geth/testdata: remove timestamps
    holiman authored Nov 9, 2023
    Configuration menu
    Copy the full SHA
    b77a9b1 View commit details
    Browse the repository at this point in the history
  3. ethdb/pebble: add Errorf function to panicLogger (#28491)

    cockroachdb/pebble@422dce9 added Errorf to the Logger interface, this change makes it possible to compile geth with that version of pebble by adding the corresponding method to panicLogger.
    mcdee authored Nov 9, 2023
    Configuration menu
    Copy the full SHA
    f7dde2a View commit details
    Browse the repository at this point in the history

Commits on Nov 10, 2023

  1. eth/filters: exit early if topics-filter has more than 4 topics (#28494)

    Currently, geth's will return `[]` for any `len(topics) > 4` log filter. The EVM only supports up to four logs, via LOG4 opcode, so larger criterias fail. This change makes the filter query exit early in those cases.
    jsvisa authored Nov 10, 2023
    Configuration menu
    Copy the full SHA
    e38b9f1 View commit details
    Browse the repository at this point in the history
  2. core/rawdb: fsync the index file after each freezer write (#28483)

    * core/rawdb: fsync the index and data file after each freezer write
    
    * core/rawdb: fsync the data file in freezer after write
    rjl493456442 authored Nov 10, 2023
    Configuration menu
    Copy the full SHA
    326fa00 View commit details
    Browse the repository at this point in the history
  3. cmd/evm: allow state dump regardless if test passes in statetest (#28…

    …484)
    
    This change makes it so that when executing state tess, state is always dumped out if the corresponding flag is set.
    sorpaas authored Nov 10, 2023
    Configuration menu
    Copy the full SHA
    2f4833b View commit details
    Browse the repository at this point in the history
  4. ethclient: add empty/nonexist account testcase for eth_getProof RPC (…

    …#28482)
    
    Adds testcases for eth_getProof endpoint for the following cases: 
    
    - the account/contract does not exist
    - the account/contract exists but is empty.
    jsvisa authored Nov 10, 2023
    Configuration menu
    Copy the full SHA
    ce5a480 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    49b2c5f View commit details
    Browse the repository at this point in the history
  6. cmd/geth: remove some whitespace in code and comments (#28148)

    This changes just removes some whitespace
    jsvisa authored Nov 10, 2023
    Configuration menu
    Copy the full SHA
    f265cc2 View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2023

  1. params: release Geth v1.15.5

    karalabe committed Nov 14, 2023
    Configuration menu
    Copy the full SHA
    916d6a4 View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2024

  1. Configuration menu
    Copy the full SHA
    35b3874 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa1cff9 View commit details
    Browse the repository at this point in the history
  3. resolve merge conflict in cmd/evm/internal/t8ntool/execution.go and a…

    …dd 'gasUsedForL1' field in exp.json for t8n_test
    ganeshvanahalli committed Apr 9, 2024
    Configuration menu
    Copy the full SHA
    eba8de4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f7f6595 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c6b8994 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    957df75 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    50f95a3 View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2024

  1. Configuration menu
    Copy the full SHA
    932be47 View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2024

  1. Configuration menu
    Copy the full SHA
    d717fc5 View commit details
    Browse the repository at this point in the history

Commits on Apr 16, 2024

  1. Configuration menu
    Copy the full SHA
    daccadb View commit details
    Browse the repository at this point in the history