Commit Graph

103 Commits

Author SHA1 Message Date
Hanno Cornelius 21737c7c1b
feat(discv5): added find random nodes with predicate (#1762) (#1763)
* feat(discv5): added find random nodes with predicate (#1762)

Co-authored-by: Lorenzo Delgado <lnsdev@proton.me>

* chore: play around with sleep times on tests

* chore: simplify flaky tests

* chore: update waku/v2/node/waku_node.nim

Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>

* chore: update tests/v2/test_waku_discv5.nim

Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>

* chore: update examples/v2/subscriber.nim

Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>

---------

Co-authored-by: Lorenzo Delgado <lnsdev@proton.me>
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
2023-06-06 16:36:20 +02:00
Vaclav Pavlin 835a409d10
feat(wakunode2): enable libp2p rendezvous protocol by default (#1770) 2023-06-01 21:43:10 +02:00
Ivan Folgueira Bande 59ca03a875
feat(postgresql): 1st commit to async sql (waku_archive/driver...) (#1755) 2023-05-25 17:34:34 +02:00
Aaryamann Challani 36266b43cf
fix(rln-relay): keystore usage (#1750)
* fix(rln-relay): keystore usage

* docs(rln-relay): explicit keystore usage
2023-05-22 22:06:55 +05:30
Aaryamann Challani bb9d231bdc
chore(rln-relay): docs and config update for testnet 3 (#1738)
* chore(rln-relay): docs and config update for testnet 3

* chore(rln-relay): update more docs
2023-05-19 18:22:01 +05:30
Ivan Folgueira Bande 665484c17b
refactor: proper use of setupNat (#1740)
Notice that I had to adapt to use 'rlpx_connected_peers' instead
of 'connected_peers' in 'wakunode1.nim' because due to the update
of the 'vendor/nim-eth', which adds the dependency-break with
'confutils' but also includes another changes.

Aside note: we cannot have 'confutils' dependency in 'nim-eth' because
that will prevent the generation of any waku dynamic library.
2023-05-17 18:32:53 +02:00
Ivan Folgueira Bande 2ec9809cf3
fix: wakunode2 config. adding new 'topic' config parameter. (#1727)
* wakunode2 config. adding new 'topic' config parameter.

This new parameter can be repeated and we are starting to deprecate the
parameter 'topics', that expected to receive a space-separated list of
pubsubtopic to subscribe to.

* Appying PR suggestions
2023-05-12 13:37:54 +02:00
Alvaro Revuelta 3e0a693d2e
chore: add timestamp and ephemeral for opt-in dos validator (#1713) 2023-05-05 10:12:49 +02:00
Alvaro Revuelta eaa162ee94
chore: add test vectors dos protection validator (#1711) 2023-05-04 15:38:52 +02:00
Alvaro Revuelta 3e14686950
chore: add validator for dos protec metrics and move to app (#1704) 2023-05-02 16:20:38 +02:00
Alvaro Revuelta 16b4452390
feat: configure protected topics via cli (#1696) 2023-05-02 11:45:50 +02:00
Lorenzo Delgado 209579b0a7
chore: move networkmonitor and wakucanary to apps directory 2023-04-27 16:25:31 +02:00
Lorenzo Delgado ce92fc1aed
refactor(wakunode2): flatten and simplify app setup (#1705) 2023-04-26 19:25:18 +02:00
Lorenzo Delgado c8081c8859
refactor(wakunode2): split setup logic into app module 2023-04-25 15:34:57 +02:00
Lorenzo Delgado e041e04342
chore(core): move peers utils module to waku_core 2023-04-24 16:37:54 +02:00
Lorenzo Delgado 93b0c0713e
chore(core): move utils time module to waku_core 2023-04-19 16:39:52 +02:00
Alvaro Revuelta 14305c610a
feat: curate peers shared over px protocol (#1671) 2023-04-19 16:12:00 +02:00
Lorenzo Delgado c9b6b2308c
chore(core): rename waku_message module to waku_core 2023-04-19 13:29:23 +02:00
Lorenzo Delgado d7b72ac736
chore: flatten waku v2 protocols folder 2023-04-18 15:22:10 +02:00
Ivan Folgueira Bande b2dcb07751
Adding parsePeerInfo and deprecating 'parseRemotePeerInfo' (#1658) 2023-04-12 11:29:11 +02:00
Ivan Folgueira Bande 0b4a2e68e4
chore: allow to call store api endpoints without a storenode (#1575) (#1647)
* test_jsonrpc_store: testing when there is no peer-store-node available
2023-04-12 09:26:26 +02:00
Lorenzo Delgado 1cfb251b65
fix(wakunode2): made setup nat return errors 2023-04-06 13:41:05 +02:00
Ivansete-status b2acb54d6a
feat(rest-api-store): new rest api to retrieve store waku messages (#1611) (#1630)
* feat: new rest api based on the current store json-rpc api and
following the same structure as the current relay rest api.

* feat: the store api attend GET requests to retrieve historical messages

* feat: unit tests.

* feat: allow return message to rest-client in case error (4XX or 5XX)

* chore: always allow to call the store api endpoints (only rest) without explicit storenode (#1575)

* feat: always mounting the current node as storenode client
2023-04-06 11:43:19 +02:00
Lorenzo Delgado e931fa5dc8
feat(node): added waku node builder type 2023-04-05 14:27:11 +02:00
Lorenzo Delgado e8448dfdbe
chore: pointed all waku node imports to the barrel import 2023-04-05 11:58:59 +02:00
Lorenzo Delgado 139428883f
refactor(node): added waku_node barrel import and split config module 2023-04-05 09:46:13 +02:00
Lorenzo Delgado caf78249b2
fix: fixed multiple bare except warnings 2023-04-04 15:34:53 +02:00
Alvaro Revuelta c26dcb2b39
feat: dos protected topic relay msgs based on meta field (#1614) 2023-04-04 10:58:45 +02:00
Lorenzo Delgado f95147f5b7
fix(wakunode2): fix main warnings and drop swap support 2023-03-29 12:47:48 +02:00
Lorenzo Delgado 7639d8d273
refactor(enr): node capabilities code clean up and reorganization 2023-03-08 15:44:10 +01:00
Lorenzo Delgado 67db35e29d
feat(message): differentiate content and pubsub topic namespacing 2023-03-07 11:10:36 +01:00
Lorenzo Delgado d5f93e385d
chore(enr): move waku_enr to protocols module 2023-03-07 10:52:12 +01:00
Lorenzo Delgado 412ac20606
chore: move discovery protocols under protocol module 2023-03-06 17:18:41 +01:00
Lorenzo Delgado 1c39de7fbc
refactor(message): move namespacing utils to waku message module 2023-03-03 10:07:25 +01:00
Aaryamann Challani 8f66e61ac1
feat(rln-relay): group manager integration (#1496)
* feat(rln-relay): init group manager integration

fix(rln-relay): integrate group manager. todo spam and reg handlers

fix(rln-relay): decouple waku-relay and waku-rln-relay

fix(rln-relay): compiles now

fix(chat2): compilation

fix(rln-relay): wip segfault

fix(rln-relay): segfault

fix(chat2|wakunode2): use optional field

fix(rln-relay): wakunode test

fix(rln-relay): uncomment fields in proto decode

fix(rln-relay): used pragma on tests

fix(rln-relay): include cred processing

fix(rln-relay): add reg callback

fix(rln-relay): args to mount

fix(rln-relay): add timeout to waitForExit

fix(rln-relay): use osproc term instead of posix kill

fix(rln-relay): use poParentStream to prevent deadlock

fix(rln-relay): remove poParentStream, remove ganache log output

* fix(rln-relay): abstract tuple into own type
2023-02-28 19:08:30 +05:30
Alvaro Revuelta 700dbbb7fd
refactor(networking): peermanager refactor and cleanups (#1539)
* refactor(networking): use addServicePeer where needed + add metrics
2023-02-27 10:24:31 -07:00
Aaryamann Challani b6a011733d
chore(rln-relay): bump zerokit and update ffi (#1571)
fix(chat2): compilation
2023-02-22 19:47:12 +05:30
Lorenzo Delgado 0a15ce48d8
refactor(rest): deep code and tests reorganization 2023-02-13 15:22:24 +01:00
Lorenzo Delgado 9a40ad6400
fix: remove unused imports 2023-02-13 15:02:34 +01:00
Lorenzo Delgado 2f390ce884
refactor(jsonrpc): deep code and tests reorganization 2023-02-10 10:43:16 +01:00
Lorenzo Delgado a853bf52f0
refactor(wakubridge): split message compatibility from wakubridge 2023-02-10 09:54:47 +01:00
Alvaro Revuelta 9c3e5f5bc5
refactor(px): refactor peer exchange + tests (#1527) 2023-02-09 16:59:29 +01:00
Aaryamann Challani 9ddf0fe1e2
feat(discv5): advertise custom multiaddresses (#1512)
* feat(discv5): allow custom multiaddr advertisement in discv5

feat(discv5): allow custom multiaddr advertisement in discv5

feat(discv5): move discv5 setup from wakunode2 to waku_node

fix(waku_node): def param

test(discv5): test for ext multiaddr

fix(discv5): address comments

fix(discv5): address comments

fix(wakunode2): discoveryconfig in var before init

fix(discv5): pass multiaddr to discv5 directly

fix(discv5): make multiaddrs optional

fix(test): discv5 init

fix(discv5): split discv5 mounting from waku_node

chore(discv5): s/WakuAddressMetadata/WakuNodeAddrMeta/g

* fix(waku_node): 1.25 max conns

* fix(discv5): s/WakuNodeAddrMeta/NetConfig/g

* fix(discv5): address reviews

* fix(discv5): smaller try-catches

* fix(discv5): missing arg

* fix: compile error
2023-02-07 18:36:50 +05:30
Lorenzo Delgado 7f2ea1caeb
refactor(utils): moved noise/compat payload encryption code to utils 2023-02-07 10:45:25 +01:00
Aaryamann Challani c9bc774895
fix(rng): create rng only within isMainModule blocks (#1523)
* fix(rng): create rng only within isMainModule blocks

* fix(rng): wakucanary rng

* fix(rng): address comments
2023-02-06 17:23:05 +05:30
Lorenzo Delgado 8ba36e2dfa
chore(peer_manager): added peer_manager barrel module 2023-02-06 10:03:30 +01:00
Alvaro Revuelta 94459b4886
fix: add safe default values for peer-store-capacity (#1525) 2023-01-31 17:26:22 +01:00
Aaryamann Challani d09ec815ce
feat(wakunode): advertise custom multiaddresses (#1509)
* feat(wakunode2): ability to advertise custom multiaddresses

* test(wakunode): test the feature

* fix(wakunode): remove rln diff

* revert(rln-relay): change that creeped into the diff

* fix(wakunode): move extMultiaddrs closer to nat

* fix(waku_node): idiomatic default arg

* fix(config): shortened validation

* fix(wakunode): discoverable via discv5 and dnsdisc
2023-01-26 15:48:30 +05:30
Alvaro Revuelta ea4703e9a2
feat(networking): add service slots to peer manager (#1473) 2023-01-26 10:20:20 +01:00
Aaryamann Challani 8d74e791df
fix(chat2): warn when rln relay is enabled but not compiled (#1494) 2023-01-16 13:59:45 +05:30