You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
RLN is available in service nodes and libraries by default
Improved peer management and connection prunning with relay
Added flag --max-connections to limit maximum number of peers allowed
--pubsub-topic will automatically subscribe the node to a shard
Added filter functions for DiscoveryV5
Core autosharding logic
Added /health endpoint to REST server
Upgraded to zerokit 0.3.4
Updated docs and docker image
Added websockets support to C-Bindings
Added prometheus metrics to RLN-Relay
Updated go-libp2p to v0.28.1 and other dependencies
Common protocol design
Log node reachability changes
Use pgx instead of lib/pq as the latter is deprecated
Added an example on the usage of RLN
Added new flags --store-message-db-vacuum and --store-message-db-migrate to execute VACUUM in the database, and disable database migrations
If only one key is available in the keystore, it will be loaded automatically
RLN Relay does not require credentials for relaying messages
Use waku's RLN Registry contract for membership verification
Persist RLN membership and valid merkle roots into a DB
Added --pubsub-topic and --content-topic flags for autosharding
Add tls/ws to list of multiaddresses when using secure websockets
Append RLN proofs when posting messages in REST/RPC
Added utils to have a backoff strategy for connecting to rendezvous points
Exposed go-libp2p metrics
New subcommand to generate RLN credentials: waku generate-rln-credentials
Store pubsubTopics supported by a peer into the peer store
Peer connector will keep slots to allow connections to service nodes
Fixes
Possible data races in the code
Optimized the fetching of membership events from the RLN smart contract
RLN Validators are executed sequentially
Compilation issues in examples
Invalid protocol list order in gossipsub
Peerstore DNS4 addresses are added back to the peerstore after being removed from go-libp2p identify
Peer connector will concurrently dial up to 5 nodes at a time
Increased CodeClimate maintainability score to A
Allow using both static and named shards at the same time
KeepAlive will not disconnect all peers but only if there's a failure when pinging them
Log output and encoding flags are no longer ignored
Obtain circuit relay multiaddresses from ENR
Duplication of messages within same epoch was incorrect
requestID not being populated when unsubscribing from filter
Thread safe peer channel in DiscoveryV5
Nil err while removing a filter subscription
Make FilterV2 safe for usage in goroutines
Sync RLN membership events from block on which the contract was deployed
Confirm RLN credential is valid via onchain query
Loop counter used to write multiaddresses into node's ENR
Clean up RLN nullifier table periodically
Log ENR only after it has been setup
Invalid protobuffer definition being used in FilterV2
RLN database will verify the chainID and contract address
FilterV2 will unsubscribe from all peers unless an specific peer is set
Breaking changes
C-Bindings use callbacks to handle both success and error responses
Rendezvous operations are now initiated by the application layer and not by go-waku itself
Updated --topics flag to --pubsub-topic`
RLN is applied to all pubsub topics and content topics
Upgrade RLN Keystore data format
Moved --generate-key to a generate-key subcommand
Removed waku_relay_publish_enc_asymmetric, waku_relay_publish_enc_symmetric, waku_lightpush_publish_enc_asymmetric and waku_lightpush_publish_enc_symmetric from C-Bindings and replaced these by waku_encode_symmetric and waku_encode_asymmetric
Renamed nwaku-rln-relay to waku-rln-relay in RLN keystore