Skip to content

Releases: waku-org/nwaku

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.

Release v0.26.0

11 Mar 15:05
v0.26.0
5beef0c
Compare
Choose a tag to compare

v0.26.0 (2024-03-07)

Note:

  • JSON-RPC API has been removed completely. Instead we recommend you to utilize REST API endpoints that have same and extended functionality.
    Please have a look at Waku's REST-API reference: https://waku-org.github.io/waku-rest-api
  • Support for Cross-Origin-Resource-Sharing (CORS headers) is added for our REST-API services. This allows you to access our REST-API from a browser.
    New repeatable CLI flag is added by this feature:
    --rest-allow-origin="example.com" or --rest-allow-origin="127.0.0.0:*"
    Flag allows using wildcards (* and ?) in the origin string.
  • Store protocol now has a better support for controlling DB size of Postgres store. This feature needs no user action.

Announcement:

Please notice that from the next release (0.27.0) we will deprecate features.

  • We will decomission the Filter v1 protocol and its REST-API access.

Features

Bug Fixes

  • rln-relay: make nullifier log abide by epoch ordering (#2508) (beba14dc)
  • postgres: import under feature flag (#2500) (e692edf6)
  • notify Waku Metadata when Waku Filter subscribe to a topic (#2493) (91e3f8cd)
  • time on 32 bits architecture (#2492) (0a751228)
  • return message id on waku_relay_publish (#2485) (045091a9)
  • bindings: base64 payload and key for content topic (#2435) (d01585e9)
  • rln-relay: regex pattern match for extended domains (#2444) (29b0c0b8)
  • checking for keystore file existence (#2427) (8f487a21)
  • rln-relay: graceful shutdown with non-zero exit code (#2429) (22026b7e)
  • check max message size in validator according to configured value (#2424) (731dfcbd)
  • wakunode2: move node config inside app init branch (#2423) (0dac9f9d)

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.

v0.26.0-rc.0

07 Mar 13:00
v0.26.0-rc.0
5b87e12
Compare
Choose a tag to compare
v0.26.0-rc.0 Pre-release
Pre-release

Generated at Thu Mar 7 13:00:19 UTC 2024

Features

Bug Fixes

  • rln-relay: make nullifier log abide by epoch ordering (#2508) (beba14dc)
  • postgres: import under feature flag (#2500) (e692edf6)
  • notify Waku Metadata when Waku Filter subscribe to a topic (#2493) (91e3f8cd)
  • time on 32 bits architecture (#2492) (0a751228)
  • return message id on waku_relay_publish (#2485) (045091a9)
  • bindings: base64 payload and key for content topic (#2435) (d01585e9)
  • rln-relay: regex pattern match for extended domains (#2444) (29b0c0b8)
  • checking for keystore file existence (#2427) (8f487a21)
  • rln-relay: graceful shutdown with non-zero exit code (#2429) (22026b7e)
  • check max message size in validator according to configured value (#2424) (731dfcbd)
  • wakunode2: move node config inside app init branch (#2423) (0dac9f9d)

Changes

Release v0.25.0

14 Feb 14:50
5e7e843
Compare
Choose a tag to compare

v0.25.0

Note:
Waku Filter v2 now has three additional configuration options
--filter-max-peers-to-serve=1000 drives how many peers can subscribe at once and
--filter-max-criteria=1000 defines what is the maximum criterion stored per each peers

This release introduces a major change in Filter v2 protocol subscription management.
From now each subscribed peer needs to refresh its living subscriptions by sending a SUBSCRIBER_PING message every 5 minutes by default, otherwise the peer's subscription will be removed.
--filter-subscription-timeout=300 defines configurable timeout for the subscriptions (in seconds).

New experimental feature, shard aware peer manager for relay protocol can be activated by the flag:
--relay-shard-manager=true|false
It is disabled by default.

Announcement:

Please notice that from the next release (0.26.0) we will deprecate features.

  • JSON-RPC API will be removed completely. Instead we recommend you to utilize REST API endpoints that have same and extended functionality.
  • We will retire websockets support for RLN on-chain group management. You are expected to use HTTP version of ETH_CLIENT_ADDRESS

Features

  • running validators in /relay/v1/auto/messages/{topic} (#2394) (e4e147bc)
  • rln-relay-v2: update C FFI api's and serde (#2385) (b88facd0)
  • running validators in /relay/v1/messages/{pubsubTopic} (#2373) (59d8b620)
  • shard aware relay peer management (#2332) (edca1df1)

Bug Fixes

  • adding rln validator as default (#2367) (bb58a63a)
  • Fix test for filter client receiving messages after restart (#2360) (7de91d92)
  • making filter admin data test order independent (#2355) (8a9fad29)

Changes

  • rln-relay-v2: use rln-v2 contract code (#2381) (c55ca067)
  • v0.25 vendor bump and associated fixes (#2352) (761ce7b1)
  • handle errors w.r.t. configured cluster-id and pubsub topics (#2368) (e04e35e2)
  • add coverage target to Makefile (#2382) (57378873)
  • Add check spell allowed words (#2383) (c1121dd1)
  • adding nwaku compose image update to release process (#2370) (4f06dcff)
  • changing digest and hash log format from bytes to hex (#2363) (025c6ec9)
  • log messageHash for lightpush request that helps in debugging (#2366) (42204115)
  • rln-relay: enabled http based polling in OnchainGroupManager (#2364) (efdc5244)
  • improve POST /relay/v1/auto/messages/{topic} error handling (#2339) (f841454e)
  • Refactor of FilterV2 subscription management with Time-to-live maintenance (#2341) (c3358409)
  • Bump nim-dnsdisc (#2354) (3d816c08)
  • postgres-adoption.md add metadata title, description, and better first-readable-title (#2346) (2f8e8bcb)
  • fix typo (#2348) (a4a8dee3)

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.

v0.25.0-rc.0

14 Feb 11:02
v0.25.0-rc.0
e4e147b
Compare
Choose a tag to compare
v0.25.0-rc.0 Pre-release
Pre-release

Generated at Wed Feb 14 11:02:28 UTC 2024

Release v0.24.0

23 Jan 14:32
v0.24.0
7fc8e32
Compare
Choose a tag to compare

v0.24.0

Note: The Waku message size limit (150 KiB) is now enforced according to the specifications. To change this limit please use --max-msg-size="1MiB"

Note: --ip-colocation-limit=2 is the new parameter for limiting connections from the same IP

What's Changed

Release highlights:

  • IP colocation filter can now be changed via a configuration parameter.
  • New filter admin endpoint can now be used to access subscription data.
  • Waku message size limit can now be changed via a configuration parameter.

Features

  • feat: adding filter data admin endpoint (REST) #2314
  • ip colocation is parameterizable. if set to 0, it is disabled #2323

Bug Fixes

  • fix: revert "feat: shard aware peer management #2151" #2312
  • fix: setting connectivity loop interval to 15 seconds #2307
  • fix: set record to the Waku node builder in the examples as it is required #2328
  • fix(discv5): add bootnode filter exception #2267

Changes

  • update CHANGELOG.md for 0.23.0 #2309
  • test(store): Implement store tests #2235, #2240
  • refactor(store): HistoryQuery.direction #2263
  • test_driver_postgres: enhance test coverage, multiple and single topic #2301
  • chore: examples/nodejs - adapt code to latest callback and ctx/userData definitions #2281
  • chore: update CHANGELOG.md to reflect bug fix for issue #2317 #2340 in v0.23.1
  • test(peer-connection-managenent): functional tests #2321
  • docs: update post-release steps #2336
  • docs: fix typos across various documentation files #2310
  • test(peer-connection-managenent): functional tests #2321
  • bump vendors for 0.24.0 #2333
  • test(autosharding): functional tests #2318
  • docs: add benchmark around postgres adoption #2316
  • chore: set max Waku message size to 150KiB according to spec #2298

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.

v0.24.0-rc.1

18 Jan 16:45
v0.24.0-rc.1
7fc8e32
Compare
Choose a tag to compare
v0.24.0-rc.1 Pre-release
Pre-release

Generated at Thu Jan 18 16:45:53 UTC 2024

Features

Bug Fixes

  • Set record to the Waku Node Builder in the examples as it is required (#2328) (42ede93b)
  • discv5: add bootnode filter exception (#2267) (7b4f4bb1)
  • Revert "feat: shard aware peer management (#2151)" (#2312) (32668f43)
  • setting connectivity loop interval to 15 seconds (#2307) (a1b27edf)

Changes

  • update CHANGELOG.md for v0.24.0 (7fc8e322)
  • Update CHANGELOG.md to reflect bug fix for issue #2317 (#2340) in v0.23.1 (8ce8ec69)
  • update after release steps (#2336) (7f1682de)
  • Fix Typos Across Various Documentation Files (#2310) (3553fb4f)
  • add benchmar around postgres adoption (#2316) (b0c78052)
  • message.nim - set max message size to 150KiB according to spec (#2298) (ed09074c)
  • store: HistoryQuery.direction (#2263) (fae20bff)
  • examples/nodejs - adapt code to latest callback and ctx/userData definitions (#2281) (d01904e7)

v0.24.0-rc.0

10 Jan 14:38
v0.24.0-rc.0
8ce8ec6
Compare
Choose a tag to compare
v0.24.0-rc.0 Pre-release
Pre-release

Generated at Wed Jan 10 14:37:58 UTC 2024

Features

Bug Fixes

  • Set record to the Waku Node Builder in the examples as it is required (#2328) (42ede93b)
  • discv5: add bootnode filter exception (#2267) (7b4f4bb1)
  • Revert "feat: shard aware peer management (#2151)" (#2312) (32668f43)
  • setting connectivity loop interval to 15 seconds (#2307) (a1b27edf)

Changes

  • Update CHANGELOG.md to reflect bug fix for issue #2317 (#2340) in v0.23.1 (8ce8ec69)
  • update after release steps (#2336) (7f1682de)
  • Fix Typos Across Various Documentation Files (#2310) (3553fb4f)
  • add benchmar around postgres adoption (#2316) (b0c78052)
  • message.nim - set max message size to 150KiB according to spec (#2298) (ed09074c)
  • store: HistoryQuery.direction (#2263) (fae20bff)
  • examples/nodejs - adapt code to latest callback and ctx/userData definitions (#2281) (d01904e7)

v0.23.1-rc.0

05 Jan 17:46
dcd9333
Compare
Choose a tag to compare
v0.23.1-rc.0 Pre-release
Pre-release

Generated at Fri Jan 5 17:46:33 UTC 2024

Changes