bump vendors for 0.24.0 (#2333)

The following vendors have changes but are not being updated for
the reason explained.

nim-web3: not updated because unit tests started to fail and no
straightforward solution found.

nim-toml-serialization: not updated because it introduced a breaking
change on how the --config-file attribute is parsed. The array
attributes now need a comma. For example, the following attribute
from within the config file:

pubsub-topic = [ "/waku/2/default-waku/proto" "/waku/2/testing-store" ]

... should be converted to:

pubsub-topic = [ "/waku/2/default-waku/proto", "/waku/2/testing-store" ]

and we cannot accept that breaking change
This commit is contained in:
Ivan FB 2024-01-04 17:35:00 +01:00 committed by GitHub
parent 3bbe234962
commit bd7570faa3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 113 additions and 89 deletions

2
vendor/nim-chronos vendored

@ -1 +1 @@
Subproject commit e38ceb5378e7ce945eedbe1c6fb670095cfb9cc5 Subproject commit 41f77d261ead2508acdd3bd3f88a5cbbcefff05f

2
vendor/nim-eth vendored

@ -1 +1 @@
Subproject commit e5c2b1784ec7badc6162325e37daee2229f53d8b Subproject commit 5aaeb67ebedbefaae2f719f245a96c1a80c42f81

2
vendor/nim-json-rpc vendored

@ -1 +1 @@
Subproject commit 60c4c9b5f28b530d5d89fd14c337af1d86390a82 Subproject commit 33360528d208aaa70a6ed914619fe76321760d54

@ -1 +1 @@
Subproject commit 230e226da06605f9d8b8bdb1ba178c4b30511aca Subproject commit 3f1ce24ee116daedbc9c8be525e63ec03e185a28

2
vendor/nim-libp2p vendored

@ -1 +1 @@
Subproject commit 3011ba4326fa55220a758838835797ff322619fc Subproject commit e3c967ad1939fb33b8e13759037d193734acd202

2
vendor/nim-metrics vendored

@ -1 +1 @@
Subproject commit 6142e433fc8ea9b73379770a788017ac528d46ff Subproject commit 51f1227d0fd04ce84b1ef784b11280cb7875348c

@ -1 +1 @@
Subproject commit 543b2f3dd0724f7cf631feba6c2a3ec438f3d230 Subproject commit 4d541ec43454809904fc4c3c0a7436410ad597d2

View File

@ -34,8 +34,8 @@ proc writeValue*(writer: var JsonWriter[RestJson], value: DebugWakuInfo)
{.raises: [IOError].} = {.raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("listenAddresses", value.listenAddresses) writer.writeField("listenAddresses", value.listenAddresses)
if value.enrUri.isSome: if value.enrUri.isSome():
writer.writeField("enrUri", value.enrUri) writer.writeField("enrUri", value.enrUri.get())
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], value: var DebugWakuInfo) proc readValue*(reader: var JsonReader[RestJson], value: var DebugWakuInfo)

View File

