Merge branch 'unstable' into fulu

This commit is contained in:
Agnish Ghosh 2024-11-02 12:54:32 +05:30 committed by GitHub
commit e063d8505a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 8 additions and 72 deletions

View File

@ -2055,9 +2055,7 @@ proc p2pProtocolBackendImpl*(p: P2PProtocol): Backend =
## ##
## Implement Senders and Handshake ## Implement Senders and Handshake
## ##
if msg.kind == msgHandshake:
macros.error "Handshake messages are not supported in LibP2P protocols"
else:
var sendProc = msg.createSendProc() var sendProc = msg.createSendProc()
implementSendProcBody sendProc implementSendProcBody sendProc

View File

@ -16,7 +16,6 @@ export chronos, results
type type
MessageKind* = enum MessageKind* = enum
msgHandshake
msgNotification msgNotification
msgRequest msgRequest
msgResponse msgResponse
@ -89,7 +88,6 @@ type
messages*: seq[Message] messages*: seq[Message]
# Messages by type: # Messages by type:
handshake*: Message
notifications*: seq[Message] notifications*: seq[Message]
requests*: seq[Request] requests*: seq[Request]
@ -529,7 +527,7 @@ proc createSendProc*(msg: Message,
result.msgParams.add param result.msgParams.add param
case msg.kind case msg.kind
of msgHandshake, msgRequest: of msgRequest:
# Add a timeout parameter for all request procs # Add a timeout parameter for all request procs
def.addTimeoutParam(msg.protocol.timeouts) def.addTimeoutParam(msg.protocol.timeouts)
@ -558,8 +556,6 @@ proc createSendProc*(msg: Message,
ident "untyped" ident "untyped"
elif msg.kind == msgRequest and not isRawSender: elif msg.kind == msgRequest and not isRawSender:
ident "auto" ident "auto"
elif msg.kind == msgHandshake and not isRawSender:
Fut(msg.recName)
else: else:
Fut(Void) Fut(Void)
@ -665,27 +661,6 @@ proc useStandardBody*(sendProc: SendProc,
`sendCall` `sendCall`
proc correctSerializerProcParams(params: NimNode) =
# A serializer proc is just like a send proc, but:
# 1. it has a void return type
params[0] = ident "void"
# 2. The peer params is replaced with OutputStream
params[1] = newIdentDefs(streamVar, bindSym "OutputStream")
# 3. The timeout param is removed
params.del(params.len - 1)
proc createSerializer*(msg: Message, procType = nnkProcDef): NimNode =
var serializer = msg.createSendProc(procType, nameSuffix = "Serializer")
correctSerializerProcParams serializer.def.params
serializer.setBody writeParamsAsRecord(
serializer.msgParams,
streamVar,
msg.protocol.backend.SerializationFormat,
msg.recName)
return serializer.def
proc defineThunk*(msg: Message, thunk: NimNode) = proc defineThunk*(msg: Message, thunk: NimNode) =
let protocol = msg.protocol let protocol = msg.protocol
@ -739,29 +714,6 @@ proc netInit*(p: P2PProtocol): NimNode =
# p.backend.NetworkType, # p.backend.NetworkType,
# p.NetworkStateType) # p.NetworkStateType)
proc createHandshakeTemplate*(msg: Message,
rawSendProc, handshakeImpl,
nextMsg: NimNode): SendProc =
let
handshakeExchanger = msg.createSendProc(procType = nnkTemplateDef)
forwardCall = newCall(rawSendProc).appendAllInputParams(handshakeExchanger.def)
peerValue = forwardCall[1]
msgRecName = msg.recName
forwardCall[1] = peerVar
forwardCall.del(forwardCall.len - 1)
let peerVar = genSym(nskLet ,"peer")
handshakeExchanger.setBody quote do:
let `peerVar` = `peerValue`
let sendingFuture = `forwardCall`
`handshakeImpl`(`peerVar`,
sendingFuture,
`nextMsg`(`peerVar`, `msgRecName`),
`timeoutVar`)
return handshakeExchanger
proc peerInit*(p: P2PProtocol): NimNode = proc peerInit*(p: P2PProtocol): NimNode =
if p.PeerStateType == nil: if p.PeerStateType == nil:
newNilLit() newNilLit()
@ -774,7 +726,6 @@ proc processProtocolBody*(p: P2PProtocol, protocolBody: NimNode) =
## This procs handles all DSL statements valid inside a p2pProtocol. ## This procs handles all DSL statements valid inside a p2pProtocol.
## ##
## It will populate the protocol's fields such as: ## It will populate the protocol's fields such as:
## * handshake
## * requests ## * requests
## * notifications ## * notifications
## * onPeerConnected ## * onPeerConnected
@ -803,16 +754,6 @@ proc processProtocolBody*(p: P2PProtocol, protocolBody: NimNode) =
p.requests.add Request(queries: queries, response: responseMsg) p.requests.add Request(queries: queries, response: responseMsg)
elif eqIdent(n[0], "handshake"):
let procs = expectBlockWithProcs(n)
if procs.len != 1:
error "handshake expects a block with a single proc definition", n
if p.handshake != nil:
error "The handshake for the protocol is already defined", n
p.handshake = p.newMsg(msgHandshake, procs[0])
elif eqIdent(n[0], "onPeerConnected"): elif eqIdent(n[0], "onPeerConnected"):
p.onPeerConnected = p.eventHandlerToProc(n[1], "PeerConnected") p.onPeerConnected = p.eventHandlerToProc(n[1], "PeerConnected")

View File

@ -424,8 +424,6 @@ type
GetGraffitiResponse | GetGraffitiResponse |
GetAggregatedAttestationV2Response GetAggregatedAttestationV2Response
DecodeConsensysTypes* = ProduceBlindedBlockResponse
RestVersioned*[T] = object RestVersioned*[T] = object
data*: T data*: T
jsonVersion*: ConsensusFork jsonVersion*: ConsensusFork

View File

@ -545,7 +545,6 @@ type
GetVersionResponse* = DataEnclosedObject[RestNodeVersion] GetVersionResponse* = DataEnclosedObject[RestNodeVersion]
GetEpochSyncCommitteesResponse* = DataEnclosedObject[RestEpochSyncCommittee] GetEpochSyncCommitteesResponse* = DataEnclosedObject[RestEpochSyncCommittee]
ProduceAttestationDataResponse* = DataEnclosedObject[AttestationData] ProduceAttestationDataResponse* = DataEnclosedObject[AttestationData]
ProduceBlindedBlockResponse* = ForkedBlindedBeaconBlock
ProduceSyncCommitteeContributionResponse* = DataEnclosedObject[SyncCommitteeContribution] ProduceSyncCommitteeContributionResponse* = DataEnclosedObject[SyncCommitteeContribution]
SubmitBlindedBlockResponseDeneb* = DataEnclosedObject[deneb_mev.ExecutionPayloadAndBlobsBundle] SubmitBlindedBlockResponseDeneb* = DataEnclosedObject[deneb_mev.ExecutionPayloadAndBlobsBundle]
SubmitBlindedBlockResponseElectra* = DataEnclosedObject[electra_mev.ExecutionPayloadAndBlobsBundle] SubmitBlindedBlockResponseElectra* = DataEnclosedObject[electra_mev.ExecutionPayloadAndBlobsBundle]

View File

@ -43,7 +43,7 @@ In addition to the era files themselves, you will need at least 200GB of free sp
=== "Mainnet" === "Mainnet"
* https://mainnet.era.nimbus.team/ * https://mainnet.era.nimbus.team/
* https://era1.ethportal.net/ * https://mainnet.era1.nimbus.team/
=== "Holesky" === "Holesky"
* https://holesky.era.nimbus.team/ * https://holesky.era.nimbus.team/

@ -1 +1 @@
Subproject commit c246d00eaa7d6f52019464b37da510a8be23e939 Subproject commit cf8d4d22636b8e514caf17e49f9c786ac56b0e85

2
vendor/nim-snappy vendored

@ -1 +1 @@
Subproject commit 590edb152071bca4901bcbe689fc0856efd8c4e7 Subproject commit 0c308d34241c9f0764f6d111a0288428ded173bc

@ -1 +1 @@
Subproject commit 4afb0526629f51aef4c124368365ebe90a782d37 Subproject commit 8fafcd0bac9f409091b7bcaee62ab6330f57441e