Sasha
9bdc2af13b
remove allPeers and connectedPeers from BaseProtocolCore, update tests, add getPeers for IWaku
2024-10-21 01:34:33 +02:00
Sasha
e1813bc47b
make PeerManager use only ConnectionManager, move getPeers to ConnectionManager, remove not needed code
2024-10-20 22:54:36 +02:00
Sasha
c591e6d294
chore: release master ( #2135 )
2024-10-17 14:06:38 +02: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
2024-10-10 23:47:12 +02:00
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 )
2024-09-06 01:42:16 +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
f9361bf774
chore: release master ( #2066 )
2024-08-29 11:49:04 +02:00
Danish Arora
69b6612ec9
chore: upgrade node to LTS 20 ( #2110 )
...
* chore: upgrade nodejs to new LTS 20
* chore: update other references
2024-08-23 15:57:20 +05:30
Sasha
8f56d90cf1
fix: import of base_protocol and networkConfig type guard ( #2109 )
...
* bug: fix import
* fix type guard
2024-08-23 11:44:55 +02:00
Danish Arora
5ce36c8f18
feat!: deprecate named pubsub topics and use static/auto sharding ( #2097 )
...
* feat: deprecate named sharding & protocols adhere
simplify network config type, all protocols use pubsub topic internally
* chore: update tests
* tests: rm application info
* chore: use static sharding and auto sharding terminologies
* chore: update docs for network config
* chore: update interfaces
* tests: update tests error message
* chore: remove `ShardingParams` type and fix test
2024-08-13 05:23:20 +05:30
Danish Arora
fdd9dc44a4
feat(filter)!: new simpler filter API ( #2092 )
...
* chore: rename IReceiver subscribe
* feat!: new `subscribe() API that only takes in decoders and callback
* chore: `to_async_iterator` uses new function name
* chore: make `createSubscription` private, and shorten error handling
* chore: update subscribe return type
* tests: use new API
* fix: tests
2024-08-05 15:52:58 +05:30
gabrielmer
08fc2d133a
chore: changing default pubsub topic to its static sharding version ( #2083 )
...
* changing default pubsub topic to its static sharding version
* keeping RFC's Waku Message test vectors
* reverting change in changelog
* setting pubsub topic when creating nwaku node
* adding shardInfo to runMultipleNodes call
* adding shardInfo to runMultipleNodes call in lightpush tests
* add pubsub topics to nwaku.start
* get rid of it.only that remained
* fixing compliance tests
* setting clusterId to 0
* removing unnecessary fix
* adding shardInfo when creating nodes
* fixing wait for remote peer tests
* fixing peer exchange test
* refactor
* removing unnecessary variable
* feat: create default shard info, update tests (#2085 )
* feat: create default shard info, update tests
* add link
* fix tests
* remoe only
* up tests
* up test
---------
Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2024-07-26 00:21:52 +02:00
Danish Arora
169a09d552
chore: enforce access modifiers ( #2068 )
...
* feat: introduce eslint flag
* chore: update logger
* chore: update enr
* chore: update core
* chore: update sdk
* chore: update relay
* chore: update discovery
* chore: update message-encryption
* chore: update tests
* chore: fix modifiers
* chore(tests): fix access modifiers
* chore: fix rebase
2024-07-19 15:58:17 +05:30
Sasha
00635b7afe
feat: fix peer renewal, change Filter keep alive ( #2065 )
...
* move util, create stream manager folder
* change default keep alive, improve peer renewal
* address nit
2024-07-16 18:35:24 +02:00
Sasha
09a81302c1
chore: bump @waku peer dependencies ( #2062 )
2024-07-16 12:00:36 +02:00
dependabot[bot]
c0c2907131
chore(deps)(deps): bump fast-check from 3.17.1 to 3.19.0 ( #2060 )
...
Bumps [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check ) from 3.17.1 to 3.19.0.
- [Release notes](https://github.com/dubzzz/fast-check/releases )
- [Changelog](https://github.com/dubzzz/fast-check/blob/main/packages/fast-check/CHANGELOG.md )
- [Commits](https://github.com/dubzzz/fast-check/commits/v3.19.0/packages/fast-check )
---
updated-dependencies:
- dependency-name: fast-check
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-11 23:51:25 +05:30
Sasha
ccdf84e593
chore: release master ( #2004 )
...
reliability improvements
2024-07-10 17:25:22 +02:00
Danish Arora
93e78c3b87
feat(lightpush): peer management for protocols ( #2003 )
...
* chore: make `dropConnection` to be a public function
* feat: peers are maintained for protocols
- passes `ConnectionManager` to ProtocolSDK to allow disconnecting from within protocol
- maintains `numPeersToUse` for each protocol within BaseProtocolSDK
* fix: pass options to protocols
* chore: update interfaces to allow public access
* chore: improve logging on protocol
* fix: renew peer upon failure
* chore(tests): allow DefaultPubsubTopic
* feat(lightpush): write peer management tests
* chore: rename test
* feat: add lock to `maintainPeers()` to handle parallelisation of requests
fixes parallelisation of lightpush.send() requests
* fix: concurrent lightpush requests
* fix: test & improve peers fetching
* chore: use getter
* address comments
* chore: smaller improvements
* feat: attempt to improve time for first lightpush.send()
* chore: use `window.interval` for type-safety
* chore: remove delays
* feat: add autoRetry
* feat: `forceUseAllPeers` to wait for all connected peers to be resoled
2024-06-19 01:52:16 -04:00
Sasha
3d92f194a7
chore: release master ( #1957 )
2024-04-30 17:50:00 +02:00
Danish Arora
73d4f19746
fix(message-hash): account for `timestamp` ( #1986 )
...
* fix: message-hash algo + tests
* rm: only
* chore: move numberToBytes to utils package
* chore: shorten implementation
2024-04-29 15:35:23 +05:30
Sasha
f3627c46a4
feat!: use ShardingParams on subscriptions, make Decoder/Encoder auto sharding friendly by default ( #1958 )
...
* fix: use pubsubTopic from current ones if not set
* fix: improve type on dial method
* enforce same pubusb on filter.subscribe, make content topic to pubsub mapping default for decoder / encoder
* fix mapping problem
* update tests
* add error handling
* fix typo
* up lock
* rm lock
* up lock
* remove only
* fix content topic
* fix ephemeral test
* fix filter unsubscribe test
* up utils
* fix subscribe test
* up interfaces and filter api
* remove only
* up ping test
* fix subscribe test
* fix push test
* fix lightPush
* fix multiple pubsub
* remove only, fix subscribe filter test
* remove only
* fix cluster ID selection and named sharding subscription test
* fix unsubscribe test
* fix light push test
* fix light push test
* fix push test
* fix relay publish
* create runNode and fix relay tests
* generalize runNodes, fix some tests
* fix store tests
* fix toAsyncIterator tests
* remove only
* fix lightPush
* use generics
* try fix test
* run failing tests
* remove only
* address failed tests, remove DefaultPubsubTopic dependency in some tests
2024-04-28 11:15:17 +02:00
Arseniy Klempner
9514653428
fix: use correct shard index when creating encoder
2024-04-24 18:40:17 -07:00
Sasha
01a99ce33c
chore: release master ( #1950 )
2024-04-09 14:11:20 +03:00
dependabot[bot]
0b54d2e3d7
chore(deps)(deps-dev): bump cspell from 8.6.0 to 8.6.1 ( #1930 )
...
Bumps [cspell](https://github.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell ) from 8.6.0 to 8.6.1.
- [Release notes](https://github.com/streetsidesoftware/cspell/releases )
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/packages/cspell/CHANGELOG.md )
- [Commits](https://github.com/streetsidesoftware/cspell/commits/v8.6.1/packages/cspell )
---
updated-dependencies:
- dependency-name: cspell
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-04 16:42:51 +03:00
dependabot[bot]
cb8921e4a2
chore(deps)(deps-dev): bump cspell from 8.3.2 to 8.6.0 ( #1927 )
...
Bumps [cspell](https://github.com/streetsidesoftware/cspell ) from 8.3.2 to 8.6.0.
- [Release notes](https://github.com/streetsidesoftware/cspell/releases )
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/CHANGELOG.md )
- [Commits](https://github.com/streetsidesoftware/cspell/compare/v8.3.2...v8.6.0 )
---
updated-dependencies:
- dependency-name: cspell
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 23:50:36 +01:00
Florin Barbu
f4c7c02f83
test: sharding tests refactor ( #1883 )
...
* sharding tests refactor
* small fixes
* adjust clusterID based on version
* fix typo
* fix dispatchEvent test
* sharding unit tests
* port adjustment
* update unit tests
* fix 1902
* adjust content topic tests
* adjust metdata tests
* small adjustments
* fix
* update resolveAutoshardingCluster version
* skip autosharding tests for nwaku < 0.27.0
* skip autosharding tests for nwaku < 0.27.0
2024-03-18 13:40:08 +02:00
Danish Arora
1882023c58
feat(metadata): use error codes ( #1904 )
2024-03-12 16:40:08 +05:30
Sasha
8f867404e3
feat: add cross peer dependency for @waku packages ( #1889 )
...
* move core package
* move dns-discovery
* move enr
* move local discovery
* move message encryption
* move message encryption[2]
* move message-hash
* move peer exchange
* move relay
* move sdk
* move utils
2024-03-12 02:18:40 +01:00
Danish Arora
8deab11890
chore(lightpush)!: move protocol implementation opinions to `@waku/sdk` ( #1887 )
...
* chore: restructure @waku/sdk
* chore: introduce `BaseProtocolCore` and `BaseProtocolSDK`
* chore: introduce `LightPushCore` and `LightPushSDK`
* chore: update `relay` for new types
* chore(sdk): update structure
* chore(filter): add `numPeersToUse`
* chore: update tests
* update: size-limit
* chore: update more tests
* attach issue link to TODOs
2024-03-11 18:50:34 +05:30
Sasha
8eb5703a27
chore: release master ( #1881 )
2024-03-05 00:11:44 +01:00
dependabot[bot]
4f2c0bcb9e
chore(deps)(deps-dev): bump rollup from 4.9.5 to 4.12.0 ( #1870 )
...
Bumps [rollup](https://github.com/rollup/rollup ) from 4.9.5 to 4.12.0.
- [Release notes](https://github.com/rollup/rollup/releases )
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rollup/rollup/compare/v4.9.5...v4.12.0 )
---
updated-dependencies:
- dependency-name: rollup
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-29 01:16:50 +01:00
Danish Arora
199f6ab2ff
feat: local discovery ( #1811 )
...
* initialise the new package
* feat: implement LocalStorageDiscovery
* add: Startable to cspell
* add compliance test
* add: discovery tests
* rm: browser tests script
* address comments
* add type safety to getting peers from local
* only dispatch peer if it does not exist
* move ws ma extraction to utils
* chore: update package name to local-discovery
* fix: add compliance test with no external deps on service node
* use peer:identify instead of peer:update
* add: unit tests & remove sdk dependency
* move tests to self package
* update cspell + remove unrequired deps
* add types
* maintain in-memory peers for localstorage
* address comments
* chore: rename
* use name from options
* fix: saving peers
* rm: only
2024-02-16 20:06:27 +05:30
dependabot[bot]
a717708f37
chore(deps)(deps): bump fast-check from 3.15.0 to 3.15.1 ( #1837 )
...
Bumps [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check ) from 3.15.0 to 3.15.1.
- [Release notes](https://github.com/dubzzz/fast-check/releases )
- [Changelog](https://github.com/dubzzz/fast-check/blob/main/packages/fast-check/CHANGELOG.md )
- [Commits](https://github.com/dubzzz/fast-check/commits/v3.15.1/packages/fast-check )
---
updated-dependencies:
- dependency-name: fast-check
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-09 00:06:00 +01:00
Arseniy Klempner
7e88d3b565
chore: add autosharding test vectors
2024-02-08 10:42:41 -08:00
Arseniy Klempner
e138b4f5c4
feat: decouple sharding params out of core
2024-02-08 08:42:47 -08:00
dependabot[bot]
8fb0a74767
chore(deps)(deps): bump uint8arrays from 4.0.6 to 5.0.1 ( #1829 )
...
Bumps [uint8arrays](https://github.com/achingbrain/uint8arrays ) from 4.0.6 to 5.0.1.
- [Release notes](https://github.com/achingbrain/uint8arrays/releases )
- [Changelog](https://github.com/achingbrain/uint8arrays/blob/main/CHANGELOG.md )
- [Commits](https://github.com/achingbrain/uint8arrays/compare/v4.0.6...v5.0.1 )
---
updated-dependencies:
- dependency-name: uint8arrays
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-07 01:38:10 +01:00
dependabot[bot]
749d84d5e4
chore(deps)(deps-dev): bump cspell from 7.3.6 to 8.3.2 ( #1825 )
...
Bumps [cspell](https://github.com/streetsidesoftware/cspell ) from 7.3.6 to 8.3.2.
- [Release notes](https://github.com/streetsidesoftware/cspell/releases )
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/CHANGELOG.md )
- [Commits](https://github.com/streetsidesoftware/cspell/compare/v7.3.6...v8.3.2 )
---
updated-dependencies:
- dependency-name: cspell
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-05 22:57:20 +01:00
Arseniy Klempner
68d3229644
feat: make ShardingParams optional in sdk, required internally
2024-01-24 07:36:00 -08:00
Danish Arora
477c2a5918
feat!: protocols filter peers as per configured shard ( #1756 )
...
* merge: master
* fix: tests
* update: interfafces
* rm: comments
* metadata: store peerIdStr instead of peerId
* chore(utils): move fast-utils to dev deps
* fix: allow autosharding nodes to get peers (#1785 )
* fix: merge
* fix: build
* fix: failing tests from master merge
---------
Co-authored-by: Arseniy Klempner <arseniyk@status.im>
2024-01-19 20:42:52 +05:30
dependabot[bot]
bb680e49f7
chore(deps)(deps-dev): bump rollup from 4.6.0 to 4.9.5 ( #1802 )
...
Bumps [rollup](https://github.com/rollup/rollup ) from 4.6.0 to 4.9.5.
- [Release notes](https://github.com/rollup/rollup/releases )
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rollup/rollup/compare/v4.6.0...v4.9.5 )
---
updated-dependencies:
- dependency-name: rollup
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-19 13:12:18 +01:00
Arseniy Klempner
ae7bc3eeec
chore: bump all libp2p packages to latest version
2024-01-17 11:59:08 -08:00
Danish Arora
b99f828cfb
chore: minor refactoring for protocols ( #1762 )
...
* remove: unnecessary function
* remove: test
* update doc
* add: tests
* revert unintended change
* fix: ping return
* fix(tests): stub connections
* log warning instead of throwing an error
2024-01-11 17:25:47 +05:30
fryorcraken
aaa16f3ece
chore: release master ( #1721 )
2024-01-10 23:27:39 +01:00
Arseniy Klempner
69406bf1f0
reintroduce and deprecate named sharding ( #1751 )
...
Co-authored-by: danisharora099 <danisharora099@gmail.com>
2024-01-10 13:04:30 +05:30
Danish Arora
c81872ae0e
supress info log for tests ( #1763 )
2024-01-02 16:30:18 +05:30
Danish Arora
9983549e8b
chore: use connected peers instead of discovered peers for protocols ( #1758 )
...
* switch to use connected peers instead of discovered peers for protocols
* switch to use connected peers instead of discovered peers for protocols
2024-01-02 15:49:31 +05:30
danisharora099
2bc3735e4d
feat: add support for autosharded pubsub topics
...
tests: use a generator for sharded pubsub topics
set pubsub topic in encoder/decoder based on sharding type
add function for grouping content topics by pubsub topic
add autosharding config to create options
add autoshard rpc endpoints to nwaku and use in tests
set autoshard pubsub topics in all protocols
fix rebase with static sharding
removes unused function
remove console logs
remove autosharding from ShardInfo, add to EncoderOptions
fix enr and encoder/decoder options
test that same application/version hashes to same shard index
update comment on shard field
fix spelling of autosharding
fix content topic protocol in tests
add sharding type alias and function to determine topic in encoders/decoders
move DefaultPubsubTopic from core to interfaces
2023-12-21 10:03:22 -08:00
dependabot[bot]
66440ae383
chore(deps)(deps-dev): bump rollup from 3.29.2 to 4.6.0 ( #1745 )
...
Bumps [rollup](https://github.com/rollup/rollup ) from 3.29.2 to 4.6.0.
- [Release notes](https://github.com/rollup/rollup/releases )
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rollup/rollup/compare/v3.29.2...v4.6.0 )
---
updated-dependencies:
- dependency-name: rollup
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-30 18:29:12 +05:30
Danish Arora
bbd372120a
chore: update all references of shard info to RFC terminology ( #1740 )
...
* update all references of shard info to RFC terminology
* bump nwaku to v0.22.0 (#1741 )
2023-11-29 17:37:59 +05:30