What's New?
- Autosharding support has been added to Filter and Store protocols
- Improved peer management, taking into account sharding, and adding on demand discovery
- New Lightpush protocol REST API
- New Admin REST API
- New REST API for sharding for Relay protocol
- Exit code 166 is returned for non-recoverable errors
- Lower gossipsub dhigh to limit amplification factor
Breaking Changes:
- c-bindings receive an
userdata
parameter which is used to assign the result of the function execution --store-message-db-vacuum
flag was removed.VACUUM
should be executed manually as it is no longer part of the code of go-waku
List of changes
- feat(CommonService): add channel and use commonService in discv5 by @harsh-98 in #735
- fix: change mutex to rwLock and fix relay unsubscribe by @chaitanyaprem in #749
- fix: nix build with RLN by @richard-ramos in #747
- feat: use CommonService in peerConnector by @harsh-98 in #737
- feat : handle dynamic peer topic sub unsub by @chaitanyaprem in #751
- test(store): make queries by @harsh-98 in #752
- feat: topic refactors for filter client by @vitvly in #750
- chore: create workflow for automatic assignment of a PR to its creator by @chair28980 in #754
- feat(autoshard): filter by @chaitanyaprem in #723
- feat: force unreachability by @richard-ramos in #753
- chore(ci): use wakuorg Docker Hub organization by @jakubgs in #757
- chore(ci): drop pushing commit tags for Docker by @jakubgs in #758
- fix: panic when removing pubsub topic by @richard-ramos in #759
- fix:
/health
REST API panic by @chaitanyaprem in #763 - chore: update auto assign pr gh command by @chair28980 in #761
- fix: panic during removePubSubTopic by @chaitanyaprem in #765
- chore(ci): use latest and stable Docker tags based on job name by @jakubgs in #767
- fix: deleting pubsub topics; only allow adding unique topics by @vitvly in #766
- refactor: allow multiple subs for same (peer, contentFilter) pairs by @vitvly in #762
- fix(filter2): add requestID to pings and remove unneeded log by @richard-ramos in #776
- feat: Sharded peer management - Relay by @chaitanyaprem in #764
- chore: update wakuv2 fleet DNS discovery enrtree by @yakimant in #775
- feat: force reachability by @richard-ramos in #778
- chore: test cov improvement by @chaitanyaprem in #784
- feat: update lightpush API for autosharding by @chaitanyaprem in #774
- fix: use https for cloning submodules instead of ssh by @richard-ramos in #780
- test: container image workflow by @romanzac in #792
- fix: return errors in FilterSubscribeOption by @richard-ramos in #794
- fix: SignalHandler not exported in mobile package by @richard-ramos in #793
- fix(store): query time comparison and max rows per page by @richard-ramos in #800
- chore: postgres tests by @harsh-98 in #760
- feat: update peer selection options for light protocols by @chaitanyaprem in #787
- fix: add ws to enr by @richard-ramos in #768
- fix: addr update by @richard-ramos in #806
- fix: auto assign PR by @richard-ramos in #809
- fix: setFallbackIP with reported libp2p addr by @richard-ramos in #808
- fix: handle empty content topics in filter subcribe and unsubscribe by @chaitanyaprem in #812
- chore: return custom exit code for non recoverable errors by @richard-ramos in #817
- feat : autoshard relay api by @chaitanyaprem in #807
- fix: msg digest matches msg hash by @richard-ramos in #820
- chore: auto-assign PR for review of code owners by @chaitanyaprem in #821
- feat: metadata protocol by @richard-ramos in #805
- feat : new relay REST API for autosharding by @chaitanyaprem in #822
- feat: REST light push by @harsh-98 in #818
- feat: implement admin rest api by @chaitanyaprem in #827
- fix: do not disconnect peers in
TestWakuMetadataRequest
by @richard-ramos in #826 - fix: propagate relay subscribe opt properly by @chaitanyaprem in #829
- fix: stream close/reset by @richard-ramos in #823
- fix: modify store test to not depend on order of msgs by @chaitanyaprem in #832
- refactor: validate protobuffer for filter by @richard-ramos in #833
- fix(filter-subscribe): params.selectedPeer not set by @harsh-98 in #836
- fix: deadlock in peer connector / manager interaction by @richard-ramos in #837
- feat: add filter v2 rpc by @harsh-98 in #798
- refactor(c-bindings): userdata by @richard-ramos in #785
- chore: print a message periodically indicating that
VACUUM
is still being executed by @richard-ramos in #838 - feat: remove named topic by @harsh-98 in #844
- refactor: publish API for relay and lightpush by @richard-ramos in #845
- refactor: validate protobuffer for store by @richard-ramos in #841
- feat: add warning about bootnodes not supporting shards by @richard-ramos in #848
- refactor: fix nomenclature for shards by @richard-ramos in #849
- chore: lower dhi to limit amplification factor by @richard-ramos in #850
- chore: filter v2 tests unsubscribe by @romanzac in #855
- feat: dont' filter out bootnodes by @richard-ramos in #860
- feat: bridge relay topics by @richard-ramos in #854
- refactor: only log errors different from
ErrNoPeersAvailable
when selecting random peers. by @richard-ramos in #864 - fix(subscription-map): uniform operations and encapsulation by @harsh-98 in #853
- feat(rest-filterv2): get message by @harsh-98 in #856
- fix: decode url param in relay rest API by @chaitanyaprem in #862
- feat(discv5): filter out nodes that have empty waku capabilities by @chaitanyaprem in #865
- chore: update relay REST and RPC API's and fix unit tests by @chaitanyaprem in #866
- feat: on Demand Peer Discovery based on shard and service by @chaitanyaprem in #834
- chore: use waku-org/waku-proto repository for protobuffer definitions by @richard-ramos in #828
- chore: filter v2 tests unsubscribe all by @romanzac in #875
- fix: content topic validation as per rfc 51 by @chaitanyaprem in #874
- fix : issues with get messages API by @chaitanyaprem in #878
- chore: semantic PR linter by @richard-ramos in #882
- fix: noisy peer exchange log by @richard-ramos in #881
- fix:
WakuMessage
json encoding by @richard-ramos in #880 - fix(ci): keep Image tag param value from last run by @jakubgs in #889
- chore: remove
--store-message-db-vacuum
by @richard-ramos in #883 - fix: panic if it is not possible to obtain the merkle root by @richard-ramos in #873
- chore: add test utils string generators by @romanzac in #879
- fix: execution logic for default topic validators in WakuRelay by @hishboy in #887
- chore: add messages logging subsystem by @vitvly in #886
- chore: conventional commits by @richard-ramos in #892
- chore: indicate that
--dns-discovery-url
can be repeated by @richard-ramos in #891 - fix(rest): use custom struct for messages instead of protobuffer by @richard-ramos in #888
- feat: add dns discovery in lib by @harsh-98 in #884
- feat: update store client Query API for autosharding by @chaitanyaprem in #885
- fix: panic when discv5 is enabled while running service node by @chaitanyaprem in #897
- fix: REST get messages not returning more than 1 message by @chaitanyaprem in #898
- fix: allow to use
postgres
in DB url by @richard-ramos in #901
New Contributors
- @chair28980 made their first contribution in #754
- @yakimant made their first contribution in #775
- @hishboy made their first contribution in #887
Full Changelog: v0.8.0...v0.9.0