Commit Graph

179 Commits

Author SHA1 Message Date
Prem Chaitanya Prathi 054bdae1de
Feat/autoshard filter (#723)
* feat: update filter client to support autosharding

* chore: add filter tests for autoshard

* chore:update filter API docs for autosharding

* chore: docs changes to indicate sharding impact on pubSubTopic

* fix: handle partial errors during subscribe and return failed content-topic details
2023-09-20 11:26:55 +05:30
Vitaliy Vlasov 81638fe111
Use PubsubTopic naming; enforce unique ContentTopics (#750) 2023-09-19 18:22:11 +05:30
Richard Ramos be4601e8f1 fix: nix build with RLN 2023-09-18 11:20:31 -04:00
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 22b097817e feat(rln-relay): use zerokit 0.3.4 to obtain number of leaves set in merkle tree 2023-09-15 10:13:02 -04:00
Richard Ramos e1a84aab0e chore(rln-relay): docs and docker 2023-09-14 14:30:48 -04:00
Prem Chaitanya Prathi bfc3083fb1
feat: update WakuPeerStore to store pubSubTopics for a peer (#734)
* feat: update peerStore to store pubSubTopics a peer is linked to

* derive pubSubTopics from ENR

* New API to retrieve peers by shard information
2023-09-14 20:30:06 +05:30
Richard Ramos 7beaa3f029 feat(rln-relay): ensure execution order for pubsub validators 2023-09-14 09:38:28 -04:00
Richard Ramos ab7e45c735 feat: make RLN available by default 2023-09-14 09:03:18 -04:00
Richard Ramos 8783cd2f45 chore(rln-relay): use the only key from keystore if only 1 exists 2023-09-08 12:05:32 -04:00
Richard Ramos 76b007163a feat: upgrade go-zerokit-rln to use zerokit 0.3.2 2023-09-06 10:38:06 -04:00
Prem Chaitanya Prathi d13b1f0aa3
autosharding content-topic config (#696)
* chore: add shard choice simulation test

* feat: add new flags for pubsub and contentTopics and deprecate topic flag

* chore: remove store-resume-peer config and comment out functionality until redesign of store is done

* chore: fix code to use contentTopics value

* fix: use default waku topic only if no other topics are provided in the config
2023-09-06 10:07:21 +05:30
Richard Ramos e66f0e3b9c fix: content topic usage on the examples 2023-09-05 11:19:21 -04:00
Richard Ramos 9c0bebc859 refactor: use a map to store credentials instead of an array 2023-08-31 15:42:45 -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 7e36f91a5a fix(rln-relay): flush_interval incorrectly set 2023-08-24 10:38:28 -04:00
Richard Ramos 0b943caaa8 refactor: remove credential registering from waku 2023-08-24 10:37:54 -04:00
Prem Chaitanya Prathi 54c02213cd
fix: code scan alerts (#664)
* fix: error reported by codeQL

* chore: remove lgtm alert as repo has moved to code scanning

* chore: bump libp2p and deps in order to fix a security vulnerability

* chore: update gitignore for example build and bin

* chore:fix vendor sha
2023-08-22 19:18:20 +05:30
Richard Ramos fc4840e1c9
fix: building RLN on macos 2023-08-21 12:44:21 -04:00
Prem Chaitanya Prathi 78db78d5a9
Fix/build errors on Mac OS (#660)
* updated go dependencies after running mobile builds

* fixed build error in macOS due to sed syntax. Updated all target to build required targets.
2023-08-21 19:38:31 +05:30
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
richΛrd 387ee5f9ac
feat: merkle tree persistence
- use atomic operations API
- resume onchain sync from persisted tree db
- close eth client and db connection appropriately
- pass in the path to the tree db
- fix nwaku compatibility issues
2023-08-18 09:59:37 -04:00
Prem Chaitanya Prathi 770f41158f
Chore/pre commit check to run go.mod for all examples (#647)
* chore:added pre commit hook to execute go mod tidy in all sub dirs

* chore:fix examples
2023-08-16 17:56:57 +05:30
Richard Ramos da45dab68e
fix: nwaku / go-waku rlnKeystore compat 2023-08-11 11:54:24 -04:00
Richard Ramos eb836d71e3 refactor: remove enc_publish functions and create separate encoding functions instead 2023-08-11 11:47:58 -04:00
richΛrd 164c92554b
refactor: c-bindings 2023-08-10 09:30:38 -04:00
Prem Chaitanya Prathi b1a4d739ce
Merge branch 'master' into fix/data-races 2023-08-08 09:57:22 +05:30
Richard Ramos df78d21dfd chore: remove v1 code and legacy filter from chat2
Also removes the private API from RPC. C-Bindings are not affected, but future revisions might remove the asymmetric/symmetric functions for lightpush and relay and replace them instead by separate encoding functions
2023-08-07 15:09:32 -04:00
Prem Chaitanya Prathi 87a7501166
chore:dependency fixes 2023-08-04 17:24:27 +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
Richard Ramos 33344c2ae0 refactor: use uint instead of int for RLN indexes 2023-08-03 11:17:50 -04:00
Richard Ramos a4b038730c feat(rln-relay): pass in index to keystore credentials 2023-08-03 11:17:50 -04:00
Richard Ramos 55ec2347a8 fix: RLN
- subscription to topic is not required for registering RLN validator
- check for duplication msg within same epoch was incorrect
- added an example on how to use RLN
2023-08-01 09:19:38 -04:00
Richard Ramos a422add209 chore: add missing comments to functions 2023-07-23 07:01:42 -04:00
Richard Ramos ca297713fa refactor: move app code to cmd/waku 2023-07-07 10:10:21 -04:00
Richard Ramos 0822fdb280 chore: use pgx instead of lib/pq since it's not actively maintained 2023-07-03 11:16:05 -04:00
Richard Ramos 47cdb86aaf chore: bump go-libp2p 2023-06-30 08:55:46 -04:00
Prem Chaitanya Prathi 80eb17cfed
Chore/fix examples (#580)
* chore: included rendevouz in go.mod and go.sum files for examples

* chore: added peer origin to AddPeer in examples

* fix: fix compilation issues on arm based mac

* fix: support macOS for test coverage upload to code climate

* removed binary from commit
2023-06-28 20:29:15 +05:30
Richard Ramos 5d514ddd6a
chore: update rjeczalik/notify dependency 2023-05-31 09:03:32 -04:00
Richard Ramos 96c8980828 fix: use nanoseconds in c-bindings example 2023-05-22 17:54:13 -04:00
Richard Ramos 0c3803b5d8 chore: bump libp2p 2023-05-22 17:53:59 -04:00
Richard Ramos 25562d6240 feat: add peer connection notif channel and allow dialing peers with the peer.AddrInfo 2023-05-12 09:09:08 -04:00
Richard Ramos f5047b507c fix: examples 2023-05-08 14:14:53 -04:00
Richard Ramos 0b01e4bb16 refactor: rename filter to legacy filter and set filterv2 as filter 2023-04-17 10:07:15 -04:00
Richard Ramos 801ec92c11 refactor: loading credentials and chat2 2023-04-11 10:39:07 -04:00
Richard Ramos 42c0e123d9 refactor: credentials 2023-04-11 10:39:07 -04:00
Richard Ramos 41691a44e5 fix: remove message cache on relay and fix proof validation 2023-04-04 14:20:41 -04:00
Richard Ramos aa8f99ff72 chore: bump go-libp2p 2023-04-03 10:43:01 -04:00
Richard Ramos ca20eb4a79 feat: connect to discovered peers 2023-03-29 08:59:36 -04:00
RichΛrd 8826e2df66
feat: rendezvous server 2023-03-09 11:48:25 -04:00