From 063c91aa7e1274708d2e271c7aed4168a643f250 Mon Sep 17 00:00:00 2001 From: Hanno Cornelius <68783915+jm-clius@users.noreply.github.com> Date: Thu, 31 Mar 2022 11:16:20 +0200 Subject: [PATCH 1/2] docs: release v0.9 --- CHANGELOG.md | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f197fb212..ff16c0299 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,20 +1,57 @@ -## Next version +## 2021-03-31 v0.9 +Release highlights: + +- Support for Peer Exchange (PX) when a peer prunes a [`11/WAKU2-RELAY`](https://rfc.vac.dev/spec/11/) mesh due to oversubscription. This can significantly increase mesh stability. +- Improved start-up times through managing the size of the underlying persistent message storage. +- New websocket connections are no longer blocked due to parsing failures in other connections. + +The full list of changes is below. ### Features + - Support for bootstrapping [`33/WAKU-DISCV5`](https://rfc.vac.dev/spec/33) via [DNS discovery](https://rfc.vac.dev/spec/10/#discovery-methods) +- Support for GossipSub [Peer Exchange](https://github.com/libp2p/specs/blob/master/pubsub/gossipsub/gossipsub-v1.1.md#prune-backoff-and-peer-exchange) ### Changes - Waku v1 <> v2 bridge now supports DNS `multiaddrs` - Waku v1 <> v2 bridge now validates content topics before attempting to bridge a message from Waku v2 to Waku v1 -- Message store now auto deletes messages once over specified `--store-capacity`. This can significantly improve node start-up times. +- Persistent message storage now auto deletes messages once over specified `--store-capacity`. This can significantly improve node start-up times. +- Renamed Waku v1 <> v2 bridge `make` target and binary to `wakubridge` +- Increased `store` logging to assist with debugging +- Increased `rln-relay` logging to assist with debugging +- Message metrics no longer include the content topic as a dimension to keep Prometheus metric cardinality under control +- Waku v2 `toy-chat` application now sets the sender timestamp when creating messages +- The type of the `proof` field of the `WakuMessage` is changed to `RateLimitProof` +- Added method to the JSON-RPC API that returns the git tag and commit hash of the binary +- The node's ENR is now included in the JSON-RPC API response when requesting node info ### Fixes +- Fixed incorrect conversion of seconds to nanosecond timestamps +- Fixed store queries blocking due to failure in resource clean up +- Fixed underlying issue where new websocket connections are blocked due to parsing failures in other connections +- Fixed failure to log the ENR necessary for a discv5 connection to the node + ### Docs -Added [tutorial]( ) on communicating with waku2 test fleets via the chat2 `toy-chat` application in spam-protected mode using [`17/WAKU-RLN-RELAY`](https://rfc.vac.dev/spec/17/). + +- Added [RAM requirements](https://github.com/status-im/nim-waku/tree/ee96705c7fbe4063b780ac43b7edee2f6c4e351b/waku/v2#wakunode) to `wakunode2` build instructions +- Added [tutorial](https://github.com/status-im/nim-waku/blob/ee96705c7fbe4063b780ac43b7edee2f6c4e351b/docs/tutorial/rln-chat2-live-testnet.md) on communicating with waku2 test fleets via the chat2 `toy-chat` application in spam-protected mode using [`17/WAKU-RLN-RELAY`](https://rfc.vac.dev/spec/17/). +- Added a [section on bug reporting](https://github.com/status-im/nim-waku/blob/ee96705c7fbe4063b780ac43b7edee2f6c4e351b/README.md#bugs-questions--features) to `wakunode2` README +- Fixed broken links in the [JSON-RPC API Tutorial](https://github.com/status-im/nim-waku/blob/5ceef37e15a15c52cbc589f0b366018e81a958ef/docs/tutorial/jsonrpc-api.md) + +This release supports the following [libp2p protocols](https://docs.libp2p.io/concepts/protocols/): +| Protocol | Spec status | Protocol id | +| ---: | :---: | :--- | +| [`11/WAKU2-RELAY`](https://rfc.vac.dev/spec/11/) | `stable` | `/vac/waku/relay/2.0.0` | +| [`12/WAKU2-FILTER`](https://rfc.vac.dev/spec/12/) | `draft` | `/vac/waku/filter/2.0.0-beta1` | +| [`13/WAKU2-STORE`](https://rfc.vac.dev/spec/13/) | `draft` | `/vac/waku/store/2.0.0-beta4` | +| [`18/WAKU2-SWAP`](https://rfc.vac.dev/spec/18/) | `draft` | `/vac/waku/swap/2.0.0-beta1` | +| [`19/WAKU2-LIGHTPUSH`](https://rfc.vac.dev/spec/19/) | `draft` | `/vac/waku/lightpush/2.0.0-beta1` | + +The Waku v1 implementation is stable but not under active development. ## 2021-03-03 v0.8 From 54d64a63fed236bd33667db225a3a4f6cccdb71c Mon Sep 17 00:00:00 2001 From: Sanaz Taheri Boshrooyeh <35961250+staheri14@users.noreply.github.com> Date: Thu, 31 Mar 2022 12:15:00 -0800 Subject: [PATCH 2/2] feat: make the rln-relay protocol available in the waku docker image (#924) --- Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 5820facae..b64686655 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,6 +4,7 @@ FROM alpine:3.15 AS nim-build ARG NIM_PARAMS ARG MAKE_TARGET=wakunode2 +ARG RLN=true # Get build tools and required header files RUN apk add --no-cache bash git rust cargo build-base pcre-dev linux-headers @@ -18,7 +19,7 @@ RUN git submodule update --init --recursive RUN make -j$(nproc) deps # Build the final node binary -RUN make -j$(nproc) $MAKE_TARGET NIM_PARAMS="$NIM_PARAMS" +RUN make -j$(nproc) $MAKE_TARGET NIM_PARAMS="$NIM_PARAMS" RLN="$RLN" # ACTUAL IMAGE ------------------------------------------------------- @@ -44,7 +45,7 @@ RUN ln -s /usr/lib/libpcre.so /usr/lib/libpcre.so.3 COPY --from=nim-build /app/build/$MAKE_TARGET /usr/local/bin/ # If rln enabled: fix for 'Error loading shared library vendor/rln/target/debug/librln.so: No such file or directory' -# COPY --from=nim-build /app/vendor/rln/target/debug/librln.so vendor/rln/target/debug/librln.so +COPY --from=nim-build /app/vendor/rln/target/debug/librln.so vendor/rln/target/debug/librln.so # Copy migration scripts for DB upgrades COPY --from=nim-build /app/waku/v2/node/storage/migration/migrations_scripts/ /app/waku/v2/node/storage/migration/migrations_scripts/