Skip to content

Releases: waku-org/nwaku

v0.33.1

03 Oct 15:32
v0.33.1
1d16cea
Compare
Choose a tag to compare

v0.33.1 (2024-10-03)

Bug fixes

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0
WAKU-SYNC draft /vac/waku/sync/1.0.0

v0.33.0

30 Sep 17:04
v0.33.0
73c1d60
Compare
Choose a tag to compare

v0.33.0 (2024-09-30)

Notes:

  • The --pubsub-topic CLI configuration has been deprecated and support for it will be removed on release v0.35.0. In order to migrate, please use the --shard configuration instead. For example, instead of --pubsub-topic=/waku/2/rs/<CLUSTER_ID>/<SHARD_ID>, use --cluster-id=<CLUSTER_ID> once and --shard=<SHARD_ID> for each subscribed shard
  • The --rest-private CLI configuration has been removed. Please delete any reference to it when running your nodes
  • Introduced the --reliability CLI configuration, activating the new experimental StoreV3 message confirmation protocol
  • DOS protection configurations of non-relay, req/resp protocols are changed
    • --request-rate-limit and --request-rate-period options are no longer supported.
    • --rate-limit CLI configuration is now available.
      • The new flag can describe various rate-limit requirements for each protocol supported. The setting can be repeated, each instance can define exactly one rate-limit option.
      • Format is <protocol>:volume/period<time-unit>
      • If protocol is not given, settings will be taken as default for un-set protocols. Ex: 80/2s
      • Supported protocols are: lightpush|filter|px|store|storev2|storev3
      • volume must be an integer value, representing number of requests over the period of time allowed.
      • period <time-unit> must be an integer with defined unit as one of h|m|s|ms
      • If not set, no rate limit will be applied to request/response protocols, except for the filter protocol.

Release highlights

  • a new experimental reliability protocol has been implemented, leveraging StoreV3 to confirm message delivery
  • Peer Exchange protocol can now be protected by rate-limit boundary checks.
  • Fine-grained configuration of DOS protection is available with this release. See, "Notes" above.

Bug Fixes

