Simon-Pierre Vivier
1763b1efa1
feat: Autosharding API for RELAY subscriptions ( #1983 )
2023-09-26 07:33:52 -04:00
Simon-Pierre Vivier
3e72e83067
refactor: Moved external APIs out of node ( #2069 )
2023-09-22 09:36:46 -04:00
NagyZoltanPeter
02a814bd35
feat: lightpush rest api ( #2052 )
...
RestApi Lightpush endpoint implemented
* Openapi definition for lightpush rest api
* Update waku/node/rest/lightpush/handlers.nim
* Fix install handler naming, added negative test cases and fixes for restapi lightpush
* Fix error handling in lightpush rest handler
* Fix main success case - relay message that comes with pushRequest
* Fix rest relay serdes test with RelayWakuMessage validation changes
* Checking response message tests
2023-09-22 13:46:55 +02:00
Ivan Folgueira Bande
1c4533a27a
Bumping vendor/nim-confutils and vendor/nim-serialization ( #2056 )
2023-09-21 13:12:14 +02:00
Aaryamann Challani
2e515a06ed
chore(rln-relay): logs, updated submodule, leaves_set metric ( #2024 )
...
* chore(rln-relay): logs, updated submodule, leaves_set metric
* chore(rln-relay): update build script, fix makefile
2023-09-18 10:56:58 +05:30
NagyZoltanPeter
dac072f843
feat: HTTP REST API: Filter support v2 ( #1890 )
...
Filter v2 rest api support implemented
Filter rest api documentation updated with v1 and v2 interface support.
Separated legacy filter rest interface
Fix code and tests of v2 Filter rest api
Filter v2 message push test added
Applied autoshard to Filter V2
Redesigned FilterPushHandling, code style, catch up apps and tests with filter v2 interface changes
Rename of FilterV1SubscriptionsRequest to FilterLegacySubscribeRequest, fix broken chat2 app, fix tests
Changed Filter v2 push handler subscription to simple register
Separate node's filterUnsubscribe and filterUnsubscribeAll
2023-09-14 21:28:57 +02:00
Álex Cabeza Romero
df338b19d1
test(waku-filter): Subscriber ping tests ( #2023 )
...
* Move waku filter utility functions to a different file for reuse.
* Add asyncSetup and asyncTeardown templates.
* Implement waku filter subscriber ping tests.
2023-09-14 11:30:56 +02:00
Ivan Folgueira Bande
e8602021b6
chore(postgres): not loading the libpq library by default & better user feedback ( #2028 )
...
* removing implicit dependency with libpq if postgres is not being used.
* We only run the postgres tests when explicitly willing to, i.e. make
POSTGRES=1 test. The reason is that the postgres tests expect a
database instance to be running locally.
2023-09-13 12:45:55 +02:00
gabrielmer
47ae19c104
fix: prevent IP 0.0.0.0 from being published and update peers with empty ENR data ( #1982 )
2023-09-11 11:30:12 +03:00
Aaryamann Challani
645b034367
feat(rln-relay): removed rln from experimental 🚀 ( #2001 )
...
* feat(rln-relay): removed rln from experimental 🚀
* fix(waku_node): if rln-relay is nil, return true
* chore(tests): mark rest health as skipped
2023-09-11 12:02:31 +05:30
Aaryamann Challani
21604e6bfd
fix(rln-relay): missed roots during sync ( #2015 )
2023-09-08 18:24:27 +05:30
NagyZoltanPeter
fc6194bb6b
feat: Rest endoint /health for rln ( #2011 )
...
* Rest endoint /health added
* Remove dev-debug echo
* Changed not ready message
* Update waku/node/rest/health/handlers.nim
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
* Various fixes on PR foundings, added comments
---------
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
2023-09-08 11:19:47 +02:00
Simon-Pierre Vivier
b991682b28
fix(tests): relay tests use random port to avoid conflict ( #1998 )
2023-09-07 07:41:56 -04:00
Aaryamann Challani
5638bd06bb
chore(rln-relay): add isReady check ( #1989 )
...
* chore(rln-relay): add isReady check
* fix(rln-relay): multiple parameters for checking if node is in sync
* fix: set latesthead in newHeadCallback
* fix: explicit rpc call
* fix: unhandled exception
2023-09-06 14:16:19 +05:30
Aaryamann Challani
483f40c8f7
chore(rln-relay): clean up nullifier table every MaxEpochGap ( #1994 )
2023-09-06 13:48:02 +05:30
Aaryamann Challani
debc5f19d9
feat(relay): ordered validator execution ( #1966 )
...
* feat(relay): ordered validator execution
* fix: make more readable
* test: ignore accepts only
* fix: idempotent .subscribe
* fix(rln-relay): make validators private
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
* fix: include comments, unsubscribe behaviour
* fix: compilation
---------
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
2023-09-05 14:35:07 +05:30
Aaryamann Challani
a14c32614a
chore(rln-relay): use the only key from keystore if only 1 exists ( #1984 )
...
* chore(rln-relay): use the only key from keystore if only 1 exists
* fix: convert iterator to seq and then index into it
2023-09-04 15:46:44 +05:30
Aaryamann Challani
be48891f77
chore(rln-relay): confirm that the provided credential is correct using onchain query ( #1980 )
2023-09-04 11:22:31 +05:30
Alvaro Revuelta
05c988645d
chore(api): validate rln message before sending (rest + rpc) ( #1968 )
2023-09-01 15:03:59 +02:00
Alvaro Revuelta
f262397d71
fix(tests): fix flaky test ( #1972 )
2023-08-31 12:24:41 +02:00
Aaryamann Challani
e7b2b88f5b
fix(rln-relay): modify keystore credentials logic ( #1956 )
...
* fix(rln-relay): modify keystore credentials logic
fix: bump version
* Update waku/waku_rln_relay/group_manager/on_chain/group_manager.nim
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
* Update tests/waku_rln_relay/test_waku_rln_relay.nim
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
* Update waku/waku_keystore/protocol_types.nim
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
* fix: greatly improve error handling
* fix: display proc and appropriate assert
---------
Co-authored-by: Ivan Folgueira Bande <128452529+Ivansete-status@users.noreply.github.com>
2023-08-29 17:46:21 +05:30
Aaryamann Challani
bd3be21929
fix(rln-relay): sync from deployed block number ( #1955 )
...
* fix(rln-relay): sync from deployed block number
* fix(rln-relay): remove option usage for ints
* fix: unnecessary decl
2023-08-29 13:12:13 +05:30
Aaryamann Challani
01634f57f0
fix(rln-relay): window of acceptable roots synced to rln metadata ( #1953 )
...
* fix(rln-relay): window of acceptable roots synced to rln metadata
* fix(rln-relay): s/var/let, use for loop
2023-08-25 23:29:17 +05:30
Aaryamann Challani
cc9f8d4254
chore(rln-relay): integrate waku rln registry ( #1943 )
2023-08-25 22:48:52 +05:30
Simon-Pierre Vivier
4539dfc761
feat(discv5): topic subscriptions update discv5 filter predicate ( #1918 )
2023-08-23 11:50:59 -04:00
Simon-Pierre Vivier
c369b3294e
feat: topic subscriptions updates discv5 ENR ( #1875 )
2023-08-23 09:53:17 -04:00
Aaryamann Challani
1ae5b5a951
fix(rln-relay): RLN DB should be aware of chain and contract address ( #1932 )
2023-08-23 18:23:30 +05:30
Alvaro Revuelta
0ac8a7f0cd
fix(test): fix flaky rln test ( #1923 )
2023-08-22 10:10:54 +02:00
Alvaro Revuelta
af95b5713f
chore(rln): run rln in all relay pubsubtopics + remove cli flags ( #1917 )
2023-08-21 08:55:34 +02:00
Simon-Pierre Vivier
cf3013962c
feat: update various protocols to autoshard ( #1857 )
...
* feat: update FILTER & LIGHTPUSH to autoshard
2023-08-17 08:11:18 -04:00
Aaryamann Challani
c9772af0be
fix(rln-relay): timeout on macos runners, use fixed version of ganache ( #1913 )
2023-08-16 17:04:16 +05:30
Simon-Pierre Vivier
d5d2243c2e
fix: bring back default topic in config ( #1902 )
...
* fix: bring back default topic in config
* fix
* Fix a bug
* Fix enr creation
2023-08-11 17:28:24 +02:00
Hanno Cornelius
b9d5d28af5
chore: remove references to v2 ( #1898 )
...
* chore: remove references to v2
* fix: lingering rln-relay import path
2023-08-09 18:11:50 +01:00
Hanno Cornelius
ab344a9dec
chore: remove Waku v1 and wakubridge code ( #1874 )
...
* chore: remove v1 code
* chore: deprecate support for v1 compatibility from JSON-RPC API
* chore: remove v1 tests from JSON-RPC suite
* chore: remove wakubridge code
* chore: remove v1 compatibility functions
* chore: remove support for v1 payloads from chat2 app
* chore: remove v1 from CI processes
* fix: lingering references to private API functions
* fix: remove v1 compat from chat2
* fix: some more lingering references in tests
2023-08-07 15:11:46 +01:00
NagyZoltanPeter
08ff667227
feat: Rest API interface for legacy (v1) filter service. ( #1851 )
...
* Added Rest API interface for legacy (v1) filter service with tests.
2023-08-04 11:34:22 +02:00
Simon-Pierre Vivier
afb93e2995
feat: autosharding content topics in config ( #1856 )
...
- added content topic to config.
- updated ENR building to include content topics.
2023-08-01 16:01:44 -04:00
Simon-Pierre Vivier
bbff1ac138
feat: autosharding core algorithm ( #1854 )
...
- basic rendezvous hashing
- content topic parsing
- sharding config
- tests
2023-08-01 09:05:16 -04:00
Aaryamann Challani
3fe4522a7e
chore(rln-relay): verify proofs based on bandwidth usage ( #1844 )
...
* chore(rln-relay): Verify proofs based on bandwidth usage
* fix(rln-relay): make default threshold 0, for backwards compat
* fix(rln-relay): add unit test for bandwidth cutoff
* fix(rln-relay): rlnRelayBandwidthTreshold option
2023-07-07 17:28:37 +05:30
Alvaro Revuelta
17b24cded6
feat: limit relay connections below max conns ( #1813 )
2023-07-04 13:31:18 +02:00
Simon-Pierre Vivier
cf46fb7cf6
chore: discv5 re-org clean-up ( #1823 )
...
- Remove discv5 from node and it's builder
- Require a record to init a node (was previously using discv5 record).
- Fix various tests that assumed nodes with discv5.
- Fix ENR creation
- Fix wakubridge
- Fix networkmonitor
2023-06-28 08:57:10 -04:00
Alvaro Revuelta
e12c979c4e
chore(networking): disconnect due to colocation ip in conn handler ( #1821 )
2023-06-28 09:14:11 +02:00
Ivan Folgueira Bande
3aefade647
fix(discv5): Fixing issue that prevented the wakunode2 from starting ( #1829 )
...
* Fixing issue that prevented the wakunode2 from starting
The issue was introduced in PR#1818.
Before this commit, the `wakunode2` app crashed with the next error:
ERR 2023-06-27 15:57:27.268+00:00 5/7 Starting node and protocols failed
topics="wakunode main" tid=1 file=wakunode2.nim:92 error="failed to
start waku discovery v5: "
* fix tests accordingly
* publisher.nim, subscriber.nim: fix
2023-06-27 15:16:59 -04:00
Simon-Pierre Vivier
62d3653022
chore: move discv5 out of node. ( #1818 )
...
- Refactor discv5 start, stop & loop.
- Fix tests.
2023-06-27 09:50:11 -04:00
Ivan Folgueira Bande
52894a82d0
refactor(archive): Moving waku archive logic from app.nim to the archive module ( #1817 )
...
* Refactoring the Waku Archive. Simplifying the app.nim
This change is needed to accommodate the further PRs where we will integrate Postgres in `wakunode2`.
2023-06-27 13:24:31 +02:00
Alvaro Revuelta
71c4ac1641
chore: add peer manager config to builder ( #1816 )
2023-06-23 15:30:28 +02:00
Alvaro Revuelta
4573e8c592
fix(ci): fix broken test with wrong import ( #1820 )
2023-06-23 14:50:58 +02:00
Ivan Folgueira Bande
a44d4bfbcd
refactor(databases): Creation of the databases folder to keep the logic for sqlite and postgres ( #1811 )
...
* Refactoring in sqlite and postgres. Creation of the databases folder.
2023-06-22 11:27:40 +02:00
Simon-Pierre Vivier
a4da87bb8c
feat: discovery peer filtering for relay shard ( #1804 )
...
Add discv6 predicate that filter peer by static shard.
Co-authored-by: Hanno Cornelius <68783915+jm-clius@users.noreply.github.com>
2023-06-20 12:08:10 -04:00
Simon-Pierre Vivier
50412d1880
sharded topic validation & ENR update ( #1795 )
...
Add sharded topic validation and update the node ENR accordingly.
2023-06-19 18:16:25 -04:00
Aaryamann Challani
f8e270fbe3
fix(rln-relay): tree race condition upon initialization ( #1807 )
2023-06-19 13:46:05 +05:30