76 Commits

Author SHA1 Message Date
richΛrd
ff68934354
chore: improve light client logging (#992) 2024-01-04 10:41:11 -04:00
Roman Zajic
097123a30e
chore: lightpush tests coverage improvement (#957) 2023-12-15 22:09:56 +08:00
richΛrd
fd4df9221e
fix(lightpush): register lightpush protocol when instantiated (#951) 2023-12-08 11:55:15 -04:00
Prem Chaitanya Prathi
e464131f89
feat: add a new option to specify peer addr for light protocols (#896) 2023-11-15 19:56:55 +05:30
Prem Chaitanya Prathi
a5ce5dfaa4
feat: update store client Query API for autosharding (#885) 2023-11-14 04:22:46 +05:30
Vitaly Vlasov
684c7a46df Add messages logging subsystem 2023-11-10 13:54:52 +02:00
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
richΛrd
4584bb4324
refactor: validate protobuffer for store (#841) 2023-10-30 12:55:36 -04:00
richΛrd
38202e7a2e
refactor: publish API for relay and lightpush (#845) 2023-10-30 12:30:25 -04:00
richΛrd
94f18c537c refactor: validate protobuffers for lightpush and relay (#824) 2023-10-24 17:48:22 -04:00
Richard Ramos
fa51d10b4b fix: stream close/reset (#823) 2023-10-24 17:48:22 -04:00
Richard Ramos
519fa2977a refactor: rename connOpt to stream 2023-10-20 20:30:23 -04:00
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
6955d01498
Update peer selection options for light protocols (#787)
* Update peer selection options for lightPush

* Update peer selection options for filter

* migrate peer selection functionality from peer manager

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

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-10-16 22:12:01 +05:30
Prem Chaitanya Prathi
47c961dcbb
feat: update lightpush API for autosharding (#774)
* feat: update lightpush API to make pubSubTopic optional as per autosharding

* Extract contentFilter and subscriptions out of filter to reuse in relay (#779)

* chore: extract contentFilter outside filter package

* chore: move subscription outside of filter so that it can be modified and reused for relay

* Feat: filter select peer for sharding (#783)

* update selectPeer to support pubsubTopic based selection
2023-09-29 10:43:25 +05:30
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
2818c3d394 refactor: add libp2p metrics, and make each protocol responsable for defining its own metrics 2023-08-18 13:56:43 -04:00
Prem Chaitanya Prathi
9f45d271ac
feat: support serviceslots in peermanager (#631)
* feat: support peermanager serviceslots and update store protocol to use serviceslots

* fix: lint errors in test code

* fix: error in nix build due to vendor sha change

* fix: set host in peermanager even if relay is disabled

* chore: fix codeclimate issues

* chore: using common filterPeer function to avoid duplication

* feat:use service slots in other service protocols

* chore: fix codeclimate issues

* chore: move AddPeer to peermanager

* Apply suggestions from code review

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

* chore:address review comments

* feat: implement RemovePeer #638

* chore: fix test failure

* Support for multiple slots for service peers
Adding discovered peers also moved to peer manager

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-08-10 18:28:22 +05:30
Prem Chaitanya Prathi
34de2941c7
Feat/peer manager (#596)
* chore: refactor existing code into peer maanger package

* feat: move peer connection related code into peer manager

* feat: in relay peer connection pruning

* feat: add max-connections CLI flag and limit outRelayPeers based on max-connections #621

* tested both in and out relay connection limits

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

* Review comment, use context to pause connectivity loop during node shutdown.

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

* address review comments


---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-08-03 21:51:15 +05:30
Prem Chaitanya Prathi
e6aaf9c852
chore: fix comment on test 2023-08-02 11:24:50 +05:30
Richard Ramos
a422add209 chore: add missing comments to functions 2023-07-23 07:01:42 -04:00
Richard Ramos
1c75c89790 refactor: remove unneeded Connect as dns4 addresses are being resolved now 2023-06-01 14:02:08 -04:00
harsh-98
31c8035589 feat: safe broadcaster 2023-05-08 08:31:19 -04:00
Richard Ramos
9ed8f16a0a feat: add metrics to archive protocol and discv5 2023-04-20 10:04:20 -04:00
Richard Ramos
68b615a87e feat: improve metrics for filter, lightpush, dns discovery and store protocols 2023-04-20 08:57:22 -04:00
Richard Ramos
2c3566377a refactor: inject host on node start 2023-04-17 11:09:05 -04:00
Richard Ramos
fbd58df2e8 refactor: initialize broadcaster on Start 2023-04-17 10:19:08 -04:00
Richard Ramos
3bba1a86f1 feat(message): added waku message deterministic hashing 2023-03-08 09:08:08 -04:00
Richard Ramos
f0eaa84aad chore: upgrade dependencies 2023-02-16 12:22:47 -04:00
Richard Ramos
156db781f6 chore: switch to Google's Protobuf library 2023-02-16 11:37:59 -04:00
Richard Ramos
607bf07198 refactor: remove some duplication and unneeded code 2023-01-08 14:35:32 -04:00
Richard Ramos
40675ff204 refactor: service interface 2023-01-07 11:25:32 -04:00
Richard Ramos
84c7022e2d feat: add ntp timesource 2022-12-09 10:20:16 -04:00
Richard Ramos
3620a6b222 feat: allow specifying list of peerIDs to chose when doing a request 2022-11-25 17:37:54 -04:00
Richard Ramos
a247e8346d chore: add extra logging for message IDs 2022-11-16 10:42:20 -04:00
Richard Ramos
c8fc0404d1
chore: rename status-im/go-waku to waku-org/go-waku 2022-11-09 16:03:40 -04:00
Richard Ramos
df38038bc0 feat: allow lightpush to be used as client always 2022-10-20 09:56:47 -04:00
Richard Ramos
57a525f71e chore: upgrade libp2p 2022-10-19 15:54:02 -04:00
Richard Ramos
39f70f71a9 feat: use generic flags and convert values to specific data types 2022-08-15 15:22:13 -04:00
Richard Ramos
e2b04570c1
chore: improve docs 2022-07-25 11:28:17 -04:00
Richard Ramos
3c0c3c4eeb
fix: js-waku / nwaku interop (#252) 2022-06-13 14:30:35 -04:00
Richard Ramos
7c0206684f
refactor: use db for serving history queries (#243) 2022-05-30 14:48:22 -04:00
Martin Kobetic
7c44369def
feat: structured logging followup (#248) 2022-05-30 11:55:30 -04:00
Martin Kobetic
0c989d3d8c
feat: structured logging (#242) 2022-05-27 09:25:06 -04:00
Richard Ramos
7b3c853c15
refactor: use diff logger for waku 2022-05-06 15:29:31 -04:00
Richard Ramos
3a0fc81889
chore: add docs. pt - 1 (#230) 2022-05-04 17:08:24 -04:00
Richard Ramos
f4f307db87
fix: connect before opening a stream 2022-03-03 12:04:03 -04:00
Richard Ramos
58f739765e
refactor: use int64 timestamps (#189)
* refactor: use int64 timestamps
* fix: changed PB Timestamp index to 10
2022-02-23 11:01:53 -04:00
Richard Ramos
11d1f8fb0d
feat: result aggregation in resume and enforce max page size (#183)
* feat: result aggregation in resume and enforce max page size
* feat: add WithLogger option to wakunode (#184)
* fix: rebase issues
2022-01-18 14:17:06 -04:00