nimbus-eth1/nimbus
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
..
beacon Bump nim-web3 to c8f36f59cb354196cfe117b6866e81d450c8cfd7 (#2878) 2024-11-27 20:16:31 +07:00
common Revert "Adopt latest changes to requests hash computation" (#2892) 2024-11-29 16:13:08 +07:00
core Fc module can update base also when on parent arc (#2911) 2024-12-05 13:01:57 +07:00
db Fixes for Mekong testnet: EIP-7702 gas related (#2912) 2024-12-05 13:00:47 +07:00
evm Fixes for Mekong testnet: EIP-7702 gas related (#2912) 2024-12-05 13:00:47 +07:00
graphql Cleanup db/core_apps error handling (#2838) 2024-11-07 08:24:21 +07:00
rpc Bump nim-web3 to c8f36f59cb354196cfe117b6866e81d450c8cfd7 (#2878) 2024-11-27 20:16:31 +07:00
stateless replace deprecated types (#2704) 2024-10-16 08:34:12 +07:00
sync Fc module various base tree admin updates (#2895) 2024-12-02 08:25:58 +00:00
transaction Fixes for Mekong testnet: EIP-7702 gas related (#2912) 2024-12-05 13:00:47 +07:00
utils Revert "Adopt latest changes to requests hash computation" (#2892) 2024-11-29 16:13:08 +07:00
common.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
compile_info.nim Simplify LedgerRef: remove unnecessary abstraction (#2826) 2024-11-06 09:01:56 +07:00
config.nim Move rlp block import into it's own subcommand (#2904) 2024-12-04 20:36:07 +07:00
constants.nim Fixes related to Prague execution requests (#2847) 2024-11-08 10:47:07 +07:00
errors.nim Remove EVM indirect imports and unused EVM errors (#2370) 2024-06-17 09:56:39 +02:00
makefile Snap sync fix trie interpolation fringe condition (#1457) 2023-02-01 18:56:06 +00:00
nim.cfg import: read from era files (#2254) 2024-05-31 09:13:56 +02:00
nimbus_desc.nim Suppress beacon sync unless potential actions (#2765) 2024-10-21 18:01:45 +00:00
nimbus_execution_client.nim Move rlp block import into it's own subcommand (#2904) 2024-12-04 20:36:07 +07:00
nimbus_import.nim Move rlp block import into it's own subcommand (#2904) 2024-12-04 20:36:07 +07:00
rpc.nim Port p2p to server API (#2769) 2024-11-02 10:30:45 +01:00
tracer.nim Simplify state root api (#2864) 2024-11-22 14:15:35 +01:00
transaction.nim Unify tx validation (#2777) 2024-10-26 09:19:48 +02:00
version.nim Feature: User configurable extraData when assemble a block (#2823) 2024-11-06 09:01:25 +07:00