@ -72,32 +72,62 @@ proc toWakuMessage*(msg: FilterWakuMessage, version = 0): Result[WakuMessage, st
#### Serialization and deserialization #### Serialization and deserialization
proc writeValue*(writer: var JsonWriter[RestJson], value: Base64String)
{.raises: [IOError].} =
writer.writeValue(string(value))
proc writeValue*(writer: var JsonWriter[RestJson], value: FilterWakuMessage) proc writeValue*(writer: var JsonWriter[RestJson], value: FilterWakuMessage)
{.raises: [IOError].} = {.raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("payload", value.payload) writer.writeField("payload", value.payload)
if value.contentTopic.isSome: if value.contentTopic.isSome():
writer.writeField("contentTopic", value.contentTopic) writer.writeField("contentTopic", value.contentTopic.get())
if value.version.isSome: if value.version.isSome():
writer.writeField("version", value.version) writer.writeField("version", value.version.get())
if value.timestamp.isSome: if value.timestamp.isSome():
writer.writeField("timestamp", value.timestamp) writer.writeField("timestamp", value.timestamp.get())
writer.endRecord() writer.endRecord()
proc writeValue*(writer: var JsonWriter[RestJson], value: FilterLegacySubscribeRequest) proc writeValue*(writer: var JsonWriter, value: FilterLegacySubscribeRequest)
{.raises: [IOError].} = {.raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("pubsubTopic", value.pubsubTopic) writer.writeField("pubsubTopic", value.pubsubTopic)
writer.writeField("contentFilters", value.contentFilters) writer.writeField("contentFilters", value.contentFilters)
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], value: var Base64String) proc writeValue*(writer: var JsonWriter[RestJson], value: FilterSubscriptionResponse)
{.raises: [SerializationError, IOError].} = {.raises: [IOError].} =
value = Base64String(reader.readValue(string)) writer.beginRecord()
writer.writeField("requestId", value.requestId)
writer.writeField("statusCode", value.statusCode)
writer.writeField("statusDesc", value.statusDesc)
writer.endRecord()
proc writeValue*(writer: var JsonWriter[RestJson], value: FilterSubscribeRequest)
{.raises: [IOError].} =
writer.beginRecord()
writer.writeField("requestId", value.requestId)
if value.pubsubTopic.isSome():
writer.writeField("pubsubTopic", value.pubsubTopic.get())
writer.writeField("contentFilters", value.contentFilters)
writer.endRecord()
proc writeValue*(writer: var JsonWriter[RestJson], value: FilterSubscriberPing)
{.raises: [IOError].} =
writer.beginRecord()
writer.writeField("requestId", value.requestId)
writer.endRecord()
proc writeValue*(writer: var JsonWriter[RestJson], value: FilterUnsubscribeRequest)
{.raises: [IOError].} =
writer.beginRecord()
writer.writeField("requestId", value.requestId)
if value.pubsubTopic.isSome():
writer.writeField("pubsubTopic", value.pubsubTopic.get())
writer.writeField("contentFilters", value.contentFilters)
writer.endRecord()
proc writeValue*(writer: var JsonWriter[RestJson], value: FilterUnsubscribeAllRequest)
{.raises: [IOError].} =
writer.beginRecord()
writer.writeField("requestId", value.requestId)
writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], value: var FilterWakuMessage) proc readValue*(reader: var JsonReader[RestJson], value: var FilterWakuMessage)
{.raises: [SerializationError, IOError].} = {.raises: [SerializationError, IOError].} =

View File

@ -54,26 +54,18 @@ proc toWakuMessage*(msg: RelayWakuMessage, version = 0): Result[WakuMessage, str
#### Serialization and deserialization #### Serialization and deserialization
proc writeValue*(writer: var JsonWriter[RestJson], value: Base64String)
{.raises: [IOError].} =
writer.writeValue(string(value))
proc writeValue*(writer: var JsonWriter[RestJson], value: RelayWakuMessage) proc writeValue*(writer: var JsonWriter[RestJson], value: RelayWakuMessage)
{.raises: [IOError].} = {.raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("payload", value.payload) writer.writeField("payload", value.payload)
if value.contentTopic.isSome: if value.contentTopic.isSome():
writer.writeField("contentTopic", value.contentTopic) writer.writeField("contentTopic", value.contentTopic.get())
if value.version.isSome: if value.version.isSome():
writer.writeField("version", value.version) writer.writeField("version", value.version.get())
if value.timestamp.isSome: if value.timestamp.isSome():
writer.writeField("timestamp", value.timestamp) writer.writeField("timestamp", value.timestamp.get())
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], value: var Base64String)
{.raises: [SerializationError, IOError].} =
value = Base64String(reader.readValue(string))
proc readValue*(reader: var JsonReader[RestJson], value: var RelayWakuMessage) proc readValue*(reader: var JsonReader[RestJson], value: var RelayWakuMessage)
{.raises: [SerializationError, IOError].} = {.raises: [SerializationError, IOError].} =
var var

View File

