Lorenzo Delgado
6eb13b9a0b
fix(tests): do not specify port number
2023-02-13 12:27:49 +01:00
Lorenzo Delgado
6782398989
feat(testlib): added global tests rng and waku2 sub-module
2023-02-13 11:43:49 +01:00
Lorenzo Delgado
a7f0a7f704
fix(node): remove subscription to waku default network topic ( #1545 )
2023-02-10 17:55:47 +01:00
Alvaro Revuelta
d6887ccdb0
chore: bump nim-libp2p 444b837 ( #1546 )
...
* chore: bump nim-libp2p 444b837
* fix: update test with libp2p mods
2023-02-10 16:44:06 +01:00
Lorenzo Delgado
274101af43
refactor(relay): improve waku_relay apis and add tests
2023-02-10 15:17:50 +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
G
cdc09aeeb4
feat(credentials): store and processing generic app credentials ( #1466 )
...
* feat(credentials): store and processing generic app credentials
* feat(credentials): separate module; minimal tests
* more work
* feat(credentials): check presence of idCredential in keystore and add only new membership groups
* feat(credential): refactor, new data structure, dynamic add credential, filter
* feat(credential): add filter, get credentials
* feat(credential): encode/decode utility
* feat(credential): sort groups, test credential retrieval/group merging
* fix(credential): remove unnecessary order in sort
* fix(credentials): fix vendor commits
* fix(credential/rln): embed credential module in rln relay
* feat(credentials/rln): use credentials API in rln-relay to store/read credentials
* refactor(credentials): implement hasKeys for JsonNode
* fix(credentials): restore connectToNodes call
* refactor(credentials): remove unnecessary imports
* refactor(credentials): add Res suffix to results
* refactor(credential): moved save json to separate proc; added comments
* feat(credentials): use appInfo
* refactor(keystore): refactor code in a more structured module; address reviewers
* fix(keystore): fix indentation
2023-02-08 16:26:23 +01:00
Lorenzo Delgado
00f4ce4cbc
refactor(relay): improve wakuy relay api
2023-02-08 16:09:59 +01:00
Alvaro Revuelta
55bac8dedf
feat: add WakuMessage validation in gossipsub ( #1537 )
2023-02-07 17:42:17 +01:00
Lorenzo Delgado
7cbb0bb28f
chore(tests): moved common test suites to its own folder
2023-02-07 17:18:41 +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
19abd51976
chore: remove unused test fixture file
2023-02-06 11:06:45 +01:00
Lorenzo Delgado
8ba36e2dfa
chore(peer_manager): added peer_manager barrel module
2023-02-06 10:03:30 +01:00
Hanno Cornelius
f36d708e76
fix: improve filter test race condition ( #1529 )
...
* fix: improve filter test race condition
* fix: missed one sleep
2023-02-03 10:00:26 +02:00
Alvaro Revuelta
da7592bcc7
feat(networking): prune peers from peerstore exceeding capacity ( #1513 )
...
* feat(networking): prune peers from peerstore
* chore: add comments
* feat(networking): fix comments
* Add tests
2023-01-31 13:24:49 +01:00
Lorenzo Delgado
c5286340d5
test(store): extend wankunode's waku store test coverage
2023-01-30 15:21:51 +01:00
Lorenzo Delgado
a590575a6a
refactor(tests): group waku store test suite files
2023-01-27 14:31:58 +01:00
Alvaro Revuelta
93a07babf2
fix(rpc): fix out of bound when empty multiadd ( #1507 )
2023-01-26 12:05:25 +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
Lorenzo Delgado
95d31b3ed3
fix(archive): reverse the db query results in the waku archive front-end
2023-01-26 10:19:58 +01:00
Alvaro Revuelta
028efc8547
feat(networking): add backoff period after failed dial ( #1462 )
...
* feat(networking): add exponential backoff when dialing relay peers
* feat(networking): fix tests
* revert withTimeout
* feat(networking): refactor tests
* feat(networking): improve logs + ping using switch
* feat(networking): fix backoff bug + fix tests
* feat(networking): fix comments
2023-01-23 21:24:46 +01:00
Alvaro Revuelta
fd1ec4a74a
feat(networking): add relay connectivity loop ( #1482 )
...
* feat(networking): add relay connectivity loop
* Add unit tests
* feat(networking): fix comments
* Fix lnsd comments
2023-01-18 15:17:56 +01:00
Aaryamann Challani
605cf1c38c
feat(rln-relay): abstract group management into its own api ( #1465 )
...
* feat(rln-relay): group manager api
* fix(rln-relay): static gm, method async works now
* fix(rln-relay): cb naming, ensure merkle root changed
* chore(rln-relay): static group manager fully tested
* chore(rln-relay): split ffi into its own module, split conversion_utils
* chore(rln-relay): refactor onchain group
* fix(rln-relay): throw error if privatekey is malformed
* chore(rln-relay): convert methods to procs, remove warnings, formatting
* chore(rln-relay): remove comment
* style(rln-relay): fmt test
* feat(rln-relay): complete onchain group manager. pending tests
* fix(rln-relay): onchain implementation works now
* fix(rln-relay): reg index
* fix(rln): imports
* fix(rln-relay): revert method to proc conv
* fix(rln-relay): s/ffi/rln
* fix(rln-relay): remove rln/ from gitignore
* fix(rln-relay): s/ffi/rln
2023-01-16 18:26:18 +05:30
Lorenzo Delgado
3ee87d1848
feat(archive): respond with error on more than 10 content topics query
2023-01-11 12:19:59 +01:00
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
Alvaro Revuelta
333ce0a2e1
fix(rpc): return error if peer cant be connected ( #1476 )
2023-01-09 14:15:03 +01: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
Aaryamann Challani
f08680045e
chore(rln-relay): address laundry list for tests ( #1452 )
...
* chore(rln-relay): s/var/let
* chore(rln-relay): s/var/let
* chore(rln-relay): s/check/require
* chore(rln-relay): s/check/require
* fix(rln-relay): s/check/require
2022-12-07 22:47:08 +05:30
Alvaro Revuelta
8cce06b8a2
feat(peerstore): store peer direction ( #1424 )
...
* feat(peerstore): store peer direction
* feat(peerstore): add getPeersByDirection function + tests
* feat(peerstore): set out own MaxConnectionsPerPeer to 1
* feat(peermanager): add metric for inbound/outbound peers
2022-11-29 17:35:25 +01:00
Hanno Cornelius
08cbe5216a
fix: waku bridge test timing ( #1429 )
...
* fix: waku bridge test timing
* fix: shorten timing more
2022-11-28 22:07:21 +02:00
Hanno Cornelius
8d69846aa4
feat: enable AutoNAT and libp2p circuit relay ( #1425 )
...
* feat: enable libp2p circuit relay
* feat: enable libp2p autonat
2022-11-28 16:56:01 +02: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
089e2ae1e8
test(archive): randomize archive driver query test suites' fixtures
2022-11-24 00:58:17 +01:00
Lorenzo Delgado
6811af328c
feat(archive): add waku archive implementation
2022-11-23 10:08:00 +01:00
Lorenzo Delgado
0188ec1a9e
feat(archive): add waku archive implementation
2022-11-22 19:40:24 +01:00
Lorenzo Delgado
299ee3eb5d
refactor(rln): decouple rln types from waku message type
2022-11-22 18:29:43 +01:00
Alvaro Revuelta
1e8e60caed
fix(tests): add missing import for tests ( #1375 )
2022-11-22 08:13:51 +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
59c18ab5c4
feat(store): add support for history query handler
2022-11-21 11:16:57 +01:00
Lorenzo Delgado
e85b5cbae1
chore(store): remove waku swap integration from store protocol
2022-11-21 09:36:41 +01:00
Lorenzo Delgado
f89e6869cb
fix(store): waku store rpc codec support optional fields
2022-11-17 20:40:08 +01:00
Lorenzo Delgado
39bf289f43
refactor(protocols): decouple protocol rpc types from api types
2022-11-16 20:02:38 +01:00
Aaryamann Challani
07833ce313
feat(rln-relay): process blocks atomically ( #1349 )
...
* test(rln-relay): atomic block processing
* fix(rln-relay): use correct starting index
* fix(rln-relay): args
* fix(rln-relay): append length
* fix(rln-relay): tests, remove insertMember
* fix(rln-relay): camelCase, cleanup
* fix(rln-relay): actually process per block
* fix(rln-relay): clean up
* chore(gitignore): Update .gitignore
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
* Update waku/v2/protocol/waku_rln_relay/waku_rln_relay_utils.nim
Co-authored-by: Sanaz Taheri <35961250+staheri14@users.noreply.github.com>
* Update waku/v2/protocol/waku_rln_relay/waku_rln_relay_utils.nim
Co-authored-by: Sanaz Taheri <35961250+staheri14@users.noreply.github.com>
* fix(rln-relay): args
* fix(rln-relay): add prefix def
* fix(rln-relay): make test cleaner
* chore(rln-relay): apply suggestions
Co-authored-by: G. <28568419+s1fr0@users.noreply.github.com>
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
* chore(rln-relay): add member order check
* test(rln-relay): batch insert in tests
* fix(rln-relay): test batching
* fix(rln-relay): toSeq the HSlice
* fix(rln-relay): naming
* fix(rln-relay): add insertMember back
* fix(rln-relay): serialize util, address review
* fix(rln-relay): add atomicity desc
* fix(rln-relay): inHex
* fix(rln-relay): explicit proc def
* fix(rln-relay): indexGap condition
* fix(rln-relay): func sig
* fix(rln-relay): onchain test
* fix(rln-relay): use asyncSpawn vs asyncCheck
* fix(rln-relay): do not explicitly insert into the index
* fix(rln-relay): condition, semantics
* fix(rln-relay): index must be 1
* chore(rln-relay): line br
* fix(rln-relay): missing return ok(true)
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
Co-authored-by: Sanaz Taheri <35961250+staheri14@users.noreply.github.com>
Co-authored-by: G. <28568419+s1fr0@users.noreply.github.com>
2022-11-10 22:28:31 +05:30
Alvaro Revuelta
7917e05d9d
chore(networkmonitor): tool to discover and provide metrics on peers ( #1290 )
...
* chore(networkmonitor): initial prototype
* chore(networkmonitor): add cli, metrics and PoC
* feat(utils): add supportsCapability function + tests
* feat(utils): add supportedCapabilites function
* chore(networkmonitor): add metrics with enr/ip/capabilities
* chore(networkmonitor): refactor + tests
* chore(networkmonitor): add discovered timestamp
* chore(networkmonitor): add metrics on connected nodes
* chore(networkmonitor): new flags + utils file + readme
* chore(networkmonitor): add user-agent metrics
* chore(networkmonitor): connect only to randomly discovered peers
* chore(networkmonitor): get location of peer using ip
* chore(networkmonitor): expose peer metrics with simple rest server
* chore(networkmonitor): update README
* chore(networkmonitor): fix wakunode2 to waku_node
* chore(networkmonitor): fix import order
* chore(networkmonitor): fix comments + refactor + pushraises
* chore(networkmonitor): refactor + handle exceptions
* chore(networkmonitor): fix makefile after rebase
* chore(networkmonitor): address review comments 1
* chore(networkmonitor): add nim.cfg
2022-11-10 10:29:34 +01:00