Releases: waku-org/nwaku
v0.34.0-rc.1
Generated at Sun Nov 10 08:57:42 UTC 2024
Features
- change latency buckets (#3153) (956fde6e)
- libwaku: ping peer (#3144) (de11e576)
- windows support compress into one big commit (#3107) (ff21c01e)
Bug Fixes
- linting error (#3146) (b4d3678a)
- peer exchange libwaku response handling (#3141) (76606421)
- add more logs, stagger intervals & set prune offset to 10% for waku sync (#3142) (a386880b)
- add log and archive message ingress for sync (#3133) (80c7581a)
- add a limit of max 10 content topics per query (#3117) (c35dc549)
- avoid segfault by setting a default num peers requested in PX (#3122) (82fd5dde)
- returning peerIds in base 64 (#3105) (37edaf62)
- changing libwaku's error handling format (#3093) (2e6c299d)
- remove spammy log (#3091) (1d2b910f)
- out connections leak (#3077) (eb2bbae6)
- rejecting excess relay connections (#3065) (8b0884c7)
- static linking negentropy in ARM based mac (#3046) (256b7853)
Changes
- Partial version bumps for v0.34.0-rc.1 (#3172) (e3b84e35)
- removing protected-topic cli flg (#3160) (7ac1ebc2)
- support ping with multiple multiaddresses and close stream (#3154) (3665991a)
- Circuit relay (#3112) (cfde7eea)
- easy setup fleets for lpt (#3125) (268e7e66)
- saving peers enr capabilities (#3127) (69d9524f)
- networkmonitor: add missing field on RlnRelay init, set default for num of shard (#3136) (edcb0e15)
- add to libwaku peer id retrieval proc (#3124) (c5a825e2)
- adding to libwaku dial and disconnect by peerIds (#3111) (25da8102)
- dbconn - add requestId info as a comment in the database logs (#3110) (30c072a4)
- improving get_peer_ids_by_protocol by returning the available protocols of connected peers (#3109) (ed0ee5be)
- remove warnings (#3106) (c861fa9f)
- better store logs (#3103) (21b03551)
- Improve binding for waku_sync (#3102) (c3756e3a)
- improving and temporarily skipping flaky rln test (#3094) (a6ed80a5)
- update master after release v0.33.1 (#3089) (54c3083d)
- re-arrange function based on responsibility of peer-manager (#3086) (0f8e8740)
- waku_keystore: give some more context in case of error (#3064) (3ad613ca)
- bump negentropy (#3078) (643ab20f)
- Optimize store (#3061) (5875ed63)
- wrap peer store (#3051) (729e63f5)
- disabling metrics for libwaku (#3058) (b358c90f)
- test peer connection management (#3049) (711e7db1)
- updating upload and download artifact actions to v4 (#3047) (7c4a9717)
- Better database query logs and logarithmic scale in grafana store panels (#3048) (d68b06f1)
- extending store metrics (#3042) (fd83b42f)
v0.34.0-rc.0
Generated at Wed Oct 30 14:13:49 UTC 2024
Features
- change latency buckets (#3153) (956fde6e)
- libwaku: ping peer (#3144) (de11e576)
- windows support compress into one big commit (#3107) (ff21c01e)
Bug Fixes
- linting error (#3146) (b4d3678a)
- peer exchange libwaku response handling (#3141) (76606421)
- add more logs, stagger intervals & set prune offset to 10% for waku sync (#3142) (a386880b)
- add log and archive message ingress for sync (#3133) (80c7581a)
- add a limit of max 10 content topics per query (#3117) (c35dc549)
- avoid segfault by setting a default num peers requested in PX (#3122) (82fd5dde)
- returning peerIds in base 64 (#3105) (37edaf62)
- changing libwaku's error handling format (#3093) (2e6c299d)
- remove spammy log (#3091) (1d2b910f)
- out connections leak (#3077) (eb2bbae6)
- rejecting excess relay connections (#3065) (8b0884c7)
- static linking negentropy in ARM based mac (#3046) (256b7853)
Changes
- support ping with multiple multiaddresses and close stream (#3154) (3665991a)
- Circuit relay (#3112) (cfde7eea)
- easy setup fleets for lpt (#3125) (268e7e66)
- saving peers enr capabilities (#3127) (69d9524f)
- networkmonitor: add missing field on RlnRelay init, set default for num of shard (#3136) (edcb0e15)
- add to libwaku peer id retrieval proc (#3124) (c5a825e2)
- adding to libwaku dial and disconnect by peerIds (#3111) (25da8102)
- dbconn - add requestId info as a comment in the database logs (#3110) (30c072a4)
- improving get_peer_ids_by_protocol by returning the available protocols of connected peers (#3109) (ed0ee5be)
- remove warnings (#3106) (c861fa9f)
- better store logs (#3103) (21b03551)
- Improve binding for waku_sync (#3102) (c3756e3a)
- improving and temporarily skipping flaky rln test (#3094) (a6ed80a5)
- update master after release v0.33.1 (#3089) (54c3083d)
- re-arrange function based on responsibility of peer-manager (#3086) (0f8e8740)
- waku_keystore: give some more context in case of error (#3064) (3ad613ca)
- bump negentropy (#3078) (643ab20f)
- Optimize store (#3061) (5875ed63)
- wrap peer store (#3051) (729e63f5)
- disabling metrics for libwaku (#3058) (b358c90f)
- test peer connection management (#3049) (711e7db1)
- updating upload and download artifact actions to v4 (#3047) (7c4a9717)
- Better database query logs and logarithmic scale in grafana store panels (#3048) (d68b06f1)
- extending store metrics (#3042) (fd83b42f)
v0.33.1
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
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
- rejecting excess relay connections (#3063) (8b0884c7)
- make Peer Exchange's rpc status_code optional for backward compatibility (#3059) (5afa9b13)
- px protocol decode - do not treat missing response field as error (#3054) (9b445ac4)
- setting up node with modified config (#3036) (8f289925)
- get back health check for postgres legacy (#3010) (5a0edff7)
- libnegentropy integration (#2996) (c3cb06ac)
- peer-exchange issue (#2889) (43157102)
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
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 newprotected-shard
configuration. Protected topics are still supported and will be completely removed in two releases time forv0.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
- Nwaku Sync (#2403) (2cc86c51)
- misc. updates for discovery network analysis (#2930) (4340eb75)
- store resume (#2919) (aed2a113)
Bug Fixes
- return on insert error (#2956) (5f0fbd78)
- network monitor improvements (#2939) (80583237)
- add back waku discv5 metrics (#2927) (e4e01fab)
- update and shift unittest (#2934) (08973add)
- handle rln-relay-message-limit (#2867) (8d107b0d)
Changes
- libwaku retrieve my enr and adapt golang example (#2987) (1ff9f1dd)
- run
ANALYZE messages
regularly for better db performance (#2986) (32f2d85d) - liteprotocoltester for simulation and for fleets (#2813) (f4fa73e9)
- lock in nph version and add pre-commit hook (#2938) (d63e3430)
- logging received message info via onValidated observer (#2973) (e8bce67d)
- deprecating protected topics in favor of protected shards (#2983) (e51ffe07)
- rename NsPubsubTopic (#2974) (67439057)
- install dig (#2975) (d24b56b9)
- print WakuMessageHash as hex strings (#2969) (2fd4eb62)
- updating dependencies for release 0.32.0 (#2971) (dfd42a7c)
- bump negentropy to latest master (#2968) (b36cb075)
- keystore: verbose error message when credential is not found (#2943) (0f11ee14)
- upgrade peer exchange mounting (#2953) (42f1bed0)
- replace statusim.net instances with status.im (#2941) (f534549a)
- updating doc reference to https rpc (#2937) (bb7bba35)
- Simplification of store legacy code (#2931) (d4e8a0da)
- add peer filtering by cluster for waku peer exchange (#2932) (b4618f98)
- return all connected peers from REST API (#2923) (a29eca77)
- adding lint job to the CI (#2925) (086cc8ed)
- improve sonda dashboard (#2918) (6d385cef)
- Add new custom built and test target to make in order to enable easy build or test single nim modules (#2913) (ad25f437)
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
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
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
- DOS protection of non relay protocols - rate limit phase3 (#2897) (ba418ab5b)
- sonda tool (#2893) (e269dca9c)
- add proper per shard bandwidth metric calculation (#2851) (8f14c0473)
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
- setting filter handling logs to trace (#2914) (5c539fe13)
- enhance postgres and retention policy logs (#2884) (71ee42de5)
- improving logging under debugDiscv5 flag (#2899) (8578fb0c3)
- archive and drivers refactor (#2761) (f54ba10bc)
- new release process to include Status fleets (#2825) (4264666a3)
- sqlite make sure code is always run (#2891) (4ac4ab2a4)
- deprecating named sharding (#2723) (e1518cf9f)
- bump dependencies for v0.31.0 (#2885) (fd6a71cdd)
- refactor relative path to better absolute (#2861) (8bfad3ab4)
- saving agent and protoVersion in peerStore (#2860) (cae0c7e37)
- unit test for duplicate message push (#2852) (31c632e42)
- remove all pre-nim-1.6 deadcode from codebase (#2857) (9bd8c33ae)
- nim-chronos bump submodule (#2850) (092add1ca)
- ignore arbitrary data stored in
multiaddrs
enr key (#2853) (76d5b2642) - add origin to peers admin endpoint (#2848) (7205f95cf)
- add discv5 logs (#2811) (974b8a39a)
- archive.nim - increase the max limit of content topics per query to 100 (#2846) (a05fa0691)
- update content-topic parsing for filter (#2835) (733edae43)
- better descriptive log (#2826) (94947a850)
- zerokit: bump submodule (#2830) (c483acee3)
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
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
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 andrln_tree
and start your installation from scratch, as explained in nwaku-compose.
Release highlights
- RLN_v2 is used. The maximum rate can be set to
N
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
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 fromv0.31.0
Release highlights:
- Android support in libwaku
- Discovery is available in libwaku
- New LiteProcotolTester tool
- RLN proofs as a lightpush service
Features
- RLN proofs as a lightpush service (#2768) (0561e5bd)
- Push newly released nwaku image with latest-release tag (#2732) (736ce1cb)
- Rln-relay: use arkzkey variant of zerokit (#2681) (e7b0777d)
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 ofif
for adding soname on linux (#2721) (cbaefeb3) - Store v3 bug fixes (#2718) (4a6ec468)
Changes
- Set msg_hash logs to notice level (#2737) (f5d87c5b)
- Minor enhancements (#2789) (31bd6d71)
- postgres_driver - acquire/release advisory lock when creating partitions (#2784) (c5d19c44)
- Setting fail-fast to false in matrixed github actions (#2787) (005349cc)
- Simple link refactor (#2781) (77adfccd)
- Improving liteprotocolteseter stats (#2750) (4c7c8a15)
- Extract common prefixes into a constant for multiple query (#2747) (dfc979a8)
- wakucanary: fix fitler protocol, add storev3 (#2735) (e0079cd0)
- Bump nim-libp2p version (#2661) (6fbab633)
- Link validation process docs to the release process file (#2714) (ebe69be8)
- Android support (#2554) (1e2aa57a)
- Discovery in libwaku (#2711) (74646848)
- libwaku - allow to properly set the log level in libwaku and unify a little (#2708) (3faffdbc)
- waku_discv5, peer_manager - add more logs help debug discovery issues (#2705) (401630ee)
- Generic change to reduce the number of compilation warnings (#2696) (78132dc1)
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 |