96 Commits

Author SHA1 Message Date
Prem Chaitanya Prathi
6bd85a1dc9
fix: return error in relay publish if exceeding max-msg-size (#939) 2023-12-01 06:53:28 +05:30
Prem Chaitanya Prathi
d7249fc123
fix: rest api errors (#919)
Co-authored-by: richΛrd <info@richardramos.me>
2023-11-24 10:26:06 +05:30
Prem Chaitanya Prathi
b59a498606
fix: relay unsub issue (#924)
co-authored-by: richΛrd <info@richardramos.me>
2023-11-24 06:51:37 +05:30
Roman Zajic
fb49752f0f
chore: filter v2 tests push invalid payload (#916) 2023-11-23 18:19:46 +08:00
kaichao
2af8cf7344
chore: fix c-bindings example (#915) 2023-11-22 19:35:20 +08:00
richΛrd
ad8f349817
refactor(relay): use single data structure to contain pubsub items (#907) 2023-11-21 13:27:50 -04:00
Vitaly Vlasov
684c7a46df Add messages logging subsystem 2023-11-10 13:54:52 +02:00
Hish Bouabdallah
10e32d1059
Default validators not executed (#887) 2023-11-10 16:30:12 +05:30
Prem Chaitanya Prathi
fab51beadf
fix : issues with get messages API (#878)
* fix issues with get messages API

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-11-08 18:46:24 +05:30
Prem Chaitanya Prathi
28c0cd5d8e
fix: content topic validation as per rfc 51 (#874)
* fix: content topic validation as per rfc 51

* chore: update library API's and examples
2023-11-08 18:24:24 +05:30
richΛrd
150ade6f33
chore: use waku-org/waku-proto repository for protobuffer definitions (#828) 2023-11-07 15:48:43 -04:00
Prem Chaitanya Prathi
3226def4cf
feat: On Demand Peer Discovery based on shard and service (#834)
* refactor discovery and common service to separate package to remove package inter-dependencies

* relay on-demand discovery ,use proto to enr field mapping

* chore: no need to dial discovered peers as peermanager already does that

* on demand discovery for service peers during peer selection

* identify supported protocols for discovered peers and add to service slots

* fix: tests to use proper static sharding topics

* fix: random selection with default pubsubTopic

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-11-07 22:43:19 +05:30
Prem Chaitanya Prathi
2616d43c9d
chore: update relay REST and RPC API's and fix unit tests (#866)
* update relay REST API's to remove duplicate message cache, fix relay tests and admin test

* chore: enable REST and RPC unit tests

* update lightpush rest api to match yaml

* fix: filter rest unit test failures

* skipping legacy filter tests

* chore: add unit tests for autosharding relay REST API, fix success response (#868)
2023-11-07 20:26:48 +05:30
richΛrd
5dfbd98c74
chore: lower dhigh to limit amplification factor (#850) 2023-10-31 08:41:19 -04:00
richΛrd
38202e7a2e
refactor: publish API for relay and lightpush (#845) 2023-10-30 12:30:25 -04:00
harsh jain
ddf188bbf8
feat: remove named topic (#844)
* feat: remove named topic

* fix: update examples

* Update library/mobile/api.go
2023-10-30 21:56:26 +07:00
richΛrd
94f18c537c refactor: validate protobuffers for lightpush and relay (#824) 2023-10-24 17:48:22 -04:00
Prem Chaitanya Prathi
a3c3aab44e
fix: propagate relay subscribe opt properly (#829) 2023-10-25 02:11:42 +05:30
Prem Chaitanya Prathi
b5be83a02e
feat : autoshard relay api (#807)
* fix: using relay without bcaster should consume and drop messages

* update relay api usage

* move subscription to broadcaster

* move filter logic under subscription

* Support more than 1 relay subscription for a pubSubTopic

* modify relay Publish API to derive pubSubTopic based on autosharding

* implement relay RPC methods for autosharding

* remove relay msgChannel and relay on pubsub buffersize for subscription

Co-authored-by: richΛrd <info@richardramos.me>

* handle relay subscribe with noConsumer and address issue reported in code review

* chore: reorg relay code

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-10-21 01:26:18 +05:30
Prem Chaitanya Prathi
388f56b43f
feat: Sharded peer management - Relay (#764)
* feat: connect/disconnect to peers based on node topic sub/unsub

* feat: maintain healty relay connections per pubSubTopic

Co-authored-by: richΛrd <info@richardramos.me>

* chore: add config to limit peerstore capacity (#770)
2023-09-27 12:16:37 +05:30
Prem Chaitanya Prathi
9b05d48318
Feat : handle dynamic peer topic sub unsub (#751)
* feat: handle dynamic peer join and leave a pubSub topic

Co-authored-by: richΛrd <info@richardramos.me>


---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-09-19 11:35:29 +05:30
Prem Chaitanya Prathi
dd5dc7a9c8
fix: change mutex to rwLock and fix relay unsubscribe (#749)
* fix: change mutex to rwLock and fix relay unsubscribe

* chore: modify relay test to cover unsubscribe and few more relay functions
2023-09-18 18:48:16 +05:30
Richard Ramos
7beaa3f029 feat(rln-relay): ensure execution order for pubsub validators 2023-09-14 09:38:28 -04:00
harsh jain
4b1c188cf0
feat: add common protocol design (#724)
* feat: add common protocol design

* fix: remove redundant vars

* fix: use AppDesign's ctx

* refactor: relay, add AppDesign

* feat: changes for suggestions

* test: commonService start/stop execution

* fix: lint error

* nit: add comments
2023-09-13 12:18:44 +07:00
Richard Ramos
dcc87cf24f chore(lint): adds make lint-full target and fixes some linting errors 2023-09-12 09:54:34 -04:00
Richard Ramos
624fe1bb2f chore(rln): run rln in all relay pubsubtopics + remove cli flags 2023-08-24 10:48:22 -04:00
Richard Ramos
2818c3d394 refactor: add libp2p metrics, and make each protocol responsable for defining its own metrics 2023-08-18 13:56:43 -04:00
Richard Ramos
a422add209 chore: add missing comments to functions 2023-07-23 07:01:42 -04:00
Richard Ramos
6ece3c483b feat: subscribe to shards with --topic and refactors
- Shards in same cluster are advertised on ENR
- Store().Resume() was moved to app layer
- NoDefaultWakuTopic() was removed since it's the app that must determine whether it subscribes to the default waku topic
- Removed `Publish` from WakuNode (not really used and easy to implement in app layer if needed)
2023-07-06 11:18:29 -04:00
Richard Ramos
fb3447f3d8
fix: adding relay protocol to feature check function of gossipsub 2023-06-29 09:29:08 -04:00
Richard Ramos
b8ab99ba08 fix: set wakurelay at index 0 in gossipsub protocol list 2023-06-28 14:06:16 -04:00
Richard Ramos
c380faa6ae fix: code review and disconnect bad peers 2023-06-09 14:57:43 -04:00
Richard Ramos
875d132c1e feat: gossipsub scoring 2023-06-09 14:57:43 -04:00
Richard Ramos
52ac8e3740 refactor: various
- Limit inbound connections to 10 per IP
- Expose gossipsub parameters on WakuRelay
- New peerstore
2023-06-09 14:57:43 -04:00
Richard Ramos
10c2e20910
fix: signatures 2023-05-26 11:18:00 -04:00
Richard Ramos
2c17e20d99
fix: neither encoding nor address comparison are needed to protect a topic 2023-05-26 10:42:25 -04:00
Richard Ramos
189b2ed120
revert: "refactor: use an address instead of public key for the node setup"
This reverts commit 38a9fc4b19ba9eae64f8f8da0388e2a9b06cf72f.
2023-05-22 17:03:40 -04:00
Richard Ramos
38a9fc4b19 refactor: use an address instead of public key for the node setup 2023-05-12 09:09:08 -04:00
Richard Ramos
aed730c634 feat: use addresses in signed topic validator 2023-05-12 09:09:08 -04:00
harsh-98
38741caca0 fix: constrainted env add wait to TestRelaySubscription 2023-05-08 08:31:19 -04:00
harsh-98
bf8c856bc3 fix: use buffered channel as needed by legacy_filter, filter 2023-05-08 08:31:19 -04:00
harsh-98
60edf95c48 fix: broadcaster shouldn't block if channels are not listened to 2023-05-08 08:31:19 -04:00
harsh-98
210597f7e0 fix: to test for new Broadcaster 2023-05-08 08:31:19 -04:00
harsh-98
31c8035589 feat: safe broadcaster 2023-05-08 08:31:19 -04:00
Richard Ramos
231469b441 feat: validate message timestamp in signed topic validator 2023-05-05 13:52:51 -04:00
Richard Ramos
c15f4ada56 feat: add message size and published/received time to debug log 2023-05-04 16:22:11 -04:00
Richard Ramos
8711a08df6 fix: code review 2023-05-04 13:25:45 -04:00
Richard Ramos
f11b82d94a fix: use deterministic signatures RFC6979 2023-05-04 13:25:45 -04:00
Richard Ramos
837a0f2708 chore: add unit test for signed validator and --protected-topic-flag 2023-05-04 13:25:45 -04:00
Richard Ramos
21a28e9b53 feat: record message size 2023-04-27 09:58:06 -04:00