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.14.4 #381

Open
wants to merge 78 commits into
base: master
Choose a base branch
from
Open

Merge v1.14.4 #381

wants to merge 78 commits into from

Commits on May 9, 2024

  1. Configuration menu
    Copy the full SHA
    6d51c1f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0e456d9 View commit details
    Browse the repository at this point in the history
  3. params: gofmt

    fjl committed May 9, 2024
    Configuration menu
    Copy the full SHA
    74edc93 View commit details
    Browse the repository at this point in the history

Commits on May 10, 2024

  1. core/state: remove slot dirtyness if it's set back to origin value (#…

    …29731)
    
    * core/state: remove slot dirtiness if it's set back to origin value
    
    * core/state: suggestion from martin
    rjl493456442 authored May 10, 2024
    Configuration menu
    Copy the full SHA
    e5f5eae View commit details
    Browse the repository at this point in the history
  2. event: fix typo (#29749)

    typo: of -> or
    cocoyeal authored May 10, 2024
    Configuration menu
    Copy the full SHA
    603fd89 View commit details
    Browse the repository at this point in the history
  3. core, beacon, ethdb: fix typos (#29748)

    * core, beacon, ethdb: fix typos
    
    * revert file that can't be changed
    hteevoli authored May 10, 2024
    Configuration menu
    Copy the full SHA
    47af69c View commit details
    Browse the repository at this point in the history
  4. cmd, core, params, trie: add verkle access witness gas charging (#29338)

    Implements some of the changes required to charge and do gas accounting in verkle testnet.
    gballet authored May 10, 2024
    Configuration menu
    Copy the full SHA
    44a50c9 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2024

  1. core/state: blocking prefetcher on term signal, parallel updates (#29…

    …519)
    
    * core/state: trie prefetcher change: calling trie() doesn't stop the associated subfetcher
    
    Co-authored-by: Martin HS <[email protected]>
    Co-authored-by: Péter Szilágyi <[email protected]>
    
    * core/state: improve prefetcher
    
    * core/state: restore async prefetcher stask scheduling
    
    * core/state: finish prefetching async and process storage updates async
    
    * core/state: don't use the prefetcher for missing snapshot items
    
    * core/state: remove update concurrency for Verkle tries
    
    * core/state: add some termination checks to prefetcher async shutdowns
    
    * core/state: differentiate db tries and prefetched tries
    
    * core/state: teh teh teh
    
    ---------
    
    Co-authored-by: Jared Wasinger <[email protected]>
    Co-authored-by: Martin HS <[email protected]>
    Co-authored-by: Gary Rong <[email protected]>
    4 people authored May 13, 2024
    Configuration menu
    Copy the full SHA
    2ac83e1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5b3e3cd View commit details
    Browse the repository at this point in the history

Commits on May 14, 2024

  1. Configuration menu
    Copy the full SHA
    be32843 View commit details
    Browse the repository at this point in the history
  2. core: deploy EIP-4788 contract in dev mode genesis (#29655)

    Co-authored-by: Felix Lange <[email protected]>
    0xbeny and fjl authored May 14, 2024
    Configuration menu
    Copy the full SHA
    8919c5c View commit details
    Browse the repository at this point in the history
  3. .github: upgrade to action versions with node20 (#29776)

    * github: upgrade checkout action to version with node20
    
    * Update go.yml
    
    ---------
    
    Co-authored-by: Felix Lange <[email protected]>
    cario-dev and fjl authored May 14, 2024
    Configuration menu
    Copy the full SHA
    d2f00cb View commit details
    Browse the repository at this point in the history

Commits on May 15, 2024

  1. core: move balanceCheck addition in buyGas (#29762)

    It's a bit confusing to add msg.value into the balanceCheck within the conditional.
    No impact on block validation since GasFeeCap is always set when processing transactions.
    zhiqiangxu authored May 15, 2024
    Configuration menu
    Copy the full SHA
    7ed52c9 View commit details
    Browse the repository at this point in the history

Commits on May 16, 2024

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

Commits on May 21, 2024

  1. Configuration menu
    Copy the full SHA
    be5df74 View commit details
    Browse the repository at this point in the history
  2. eth/tracers: fix basefee context for traceBlock (#29811)

    This fixes an issue for `debug_traceBlock*` methods where the BASEFEE opcode was returning always 0. This caused the method return invalid results.
    
    Co-authored-by: Sina Mahmoodi <[email protected]>
    holiman and s1na authored May 21, 2024
    Configuration menu
    Copy the full SHA
    7fd7c1f View commit details
    Browse the repository at this point in the history

Commits on May 23, 2024

  1. internal/ethapi: fix typos (#29784)

    Fix typos in api.go
    karlb authored May 23, 2024
    Configuration menu
    Copy the full SHA
    0d4cdb3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fa58176 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b779e46 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    70bee97 View commit details
    Browse the repository at this point in the history
  5. p2p/discover: improved node revalidation (#29572)

    Node discovery periodically revalidates the nodes in its table by sending PING, checking
    if they are still alive. I recently noticed some issues with the implementation of this
    process, which can cause strange results such as nodes dropping unexpectedly, certain
    nodes not getting revalidated often enough, and bad results being returned to incoming
    FINDNODE queries.
    
    In this change, the revalidation process is improved with the following logic:
    
    - We maintain two 'revalidation lists' containing the table nodes, named 'fast' and 'slow'.
    - The process chooses random nodes from each list on a randomized interval, the interval being
      faster for the 'fast' list, and performs revalidation for the chosen node.
    - Whenever a node is newly inserted into the table, it goes into the 'fast' list.
      Once validation passes, it transfers to the 'slow' list. If a request fails, or the
      node changes endpoint, it transfers back into 'fast'.
    - livenessChecks is incremented by one for successful checks. Unlike the old implementation,
      we will not drop the node on the first failing check. We instead quickly decay the
      livenessChecks give it another chance.
    - Order of nodes in bucket doesn't matter anymore.
    
    I am also adding a debug API endpoint to dump the node table content.
    
    Co-authored-by: Martin HS <[email protected]>
    fjl and holiman authored May 23, 2024
    Configuration menu
    Copy the full SHA
    6a9158b View commit details
    Browse the repository at this point in the history
  6. p2p/enode: fix endpoint determination for IPv6 (#29801)

    enode.Node has separate accessor functions for getting the IP, UDP port and TCP port.
    These methods performed separate checks for attributes set in the ENR.
    
    With this PR, the accessor methods will now return cached information, and the endpoint is
    determined when the node is created. The logic to determine the preferred endpoint is now
    more correct, and considers how 'global' each address is when both IPv4 and IPv6 addresses
    are present in the ENR.
    fjl authored May 23, 2024
    Configuration menu
    Copy the full SHA
    cc9e2bd View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    61b3d93 View commit details
    Browse the repository at this point in the history

Commits on May 24, 2024

  1. Configuration menu
    Copy the full SHA
    08fe6a8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    64b1cd8 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b6474e9 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2024

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

Commits on May 27, 2024

  1. Configuration menu
    Copy the full SHA
    7f5cc02 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7224576 View commit details
    Browse the repository at this point in the history
  3. miner: fix TestBuildPayload sporadic failure (#29853)

    miner: fix TestBuildPayload sporadic failure
    
    Co-authored-by: steven <[email protected]>
    Steven Wang and steven authored May 27, 2024
    Configuration menu
    Copy the full SHA
    1a4e4a4 View commit details
    Browse the repository at this point in the history
  4. eth/downloader: fix flaky test (#29852)

    This pull request fixes the flay test TestSkeletonSyncRetrievals. In this test, we first
    trigger a sync cycle and wait for it to meet certain expectations. We then inject a new
    head and potentially also a new peer, then perform another final sync. The test now
    performs the newPeer addition before launching the final sync, and waits a bit for that
    peer to get registered. This fixes the logic race that made the test fail sometimes.
    
    Co-authored-by: Guillaume Ballet <[email protected]>
    rjl493456442 and gballet authored May 27, 2024
    Configuration menu
    Copy the full SHA
    5132768 View commit details
    Browse the repository at this point in the history

Commits on May 28, 2024

  1. Configuration menu
    Copy the full SHA
    ea6c160 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    caafa93 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    42471d7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    871e55d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    61932e4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b88051e View commit details
    Browse the repository at this point in the history
  7. p2p/discover: fix crash when revalidated node is removed (#29864)

    In #29572, I assumed the revalidation list that the node is contained in could only ever
    be changed by the outcome of a revalidation request. But turns out that's not true: if the
    node gets removed due to FINDNODE failure, it will also be removed from the list it is in.
    This causes a crash.
    
    The invariant is: while node is in table, it is always in exactly one of the two lists. So
    it seems best to store a pointer to the current list within the node itself.
    fjl authored May 28, 2024
    Configuration menu
    Copy the full SHA
    af0a327 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e517183 View commit details
    Browse the repository at this point in the history
  9. core/state: remove unused error from prefetcher trie method (#29768)

    Co-authored-by: Gary Rong <[email protected]>
    Co-authored-by: Felix Lange <[email protected]>
    3 people authored May 28, 2024
    Configuration menu
    Copy the full SHA
    171430c View commit details
    Browse the repository at this point in the history
  10. p2p/discover: fix update logic in handleAddNode (#29836)

    It seems the semantic differences between addFoundNode and addInboundNode were lost in
    #29572. My understanding is addFoundNode is for a node you have not contacted directly
    (and are unsure if is available) whereas addInboundNode is for adding nodes that have
    contacted the local node and we can verify they are active.
    
    handleAddNode seems to be the consolidation of those two methods, yet it bumps the node in
    the bucket (updating it's IP addr) even if the node was not an inbound. This PR fixes
    this. It wasn't originally caught in tests like TestTable_addSeenNode because the
    manipulation of the node object actually modified the node value used by the test.
    
    New logic is added to reject non-inbound updates unless the sequence number of the
    (signed) ENR increases. Inbound updates, which are published by the updated node itself,
    are always accepted. If an inbound update changes the endpoint, the node will be
    revalidated on an expedited schedule.
    
    Co-authored-by: Felix Lange <[email protected]>
    lightclient and fjl authored May 28, 2024
    Configuration menu
    Copy the full SHA
    cc22e0c View commit details
    Browse the repository at this point in the history

Commits on May 29, 2024

  1. go.mod: update a number of dependencies (#29763)

    * deps: update go-winio
    
    * deps: update fastcache
    
    * deps: update golang-set
    
    * update fatih/color
    
    * update natefinch/lumberjack.v2
    holiman authored May 29, 2024
    Configuration menu
    Copy the full SHA
    5534c84 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    daf4f72 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    153f8da View commit details
    Browse the repository at this point in the history
  4. accounts: fix TestUpdateKeyfileContents (#29867)

    Create the directory before NewKeyStore. This ensures the watcher successfully starts on
    the first attempt, and waitWatcherStart functions as intended.
    Steven Wang authored May 29, 2024
    Configuration menu
    Copy the full SHA
    b8cf163 View commit details
    Browse the repository at this point in the history
  5. all: fix typos in comments (#29873)

    fix using `a` & `the` simutaneously
    polymaer authored May 29, 2024
    Configuration menu
    Copy the full SHA
    06263b1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2f0e63e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    e26fa9e View commit details
    Browse the repository at this point in the history
  8. p2p/discover: refactor node and endpoint representation (#29844)

    Here we clean up internal uses of type discover.node, converting most code to use
    enode.Node instead. The discover.node type used to be the canonical representation of
    network hosts before ENR was introduced. Most code worked with *node to avoid conversions
    when interacting with Table methods. Since *node also contains internal state of Table and
    is a mutable type, using *node outside of Table code is prone to data races. It's also
    cleaner not having to wrap/unwrap *enode.Node all the time.
    
    discover.node has been renamed to tableNode to clarify its purpose.
    
    While here, we also change most uses of net.UDPAddr into netip.AddrPort. While this is
    technically a separate refactoring from the *node -> *enode.Node change, it is more
    convenient because *enode.Node handles IP addresses as netip.Addr. The switch to package
    netip in discovery would've happened very soon anyway.
    
    The change to netip.AddrPort stops at certain interface points. For example, since package
    p2p/netutil has not been converted to use netip.Addr yet, we still have to convert to
    net.IP/net.UDPAddr in a few places.
    fjl authored May 29, 2024
    Configuration menu
    Copy the full SHA
    94a8b29 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    3fef534 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    2f06c1e View commit details
    Browse the repository at this point in the history
  11. eth/catalyst: ensure TxPool is synced in Fork (#29876)

    This should fix an occasional test failure in ethclient/simulated.TestForkResendTx.
    Inspection of logs revealed the cause of the failure to be that the txpool was not done
    reorganizing by the time Fork is called.
    fjl authored May 29, 2024
    Configuration menu
    Copy the full SHA
    6bb13e8 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2024

  1. Configuration menu
    Copy the full SHA
    e015c11 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2262bf3 View commit details
    Browse the repository at this point in the history
  3. eth/gasprice: add comment to constant (#29892)

    Co-authored-by: Felix Lange <[email protected]>
    yosuzzy and fjl authored May 30, 2024
    Configuration menu
    Copy the full SHA
    5d7d48f View commit details
    Browse the repository at this point in the history

Commits on May 31, 2024

  1. common/math: rename variable name int to n (#29890)

    * chore: rename variable name `int` to `in`
    
    * chore: rename variable name `int` to `n`
    tianyeyouyou authored May 31, 2024
    Configuration menu
    Copy the full SHA
    bdc62f9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2613523 View commit details
    Browse the repository at this point in the history
  3. CODEOWNERS: @s1na owns core/tracing (#29899)

    Update CODEOWNERS
    s1na authored May 31, 2024
    Configuration menu
    Copy the full SHA
    d4b81f0 View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2024

  1. Supply delta live tracer (#29347)

    Introduces the first built-in live tracer. The supply tracer tracks ETH supply changes across blocks
    and writes the output to disk. This will need to be enabled through CLI using the `--vmtrace supply` flag.
    
    Co-authored-by: Sina Mahmoodi <[email protected]>
    ziogaschr and s1na authored Jun 3, 2024
    Configuration menu
    Copy the full SHA
    c9e0b31 View commit details
    Browse the repository at this point in the history
  2. core/state: introduce stateupdate structure (#29530)

    * core/state: introduce stateUpate structure
    
    * core/state: remove outdated function description
    
    * core/state: address comments
    rjl493456442 authored Jun 3, 2024
    Configuration menu
    Copy the full SHA
    d38b88a View commit details
    Browse the repository at this point in the history
  3. cmd/evm/internal/t8ntool: fix a typo (#29887)

    * i8ntool: fix a typo
    
    * cmd/evm/internal/t8ntool: fix typo typo
    
    ---------
    
    Co-authored-by: Péter Szilágyi <[email protected]>
    0xmountaintop and karalabe authored Jun 3, 2024
    Configuration menu
    Copy the full SHA
    50405e2 View commit details
    Browse the repository at this point in the history
  4. beacon/engine: prealloc capacity for map and slice (#29903)

    * prealloc capacity for map and slice
    
    * revert unnecessary change
    mask-pp authored Jun 3, 2024
    Configuration menu
    Copy the full SHA
    b36c738 View commit details
    Browse the repository at this point in the history
  5. log: fix a typo (#29883)

    logger
    miles-six authored Jun 3, 2024
    Configuration menu
    Copy the full SHA
    7270cba View commit details
    Browse the repository at this point in the history
  6. core/rawdb,eth/protocols,p2p: prealloc slice size (#29893)

    chore: prealloc slice size
    tianyeyouyou authored Jun 3, 2024
    Configuration menu
    Copy the full SHA
    a6751d6 View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2024

  1. core/state: prefetch account trie while starting a prefetcher (#29919)

    Always prefetch the account trie while starting the prefetcher.
    
    Co-authored-by: steven <[email protected]>
    Co-authored-by: rjl493456442 <[email protected]>
    3 people authored Jun 4, 2024
    Configuration menu
    Copy the full SHA
    adbbd8c View commit details
    Browse the repository at this point in the history
  2. trie: iterate values pre-order and fix seek behavior (#27838)

    This pull request fixes the pre-order trie traversal by defining 
    a more accurate iterator order and path comparison rule.
    
    Co-authored-by: Gary Rong <[email protected]>
    roysc and rjl493456442 authored Jun 4, 2024
    Configuration menu
    Copy the full SHA
    68c0ec0 View commit details
    Browse the repository at this point in the history
  3. internal/ethapi: recap higher args.Gas with block GasLimit in DoEstim…

    …ateGas (#29738)
    
    * internal/ethapi: recap higher args.Gas with block GasLimit in DoEstimateGas
    
    * internal/ethapi: fix gas estimator capping code
    
    * internal/ethapi: fix test
    
    * fix goimports lint (remove space)
    
    ---------
    
    Co-authored-by: Péter Szilágyi <[email protected]>
    SangIlMo and karalabe authored Jun 4, 2024
    Configuration menu
    Copy the full SHA
    682ae83 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    125fb1f View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2024

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

Commits on Nov 26, 2024

  1. Merge commit '44a50c9f96386f44a8682d51cf7500044f6cbaea' into merge-v1…

    ….14.4
    
    Fix rules.IsEIP4762 conflicts
    amsanghi committed Nov 26, 2024
    Configuration menu
    Copy the full SHA
    ff2765a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    00fa50e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a9eeb48 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    290a726 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f1c09bc View commit details
    Browse the repository at this point in the history

Commits on Dec 9, 2024

  1. Configuration menu
    Copy the full SHA
    9a36184 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e7a0bc0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    efd6772 View commit details
    Browse the repository at this point in the history
  4. Fix lint

    amsanghi committed Dec 9, 2024
    Configuration menu
    Copy the full SHA
    2faf70c View commit details
    Browse the repository at this point in the history