Ivan Folgueira Bande
81d03558b1
Adding more detail in an error produced by 'parsePeerInfo' ( #1687 )
...
* Adding more detail in an error produced by 'parsePeerInfo'
* utils/peers.nim: casting to 'string' in a more idiomatic/convenient way
2023-04-19 14:02:54 +02:00
Lorenzo Delgado
c9b6b2308c
chore(core): rename waku_message module to waku_core
2023-04-19 13:29:23 +02:00
Ivan Folgueira Bande
edd8419a1b
peers.nim: adding more detail in case the p2pPart doesn't contain '/' ( #1684 )
2023-04-19 10:24:06 +02:00
Lorenzo Delgado
d7b72ac736
chore: flatten waku v2 protocols folder
2023-04-18 15:22:10 +02:00
Aaryamann Challani
b62193e59b
fix(rln-relay): scope of getEvents ( #1672 )
2023-04-18 16:55:10 +05:30
Lorenzo Delgado
9616253611
feat(enr): added support for relay shards field
2023-04-17 15:21:20 +02:00
Alvaro Revuelta
1a885b963b
fix(logs): fix log reporting wrong ok connected peers ( #1675 )
2023-04-17 11:46:15 +02:00
Vaclav Pavlin
d5c2770c54
bug: move canBeConnected to PeerManager and check for potential overflow ( #1670 )
2023-04-14 15:12:22 +02:00
Alvaro Revuelta
73cbafa658
chore(networking): get relay number of connections from protocol conns/streams ( #1609 )
2023-04-12 13:05:34 +02:00
Ivan Folgueira Bande
b2dcb07751
Adding parsePeerInfo and deprecating 'parseRemotePeerInfo' ( #1658 )
2023-04-12 11:29:11 +02:00
Lorenzo Delgado
9e1432c9ef
fix: wrap untracked protocol handler exceptions
2023-04-11 13:12:45 +02:00
Hanno Cornelius
418efca27f
feat: integrate new filter protocol, other improvements ( #1637 )
2023-04-11 10:12:54 +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
9dadc1f5a0
refactor(node): remove deprecated constructor and extend testlib with builder
2023-04-05 16:01:51 +02:00
Alvaro Revuelta
5d853b8630
chore: do not mount relay more than once ( #1650 )
2023-04-05 15:12:49 +02:00
Lorenzo Delgado
e931fa5dc8
feat(node): added waku node builder type
2023-04-05 14:27:11 +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
0627b4f8f2
chore: remove deprecated enr record init method
2023-04-04 15:35:15 +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
2b5fd2a21f
chore: remove waku swap protocol
2023-03-31 17:21:40 +02:00
Aaryamann Challani
00a3812b91
chore(rln-relay): gracefully handle chain forks ( #1623 )
...
* chore(rln-relay): gracefully handle chain forks
* fix(rln-relay): better root windowing
* fix(rln-relay): better future generation for test
* fix(rln-relay): reduced width
* fix: better naming of futs, collision free
2023-03-31 19:15:04 +05:30
Alvaro Revuelta
1f79375679
chore: increase meta size to 64 bytes + tests ( #1629 )
2023-03-30 10:38:45 +02:00
Lorenzo Delgado
2ffd2f8010
refactor(enr): move waku enr multiaddr to typedrecod and builder extensions
2023-03-30 09:35:13 +02:00
Aaryamann Challani
b1bafda2ee
fix(rln-relay): on chain registration ( #1627 )
...
* fix(rln-relay): on chain registration
* fix(rln-relay): bump gas lim
2023-03-29 14:22:57 +05:30
Alvaro Revuelta
85f33a8efd
bug: connect instead dial relay peers ( #1622 )
2023-03-28 13:29:48 +02:00
Alvaro Revuelta
c42ac16fe6
bug: fix hash size greater than 32 ( #1621 )
2023-03-24 13:06:27 +01:00
Lorenzo Delgado
157724d9b9
refactor(enr): added waku2 capabilities accessor
2023-03-22 16:01:02 +01:00
Hanno Cornelius
d920b973b1
feat: further filter improvements ( #1617 )
2023-03-22 10:32:53 +02:00
Lorenzo Delgado
ac56e1dcdd
feat(common): added extensible implementation of the enr typed record
2023-03-21 17:27:51 +01:00
Hanno Cornelius
be446b9892
feat(filter-v2): new filter protocol increment - message handling and clients ( #1600 )
...
* feat: further filter v2 progress
* feat: filter client implementation
* chore: rename test modules
* feat: extend tests and minor improvements
2023-03-20 13:19:53 +02:00
Aaryamann Challani
2f3ba3d6d1
chore(rln-relay): reduce exports ( #1615 )
2023-03-20 16:21:35 +05:30
Aaryamann Challani
08b2180441
fix(rln-relay): msg validation according to new circuit ( #1594 )
2023-03-13 20:09:33 +05:30
Aaryamann Challani
6584b58593
feat(rln-relay): use precompiled resources w/ rln ( #1578 )
...
* feat(rln-relay): use precompiled resources w/ rln
* chore: remove resource cp stage from Dockerfile
* chore(makefile): remove DOCKER_IMAGE_STAGE from makefile
* chore: bump submodule, rev branch
2023-03-13 12:03:21 +05:30
Lorenzo Delgado
075815b072
feat(enr): added enr builder waku capabilities extension
2023-03-10 11:49:41 +01:00
Lorenzo Delgado
1995bbec6c
feat(common): added the enr builder
2023-03-10 01:33:52 +01:00
Alvaro Revuelta
622ec27fcd
refactor(networking): unify peer data models, remove StoredInfo ( #1597 )
2023-03-09 11:05:50 -07: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
0bf8d573a7
fix: clean and normalize module imports
2023-03-06 17:19:06 +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
Hanno Cornelius
ef7ce679df
feat: new filter protocol increment - subscribe request handling ( #1584 )
...
* feat: new filter protocol service node
* feat: add test and fix compilation errors
* feat: more tests and minor fixes
* chore: update waku/v2/protocol/waku_filter_v2/protocol.nim
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
* chore: add some convenience functions
---------
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
2023-03-02 17:23:30 +02:00
Lorenzo Delgado
a57bea299b
feat(message): added waku message deterministic hashing
2023-03-02 11:41:41 +01:00
Aaryamann Challani
92546bd997
chore(rln-relay): address laundry list of improvements ( #1585 )
2023-03-01 17:29:13 +05:30
Lorenzo Delgado
4865fd4b7b
feat(message): added meta attribute to waku message
2023-03-01 10:11:29 +01:00
RichΛrd
43b3f1cef4
chore: use base64 url safe encoding for noise ( #1569 )
...
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
2023-02-28 14:13:27 -04: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
Hanno Cornelius
c254115578
chore: log node peer ID with relay trace logging ( #1574 )
...
* chore: log node peer ID with relay trace logging
* feat: add peerId accessor
2023-02-27 17:36:24 +02:00
Lorenzo Delgado
25660b4adf
refactor(relay): split the message id provider into a module
2023-02-27 15:38:24 +01:00
Lorenzo Delgado
8258415804
fix(jsonrpc): use padded-base64 for payload encoding
2023-02-23 09:31:06 +01:00
Aaryamann Challani
b6a011733d
chore(rln-relay): bump zerokit and update ffi ( #1571 )
...
fix(chat2): compilation
2023-02-22 19:47:12 +05:30
Hanno Cornelius
59203c7453
fix: allow higher resolution timestamps ( #1570 )
...
* fix: allow higher resolution timestamps
* fix: higher precision requires coarser test
2023-02-21 14:52:30 +02:00
Lorenzo Delgado
f7584dfc49
feat(protobuf): added error wrappers for invalid length validation
2023-02-20 15:03:32 +01:00
Alvaro Revuelta
edce01cd6a
fix(networking): fix wrong peer connected state ( #1560 )
2023-02-14 15:38:32 +01:00
Hanno Cornelius
740e4f2bd6
chore: lower per-message log level to trace ( #1561 )
2023-02-14 15:07:26 +02:00
Lorenzo Delgado
9258914057
fix(jsonrpc): encode waku messages payload in base64 ( #1139 )
2023-02-14 09:19:06 +01:00
Aaryamann Challani
416bc80092
fix(discv5): add multiaddrs only if len > 0 ( #1559 )
2023-02-14 13:41:48 +05:30
Alvaro Revuelta
28e5bcf8b5
fix(networking): fix flaky peerstore test ( #1554 )
2023-02-13 18:10:20 +01:00
Hanno Cornelius
dd5243a41c
fix: change message ID provider to match go-waku ( #1556 )
2023-02-13 18:22:34 +02:00
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
a7f0a7f704
fix(node): remove subscription to waku default network topic ( #1545 )
2023-02-10 17:55:47 +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
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
1a9f633311
refactor(message): split waku message module into rpc and codec
2023-02-08 16:16:21 +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
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
4ea6039323
chore(discv5): waku discv5 module code cleanup
2023-02-06 11:36:37 +01:00
Lorenzo Delgado
8ba36e2dfa
chore(peer_manager): added peer_manager barrel module
2023-02-06 10:03:30 +01:00
Hanno Cornelius
528cc5ad34
chore: add better e2 trace logging for relay ( #1526 )
2023-02-03 10:06:21 +02:00
Alvaro Revuelta
94459b4886
fix: add safe default values for peer-store-capacity ( #1525 )
2023-01-31 17:26:22 +01: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
77c64043f9
fix(store): set store rpc codec pagesize type to uint64
2023-01-31 11:48:44 +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
Lorenzo Delgado
8c7a931f65
refactor(archive): sqlite query optimization. replace or-ed equal conditions list with in-list
2023-01-25 16:52:13 +01:00
Lorenzo Delgado
b84c54bbcb
refactor(relay): simplify relay publish jsonrpc api
2023-01-25 14:35:38 +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
Aaryamann Challani
9a12872465
fix(rln-relay): use new credentials for compatibility ( #1497 )
2023-01-19 14:20:08 +05:30
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
Alvaro Revuelta
982cd28265
feat(networking): use autonatservice and log if node is reachable ( #1472 )
2023-01-11 10:57:49 +01:00
Alvaro Revuelta
53bf00de69
refactor: remove unnecessary peermanager dependency ( #1474 )
2023-01-11 09:10:46 +01:00
Alvaro Revuelta
4eb9375b62
refactor(networking): wait for all futures together in connectToNodes ( #1471 )
...
* refactor(networking): wait for all futures together in connectToNodes
* refactor(networking): await fix style
2023-01-09 21:45:50 +01:00
Alvaro Revuelta
333ce0a2e1
fix(rpc): return error if peer cant be connected ( #1476 )
2023-01-09 14:15:03 +01:00
Alvaro Revuelta
5042b06215
chore(p2p): unify dialpeer functions ( #1458 )
2022-12-14 16:04:11 +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
Lorenzo Delgado
e4c10ed661
feat(wakunode2): support log format format selection
2022-12-07 12:30:32 +01:00