mirror of
https://github.com/waku-org/js-waku.git
synced 2025-01-12 05:24:43 +00:00
Danish Arora
b2efce5ec2
feat(filter): enhancing protocol peer management with mutex locks (#2137)
* chore: improvements * chore: add logs for subscription maintenance * chore: update logging * chore: trimming down BaseProtocolCore * chore: track peers in a hashmap instead of array * chore: peer mgmt responds to conenction/disconnection and improve logging * feat: add mutex locks to tackle race conditions over shared state * fix: build * chore: some mutex lock-release improvements * feat: peer manager * chore: rm tests for remove internal util * chore: update HealthManager updates * chore: update tests * rm: only * fix: hasPeers management * chore: add modularity to getting connected peers * chore: improve logs & add debug * chore: renewal doesnt disconnect, only removes * chore: await for sequential operations * chore: add TODO * chore: minor improvements * chore: fix rebase * chore: update playright * chore: remove additional arg * chore: update interafce * feat(peer-manager): unit tests * chore: improve hasPeers() * chore: update lockfile * feat: Filter reacts to peer:disconnect event, add tests * chore: fix lock * chore: update playright * chore: update protocol health for lightpush * chore: remove .only * chore: address comments and improvements * fix: tsconfig
js-waku
A TypeScript implementation of the Waku v2 protocol.
Documentation
API Documentation can also be generated locally:
git clone https://github.com/waku-org/js-waku.git
cd js-waku
npm install
npm run doc
Bugs, Questions & Features
If you encounter any bug or would like to propose new features, feel free to open an issue.
For general discussion, get help or latest news, join us on Vac Discord or the Waku Telegram Group.
Roadmap
You can track progress on the project board.
Contributing
See CONTRIBUTING.md.
License
Licensed and distributed under either of
- MIT license: LICENSE-MIT or http://opensource.org/licenses/MIT
or
- Apache License, Version 2.0, (LICENSE-APACHE-v2 or http://www.apache.org/licenses/LICENSE-2.0)
at your option. These files may not be copied, modified, or distributed except according to those terms.
Description
Languages
TypeScript
98%
JavaScript
2%