Changes

  • append current version in agentString which is used by the identify protocol (#3057) (368bb3c1)
  • rate limit peer exchange protocol, enhanced response status in RPC (#3035) (0a7f16a3)
  • Switch libnegentropy library build from shared to static linkage (#3041) (83f25c3e)
  • libwaku reduce repetitive code by adding a template handling resp returns (#3032) (1713f562)
  • libwaku - extending the library with peer_manager and peer_exchange features (#3026) (5ea1cf0c)
  • use submodule nph in CI to check lint (#3027) (ce9a8c46)
  • deprecating pubsub topic (#2997) (a3cd2a1a)
  • lightpush - error metric less variable by only setting a fixed string (#3020) (d3e6717a)
  • Bump dependencies for v0.33 (#3017) (6c890de4)
  • enhance libpq management (#3015) (45319f09)
  • per limit split of PostgreSQL queries (#3008) (e1e05afb)
  • Added metrics to liteprotocoltester (#3002) (8baf627f)
  • extending store metrics (#2995) (fd83b42f)
  • Better timing and requestId detail for slower store db queries (#2994) (e8a49b76)
  • remove unused setting from external_config.nim (#3004) (fd84363e)
  • delivery monitor for store v3 reliability protocol (#2977) (0f68274c)

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0
WAKU-SYNC draft /vac/waku/sync/1.0.0

v0.32.0

30 Aug 18:11
v0.32.0
148a48a
Compare
Choose a tag to compare

v0.32.0 (2024-08-30)

Notes:

  • A new discv5-only CLI flag was introduced, which if set to true will perform optimizations for nodes that only run the DiscV5 service
  • The protected-topic CLI config item has been deprecated in favor of the new protected-shard configuration. Protected topics are still supported and will be completely removed in two releases time for v0.34.0

Release highlights

  • Merged Nwaku Sync protocol for synchronizing store nodes
  • Added Store Resume mechanism to retrieve messages sent when the node was offline

Features

Bug Fixes

Changes

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0
WAKU-SYNC draft /vac/waku/sync/1.0.0

Release v0.31.1

19 Aug 14:13
v0.31.1
fde668a
Compare
Choose a tag to compare

v0.31.1 (2024-08-12)

Changes

Bug fixes

  • Use of detach finalize when needed to remove old Postgres partitions 2966

  • Prevent legacy store from creating new partitions as that approach blocked the database.
    2931

  • lightpush better feedback in case the lightpush service node does not have peers 2951

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
WAKU2-STORE draft /vac/waku/store-query/3.0.0
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

v0.31.0

30 Jul 09:53
v0.31.0
b34008e
Compare
Choose a tag to compare

v0.31.0 (2024-07-16)

Notes

  • Named sharding has been deprecated in favor of static sharding. Topics in formats other than /waku/2/rs/<cluster>/<shard> are no longer supported

Features

Bug Fixes

  • bug(storev3): can't advance cursor #2745
  • chore(storev3): only select the messageHash column when using a store query with include_data: false #2637
  • rln_keystore_generator improve error handling for unrecoverable failure (#2881) (1c9eb2741)
  • duplicate message forwarding in filter service (#2842) (99149ea9d)
  • only set disconnect time on left event (#2831) (01050138c)
  • adding peer exchange peers to the peerStore (#2824) (325e13169)
  • ci use --tags to match non-annotated tags (#2814) (317c83dc1)
  • update peers ENRs in peer store in case they are updated (#2818) (cda18f96c)
  • mount metadata in wakucanary (#2793) (3b27aee82)

Changes

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
WAKU2-STORE draft /vac/waku/store-query/3.0.0
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

v0.30.2

08 Jul 13:26
v0.30.2
b5f0c85
Compare
Choose a tag to compare

v0.30.2 (2024-07-12)

Release highlights

  • RLN message limit to 100 messages per epoch (10 minutes.)
  • Avoid exclusive access when creating new partitions in the PostgreSQL messages table.

Changes

  • chore(rln): rln message limit to 100 (#2883)
  • fix: postgres_driver better partition creation without exclusive access 28bdb70b

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

Release v0.30.1

02 Jul 20:33
v0.30.1
dc337cd
Compare
Choose a tag to compare

v0.30.1 (2024-07-03)

What's changed

Notes

  • Before upgrading to this version, if you are currently using RLN, make sure to remove your existing keystore folder and rln_tree
    and start your installation from scratch, as explained in nwaku-compose.

Release highlights

  • RLN_v2 is used. The maximum rate can be set toN messages per epoch, instead of just one message per epoch. See this for more details. Notice that we established an epoch of 10 minutes.

Changes

  • rln-relay: add chain-id flag to wakunode and restrict usage if mismatches rpc provider (#2858)
  • rln: fix nullifierlog vulnerability (#2855)
  • chore: add TWN parameters for RLNv2 (#2843)
  • fix(rln-relay): clear nullifier log only if length is over max epoch gap (#2836)
  • rlnv2: clean fork of rlnv2 (#2828) (a02832fe)
  • zerokit: bump submodule (#2830) (bd064882)

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

Release v0.29.0

19 Jun 20:06
v0.29.0
9a5d90d
Compare
Choose a tag to compare

v0.29.0 (2024-06-19)

What's Changed

Notes:

  • Named sharding will be deprecated in favor of static sharding. Topics in formats other than /waku/2/rs/<cluster>/<shard> will stop being supported starting from v0.31.0

Release highlights:

  • Android support in libwaku
  • Discovery is available in libwaku
  • New LiteProcotolTester tool
  • RLN proofs as a lightpush service

Features

Bug Fixes

  • Better sync lock in partition creation (#2783) (8d3bbb1b)
  • Multi nat initialization causing dead lock in waku tests + serialize test runs to avoid timing and port occupied issues (#2799) (5989de88)
  • Increase on chain group manager starting balance (#2795) (e72bb7e7)
  • More detailed logs to differentiate shards with peers (#2794) (55a87d21)
  • waku_archive: only allow a single instance to execute migrations (#2736) (88b8e186)
  • Move postgres related tests under linux conditional (57ecb3e0)
  • Invalid cursor returning messages (#2724) (a65b13fc)
  • Do not print the db url on error (#2725) (40296f9d)
  • Use when instead of if for adding soname on linux (#2721) (cbaefeb3)
  • Store v3 bug fixes (#2718) (4a6ec468)

Changes

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

Release v0.28.0

22 May 08:25
v0.28.0
217dc7a
Compare
Choose a tag to compare

v0.28.0 (2024-05-22)

What's Changed

Release highlights:

  • Store V3 has been merged
  • Implemented an enhanced and more robust node health check mechanism
  • Introduced the Waku object to libwaku in order to setup a node and its protocols

Features

Bug Fixes

Changes

  • move code from wakunode2 to a more generic place, waku (#2670) (840e0122)
  • closing ping streams (#2692) (7d4857ea)
  • Postgres enhance get oldest timestamp (#2687) (8451cf8e)
  • rln-relay: health check should account for window of roots (#2664) (6a1af922)
  • updating TWN bootstrap fleet to waku.sandbox (#2638) (22f64bbd)
  • simplify migration script postgres version_4 (#2674) (91c85738)
  • big refactor to add waku component in libwaku instead of only waku node (#2658) (2463527b)
  • simplify app.nim and move discovery items to appropriate modules (#2657) (404810aa)
  • log enhancement for message reliability analysis (#2640) (d5e0e4a9)
  • metrics server. Simplify app.nim module (#2650) (4a110f65)
  • change nim-libp2p branch from unstable to master (#2648) (d09c9c91)
  • Enabling to use a full node for lightpush via rest api without lightpush client configured (#2626) (2a4c0f15)
  • rln-relay: resultify rln-relay 1/n (#2607) (1d7ff288)
  • ci.yml - avoid calling brew link libpq --force on macos (#2627) (05f332ed)
  • an enhanced version of convenient node health check script (#2624) (7f8d8e80)
  • rln-db-inspector: add more logging to find zero leaf indices (#2617) (40752b1e)
  • addition of waku_api/rest/builder.nim and reduce app.nim (#2623) (b28207ab)
  • Separation of node health and initialization state from rln_relay (#2612) (6d135b0d)
  • enabling rest api as default (#2600) (6bc79bc7)
  • move app.nim and networks_config.nim to waku/factory (#2608) (1ba9df4b)
  • workflow to autoassign PR (#2604) (10d36c39)
  • start moving discovery modules to waku/discovery (#2587) (828583ad)
  • don't create docker images for users without org's secrets (#2585) (51ec12be)

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

The Waku v1 implementation has been removed from this repository and can be found in a separate Waku Legacy repository.

Release v0.27.0

19 Apr 11:14
v0.27.0
99c1d58
Compare
Choose a tag to compare

v0.27.0 (2024-04-19)

Note:

  • Filter v1 protocol and its REST-API access have been deprecated.
  • A new field of the WakuMetadataRequest protobuf for shards was introduced. The old shards field (2) will be deprecated in 2 releases time
  • CLI flags --requestRateLimit and --requestRatePeriod have been added for rate limiting configuration. Period is measured in seconds. Limits are measured per protocol per period of time. Over limit will result in TOO_MANY_REQUEST (429) response.

What's Changed

Release highlights:

  • Introduced configurable rate limiting for lightpush and store requests
  • Sync time has been considerably reduced for node initialization
  • Significant refactors were made to node initialization and WakuArchive logic as work towards C-bindings and Store V3 features

Features

Bug Fixes

Changes

This release supports the following libp2p protocols:

Protocol Spec status Protocol id
11/WAKU2-RELAY stable /vac/waku/relay/2.0.0
12/WAKU2-FILTER draft /vac/waku/filter/2.0.0-beta1
/vac/waku/filter-subscribe/2.0.0-beta1
/vac/waku/filter-push/2.0.0-beta1
13/WAKU2-STORE draft /vac/waku/store/2.0.0-beta4
19/WAKU2-LIGHTPUSH draft /vac/waku/lightpush/2.0.0-beta1
66/WAKU2-METADATA raw /vac/waku/metadata/1.0.0

The Waku v1 implementation has been removed from this repository and can be found in a separate Waku Legacy repository.