waku-org / js-waku

JavaScript implementation of Waku v2
https://js.waku.org
Apache License 2.0
166 stars 42 forks source link

feat(metadata): use error codes #1904

Closed danisharora099 closed 5 months ago

danisharora099 commented 5 months ago

Problem

Protocols currently use different pattern to handle errors. Light push uses error code while filter uses exception.

It is best for the user if a common pattern is used across the API. Also, there is an opportunity to re-use error code across the codebase and have similar pattern on the user side to handle them

Solution

Notes

Contribution checklist:

github-actions[bot] commented 5 months ago

size-limit report 📦

Path Size Loading time (3g) Running time (snapdragon) Total time
Waku node 185.4 KB (+0.09% 🔺) 3.8 s (+0.09% 🔺) 15.2 s (+0.56% 🔺) 18.9 s
Waku Simple Light Node 185.42 KB (+0.08% 🔺) 3.8 s (+0.08% 🔺) 21.7 s (+105.32% 🔺) 25.4 s
ECIES encryption 22.89 KB (0%) 458 ms (0%) 6 s (+115.19% 🔺) 6.5 s
Symmetric encryption 22.34 KB (0%) 447 ms (0%) 3.6 s (-2.28% 🔽) 4.1 s
DNS discovery 73.78 KB (0%) 1.5 s (0%) 12.9 s (+60.2% 🔺) 14.4 s
Peer Exchange discovery 75.27 KB (0%) 1.6 s (0%) 10.1 s (+18.9% 🔺) 11.7 s
Local Peer Cache Discovery 69.07 KB (0%) 1.4 s (0%) 11.7 s (+55.52% 🔺) 13.1 s
Privacy preserving protocols 39.96 KB (0%) 800 ms (0%) 7 s (-18.95% 🔽) 7.8 s
Waku Filter 20.11 KB (0%) 403 ms (0%) 4.3 s (+39.07% 🔺) 4.8 s
Waku LightPush 115.49 KB (0%) 2.4 s (0%) 10.4 s (+49.05% 🔺) 12.7 s
History retrieval protocols 19.34 KB (0%) 387 ms (0%) 5.7 s (+56.93% 🔺) 6.1 s
Deterministic Message Hashing 4.96 KB (0%) 100 ms (0%) 198 ms (+7.6% 🔺) 297 ms