nimbus-eth1/nimbus/core
Jordan Hrycaj 90dd86be9a
Fc module can update base also when on parent arc (#2911)
* Re-org internal descriptor `CanonicalDesc` as `PivotArc`

why:
  Despite its name, `CanonicalDesc` contained a cursor arc (or leg) from
  the base tree with a designated block (or Header) on its arc members
  (aka blocks.) The type is used more generally than only for s block on
  the canonical cursor.

  Also, the `PivotArc` provides some more fields for caching intermediate
  data. This simplifies managing extra arguments for some functions.

* Remove cruft

details:
  No need to find cursor arc if it is given as function argument.

* Rename prototype variables `head: PivotArc` to `pvarc`

why:
  Better reading

* Function and code massage, adjust names

details:
  Avoid the syllable `canonical` in function names that do not strictly
  apply to the canonical chain. So renaming
  * findCanonicalHead() => findCursorArc()
  * canonicalChain() => findHeader()
  * trimCanonicalChain() => trimCursorArc()

* Combine `updateBase()` function-args into single `PivotArgs` object

why:
  Will generalise action for more complex scenarios in future.

* update `calculateNewBase()` return code type => `PivotArc`

why:
  So it can directly be used as argument into `updateBase()`

* Update `calculateNewBase()` for target on parent arc

* Update unit tests
2024-12-05 13:01:57 +07:00
..
chain Fc module can update base also when on parent arc (#2911) 2024-12-05 13:01:57 +07:00
executor Bump nim-evmc to 730d35d8572e1b3957b0c6c986ecd86413976da0 (#2879) 2024-11-27 16:08:14 +07:00
pow replace deprecated types (#2704) 2024-10-16 08:34:12 +07:00
tx_pool Implement EIP-7702: Set EOA account code (#2631) 2024-11-25 11:28:03 +01:00
block_import.nim Move rlp block import into it's own subcommand (#2904) 2024-12-04 20:36:07 +07:00
casper.nim replace deprecated types (#2704) 2024-10-16 08:34:12 +07:00
chain.nim Wiring ForkedChainRef to other components (#2423) 2024-09-04 09:54:54 +00:00
dao.nim Fix eth/common & web3 related deprecation warnings for fluffy (#2698) 2024-10-04 23:21:26 +02:00
eip4844.nim replace deprecated types (#2704) 2024-10-16 08:34:12 +07:00
eip6110.nim Fixes related to Prague execution requests (#2847) 2024-11-08 10:47:07 +07:00
eip7702.nim Add missing pieces of EIP-7702 (#2877) 2024-11-27 08:59:42 +01:00
executor.nim avoid initTable (#2328) 2024-06-10 11:05:30 +02:00
gaslimit.nim replace deprecated types (#2704) 2024-10-16 08:34:12 +07:00
tx_pool.nim Cleanup db/core_apps error handling (#2838) 2024-11-07 08:24:21 +07:00
validate.nim Add desc validator to fc unit tests (#2899) 2024-12-02 17:49:53 +00:00
withdrawals.nim replace deprecated types (#2704) 2024-10-16 08:34:12 +07:00