@ -14,12 +14,16 @@ import
json_serialization/std/net, json_serialization/std/net,
json_serialization/std/sets, json_serialization/std/sets,
presto/common presto/common
import
../../common/base64
logScope: logScope:
topics = "waku node rest" topics = "waku node rest"
Json.createFlavor RestJson createJsonFlavor RestJson
Json.setWriter JsonWriter,
PreferredOutput = string
template unrecognizedFieldWarning* = template unrecognizedFieldWarning* =
# TODO: There should be a different notification mechanism for informing the # TODO: There should be a different notification mechanism for informing the
@ -31,6 +35,14 @@ template unrecognizedFieldWarning* =
type SerdesResult*[T] = Result[T, cstring] type SerdesResult*[T] = Result[T, cstring]
proc writeValue*(writer: var JsonWriter, value: Base64String)
{.gcsafe, raises: [IOError].} =
writer.writeValue(string(value))
proc readValue*(reader: var JsonReader, value: var Base64String)
{.gcsafe, raises: [SerializationError, IOError].} =
value = Base64String(reader.readValue(string))
proc decodeFromJsonString*[T](t: typedesc[T], proc decodeFromJsonString*[T](t: typedesc[T],
data: JsonString, data: JsonString,
requireAllFields = true): SerdesResult[T] = requireAllFields = true): SerdesResult[T] =

View File

