Commit Graph
307 Commits
Author SHA1 Message Date
Danish Arora 1882023c58 feat(metadata): use error codes (#1904) 2024-03-12 16:40:08 +05:30
Danish Arora 1e86c3d63e feat!: @waku/discovery (#1876)
* initialise the new package

* move dns-discovery

* move peer-exchange

* move local-peer-cache-discovery

* add polyfill for node - dynamic import

* update size-limit

* update release-please

* chore: update pacakge desc

* chore: cleanup

* add peer-exchange and local peer cache to size-limit
2024-03-12 15:56:49 +05:30
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 8ff15db44b chore(deps)(deps-dev): bump allure-commandline from 2.24.1 to 2.27.0 (#1896)
Bumps [allure-commandline](https://github.com/allure-framework/allure-npm) from 2.24.1 to 2.27.0.
- [Release notes](https://github.com/allure-framework/allure-npm/releases)
- [Commits](https://github.com/allure-framework/allure-npm/compare/2.24.1...2.27.0)

---
updated-dependencies:
- dependency-name: allure-commandline
  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-12 00:20:10 +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
Danish Arora 49c39682e4 fix(tests): sharding (#1893) 2024-03-11 01:53:03 +05:30
Florin Barbu 36dfcc9560 test: fix dispatchEvent test (#1897)
* fix dispatchEvent test

* skip failing test
2024-03-10 04:10:33 +05:30
Arseniy Klempner 37f24e9ea1 fix: remove rpc settings when starting nwaku image 2024-03-04 07:16:16 -08:00
Sasha 9f198dd149 feat: add bootstrapPeers option and refactor sdk (#1871)
* move relay related code

* move libp2p to utils

* define CreateWakuNodeOptions

* improve options

* make libp2p use from create function

* add bootstrapPeers option

* fix lint

* fix types, imports

* fix exports

* use bootstrap along default bootstrap

* fix test as REST does not return peer though connection is made

* rollback condition change

* enable gossipSub back for every node
2024-03-04 10:56:20 +01:00
Florin Barbu 13b31df9dd chore: fix peer ex tests (#1869)
* fix peer ex tests

* remove only

* check for undefined

* add timeout

* timeout for query

* remove logs

* add log back

* whitelist 2nd erorr

* use beforeAll

* remove only

* revert last changes

* remove console logs

* skip query suite

* leave just one query test
2024-03-01 12:31:44 +02:00
Arseniy Klempner ee2d4176f8 feat: create node and subscription by content topic 2024-02-27 15:37:57 -08:00
Florin Barbu df8c0d79f7 test: peer exchange tests (#1859)
* peer exchange tests

* adjust after test with nwaku 25
2024-02-27 09:54:34 +02:00
Florin Barbu 7af6b71d24 upgrade nwaku to v0.25 (#1861) 2024-02-22 16:04:43 +02:00
Arseniy Klempner 6009af7453 feat: migrates e2e tests to use rest instead of rpc 2024-02-16 18:52:51 -08:00
Arseniy Klempner 739f2bc2c9 feat: switches to REST for calling nwaku messages/subscription endpoints
This commit modifies functions in ServiceNode to use the REST API
instead of JSON RPC when reading messages for a pubsub topic or
content topic, and when ensuring a nwaku node is subscribed to a
pubsub topic. Also modifies default Docker params to enable the
rest API and provide a port.
2024-02-15 14:39:40 -08:00
Florin Barbu de5be4413b chore: use graceful timeout mechanism (#1841)
* use graceful timeout mechanism

* set max timeout for all hooks

* small fix

* small fix

* use MOCHA_HOOK_MAX_TIMEOUT as default timeoutDuration

* force retry even when the hook fails

* use custom hooks

* fix global timeout problem

* fix unwanted change

* fix enr issue

* force retry on before error as well
2024-02-15 08:50:03 +02:00
Florin Barbu a9fb796a7b chore: nwaku latest fixes (#1844)
* nwaku latest fixes

* small fixes

* other fixes

* other fixes
2024-02-14 10:45:00 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 275499c315 chore(deps)(deps-dev): bump mocha from 10.2.0 to 10.3.0 (#1847)
Bumps [mocha](https://github.com/mochajs/mocha) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v10.2.0...v10.3.0)

---
updated-dependencies:
- dependency-name: mocha
  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-13 22:21:57 +05:30
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Danish Arora
51ec7d9510 chore(deps)(deps-dev): bump @types/sinon from 17.0.2 to 17.0.3 (#1840)
Bumps [@types/sinon](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sinon) from 17.0.2 to 17.0.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sinon)

---
updated-dependencies:
- dependency-name: "@types/sinon"
  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>
Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2024-02-12 16:29:54 +05:30
Florin Barbu 928e634677 test: connection manager (#1836)
* connection management tests

* remove stric checks in test dev tsconfig

* fix after ci run

* small fix

* fix conflict

* fixes after ci run

* debug ci failure

* revert debug test
2024-02-10 11:57:01 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 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 e138b4f5c4 feat: decouple sharding params out of core 2024-02-08 08:42:47 -08:00
Danish Arora f8e02ab19e fix(tests): append p2p with the multiaddrs from ENR (#1817)
* append `p2p` with the multiaddrs from ENR

* fix(tests): add p2p checks for ENR multiaddrs

* fix(tests): type getter

* chore(ci): remove debug flag from nwaku_master and go-waku tests
2024-02-07 01:57:41 +05:30
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 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
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 3c0806b224 chore(deps)(deps-dev): bump @types/mocha from 10.0.1 to 10.0.6 (#1824)
Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 10.0.1 to 10.0.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

---
updated-dependencies:
- dependency-name: "@types/mocha"
  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-02-05 22:41:46 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 28f441bc88 chore(deps)(deps): bump @libp2p/interface-compliance-tests (#1813)
Bumps [@libp2p/interface-compliance-tests](https://github.com/libp2p/js-libp2p) from 5.1.2 to 5.2.0.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/main/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/peer-collections-v5.1.2...utils-v5.2.0)

---
updated-dependencies:
- dependency-name: "@libp2p/interface-compliance-tests"
  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-01-31 23:14:04 +01:00
Florin Barbu dbb51e4c86 test: fix for nwaku 24 (#1820)
* bump nwaku to v0.24.0

* fix tests on nwaku 0.24

* fix multiple service node filter sub tests

* fix timeout for metadata tests
2024-01-31 17:31:09 +02:00
Arseniy Klempner 68d3229644 feat: make ShardingParams optional in sdk, required internally 2024-01-24 07:36:00 -08:00
Danish Arora 7affbe222d feat: lightpush & filter send requests to multiple peers (#1779)
* feat: lightpush & filter send requests to multiple peers

* build message-hash before core

* chore: restructure folder heirrarchy

* fix: imports

* chore: move @waku/core to dev deps

* feat: create a new `ServiceNodes` wrapper class to encapsulate service node and message collector with redundancy accounted for

* chore(filter): move tests against single service node to a subdir

* feat: support relay, add strict checking, add tests

* fix(filter): handle errors

* chore(tests): add tests for ping

* add tests for push

* chore: abstract redundancy

* feat: add unsubscribe tests

* fix: tests

* add lightpush tests

* fix: imports

* fix: merge & add warning

* merge: master

* fix: breaking tests with master

* address comments

* make num peers configurable

* fix: typo
2024-01-24 18:24:03 +05:30
Florin Barbu 3e7b95e604 chore: split 100 topics tests in old and new behaviour (#1803)
* chore: split 100 topics tests in old and new behavioud

* add remove test TODO
2024-01-22 10:38:59 +02:00
Danish AroraandArseniy Klempner 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
Florin Barbu 13d3d70609 chore: increase max sub topic size to 100 (#1791)
* increase max sub topic size to 100

* make tests run fine both ways

* fix:import error

* update nwaku and gowaku master images

* prepare for pr
2024-01-18 21:22:51 +05:30
Sasha ea4b30752d chore: fix nwaku interop test failures (#1792)
* chore: investigate interop test failures

* try some fixes

* remove only

* remove comment

* use getConnections for waku node
2024-01-18 11:05:35 +01:00
Arseniy Klempner ae7bc3eeec chore: bump all libp2p packages to latest version 2024-01-17 11:59:08 -08:00
Danish Arora d3bd7f8f7c chore(tests): move filter and lp tests to subdir (#1800) 2024-01-18 01:28:28 +05:30
Danish Arora 2e6d9836bf chore(tests): restructure & cleanup (#1796)
* chore: restructure folder heirrarchy

* fix: imports
2024-01-18 00:26:31 +05:30
Sasha 7a8ef875dd chore: supress websocket warning in tests (#1797) 2024-01-17 15:37:09 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 00bd51a42e chore(deps)(deps-dev): bump interface-datastore from 8.2.5 to 8.2.10 (#1794)
Bumps [interface-datastore](https://github.com/ipfs/js-stores) from 8.2.5 to 8.2.10.
- [Release notes](https://github.com/ipfs/js-stores/releases)
- [Commits](https://github.com/ipfs/js-stores/compare/interface-datastore-v8.2.5...interface-datastore-v8.2.10)

---
updated-dependencies:
- dependency-name: interface-datastore
  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-01-16 19:15:28 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 7f7943fcd8 chore(deps)(deps-dev): bump datastore-core from 9.2.6 to 9.2.7 (#1782)
Bumps [datastore-core](https://github.com/ipfs/js-stores) from 9.2.6 to 9.2.7.
- [Release notes](https://github.com/ipfs/js-stores/releases)
- [Commits](https://github.com/ipfs/js-stores/compare/datastore-core-v9.2.6...datastore-core-v9.2.7)

---
updated-dependencies:
- dependency-name: datastore-core
  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-01-12 13:10:08 +01:00
Danish Arora 906c93329e chore!: discourage the use of relay in browsers (#1778)
* add a comment discouraging relay

* move createRelayNode under an explicit export

* fix: build
2024-01-11 19:08:21 +05:30
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
Danish Arora dc96074c81 fix(tests): peer-exchange interop (#1773)
* fix(tests): px interop

* optimize waitFor utility

* address minor comments

* fix: test refactoring
2024-01-11 16:39:48 +05:30
Arseniy Klempneranddanisharora099 69406bf1f0 reintroduce and deprecate named sharding (#1751)
Co-authored-by: danisharora099 <danisharora099@gmail.com>
2024-01-10 13:04:30 +05:30
Danish Arora 528803f4c8 fix(tests): multiple pubsub topics (#1774) 2024-01-09 13:43:44 +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
Ivan Folgueira Bande b7e78ca370 light-push/index.node.spec.ts: adjust metadata size to nwaku max size adjustment
The "Fails to push message with large meta" test used 10 ** 6 when
`nwaku` node had MaxWakuMessageSize == 1MiB ( 1*2^20 .)

`nwaku` establishes the max lightpush msg size as `const MaxRpcSize* =
MaxWakuMessageSize + 64 * 1024`
see:
https://github.com/waku-org/nwaku/blob/07beea02095035f4f4c234ec2dec1f365e6955b8/waku/waku_lightpush/rpc_codec.nim#L15

In the PR https://github.com/waku-org/nwaku/pull/2298 we reduced the
MaxWakuMessageSize
from 1MiB to 150KiB. Therefore, the 105024 number comes from
substracting ( 1*2^20 - 150*2^10 )
to the original 10^6 that this test had when MaxWakuMessageSize ==
1*2^20
2023-12-22 11:04:09 +01:00
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]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 4de54865ca chore(deps)(deps-dev): bump @types/tail from 2.2.1 to 2.2.3 (#1760)
Bumps [@types/tail](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/tail) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/tail)

---
updated-dependencies:
- dependency-name: "@types/tail"
  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>
2023-12-19 20:47:33 +01:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 566e02e0cf chore(deps)(deps-dev): bump datastore-core from 9.2.3 to 9.2.6 (#1757)
Bumps [datastore-core](https://github.com/ipfs/js-stores) from 9.2.3 to 9.2.6.
- [Release notes](https://github.com/ipfs/js-stores/releases)
- [Commits](https://github.com/ipfs/js-stores/compare/datastore-core-v9.2.3...datastore-core-v9.2.6)

---
updated-dependencies:
- dependency-name: datastore-core
  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>
2023-12-15 02:50:25 +05:30
Danish Arora 9ac2a3f363 feat: metadata protocol (#1732)
* add proto

* add rpc and interfaces

* add protocol implementation

* update faulty proto def

* add rpc and interfaces

* refactor implementation & write test

* setup the metadata protocol as a service

* fix cases where metadata service needs to be undefined

* remove redundant catch block

* remove addressed TODO

* update import path

* log errors

* remove redundant code from handling incoming metadata request

* update tests

* add test to check for active connections

* change expects

* save remote peer's shard info after successful connection
2023-12-05 19:26:52 +05:30