bump nimbus-build-system to use Nim v2.0.10 (#2684)

* bump nimbus-build-system to use Nim v2.0.10

* 2.0.10 fixes

* fluffy linting

* make trivial change which should trigger whole-nimbus+fluffy rebuild/ci

* Nim v2.0.10 chronicles.error/macros.error ambiguity workaround

* another contentType enum specifier

* fluffy linting
This commit is contained in:
tersec 2024-10-06 12:15:54 +00:00 committed by GitHub
parent 3822c57ddc
commit 845f3276e3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 27 additions and 22 deletions

View File

@ -80,7 +80,8 @@ func readBlockData*(
res.add((contentKey, blockData.body.hexToSeqByte()))
block:
let contentKey = ContentKey(contentType: receipts, receiptsKey: contentKeyType)
let contentKey =
ContentKey(contentType: ContentType.receipts, receiptsKey: contentKeyType)
res.add((contentKey, blockData.receipts.hexToSeqByte()))
except ValueError as e:

View File

@ -228,7 +228,7 @@ iterator headersWithProof*(
let
contentKey = ContentKey(
contentType: blockHeader,
contentType: ContentType.blockHeader,
blockHeaderKey: BlockKey(blockHash: blockHeader.rlpHash()),
).encode()
@ -256,7 +256,7 @@ iterator blockContent*(f: Era1File): (ContentKeyByteList, seq[byte]) =
block: # receipts
let
contentKey = ContentKey(
contentType: receipts, receiptsKey: BlockKey(blockHash: blockHash)
contentType: ContentType.receipts, receiptsKey: BlockKey(blockHash: blockHash)
).encode()
contentValue = encode(receipts)

View File

@ -9,7 +9,10 @@
import std/streams, yaml, results, yaml/parser, yaml/presenter
export yaml
# `except error` is Nim v2.0.10 workaround to avoid ambiguity with
# chronicles.error. If Nim version later than v2.0.10 fix this, it
# can be removed.
export yaml except error
type YamlPortalContent* = object
content_key*: string

View File

@ -436,11 +436,11 @@ proc getVerifiedBlockHeader*(
return Opt.none(Header)
headerWithProof = decodeSsz(headerContent.content, BlockHeaderWithProof).valueOr:
warn "Failed decoding header with proof", error
warn "Failed decoding header with proof", error = error
continue
header = validateBlockHeaderBytes(headerWithProof.header.asSeq(), id).valueOr:
warn "Validation of block header failed", error
warn "Validation of block header failed", error = error
continue
if (let r = n.verifyHeader(header, headerWithProof.proof); r.isErr):

View File

@ -8,6 +8,8 @@
# at your option. This file may not be copied, modified, or distributed except
# according to those terms.
{.push raises: [].}
import
../common/common,
std/strformat,
@ -17,8 +19,6 @@ import
export
eip1559
{.push raises: [].}
# ------------------------------------------------------------------------------
# Pre Eip 1559 gas limit validation
# ------------------------------------------------------------------------------

View File

@ -94,7 +94,7 @@ proc fetchAndCheck(
# Public functions
# ------------------------------------------------------------------------------
proc blocksStagedCanImportOk*(ctx: BeaconCtxRef): bool =
func blocksStagedCanImportOk*(ctx: BeaconCtxRef): bool =
## Check whether the queue is at its maximum size so import can start with
## a full queue.
if ctx.pool.blocksStagedQuLenMax <= ctx.blk.staged.len:
@ -110,7 +110,7 @@ proc blocksStagedCanImportOk*(ctx: BeaconCtxRef): bool =
false
proc blocksStagedFetchOk*(ctx: BeaconCtxRef): bool =
func blocksStagedFetchOk*(ctx: BeaconCtxRef): bool =
## Check whether body records can be fetched and stored on the `staged` queue.
##
let uBottom = ctx.blocksUnprocBottom()
@ -237,7 +237,8 @@ proc blocksStagedImport*(ctx: BeaconCtxRef; info: static[string]): bool =
let stats = ctx.pool.chain.persistBlocks(qItem.data.blocks).valueOr:
# FIXME: should that be rather an `raiseAssert` here?
warn info & ": block exec error", B=base.bnStr,
iv=BnRange.new(qItem.key,qItem.key+qItem.data.blocks.len.uint64-1), error
iv=BnRange.new(qItem.key,qItem.key+qItem.data.blocks.len.uint64-1),
error=error
doAssert base == ctx.dbStateBlockNumber()
return false
@ -251,23 +252,23 @@ proc blocksStagedImport*(ctx: BeaconCtxRef; info: static[string]): bool =
true
proc blocksStagedBottomKey*(ctx: BeaconCtxRef): BlockNumber =
func blocksStagedBottomKey*(ctx: BeaconCtxRef): BlockNumber =
## Retrieve to staged block number
let qItem = ctx.blk.staged.ge(0).valueOr:
return high(BlockNumber)
qItem.key
proc blocksStagedQueueLen*(ctx: BeaconCtxRef): int =
func blocksStagedQueueLen*(ctx: BeaconCtxRef): int =
## Number of staged records
ctx.blk.staged.len
proc blocksStagedQueueIsEmpty*(ctx: BeaconCtxRef): bool =
func blocksStagedQueueIsEmpty*(ctx: BeaconCtxRef): bool =
## `true` iff no data are on the queue.
ctx.blk.staged.len == 0
# ----------------
proc blocksStagedInit*(ctx: BeaconCtxRef) =
func blocksStagedInit*(ctx: BeaconCtxRef) =
## Constructor
ctx.blk.staged = StagedBlocksQueue.init()

View File

@ -191,7 +191,7 @@ proc headersStagedProcess*(ctx: BeaconCtxRef; info: static[string]): int =
while true:
# Fetch largest block
let qItem = ctx.lhc.staged.le(high BlockNumber).valueOr:
trace info & ": no staged headers", error
trace info & ": no staged headers", error=error
break # all done
let
@ -231,7 +231,7 @@ proc headersStagedProcess*(ctx: BeaconCtxRef; info: static[string]): int =
ctx.poolMode = true
proc headersStagedReorg*(ctx: BeaconCtxRef; info: static[string]) =
func headersStagedReorg*(ctx: BeaconCtxRef; info: static[string]) =
## Some pool mode intervention. The effect is that all concurrent peers
## finish up their current work and run this function here (which might
## do nothing.) This stopping should be enough in most cases to re-organise
@ -266,23 +266,23 @@ proc headersStagedReorg*(ctx: BeaconCtxRef; info: static[string]) =
discard ctx.lhc.staged.delete key
proc headersStagedTopKey*(ctx: BeaconCtxRef): BlockNumber =
func headersStagedTopKey*(ctx: BeaconCtxRef): BlockNumber =
## Retrieve to staged block number
let qItem = ctx.lhc.staged.le(high BlockNumber).valueOr:
return BlockNumber(0)
qItem.key
proc headersStagedQueueLen*(ctx: BeaconCtxRef): int =
func headersStagedQueueLen*(ctx: BeaconCtxRef): int =
## Number of staged records
ctx.lhc.staged.len
proc headersStagedQueueIsEmpty*(ctx: BeaconCtxRef): bool =
func headersStagedQueueIsEmpty*(ctx: BeaconCtxRef): bool =
## `true` iff no data are on the queue.
ctx.lhc.staged.len == 0
# ----------------
proc headersStagedInit*(ctx: BeaconCtxRef) =
func headersStagedInit*(ctx: BeaconCtxRef) =
## Constructor
ctx.lhc.staged = LinkedHChainQueue.init()

@ -1 +1 @@
Subproject commit 741274439ce72162ab3c740e7c0ef624d32725f9
Subproject commit c3241765e3896a06ed372dddc9dd6e3c36fae8f6