* feat: introduce WSS checker CI
* rename CI step
* specify nodejs
* try
* remove not needed dep
* use npx and fail on failure
* run by dispatch only and improve naming
* fix fail detection
* update Filter test suit, make service nodes connected to each other, remove single node Filter test suit, use 0.35 nwaku image
* update light push tests
* improve auto shard tests
* update static sharding test
* skip blocked tests
* fix test
* remove usage of pusubtopic with nwaku
* remove comment
The waku test fleet is unstable and should not be used as boostrap.
The issue is that DNS Discovery looks for "2" nodes and stop there. Meaning that if those "discovered" nodes are not reachable (ie, coming from test suite). js-waku does not connect.
* doc: build first to avoid not found deps issues
* fix: Remove XMLHttpRequest usage
XMLHttpRequest API is deprecated and not available in browser extensions.
Replace the culprit dependency with a more modern one.
Some options are removed. The assumption is that nobody uses them. It can always be added if a developer wants the flexibility.
* test: simplify test
The test focus on testing DNS Discovery, there is no need to also have a nwaku local node for bootstrap.
Bootstrap on nwaku local node is used in many other tests.
* create retry manager
* update tests
* add retry manager tests, update peer manager
* fix start & merge with master
* return send to many logic
* add new error handling
* add sections to protocol errors
* fix check
* up test
* add waku.start in test
* fix check and test
* improve name
This commit creates the class for an SDS message channel, including
buffers for outgoing and incoming messages. Adds logic for sending
messages, receiving messages, delivering messages, and reviewing
acknowledgement status of messages. Also adds byte serialization
for bloom filters.
* chore: upgrade nwaku to v0.33.1
* chore: upgrade to nwaku 0.34.0
* feat: connect nwaku nodes amongst each other over relay
* chore(lightpush): use multiple service nodes for lightpush (instead of just one)
- nwaku now expects >=1 nodes at least connected
* chore: all single-node lightpush requests should now be expected to fail
* chore: update sharding tests
* chore: update tests
* chore: improve Docker network config reliability
* chore: deduplicate ecies encrypted payloads
* chore: update to precise expects
* fix: return early if expect passes
* chore: lightpush 5 times instead of 30
* fix: non duplicacy should happen in application-specific scenario
* chore: update mocha config + fix epehermal tests
* chore: reinstall deps after rebase
* chore: attempt stability for test suite
* fix: store tests to now use multiple nodes, delete uneeded test
* fix: memory leak
* chore: switch while loop with timeout-promise
* chore: remove redundant nodes startup
* chore: add delays for nwaku setup
Uses an array of bigint to store sufficient bits in bloom filter.
Updates all arithmetic to explicitly cast to bigint where necessary.
Makes the hashn function for bloomfilter a parameter.
Adds an implementation of hashn generated using nim compiler.
Adds tests.
* up lock
* make ConnectionManager use ctor
* reform connection manager configurations
* remove log param from peerManager
* make PeerManager use only ConnectionManager, move getPeers to ConnectionManager, remove not needed code
* remove allPeers and connectedPeers from BaseProtocolCore, update tests, add getPeers for IWaku
* use only one peerManager from Waku object
* remove IBaseProtocolSDK and merge with PeerManager
* re-implement peerManager, remove ProtocolUseOptions
* remove not needed test, up lock
* update deps and lock
* remove old test for peerManager, fix check and spell
* rename to getConnectedPeers
* feat: improve filter subscriptions (#2193)
* add message cache to Filter
* remove WakuOptions and use only ProtocolCreateOptions
* move subscribe options to createLightNode Fitler protocol options
* rename SubscriptionManager to Subscription
* rename to CreateNodeOptions
* add warning
* feat: introduce subscription manager (#2202)
* feat: inroduce subscription manager
* fix: make pipeline succeed (#2238)
* fix test
* use hardcoded value
* update playwright
* fix test:browser
* up lock
* make peer retrieval probabilistic
* add comments
* up lightpush tests
* add tests for peer_manager, improve folder structure
* create named files for protocols
* create named files, simplify project structure
* remove only
We are in the process of deprecating pubsub-topic param from nim-waku.
The pubsub-topic shouldn't be used to start nim-waku and instead, a
combination of 1 cluster-id plus n shard should be given. This aims to
start using the new added param: shard.
Adds a new package for the browser implementation of scalable data
sync. Ports some of the nim implementation of bloom filter to ts.
Adds protobuf definition for SDS messages.
* feat: API allows using specific nodes for protocol
* chore: dial provided now
* chore: store uses the node
* chore: update API
* chore: use protocol-level class for getting peer
* chore: use ConnectionManager for dial ops
* chore: address comments
* chore: fix type error
* chore: Waku.dial() proxies through ConnectionManager.dialPeer
* chore: fix dial
* chore: add ts-doc for dialPeer()
* chore: remove log
* chore: reduce ts-doc for an internal function
* chore: address comments
* chore: return types from connmanager.dialpeer()
* chore: reduce diff by not introducing breaking changes