mirror of
https://github.com/status-im/nimbus-eth1.git
synced 2025-02-03 15:55:47 +00:00
c123e1eb93
* Using `IntervalSet` type data for `LeafRange` * Updated log ticker * Update to `eth67` details: Disabled by default, use `ENABLE_LEGACY_ETH66=0` to enable No support for `Get/NodeData` dialogue via eth, anymore * Dissolved fetch/common.nim details; the log/ticker part becomes ticker.nim the interval range management is merged into fetch.nim * Updated account scheduler why: The previous scheduler fetched each account once (for different state roots.) The updated scheduler re-calibrates after a change of the state root and potentially (until told otherwise) fetches all possible accounts. * Fix `high(P)` fringe cases in `IntervalSet` handling why: The `high(P)` value for a point type `P` cannot be represented with half open intervals `[a,b)` for a,b points of `P`. So this single value needs extra treatment which was slightly wrong. * Updated docu/comments also: rebased * Update scheduler details: Change the `pivot` management when creating new accounts lists. It is strictly increasing (and wrapping around) depending on last updated accounts list.
31 lines
758 B
Nim
31 lines
758 B
Nim
# Nimbus
|
|
# Copyright (c) 2018-2021 Status Research & Development GmbH
|
|
# Licensed and distributed under either of
|
|
# * MIT license (license terms in the root directory or at
|
|
# https://opensource.org/licenses/MIT).
|
|
# * Apache v2 license (license terms in the root directory or at
|
|
# https://www.apache.org/licenses/LICENSE-2.0).
|
|
# at your option. This file may not be copied, modified, or distributed
|
|
# except according to those terms.
|
|
|
|
when defined(legacy_eth66_enabled):
|
|
import ./protocol/eth66 as proto_eth
|
|
type eth* = eth66
|
|
else:
|
|
import ./protocol/eth67 as proto_eth
|
|
type eth* = eth67
|
|
|
|
import
|
|
#./protocol/eth67 as proto_eth
|
|
./protocol/snap1 as proto_snap
|
|
|
|
export
|
|
proto_eth,
|
|
proto_snap
|
|
|
|
type
|
|
#eth* = eth67
|
|
snap* = snap1
|
|
|
|
# End
|