Skip to content

2023-09-14 v0.20.0

Choose a tag to compare

@vpavlin vpavlin released this 14 Sep 14:57
· 957 commits to master since this release

Note: IP address 0.0.0.0 is no longer advertised by a node

Note: Multiple CLI options have been removed in this release, please see Upgrade instructions section for details.

What's Changed

Release highlights:

  • RLN is now part of standard release (is no longer EXPERIMENTAL feature)
  • Interop tests between nwaku and js-waku are now gating PRs and releases
  • Libwaku has been made more threadsafe (1 out of 3 improvements applied.)
  • Added autosharding option on various protocol APIs

Features

Bug Fixes

  • rln-relay: waku_rln_number_registered_memberships metrics appropriately handled (#2018) (a4e78330)
  • prevent IP 0.0.0.0 from being published and update peers with empty ENR data (#1982) (47ae19c1)
  • rln-relay: missed roots during sync (#2015) (21604e6b)
  • p2p: fix possible connectivity issue (#1996) (7d9d8a3f)
  • rln-db-inspector: use valueOr pattern (#2012) (a8095d87)
  • tests: relay tests use random port to avoid conflict (#1998) (b991682b)
  • ci: incorrect use of braces (#1987) (4ed41457)
  • Makefile: invalid path to crate build (#1981) (1a318c29)
  • --topic should be ignore when using --pubsub-topic or --content-topic (#1977) (037b1662)
  • tests: fix flaky test (#1972) (f262397d)
  • rln-relay: deserialization of valid merkle roots (#1973) (d262837e)
  • ci: rename tools artifact to prevent conflict (#1971) (26c06b27)
  • Makefile: rln was enabled by default (#1964) (9b1d2904)
  • rln-relay: modify keystore credentials logic (#1956) (e7b2b88f)
  • Makefile: error out if rln-keystore-generator not compiled with rln flag (#1960) (ac258550)
  • rln-relay: sync from deployed block number (#1955) (bd3be219)
  • rln-relay: window of acceptable roots synced to rln metadata (#1953) (01634f57)
  • rln-relay: bump zerokit to v0.3.2 (#1951) (32aa1c5b)
  • rln-relay: flush_interval incorrectly set (#1933) (c07d63db)
  • rln-relay: RLN DB should be aware of chain and contract address (#1932) (1ae5b5a9)
  • rln-relay: waitFor startup, otherwise valid proofs will be marked invalid (#1920) (6c6302f9)
  • test: fix flaky rln test (#1923) (0ac8a7f0)
  • rln-relay: remove registration capability (#1916) (f08315cd)
  • rln-relay: invalid start index being set results in invalid proofs (#1915) (b3bb7a11)
  • rln-relay: should error out on rln-relay mount failure (#1904) (8c568cab)
  • rln-relay: timeout on macos runners, use fixed version of ganache (#1913) (c9772af0)
  • no enr record in chat2 (#1907) (fc604ca5)
  • archive: force correct user_version (7) in the SQLite database. (#2031)

Changes

  • ci: add js-waku test to pre-release workflow (#2017) (e8776fd6)
  • rln-relay: updated docs (#1993) (76e34077)
  • ci: execute js-waku integration tests on image build (#2006) (5d976df9)
  • rln-relay: add isReady check (#1989) (5638bd06)
  • rln-relay: clean up nullifier table every MaxEpochGap (#1994) (483f40c8)
  • ci: use commit instead of master for docker image (#1990) (98850192)
  • rln-relay: log levels for certain logs (#1986) (97a7c9d0)
  • rln-relay: use the only key from keystore if only 1 exists (#1984) (a14c3261)
  • ci: enable experimental for the PR image builds (#1976) (1b835b4e)
  • rln-relay: confirm that the provided credential is correct using onchain query (#1980) (be48891f)
  • api: validate rln message before sending (rest + rpc) (#1968) (05c98864)
  • cbindings: Thread-safe libwaku. WakuNode instance created directly from the Waku Thread (#1957) (68e8d9a7)
  • add debug log indicating succesful message pushes and also log the message hash (#1965) (e272bec9)
  • rln-keystore-generator: log out the membership index upon registration (#1963) (7d53aec1)
  • rln-relay: integrate waku rln registry (#1943) (cc9f8d42)
  • ci: add a job checking config options and db schema (#1927) (505d1967)
  • rln_keystore_generator: generate and persist credentials (#1928) (07945a37)
  • rln-relay: rename keystore application to waku-rln-relay (#1924) (8239b455)
  • rln: remove old and add new rln metric (#1926) (56c228f8)
  • rln: run rln in all relay pubsubtopics + remove cli flags (#1917) (af95b571)
  • release: update changelog for delayed v0.19.0 release (#1911) (78690787)

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

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 being deprecated in favor of a more specific options --pubsub-topic & --content-topic. The --topic option will be available for next release with a deprecation note.
  • CLI option --store-resume-peer has been removed.
  • Following options related to RLN have been removed:
    • --rln-relay-membership-group-index
    • --rln-relay-pubsub-topic
    • --rln-relay-content-topic