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
Hanno Cornelius
76bb7520f3
chore: update submodules ( #1480 )
...
* chore: switch to nim-eth master branch
* chore: updated submodules
* fix: submodule without error handling
* fix: autonat client
2023-01-11 08:06:30 +02:00
G
226b44c86d
refactor(rln): use zerokit extended_key_gen in place of key_gen ( #1459 )
...
* chore(rln-relay): refactor mounting procedure
* fix(rln-relay): tests
* fix(rln-relay|chat2): update mounting proc in chat2, fix args to mountRlnRelay
* refactor(rln): use zerokit extended_key_gen in place of key_gen
refactor(rln): rename membershipKeyPair to identityCredential
update zerokit submodule
refactor(rln): use extended_key_gen; rebrand keypairs to idCredentials
refactor(rln): rename mountRlnRelay memKeyPair argument
* fix(rln): fix wrong field
* fix(rln): add () to toHex
Co-authored-by: Aaryamann Challani <43716372+rymnc@users.noreply.github.com>
Co-authored-by: rymnc <43716372+rymnc@users.noreply.github.com>
2022-12-14 12:28:09 +01:00
Aaryamann Challani
33e9d8b9b2
chore(rln-relay): refactor mounting procedure ( #1457 )
...
* chore(rln-relay): refactor mounting procedure
* fix(rln-relay): tests
* fix(rln-relay|chat2): update mounting proc in chat2, fix args to mountRlnRelay
* fix(rln-relay): remove stale todo
2022-12-13 14:56:24 +05:30
Lorenzo Delgado
e4c10ed661
feat(wakunode2): support log format format selection
2022-12-07 12:30:32 +01:00
Tanguy
4b180c89bd
Fix Ctrl-C quitting ( #1416 )
2022-12-06 12:51:33 +02:00
Alvaro Revuelta
a7a87f1f10
chore(networkmonitor): Add DNS discovery ( #1446 )
...
* chore(networkmonitor): add dns disc to networkmonitor tool
* chore(networkmonitor): decouple ip api calls from main loop
* chore(networkmonitor): add timeout flag
2022-12-05 20:02:21 +01:00
Alvaro Revuelta
670035f32b
chore: print getBacktrace() after sigsegv ( #1440 )
2022-11-30 19:41:19 +01:00
Alvaro Revuelta
34d116ff58
chore(wakunode): handle sigsegv signal ( #1430 )
2022-11-29 16:02:18 +01:00
kaiserd
6942e466e8
fix: start px discv5 loop after discv5 has started ( #1407 )
2022-11-25 14:15:39 +01:00
Alvaro Revuelta
43fd11b4dc
refactor: reuse nim-libp2p peerstore + move peermanager logic ( #1383 )
...
* refactor: reuse nim-libp2p peerstore + move peermanager logic
* refactor: fix comments
* refactor: modify reconnectPeers and unittest
* feat(apps): new flag for peerStoreCapacity
* fix(examples): fix example2 target
* refactor: fix comments
2022-11-24 14:11:23 +01:00
Lorenzo Delgado
6811af328c
feat(archive): add waku archive implementation
2022-11-23 10:08:00 +01:00
Lorenzo Delgado
299ee3eb5d
refactor(rln): decouple rln types from waku message type
2022-11-22 18:29:43 +01:00
Aaryamann Challani
853995e17f
chore(rln-relay): barrel imports ( #1386 )
...
Co-authored-by: s1fr0 <28568419+s1fr0@users.noreply.github.com>
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
2022-11-21 15:15:03 +01:00
Lorenzo Delgado
39bf289f43
refactor(protocols): decouple protocol rpc types from api types
2022-11-16 20:02:38 +01:00
Lorenzo Delgado
f1ab1475db
fix: store clients with `--store=false` does not install Store Client JSON-RPC API handlers
2022-11-15 22:03:06 +01:00
Hanno Cornelius
97eaa6919b
chore: disable store protocol by default ( #1374 )
2022-11-14 13:09:37 +02:00
G
63137f3e2a
refactor(rln): remove kilic lib ( #1365 )
...
* refactor(rln): remove kilic lib
* chore(rln): address reviewerS
2022-11-09 19:45:04 +01:00
Lorenzo Delgado
b07cdb1841
refactor(store): decouple waku store public api types from rpc types
2022-11-09 18:50:18 +01:00
Lorenzo Delgado
4acc611e47
refactor: unify pubsub topic type and default value
2022-11-09 09:55:47 +01:00
Lorenzo Delgado
c4f9813ab3
refactor(queue_store): rename queue_store module and simplify api
2022-11-08 16:10:23 +01:00
Lorenzo Delgado
b4bda3c10b
fix(rln-relay): remove dependency on applications' configuration
2022-11-08 12:53:47 +01:00
Lorenzo Delgado
bcc6c32287
chore: rename protocols rpc_codec procs from init to decode
2022-11-07 16:24:16 +01:00
Lorenzo Delgado
2c2ce20c4e
chore: build rln dependecies only when building v2
2022-11-07 09:14:21 +01:00
Lorenzo Delgado
4509f4f361
refactor(message_store): move message_store to node module
2022-11-04 19:48:22 +01:00
Lorenzo Delgado
7ef4eaf46d
chore: update push raises pragma according to nim 1.6
2022-11-04 10:52:27 +01:00
Lorenzo Delgado
cb1f4d46f4
chore: remove unused imports
2022-11-04 10:52:08 +01:00
Lorenzo Delgado
0569beadbe
refactor(peer_manager): move peer_store under peer_manager module
2022-11-04 09:40:13 +01:00
Aaryamann Challani
53e8979aa9
chore(rln-relay): remove all raises and replace with Result types ( #1321 )
...
* chore(rln-relay): remove all raises and replace with Result types
* chore(rln-relay): s/var/let
* chore(rln-relay): s/isOk/isOk()
* fix(rln-relay): proc def comments about the result type
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
2022-11-04 08:30:42 +05:30
Lorenzo Delgado
d1df046c87
feat(wakunode2): support configuration via environment variables
2022-11-03 17:58:48 +01:00
Lorenzo Delgado
e5a0c3d633
refactor(wakunode2): move configuration load logic to config module
2022-11-03 10:45:06 +01:00
Lorenzo Delgado
cf7e51a3f1
fix(wakunode2): fix message retention policy config validation regex
2022-11-02 17:38:24 +01:00
Lorenzo Delgado
0e1dae5956
fix: replace nim's std/nre with nim-regex library
2022-11-02 15:55:09 +01:00
Lorenzo Delgado
83ae6987b8
fix: replace TaintedString type deprecated in nim 1.5
2022-11-02 14:55:48 +01:00
Lorenzo Delgado
8fee1b9bed
feat(filter): split waku filter protocol into server and client
2022-11-02 11:59:58 +01:00
Lorenzo Delgado
1c46b61402
refactor(peer-exchange): move peer management to waku_node module
2022-11-02 09:45:21 +01:00
Lorenzo Delgado
0de5a122ef
chore(common): move sqlite module to common module
2022-10-28 20:13:41 +02:00
Lorenzo Delgado
ee86d190d6
refactor(node): use store client in waku_node
2022-10-28 20:11:28 +02:00
Lorenzo Delgado
2c1ad9f760
refactor(node): use lightpush client in waku_node
2022-10-28 16:30:01 +02:00
Alvaro Revuelta
d479aacec5
feat(wakunode2): add nwaku agent-string to switch ( #1302 )
2022-10-28 15:12:06 +02:00
Hanno Cornelius
16c85db43c
chore: update submodules and bump Nim to 1.6.6 ( #1307 )
...
* chore: update submodules
* fix: libp2p now provides callback to update peer addrs
* fix: breaking change in EthereumNode constructor
* fix: contentType type has changed (again)
* fix: explicit future type
* fix: nim 1.6.6 error handling requirements
* fix: missed a spot - peer info addrs in sim2
* fix: help compiler a bit here
2022-10-28 12:51:46 +03:00
G
ea8d72188e
feat: add keyfile support for RLN credentials secure storage ( #1285 )
...
* feat(utils): add keyfile + test
* feat(keyfile): make id and version field optional
* feat(rln): enable input password for keyfile encryption
* refactor(keyfile): store multiple keyfiles in single file
* refactor(rln): write and read rln credentials proc using keyfiles + test update
* feat(keyfile): allow skip successful decryption to iterate among multiple keyfiles + test
* fix(rln): add rln-relay-cred-password in wakunode2 config
* chore(keyfile): remove unnencessary echo
* refactor(rln/kesyore): address reviewers' comments
* refactor(rln/keyfile): use defer instead of try/finally
* feat(rln): address reviewers comments; return all successful decryptions
* chore(keyfile): add comments; changed name to loadKeyfiles
* feat(keyfile): chmod 600 for keyfiles
* fix(rln): fix errors raised by readRlnCredentials
* feat(keyfile): add nim-eth tests; address reviewers comments
* fix(keyfile/rln): better error handling
* refactor(keyfile): refactoring nim-eth tests
* fix(keyfile): fix wrong index
* fix(keyfile): fix wrong password generation in test
* feat(keyfile): add wrong mac test
Co-authored-by: Aaryamann Challani <43716372+rymnc@users.noreply.github.com>
2022-10-28 11:13:05 +02:00
Lorenzo Delgado
62328f0abd
feat(wakunode2): simplify wakunode2 config and decouple peer persistence
2022-10-28 00:05:02 +02:00
Lorenzo Delgado
0725da0b66
chore(node): waku node code reorganization
2022-10-27 17:29:09 +02:00
Lorenzo Delgado
bccb73c325
feat(store): simplify wakunode2 configuration options
2022-10-26 17:10:30 +02:00
kaiserd
f5ce9ce4a4
fix(wakunode2): no peer-exchange peer error msg
...
Co-authored-by: ksr <kaiserd@users.noreply.github.com>
2022-10-26 12:50:19 +02:00
kaiserd
c99b0a4778
fix: call runPeerExchangeDiscv5Loop ( #1297 )
2022-10-25 12:15:10 +02:00
Lorenzo Delgado
c19081b6ce
refactor(wakunode2): extract setup proc definitions from main section
2022-10-21 15:01:01 +02:00
Aaryamann Challani
bdb120d842
feat(chat2): metrics server + metrics logging ( #1279 )
...
* feat(rln-relay): periodically log metrics
* fix(chat2): enable metrics by default in chat2 config
* test(chat2): metrics, gc compilation error
* chore(metrics): make metrics a util, and import into wakunode2 apps dir
* fix(metrics): raise error
* fix(metrics): gc error
* fix(wakunode2): remove setup_metrics
* chore(metrics): waku utils metrics
* fix(metrics): create waku_metrics in node dir
* fix(metrics): log scope
* fix(chat2): disable metrics server by default
* fix(utils): collectorAsF64 proc def
* fix(metrics): store metrics path
2022-10-21 14:03:36 +05:30
Lorenzo Delgado
e5c3aa560e
feat(store): add waku store client module
2022-10-20 18:09:40 +02:00
Alvaro Revuelta
df6d215424
fix: log-level being ignored ( #1272 )
2022-10-18 18:03:43 -05:00
Lorenzo Delgado
757804c9ee
chore(wakunode2): move wakunode2 to apps directory
2022-10-18 12:35:26 -05:00
Lorenzo Delgado
5046a4b3da
refactor(node): split wakunode into waku_node and wakunode2
2022-10-18 09:05:53 -05:00
Lorenzo Delgado
5fbc537cbf
chore: move apps and tools to their own directory
2022-10-12 14:41:25 -05:00