3012 Commits

Author SHA1 Message Date
Danish Arora
86c704ba68
chore: readability improvements 2024-10-09 15:28:55 +05:30
Danish Arora
919aeac81f
feat: store peer usage for protocols in metadata 2024-10-09 15:25:12 +05:30
Danish Arora
b7bdb60dba
chore: remove .only 2024-10-09 12:27:47 +05:30
Danish Arora
e84eb620f7
chore: update protocol health for lightpush 2024-10-09 12:10:39 +05:30
Danish Arora
829d1834c1
chore: update playright 2024-10-09 12:05:21 +05:30
Danish Arora
535a20f86d
chore: fix lock 2024-10-09 12:01:12 +05:30
Danish Arora
43fa32b43a
feat: Filter reacts to peer:disconnect event, add tests 2024-10-09 11:50:17 +05:30
Danish Arora
ed138cc3c9
chore: update lockfile 2024-10-09 11:49:53 +05:30
Danish Arora
b9bfaa27c3
chore: improve hasPeers() 2024-10-09 11:49:42 +05:30
Danish Arora
874d835117
feat(peer-manager): unit tests 2024-10-09 11:49:42 +05:30
Danish Arora
d0714d9de4
chore: update interafce 2024-10-09 11:48:52 +05:30
Danish Arora
017e90184f
chore: remove additional arg 2024-10-09 11:48:52 +05:30
Danish Arora
92b506dd86
chore: update playright 2024-10-09 11:48:52 +05:30
Danish Arora
b0d53bc730
chore: fix rebase 2024-10-09 11:48:42 +05:30
Danish Arora
8e88fadbb7
chore: minor improvements 2024-10-09 11:48:42 +05:30
Danish Arora
7b7d691fc3
chore: add TODO 2024-10-09 11:48:42 +05:30
Danish Arora
3eef8be43b
chore: await for sequential operations 2024-10-09 11:48:42 +05:30
Danish Arora
4d7b997d4c
chore: renewal doesnt disconnect, only removes 2024-10-09 11:48:41 +05:30
Danish Arora
3647ec97ed
chore: improve logs & add debug 2024-10-09 11:48:41 +05:30
Danish Arora
aec9451486
chore: add modularity to getting connected peers 2024-10-09 11:48:41 +05:30
Danish Arora
be7a0b05ec
fix: hasPeers management 2024-10-09 11:48:41 +05:30
Danish Arora
2e7954019f
rm: only 2024-10-09 11:48:40 +05:30
Danish Arora
d1d9198ea7
chore: update tests 2024-10-09 11:48:40 +05:30
Danish Arora
1df0556e19
chore: update HealthManager updates 2024-10-09 11:48:40 +05:30
Danish Arora
8cb3c352ad
chore: rm tests for remove internal util 2024-10-09 11:48:40 +05:30
Danish Arora
82baa26841
feat: peer manager 2024-10-09 11:47:49 +05:30
Danish Arora
558fb6ae2e
chore: some mutex lock-release improvements 2024-10-09 11:47:49 +05:30
Danish Arora
557ee96b52
fix: build 2024-10-09 11:47:39 +05:30
Danish Arora
3384b875a9
feat: add mutex locks to tackle race conditions over shared state 2024-10-09 11:47:39 +05:30
Danish Arora
ac1a0304f3
chore: peer mgmt responds to conenction/disconnection and improve logging 2024-10-09 11:47:03 +05:30
Danish Arora
128041b539
chore: track peers in a hashmap instead of array 2024-10-09 11:47:03 +05:30
Danish Arora
6117593d72
chore: trimming down BaseProtocolCore 2024-10-09 11:47:03 +05:30
Danish Arora
692081e2be
chore: update logging 2024-10-09 11:47:02 +05:30
Danish Arora
4554eeab91
chore: add logs for subscription maintenance 2024-10-09 11:47:02 +05:30
Danish Arora
8caa220e8f
chore: improvements 2024-10-09 11:47:02 +05:30
Sasha
75fcca4cd9
feat: replace waitForRemotePeers() with waku.waitForPeer() method (#2161)
* fix comment of default number of peers

* export default number of peers from base protocol sdk

* rename to light_push, move class to separate file

* move waitForRemotePeer to sdk package

* add todo to move waitForGossipSubPeerInMesh into @waku/relay

* clean up waitForRemotePeer, split metadata await from event and optimise, decouple from protocol implementations

* simplify and rename ILightPush interface

* use only connected peers in light push based on connections instead of peer renewal mechanism

* improve readability of result processing in light push

* fix check & update tests

* address tests, add new test cases, fix racing condition in StreamManager

* use libp2p.getPeers

* feat: confirm metadata and protocols needed in waitForRemotePeer

* rely on passed protocols and fallback to mounted

* add I prefix to Waku interface

* implement waku.connect method

* add docs to IWaku interface

* remove export and usage of waitForRemotePeer

* move wait for remote peer related to Realy out of @waku/sdk

* change tests to use new API

* fix linting

* update size limit

* rename .connect to .waitForPeer

* export waitForRemotePeer and mark as deprecated

* feat: add mocha tests to @waku/sdk and cover waitForRemotePeer (#2163)

* feat: add mocha tests to @waku/sdk and cover waitForRemotePeer

* add waitForRemote UTs

* remove junk

* feat: expose peerId and protocols from WakuNode (#2166)

* chore: expose peerId and protocols from WakuNode

* remove unused method

* move to private method

* rename to waitForPeers

* up test
2024-10-09 00:43:34 +02:00
Sasha
d37e0245cf
feat: confirm metadata and protocols needed in waitForRemotePeer (#2160)
* fix comment of default number of peers

* export default number of peers from base protocol sdk

* rename to light_push, move class to separate file

* move waitForRemotePeer to sdk package

* add todo to move waitForGossipSubPeerInMesh into @waku/relay

* clean up waitForRemotePeer, split metadata await from event and optimise, decouple from protocol implementations

* simplify and rename ILightPush interface

* use only connected peers in light push based on connections instead of peer renewal mechanism

* improve readability of result processing in light push

* fix check & update tests

* address tests, add new test cases, fix racing condition in StreamManager

* use libp2p.getPeers

* feat: confirm metadata and protocols needed in waitForRemotePeer

* rely on passed protocols and fallback to mounted

* imrpove iteration for existing connections

* address protocol adverisement in CI

* add protocols needed

* add missing protocols

* make lightpush and filter default for tests

* up
2024-10-05 01:49:54 +02:00
Sasha
2be0e81a0a
chore: rename IProtocolSDK interfaces to IProtocol naming convention (#2159)
* chore: rename IProtocolSDK interfaces to IProtocol
2024-10-04 13:53:54 +02:00
Sasha
1d68526e72
feat(lightPush): improve peer usage and improve readability (#2155)
* fix comment of default number of peers

* export default number of peers from base protocol sdk

* rename to light_push, move class to separate file

* move waitForRemotePeer to sdk package

* add todo to move waitForGossipSubPeerInMesh into @waku/relay

* clean up waitForRemotePeer, split metadata await from event and optimise, decouple from protocol implementations

* simplify and rename ILightPush interface

* use only connected peers in light push based on connections instead of peer renewal mechanism

* improve readability of result processing in light push

* fix check & update tests

* address tests, add new test cases, fix racing condition in StreamManager

* use libp2p.getPeers
2024-10-04 10:50:58 +02:00
Sasha
b93134a517
fix: peer renewal connection drop & stream management (#2145)
* fix: peer renewal connection drop

* fix stream manager

* fix over iteration during stream creation

* remove timeout and use only open peers

* add logs

* refactor code, add tests

* debug test

* up debug

* remove debug, supress check for timestamps

* remove only

* add more debug

* remove debug

* remove check for timestamps
2024-10-01 12:54:55 +02:00
chair
3e821591c9
Merge pull request #2142 from waku-org/chair28980-update-codeowners-20240917
chore: Update CODEOWNERS to reference correct team
2024-09-17 23:42:08 -07:00
chair
1ed9ca5b33
Update CODEOWNERS to reference correct team 2024-09-17 21:57:54 -07:00
Danish Arora
7a6247cb70
feat(lightpush): introduce ReliabilityMonitor and allow send retries (#2130)
* chore: restructure reliabiltiy monitors

* feat: setup sender monitor

* chore: update tests

* chore: minor fixes

* chore: comment for doc
2024-09-17 11:34:59 +05:30
Danish Arora
7ad1d321ca
feat(filter): reliability monitor as a separate class to handle reliability logic (#2117)
* chore: move SubscriptionManager to a separate file

* feat: introduce ReliabilityMonitor

* fix: peer data updates

* fix: logical error when returning includesMessage

* chore: handle edge case

* chore: move ping failures handling inside monitor

* chore: move renewal logic to monitor

* chore: improve structuring

* chore: update logger

* chore: readd connectionListener() logic from merge

* chore: minor fixes

* chore: improve

* chore: setup destruction of ReliabilityMonitors

* fix: condition for ping failure

* fix: setters

* chore: handle race condition & fix test
2024-09-13 14:57:29 +05:30
Danish Arora
9d9a696024
chore: mandate .js extensions for imports (#2128)
* feat: add eslint rule

* chore: update codebase import extensions
2024-09-13 14:18:29 +05:30
Sasha
a2c5dba32d
chore: release master (#2122) message-encryption-v0.0.30 relay-v0.0.15 sdk-v0.0.28 interfaces-v0.0.27 enr-v0.0.26 message-hash-v0.1.16 core-v0.0.32 discovery-v0.0.5 utils-v0.0.20 2024-09-06 01:42:16 +02:00
Sasha
0263cb80c5
fix: improve node bootstrapping (#2121)
* fix: improve node bootstrapping

* implement dns discovery on failed dials

* update const to match RFC

* up
2024-09-06 01:10:54 +02:00
Sasha
f4b6bb04b3
fix: temporarily remove peer cross dependencies (#2123)
* chore: temporarily remove peer cross dependencies

* up lock

* add missing dep
2024-09-06 00:44:59 +02:00
Sasha
5d3cc5fd45
fix: filter missing messages (#2119)
* bug: fix filter missing messages

* fix keep alive

* fix const
2024-09-03 00:59:21 +02:00
Sasha
5cfe9327b6
chore: remove relay from sdk package (#2040)
* remove full node

* remove relay from sdk

* comment node counter check

* try using logline

* up comment
2024-08-31 15:18:51 +02:00