2021-05-11 v0.3
Pre-release
Pre-release
This release contains the following:
Features
- Start of
RLN relayimplementation - Start of
swapimplementation - Start of fault-tolerant
storeimplementation - Initial
bridgeimplementation between Waku v1 and v2 protocols - Initial
lightpushimplementation - A peer manager for
relay,filter,storeandswappeers - Persistent storage for peers: A node with this feature enabled will now attempt to reconnect to
relaypeers after a restart. It will respect the gossipsub PRUNE backoff period before attempting to do so. --persist-peersCLI option to persist peers in local storage--persist-messagesCLI option to store historical messages locally--keep-aliveCLI option to maintain a stable connection torelaypeers on idle topics- A CLI chat application (
chat2) over Waku v2 with bridging to matterbridge
Changes
General refactoring
- Split out
waku_typestypes into the right place; createutilsfolder. - Change type of
contentTopicinContentFiltertostring. - Replace sequence of
contentTopicsinContentFilterwith a singlecontentTopic. - Add
timestampfield toWakuMessage. - Ensure CLI config parameters use a consistent naming scheme. Summary of changes here.
Docs
Several clarifications and additions aimed at contributors, including
- information on how to query Status test fleet for node addresses,
- how to view logs, and
- how to update submodules.
Schema
- Add
Messagetable to the persistent message store. This table replaces the oldmessagestable. It has two additional columns, namelypubsubTopic, andversion.
- Add
Peertable for persistent peer storage.
API
- JSON-RPC Admin API: Added a
postmethod to connect to peers on an ad-hoc basis. - Nim API: PubSub topic
subscribeandunsubscribeno longer returns a future (removedasyncdesignation). HistoryQuery: AddedpubsubTopicfield. Message history can now be filtered and queried based on thepubsubTopic.HistoryQuery: Added support for querying a time window by specifying start and end times.
Fixes
- Running nodes can now be shut down gracefully
- Content filtering now works on any PubSub topic and not just the
wakudefault. - Nodes can now mount protocols without supporting
relayas a capability
The Waku v2 suite of protocols are still in a raw/draft state.
This release supports the following libp2p protocols:
| Protocol | Spec status | Protocol id |
|---|---|---|
17/WAKU-RLN |
raw |
/vac/waku/waku-rln-relay/2.0.0-alpha1 |
18/WAKU2-SWAP |
raw |
/vac/waku/swap/2.0.0-alpha1 |
19/WAKU2-LIGHTPUSH |
raw |
/vac/waku/lightpush/2.0.0-alpha1 |
11/WAKU2-RELAY |
draft |
/vac/waku/relay/2.0.0-beta2 |
12/WAKU2-FILTER |
draft |
/vac/waku/filter/2.0.0-beta1 |
13/WAKU2-STORE |
draft |
/vac/waku/store/2.0.0-beta3 |
The Waku v1 implementation is stable but not under active development.