Skip to content

Releases: logos-messaging/logos-messaging-nim

v0.30.2

08 Jul 13:26

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

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

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

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

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

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.

Release v0.25.0

14 Feb 14:50

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.

Release v0.24.0

23 Jan 14:32

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.23.0

20 Dec 17:19

Choose a tag to compare

Generated at Wed Dec 20 15:15:26 UTC 2023

Features

  • setting image deployment to harbor registry (93dd5ae5)
  • Add new DB column messageHash (#2202) (aeb77a3e)

Bug Fixes

  • Revert "feat: shard aware peer management (#2151)" (#2312) (b5e55093)
  • make rln rate limit spec compliant (#2294) (5847f49d)
  • update num-msgs archive metrics every minute and not only at the beginning (#2287) (0fc617ff)
  • rln-relay: graceful retries on rpc calls (#2250) (15c1f974)
  • add protection in rest service to always publish with timestamp if user doesn't provide it (#2261) (42f19579)
  • remove trailing commas from keystore json (#2200) (103d3981)
  • dockerfile: update dockerignore and base image (#2262) (c86dc442)
  • waku_filter_v2/common: PEER_DIAL_FAILURE ret code change: 200 -> 504 (#2236) (6301bec0)
  • extended Postgres code to support retention policy + refactoring (#2244) (a1ed517f)
  • admin REST API to be enabled only if config is set (#2218) (110de90f)
  • rln: error in api when rate limit (#2212) (51f36099)
  • relay: Failing protocol tests (#2224) (c9e869fb)
  • tests: Compilation failure fix (#2222) (a5da1fc4)
  • rest: properly check if rln is used (#2205) (2cb0989a)

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

2023-11-15 v0.22.0

15 Nov 14:14

Choose a tag to compare

Note: The --topic option is now deprecated in favor of a more specific options --pubsub-topic & --content-topic

Note: The --ext-multiaddr-only CLI flag was introduced for cases in which the user wants to manually set their announced addresses

What's Changed

Release highlights:

  • simplified the process of generating RLN credentials through the new generateRlnKeystore subcommand
  • added support for configuration of port 0 in order to bind to kernel selected ports
  • shards are now automatically updated in metadata protocol when supported shards change on runtime
  • introduced messageHash attribute to SQLite which will later replace the id attribute

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.

Upgrade instructions

  • Note that the --topic CLI option is now deprecated in favor of a more specific options --pubsub-topic & --content-topic.