@ -50,6 +50,10 @@ type
# field that contains error information # field that contains error information
errorMessage*: Option[string] errorMessage*: Option[string]
createJsonFlavor RestJson
Json.setWriter JsonWriter,
PreferredOutput = string
#### Type conversion #### Type conversion
@ -127,40 +131,26 @@ proc toStoreResponseRest*(histResp: HistoryResponse): StoreResponseRest =
cursor: cursor cursor: cursor
) )
## Beginning of Base64String serde
proc writeValue*(writer: var JsonWriter[RestJson],
value: Base64String)
{.raises: [IOError].} =
writer.writeValue(string(value))
proc readValue*(reader: var JsonReader[RestJson],
value: var Base64String)
{.raises: [SerializationError, IOError].} =
value = Base64String(reader.readValue(string))
## End of Base64String serde
## Beginning of StoreWakuMessage serde ## Beginning of StoreWakuMessage serde
proc writeValue*(writer: var JsonWriter[RestJson], proc writeValue*(writer: var JsonWriter,
value: StoreWakuMessage) value: StoreWakuMessage)
{.raises: [IOError].} = {.gcsafe, raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("payload", $value.payload) writer.writeField("payload", $value.payload)
if value.contentTopic.isSome: if value.contentTopic.isSome():
writer.writeField("content_topic", value.contentTopic) writer.writeField("content_topic", value.contentTopic.get())
if value.version.isSome: if value.version.isSome():
writer.writeField("version", value.version) writer.writeField("version", value.version.get())
if value.timestamp.isSome: if value.timestamp.isSome():
writer.writeField("timestamp", value.timestamp) writer.writeField("timestamp", value.timestamp.get())
if value.ephemeral.isSome: if value.ephemeral.isSome():
writer.writeField("ephemeral", value.ephemeral) writer.writeField("ephemeral", value.ephemeral.get())
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], proc readValue*(reader: var JsonReader,
value: var StoreWakuMessage) value: var StoreWakuMessage)
{.raises: [SerializationError, IOError].} = {.gcsafe, raises: [SerializationError, IOError].} =
var var
payload = none(Base64String) payload = none(Base64String)
contentTopic = none(ContentTopic) contentTopic = none(ContentTopic)
@ -205,16 +195,16 @@ proc readValue*(reader: var JsonReader[RestJson],
## Beginning of MessageDigest serde ## Beginning of MessageDigest serde
proc writeValue*(writer: var JsonWriter[RestJson], proc writeValue*(writer: var JsonWriter,
value: MessageDigest) value: MessageDigest)
{.raises: [IOError].} = {.gcsafe, raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("data", base64.encode(value.data)) writer.writeField("data", base64.encode(value.data))
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], proc readValue*(reader: var JsonReader,
value: var MessageDigest) value: var MessageDigest)
{.raises: [SerializationError, IOError].} = {.gcsafe, raises: [SerializationError, IOError].} =
var var
data = none(seq[byte]) data = none(seq[byte])
@ -240,9 +230,9 @@ proc readValue*(reader: var JsonReader[RestJson],
## Beginning of HistoryCursorRest serde ## Beginning of HistoryCursorRest serde
proc writeValue*(writer: var JsonWriter[RestJson], proc writeValue*(writer: var JsonWriter,
value: HistoryCursorRest) value: HistoryCursorRest)
{.raises: [IOError].} = {.gcsafe, raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("pubsub_topic", value.pubsubTopic) writer.writeField("pubsub_topic", value.pubsubTopic)
writer.writeField("sender_time", value.senderTime) writer.writeField("sender_time", value.senderTime)
@ -250,9 +240,9 @@ proc writeValue*(writer: var JsonWriter[RestJson],
writer.writeField("digest", value.digest) writer.writeField("digest", value.digest)
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], proc readValue*(reader: var JsonReader,
value: var HistoryCursorRest) value: var HistoryCursorRest)
{.raises: [SerializationError, IOError].} = {.gcsafe, raises: [SerializationError, IOError].} =
var var
pubsubTopic = none(PubsubTopic) pubsubTopic = none(PubsubTopic)
senderTime = none(Timestamp) senderTime = none(Timestamp)
@ -303,20 +293,20 @@ proc readValue*(reader: var JsonReader[RestJson],
## Beginning of StoreResponseRest serde ## Beginning of StoreResponseRest serde
proc writeValue*(writer: var JsonWriter[RestJson], proc writeValue*(writer: var JsonWriter,
value: StoreResponseRest) value: StoreResponseRest)
{.raises: [IOError].} = {.gcsafe, raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
writer.writeField("messages", value.messages) writer.writeField("messages", value.messages)
if value.cursor.isSome: if value.cursor.isSome():
writer.writeField("cursor", value.cursor) writer.writeField("cursor", value.cursor.get())
if value.errorMessage.isSome: if value.errorMessage.isSome():
writer.writeField("error_message", value.errorMessage) writer.writeField("error_message", value.errorMessage.get())
writer.endRecord() writer.endRecord()
proc readValue*(reader: var JsonReader[RestJson], proc readValue*(reader: var JsonReader,
value: var StoreResponseRest) value: var StoreResponseRest)
{.raises: [SerializationError, IOError].} = {.gcsafe, raises: [SerializationError, IOError].} =
var var
messages = none(seq[StoreWakuMessage]) messages = none(seq[StoreWakuMessage])
cursor = none(HistoryCursorRest) cursor = none(HistoryCursorRest)
@ -352,18 +342,18 @@ proc readValue*(reader: var JsonReader[RestJson],
## Beginning of StoreRequestRest serde ## Beginning of StoreRequestRest serde
proc writeValue*(writer: var JsonWriter[RestJson], proc writeValue*(writer: var JsonWriter,
value: StoreRequestRest) value: StoreRequestRest)
{.raises: [IOError].} = {.gcsafe, raises: [IOError].} =
writer.beginRecord() writer.beginRecord()
if value.pubsubTopic.isSome: if value.pubsubTopic.isSome():
writer.writeField("pubsub_topic", value.pubsubTopic) writer.writeField("pubsub_topic", value.pubsubTopic.get())
writer.writeField("content_topics", value.contentTopics) writer.writeField("content_topics", value.contentTopics)
if value.startTime.isSome: if value.startTime.isSome():
writer.writeField("start_time", value.startTime) writer.writeField("start_time", value.startTime.get())
if value.endTime.isSome: if value.endTime.isSome():
writer.writeField("end_time", value.endTime) writer.writeField("end_time", value.endTime.get())
writer.writeField("page_size", value.pageSize) writer.writeField("page_size", value.pageSize)
writer.writeField("ascending", value.ascending) writer.writeField("ascending", value.ascending)
writer.endRecord() writer.endRecord()