Commit Graph

746 Commits

Author SHA1 Message Date
dependabot[bot] 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] 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] 1c5a359463
chore(deps)(deps-dev): bump @types/uuid from 9.0.7 to 9.0.8 (#1833)
Bumps [@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid) from 9.0.7 to 9.0.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid)

---
updated-dependencies:
- dependency-name: "@types/uuid"
  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-07 17:07:27 +01:00
dependabot[bot] be54c2e3e1
chore(deps)(deps-dev): bump dotenv-flow from 3.3.0 to 4.1.0 (#1830)
Bumps [dotenv-flow](https://github.com/kerimdzhanov/dotenv-flow) from 3.3.0 to 4.1.0.
- [Release notes](https://github.com/kerimdzhanov/dotenv-flow/releases)
- [Changelog](https://github.com/kerimdzhanov/dotenv-flow/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kerimdzhanov/dotenv-flow/compare/v3.3.0...v4.1.0)

---
updated-dependencies:
- dependency-name: dotenv-flow
  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-07 12:07:53 +05:30
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
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] 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] 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] 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
dependabot[bot] f772dc36ce
chore(deps)(deps-dev): bump @libp2p/peer-id-factory from 4.0.4 to 4.0.5 (#1807)
Bumps [@libp2p/peer-id-factory](https://github.com/libp2p/js-libp2p) from 4.0.4 to 4.0.5.
- [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/utils-v4.0.4...utils-v4.0.5)

---
updated-dependencies:
- dependency-name: "@libp2p/peer-id-factory"
  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-24 18:51:56 +05:30
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
dependabot[bot] 09295c76a2
chore(deps)(deps): bump @libp2p/identify from 1.0.10 to 1.0.11 (#1804)
Bumps [@libp2p/identify](https://github.com/libp2p/js-libp2p) from 1.0.10 to 1.0.11.
- [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/ping-v1.0.10...libp2p-v1.0.11)

---
updated-dependencies:
- dependency-name: "@libp2p/identify"
  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-01-19 18:58:53 +01: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
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
dependabot[bot] 191027de7e
chore(deps)(deps): bump @chainsafe/libp2p-gossipsub (#1798)
Bumps [@chainsafe/libp2p-gossipsub](https://github.com/ChainSafe/js-libp2p-gossipsub) from 10.1.1 to 11.1.0.
- [Release notes](https://github.com/ChainSafe/js-libp2p-gossipsub/releases)
- [Changelog](https://github.com/ChainSafe/js-libp2p-gossipsub/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ChainSafe/js-libp2p-gossipsub/compare/v10.1.1...v11.1.0)

---
updated-dependencies:
- dependency-name: "@chainsafe/libp2p-gossipsub"
  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-01-18 12:34:32 +01:00
dependabot[bot] 602ce16087
chore(deps)(deps): bump @libp2p/mplex from 9.0.10 to 10.0.12 (#1799)
Bumps [@libp2p/mplex](https://github.com/libp2p/js-libp2p) from 9.0.10 to 10.0.12.
- [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/tcp-v9.0.10...mdns-v10.0.12)

---
updated-dependencies:
- dependency-name: "@libp2p/mplex"
  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-01-18 12:23:47 +01:00
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] 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] c31a7613f5
chore(deps)(deps): bump it-length-prefixed from 9.0.3 to 9.0.4 (#1787)
Bumps [it-length-prefixed](https://github.com/alanshaw/it-length-prefixed) from 9.0.3 to 9.0.4.
- [Release notes](https://github.com/alanshaw/it-length-prefixed/releases)
- [Changelog](https://github.com/alanshaw/it-length-prefixed/blob/master/CHANGELOG.md)
- [Commits](https://github.com/alanshaw/it-length-prefixed/compare/v9.0.3...v9.0.4)

---
updated-dependencies:
- dependency-name: it-length-prefixed
  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-01-16 00:35:56 +01:00
Sasha 1bc0b0a4fa
chore: upgrade playwright (#1786)
* chore: upgrade playwright

* bump image version
2024-01-15 17:02:26 +01:00
dependabot[bot] 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
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 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:
07beea0209/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] 9014de8aca
chore(deps)(deps): bump @libp2p/crypto from 2.0.8 to 3.0.2 (#1767)
Bumps [@libp2p/crypto](https://github.com/libp2p/js-libp2p) from 2.0.8 to 3.0.2.
- [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/crypto-v2.0.8...perf-v3.0.2)

---
updated-dependencies:
- dependency-name: "@libp2p/crypto"
  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>
2023-12-20 21:34:47 +01:00
dependabot[bot] 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] 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
fryorcraken.eth 853ac7464d
test: increase timeout
Seems fair as one more byte array comparison is done.
2023-12-12 11:47:34 +11:00
fryorcraken.eth 2f67a3baff
feat: new `verifySignature`
To enable comparison with expected public key
2023-12-08 21:52:34 +11:00
dependabot[bot] 411b76059c
chore(deps)(deps-dev): bump @types/debug from 4.1.10 to 4.1.12 (#1750)
Bumps [@types/debug](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/debug) from 4.1.10 to 4.1.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/debug)

---
updated-dependencies:
- dependency-name: "@types/debug"
  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-06 00:10:49 +03:00
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
dependabot[bot] 12a553494f
chore(deps)(deps): bump sinon and @types/sinon (#1747)
Bumps [sinon](https://github.com/sinonjs/sinon) and [@types/sinon](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/sinon). These dependencies needed to be updated together.

Updates `sinon` from 16.0.0 to 17.0.1
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v16.0.0...v17.0.1)

Updates `@types/sinon` from 10.0.16 to 17.0.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/sinon)

---
updated-dependencies:
- dependency-name: sinon
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: "@types/sinon"
  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-12-05 14:29:06 +05:30
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
dependabot[bot] e40e084429
chore(deps)(deps): bump @chainsafe/libp2p-gossipsub (#1744)
Bumps [@chainsafe/libp2p-gossipsub](https://github.com/ChainSafe/js-libp2p-gossipsub) from 10.1.0 to 10.1.1.
- [Release notes](https://github.com/ChainSafe/js-libp2p-gossipsub/releases)
- [Changelog](https://github.com/ChainSafe/js-libp2p-gossipsub/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ChainSafe/js-libp2p-gossipsub/compare/v10.1.0...v10.1.1)

---
updated-dependencies:
- dependency-name: "@chainsafe/libp2p-gossipsub"
  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>
2023-11-30 00:38:21 +01:00
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
Danish Arora 7ce642c2cc
chore: fix encoder/decoder creation (#1742)
* fix encoder creation

* bump nwaku to v0.22.0 (#1741)
2023-11-29 17:30:56 +05:30
Danish Arora 4d19fc7b75
bump nwaku to v0.22.0 (#1741) 2023-11-29 15:48:50 +05:30
dependabot[bot] b36c3e2bd6
chore(deps)(deps): bump fast-check from 3.13.1 to 3.14.0 (#1739)
Bumps [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check) from 3.13.1 to 3.14.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.14.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>
Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2023-11-28 17:02:37 +01:00
Danish Arora 4cf2ffefa7
feat!: add support for sharded pubsub topics & remove support for named pubsub topics (#1697)
* merge branches

* tests: use a generator for sharded pubsub topics

* fix namespace edge case

* move shardInfo to pubsubTopic logic in waku.ts

* simplify encoder/decoder creation logic + update tests

* sharding utils: add error handling

* remove redundant test util

* baseprotocol: create abstraction for initialising pubsub topics

* fix: `createDecoder` interface

* filter: createSubscription takes shardInfo instead of pubsubTopicStr

* fix: sharding utils for error handling

* SingleShardInfo: use a new interface instead of omitting and rename namespace

* change redundant namespaces
2023-11-28 15:57:18 +05:30
Sasha 7eb3375f50
feat!: export crypto primitives (#1728)
* export crypto primitives

* export crypto

* update imports

* fix size limit

* rename crypto.js

* move Signature type

* fix path

* fix: size-limit (#1734)

* fix paths, revert change to config

---------

Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2023-11-28 01:02:12 +01:00
Sasha 7df21b7756
chore: add info message with expected WebSocket connection failures (#1733)
* audit deps

* add info message

* add option to hide message

* add test

* remove only
2023-11-28 00:40:59 +01:00
dependabot[bot] 9ede6eb8cc
chore(deps)(deps-dev): bump @types/uuid from 9.0.6 to 9.0.7 (#1735)
Bumps [@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid) from 9.0.6 to 9.0.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid)

---
updated-dependencies:
- dependency-name: "@types/uuid"
  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-11-27 19:10:17 +01:00
dependabot[bot] 681095dbd0
chore(deps)(deps): bump @chainsafe/libp2p-noise from 13.0.1 to 13.0.4 (#1736)
Bumps [@chainsafe/libp2p-noise](https://github.com/ChainSafe/js-libp2p-noise) from 13.0.1 to 13.0.4.
- [Release notes](https://github.com/ChainSafe/js-libp2p-noise/releases)
- [Changelog](https://github.com/ChainSafe/js-libp2p-noise/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ChainSafe/js-libp2p-noise/compare/v13.0.1...v13.0.4)

---
updated-dependencies:
- dependency-name: "@chainsafe/libp2p-noise"
  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>
2023-11-27 16:38:35 +01:00
Arseniy Klempner 1d0e2ace7f
feat: track node connection state (#1719)
Co-authored-by: chair <29414216+chair28980@users.noreply.github.com>
Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-11-27 12:44:49 +01:00
dependabot[bot] affdc265b8
chore(deps)(deps): bump chai and @types/chai (#1731)
Bumps [chai](https://github.com/chaijs/chai) and [@types/chai](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chai). These dependencies needed to be updated together.

Updates `chai` from 4.3.8 to 4.3.10
- [Release notes](https://github.com/chaijs/chai/releases)
- [Changelog](https://github.com/chaijs/chai/blob/4.x.x/History.md)
- [Commits](https://github.com/chaijs/chai/compare/v4.3.8...v4.3.10)

Updates `@types/chai` from 4.3.6 to 4.3.11
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chai)

---
updated-dependencies:
- dependency-name: chai
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: "@types/chai"
  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-11-27 12:26:31 +01:00
dependabot[bot] 9744417d69
chore(deps)(deps-dev): bump @rollup/plugin-commonjs (#1730)
Bumps [@rollup/plugin-commonjs](https://github.com/rollup/plugins/tree/HEAD/packages/commonjs) from 25.0.4 to 25.0.7.
- [Changelog](https://github.com/rollup/plugins/blob/master/packages/commonjs/CHANGELOG.md)
- [Commits](https://github.com/rollup/plugins/commits/commonjs-v25.0.7/packages/commonjs)

---
updated-dependencies:
- dependency-name: "@rollup/plugin-commonjs"
  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-11-27 12:11:15 +01:00
dependabot[bot] 0670c2990d
chore(deps)(deps): bump it-all from 3.0.3 to 3.0.4 (#1727)
Bumps [it-all](https://github.com/achingbrain/it) from 3.0.3 to 3.0.4.
- [Release notes](https://github.com/achingbrain/it/releases)
- [Commits](https://github.com/achingbrain/it/compare/it-all-v3.0.3...it-all-v3.0.4)

---
updated-dependencies:
- dependency-name: it-all
  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>
2023-11-24 02:20:49 +03:00
dependabot[bot] 4770388edd
chore(deps)(deps): bump @libp2p/crypto from 1.0.17 to 2.0.8 (#1714)
Bumps [@libp2p/crypto](https://github.com/libp2p/js-libp2p) from 1.0.17 to 2.0.8.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/commits/crypto-v2.0.8)

---
updated-dependencies:
- dependency-name: "@libp2p/crypto"
  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>
2023-11-21 23:03:23 +01:00
Arseniy Klempner 86da6962ba
feat: add function for determining shard index from content topic 2023-11-16 00:31:50 -08:00
Arseniy Klempner 1bc1eb5091
feat: add function to validate autoshard content topic 2023-11-15 22:28:25 -08:00
Danish Arora 3166a5135e
chore!: change all instances of `PubSubTopic` to `PubsubTopic` (#1703)
* rename all PubSub patterns

* feat: forbid identifiers with camelcase pubSub (#1709)

---------

Co-authored-by: Arseniy Klempner <adklempner@gmail.com>
2023-11-14 18:52:52 +03:00
dependabot[bot] 535a748ae9
chore(deps)(deps-dev): bump @types/uuid from 9.0.4 to 9.0.6 (#1706)
Bumps [@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid) from 9.0.4 to 9.0.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid)

---
updated-dependencies:
- dependency-name: "@types/uuid"
  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-11-07 01:17:38 +05:30
dependabot[bot] 678635ec9f
chore(deps)(deps): bump @libp2p/mplex from 9.0.6 to 9.0.10 (#1701)
Bumps [@libp2p/mplex](https://github.com/libp2p/js-libp2p) from 9.0.6 to 9.0.10.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/mdns-v9.0.6...mdns-v9.0.10)

---
updated-dependencies:
- dependency-name: "@libp2p/mplex"
  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>
2023-11-04 00:27:32 +01:00
dependabot[bot] 4c5a8a9b64
chore(deps)(deps-dev): bump @libp2p/bootstrap from 9.0.6 to 9.0.10 (#1700)
Bumps [@libp2p/bootstrap](https://github.com/libp2p/js-libp2p) from 9.0.6 to 9.0.10.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/mdns-v9.0.6...mdns-v9.0.10)

---
updated-dependencies:
- dependency-name: "@libp2p/bootstrap"
  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-11-04 00:18:11 +01:00
fryorcraken 34a25c2f40
chore: release master (#1669) 2023-11-02 23:32:59 +01:00
Danish Arora 49a3666208
revert logger namespace (#1696) 2023-10-30 19:16:03 +05:30
fryorcraken b7dc3d7576
fix: measure total message size (#1643)
Network message limitations are imposed on the whole message, not just
the payload.

Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-10-26 13:14:47 +02:00
Vaclav Pavlin b3864f8772
fix: handle all empty responses in filter (#1688) 2023-10-26 10:46:08 +02:00
Florin Barbu 9593a8a8a5
test: fix ci logs (#1687)
* fix ci logs

* replace lodash with uint8arrays/equals
2023-10-25 10:39:04 +03:00
Florin Barbu 1ec0c200ca
chore: new relay tests (#1649)
* make relay folder

* make relay folder

* adjust message collector for relay

* small fix

* small fix

* small fix

* split tests more

* small fixes

* small fix

* new test

* fix pubsubtopic name

* new subscribe tests

* new subscribe tests

* new tests

* small fix after ci run

* small fix after ci run2

* fix skipped test

* added issue for skipped test
2023-10-23 18:08:33 +03:00
Florin Barbu 80a33b9c2b
chore: allure test reporting (#1668)
* allure test reporting

* make reports only for the main job

* fail a test for demo

* fail a test for demo

* revert

* fail a test for demo

* revert

* deploy to allure-jswaku

* use PAT

* add pat as secret

* check if pat exists

* debug secrets issue

* remove debug steps

* debug1

* debug2

* debug3

* debug4

* set reports for all tests

* fix after ci run

* self review

---------

Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-10-23 17:53:56 +03:00
Danish Arora 491366bd4f
fix: filter subscription with `pubsubTopic1` and decoder with `pubsubTopic2` (#1675)
* add a test for a failing case

* add error handling & update test

* remove only

* rename test
2023-10-23 14:17:02 +05:30
Danish Arora 81b2bf46ab
allow filtering based on log levels (#1677) 2023-10-23 13:26:35 +05:30
dependabot[bot] f82add16ab
chore(deps)(deps-dev): bump @rollup/plugin-node-resolve (#1641)
Bumps [@rollup/plugin-node-resolve](https://github.com/rollup/plugins/tree/HEAD/packages/node-resolve) from 15.2.1 to 15.2.3.
- [Changelog](https://github.com/rollup/plugins/blob/master/packages/node-resolve/CHANGELOG.md)
- [Commits](https://github.com/rollup/plugins/commits/node-resolve-v15.2.3/packages/node-resolve)

---
updated-dependencies:
- dependency-name: "@rollup/plugin-node-resolve"
  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>
2023-10-23 13:20:20 +05:30
dependabot[bot] 1ca39fce42
chore(deps)(deps-dev): bump @types/debug from 4.1.8 to 4.1.10 (#1673)
Bumps [@types/debug](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/debug) from 4.1.8 to 4.1.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/debug)

---
updated-dependencies:
- dependency-name: "@types/debug"
  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>
2023-10-23 13:12:46 +05:30
Danish Arora 1892f5093d
fix: don't dial discovered peers if have already been attempted dial (#1657)
* don't dial peers if they exist in PeerStore already

* fix(tests): bugs & add types to dispatch event

* fix: more tests

* fix: dial validation

* update doc & reduce delay

* refactor test

* use -1 instead of Infinity

* fix comment

* fix rebase
2023-10-20 18:16:48 +05:30
Danish Arora 0f7d63ef93
feat: Logger with log levels (#1672)
* setup a custom Logger with log level support

* refactor codebase for to use new Logger with log levels

* disallow usage of `debug` directly / only allow usage in/through custom Logger

* remove `debug` from logger
2023-10-20 16:36:47 +05:30
Florin Barbu 1150ddcd02
fix: remote peer rejected (#1645)
* update empty payload light push tests response

* bump up nwaku version

* remove only

* remove diff between gowaku and nwaku
2023-10-20 10:21:15 +03:00
fryorcraken 2af96281cd
test: ensure filter/light push work with message-encryption (#1671)
Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-10-18 13:07:11 +02:00
dependabot[bot] 6aade791cc
chore(deps)(deps): bump libp2p from 0.46.12 to 0.46.14 (#1670)
Bumps [libp2p](https://github.com/libp2p/js-libp2p) from 0.46.12 to 0.46.14.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/libp2p-v0.46.12...libp2p-v0.46.14)

---
updated-dependencies:
- dependency-name: libp2p
  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>
2023-10-18 11:49:20 +05:30
dependabot[bot] c4ed9d8b90
chore(deps)(deps): bump @libp2p/peer-id from 3.0.2 to 3.0.3 (#1663)
Bumps [@libp2p/peer-id](https://github.com/libp2p/js-libp2p) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/logger-v3.0.2...logger-v3.0.3)

---
updated-dependencies:
- dependency-name: "@libp2p/peer-id"
  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>
Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2023-10-17 12:22:19 +05:30
fryorcraken 6bad4ea7d1
feat: fail early when trying to send empty payload (#1642)
* refactor: rename as this method does not check empty payloads

* feat: fail early when trying to send empty payload

---------

Co-authored-by: Sasha <oleksandr@status.im>
2023-10-17 00:14:45 +02:00
fryorcraken 0e4ceb6ac9
chore: release master (#1568) 2023-10-16 16:18:34 +02:00
Danish Arora 9fe04d85f3
chore: use `pubsubTopic`/`pubsubTopics` across the codebase (#1653)
* chore: change all references of pubSubTopic to pubsubTopic

* change references of pubSubTopics to pubsubTopics

* flag words in cspell
2023-10-16 12:52:32 +05:30
Florin Barbu b96c3bd3e1
chore: disable paralles runs locally (#1662)
* disable paralles runs locally

* add logs

* add readme info about local execution
2023-10-13 17:32:28 +03:00
Florin Barbu ce5a48c13c
gowaku store bugfixes (#1661) 2023-10-13 17:21:30 +03:00
Danish Arora b8d006bee7
chore: refactor `ConnectionManager` for readability & maintainability (#1658)
* restructure shouldDialPeer for readability & maintainability:

* fix return & add logs

* fix: check on dialPeer instead of attemptDial

* rm: console log
2023-10-13 18:08:37 +05:30
Danish Arora e6527e9ab1
chore: add error handling for an uncaught dial attempt (#1660) 2023-10-13 17:33:42 +05:30
Danish Arora d39d4507ef
chore: add a test that uses ping to check filter subscription (#1656)
* add a test that uses ping to check filter subscription

* remove comment
2023-10-13 16:53:15 +05:30
Florin Barbu 347cbfa08a
chore: run tests in parallel (#1655)
* run tests in parallel

* small fixes

* small fixes

* fix setup of nodes

* fix relay tests

* fix Static Sharding: Running Nodes tests

* try with 5 threads

* try with 6 threads

* use startWithRetries as default start

* revert to 6

* set 10 jobs

* revert to back to 6

* add CI info in readme
2023-10-13 12:36:43 +03:00
Danish Arora 1d60c4ba44
feat: enable pinging connected peers by default (#1647)
* enable pinging peers by default

* handle ping failure
2023-10-11 18:01:42 +05:30
Danish Arora 124a29ebba
feat(static-sharding): filter peer connections per shards (#1626)
* add interface for `ShardInfo`

* enr: add deserialization logic & setup getters

* add sharding related utils

* utils: add shard<-> bytes conversion helpers

* pass `pubSubTopics` to `Waku`

* add `rs`/`rsv` details during discovery

* connection-manager: discard irrelevant peers

* add tests for static sharding - peer exchange

* update `ConnectionManager` tests to account for topic validity

* add js suffix to import

* address some comments

* move shardInfo encoding to ENR

* test: update for new API

* enr: add tests for serialisation & deserialisation

* address comment

* update test

* move getPeershardInfo to ConnectionManager and return ShardInfo instead of bytes

* update encoding and decoding relay shards to also factor for shards>64

* relay shard encoding decoding: use DataView and verbose spec tests

* improve tests for relay shard encoding decoding

* rm: only

* improve log message for unconfigured pubsub topic

* minor improvement

* fix: buffer <> Uint8array problems with shard decoding

* fix: test

* rm: only
2023-10-10 20:18:02 +05:30
fbarbu15 aa195a75ed
fix unsubscribes test 2023-10-10 10:18:01 +03:00
fbarbu15 7e96644ba8
merge master into branch 2023-10-10 09:59:24 +03:00
fbarbu15 6f8cf039df
remove .only 2023-10-10 09:23:51 +03:00
fbarbu15 aa93a441d5
use loadash instead of custom function 2023-10-10 09:15:36 +03:00
fbarbu15 c9389e3d07
improve teardown nodes 2023-10-10 09:03:44 +03:00
fbarbu15 1d1c7a28a8
updated wrong cursor test 2023-10-10 08:51:41 +03:00
Danish Arora 94d63f4548
Merge branch 'master' into chore/new-store-tests 2023-10-09 22:05:34 +05:30
Danish Arora b10c46b910
fix(store)!: use `pubSubTopic` from `DecodedMessage` for `createCursor` (#1640)
* fix!(store): Cursor: use pubsubtopic from Message

* add control to check cursor topic should match decoder

* fix
2023-10-09 21:25:38 +05:30
fbarbu15 b0d658c4a1
add comments for known issues 2023-10-09 14:52:40 +03:00
fbarbu15 95dbac3c57
self review 2023-10-06 13:34:30 +03:00
fbarbu15 0e5ff3e13d
add final tests 2023-10-06 12:45:00 +03:00
fbarbu15 5519877b5e
adjustments 2023-10-06 11:24:10 +03:00
fbarbu15 0b1f2ec31d
Merge branch 'master' of https://github.com/waku-org/js-waku into chore/new-store-tests 2023-10-05 19:07:02 +03:00
fbarbu15 c52b895c1e
new store tests 2023-10-05 19:06:37 +03:00
dependabot[bot] 0bc4a96807
chore(deps)(deps): bump js-sha3 from 0.8.0 to 0.9.2 (#1633)
Bumps [js-sha3](https://github.com/emn178/js-sha3) from 0.8.0 to 0.9.2.
- [Changelog](https://github.com/emn178/js-sha3/blob/master/CHANGELOG.md)
- [Commits](https://github.com/emn178/js-sha3/compare/v0.8.0...v0.9.2)

---
updated-dependencies:
- dependency-name: js-sha3
  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>
2023-10-05 14:12:20 +05:30
dependabot[bot] d06591378f
chore(deps)(deps): bump @libp2p/interface-compliance-tests (#1636)
Bumps [@libp2p/interface-compliance-tests](https://github.com/libp2p/js-libp2p) from 4.0.6 to 4.1.0.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/interface-compliance-tests-v4.0.6...interface-compliance-tests-v4.1.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>
2023-10-05 10:05:45 +05:30
fbarbu15 6c35a51f67
new store tests 2023-10-04 16:00:55 +03:00
fbarbu15 8fbb9c0c1b
new store tests 2023-10-04 15:40:50 +03:00
fbarbu15 00cb2c6b28
Merge branch 'master' of https://github.com/waku-org/js-waku into chore/new-store-tests 2023-10-04 11:57:40 +03:00
dependabot[bot] 923f21ab64
chore(deps)(deps): bump p-retry from 6.0.0 to 6.1.0 (#1634)
Bumps [p-retry](https://github.com/sindresorhus/p-retry) from 6.0.0 to 6.1.0.
- [Release notes](https://github.com/sindresorhus/p-retry/releases)
- [Commits](https://github.com/sindresorhus/p-retry/compare/v6.0.0...v6.1.0)

---
updated-dependencies:
- dependency-name: p-retry
  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>
2023-10-04 12:56:54 +05:30
Florin Barbu 29d83786b2
chore: update org (#1632)
* update org

* update other images as well

* small fix
2023-10-03 16:11:41 +05:30
fbarbu15 6778eb3809
new test 2023-10-03 12:46:22 +03:00
fbarbu15 a7ef4b80da
Merge branch 'master' of https://github.com/waku-org/js-waku into chore/new-store-tests 2023-10-03 10:06:14 +03:00
fbarbu15 9371477069
new store tests 2023-10-03 10:05:32 +03:00
Florin Barbu 856d3de265
chore: add missing ensureSubscriptions call (#1628)
Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-10-02 22:32:18 +02:00
dependabot[bot] d02838164f
chore(deps)(deps): bump fast-check from 3.13.0 to 3.13.1 (#1629)
Bumps [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check) from 3.13.0 to 3.13.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.13.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>
Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2023-10-02 22:28:51 +05:30
dependabot[bot] 64f38651bf
chore(deps)(deps): bump libp2p from 0.46.11 to 0.46.12 (#1630)
Bumps [libp2p](https://github.com/libp2p/js-libp2p) from 0.46.11 to 0.46.12.
- [Release notes](https://github.com/libp2p/js-libp2p/releases)
- [Changelog](https://github.com/libp2p/js-libp2p/blob/master/.release-please.json)
- [Commits](https://github.com/libp2p/js-libp2p/compare/libp2p-v0.46.11...libp2p-v0.46.12)

---
updated-dependencies:
- dependency-name: libp2p
  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>
2023-10-02 22:11:49 +05:30
fbarbu15 2ff19c7901
merge master 2023-10-02 13:11:12 +03:00
Florin Barbu f1d8d6097f
chore(static sharding): add tests for multiple pubsub topics (#1624)
* new tests for static sharding

* store tests

* small fixes after ci run

* small fixes after ci run

* small fixes after ci run

* multiple pubsubtopics on nwaku node
2023-10-02 15:07:00 +05:30
dependabot[bot] 94b8fd34ca
chore(deps)(deps): bump sinon from 15.2.0 to 16.0.0 (#1611)
Bumps [sinon](https://github.com/sinonjs/sinon) from 15.2.0 to 16.0.0.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md)
- [Commits](https://github.com/sinonjs/sinon/compare/v15.2.0...v16.0.0)

---
updated-dependencies:
- dependency-name: sinon
  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>
2023-10-02 13:38:23 +05:30
fbarbu15 c1f21a65df
Merge branch 'master' of https://github.com/waku-org/js-waku into chore/new-store-tests 2023-10-02 10:04:06 +03:00
dependabot[bot] fa6510040c
chore(deps)(deps): bump p-event from 5.0.1 to 6.0.0 (#1610)
Bumps [p-event](https://github.com/sindresorhus/p-event) from 5.0.1 to 6.0.0.
- [Release notes](https://github.com/sindresorhus/p-event/releases)
- [Commits](https://github.com/sindresorhus/p-event/compare/v5.0.1...v6.0.0)

---
updated-dependencies:
- dependency-name: p-event
  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>
Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2023-10-02 10:29:45 +05:30
fbarbu15 c83b976621
refactor store tests 2023-09-29 19:10:03 +03:00
fbarbu15 f307e9b6c6
intermediat commit 2023-09-29 14:03:43 +03:00
Danish Arora a3c45b6e1a
feat(static-sharding)!: allow multiple pubSubTopics (#1586)
* `ProtocolCreateOptions` now has `pubSubTopic` as `pubSubTopic[]`

* chore: update encoder & decoder to support `PubSubTopic`

* feat(protocols): allow multiple `PubSubTopic[]`

* feat(relay): allow multiple `PubSubTopic[]`

* chore(tests): update for new API

* chore: minor fixes

* chore: make store more robust

* fix(relay): correctly set types

* chore(address comments): update terminology around configured pubsub topics

* chore(address comments): minor refactoring

* chore(relay): split `subscribe` into smaller functions for readability & modularity

* chore(address comments): refactor `waitForGossipSubPeerInMesh`

* chore(store): only allow to query one `pubSubTopic`

* fix: `store` bug

* feat(tests): add some basic tests

* sharding utils

* address comments

* feat(relay): re-add API for `getMeshPeers`

* update error message

Co-authored-by: fryorcraken <110212804+fryorcraken@users.noreply.github.com>

* refactor for new API

* feat: simplify handling of observers (#1614)

* refactor: simplify handling of observers

* refactor: Remove redundant PubSubTopic from Observer

* use `??` instead of `||`

* update `pubsubTopic` to `pubSubTopic`

* update `interval` typo

* change occurence of `pubsubTopic` to `pubSubTopic`

* relay: rm `getAllMeshPeers` and make `pubSubTopics` public

* relay: use `push_or_init_map` and move to `utils`

* fix: update API for tests

* fix: relay waitForRemotePeer

---------

Co-authored-by: fryorcraken <110212804+fryorcraken@users.noreply.github.com>
2023-09-27 15:28:07 +05:30
Anton Iakimov 408f5702e4
chore: update wakuv2 fleet DNS discovery enrtree (#1616)
https://github.com/status-im/infra-misc/issues/171
2023-09-26 23:57:40 +02:00
Simon-Pierre Vivier 6fa106aa7f
fix: subscription RPC & added test subscriptions (#1587)
Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-09-26 00:24:49 +02:00
Sasha d9e4bcbe3f
feat: add Firefox and Webkit to karma (#1598)
* add Firefox and Webkit to karma testing

* try adding install to CI

* add display var

* try container prop

* try FirefoxHeadless

* set env var differently

* apply for all configs

* use root karma config

* fix relative link in karma config

* add log

* return as before

* fix path pattern

* move karma to the root

* try moving tsconfig

* return ts config

* use container for playwright

* add FF for firefox and chrome

* use command for playwright

* add retries

* remove retries
2023-09-22 17:48:07 +02:00
Sasha 281d9b2c9d
feat: add playwright CI testing (#1542)
* add tests-browser package

* rename to browser

* add playwright and experiment with karma

* add lock

* remove karma

* remove readme

* replace default app, rename

* add and configure playwright

* up package-lock

* use @waku/create-app, add scripts to handle it

* remove tsconfig

* update playwright script

* move dependency to root

* set folder

* up

* try install step

* add playwright dep

* remove step

* add es module utils

* fix import issue

* run on master

* use image prop

* use dotenv-flow, set .env.local

* add log, use dotenv-flow

* add env var to ci

* add env vars to CI

* return install of deps

* return container & log build step

* upgrade @waku/create-app

* fix firefox in container problem
2023-09-22 14:34:16 +02:00
Danish Arora a718c40882
chore: ensure that we can dial `tls` multiaddrs (#1580)
* add a test to dial tls version of a multiaddr

* generate new lockfile
ref: https://github.com/libp2p/js-libp2p/pull/2059#issuecomment-1724031879
2023-09-22 15:56:52 +05:30
Danish Arora 8f9faf4aed
chore: upgrade engine to 18 (#1604) 2023-09-22 14:37:34 +05:30
Florin Barbu 9ab4e86f19
chore: bump nwaku version to 0.20 (#1591) 2023-09-22 02:55:49 +02:00
Sasha 020463c358
chore: update typescript (#1528)
* update typescript, define in root package.json

* update typedoc and fix typedoc comments

* update dev version of tsconfig

* set module and resolution for tsconfig dev

* bump ts plugins

* set order of typedoc generation

* turn off warnings as errors setting
2023-09-21 10:57:37 +02:00
fbarbu15 bbd3f61bc4 increase timeout and use tearDownNodes 2023-09-21 11:29:27 +03:00
fryorcraken.eth 8cbd4c1d00
test: light push should not throw an exception 2023-09-21 12:39:00 +10:00
fryorcraken.eth fb37c89e40
fix: catch top level exception when preemptively creating streams 2023-09-21 12:39:00 +10:00
fryorcraken.eth 4a9360d4e3
test: fail on unhandled rejections and uncaught exceptions 2023-09-21 12:39:00 +10:00
fryorcraken.eth 3acc4fc86f
refactor: group import 2023-09-21 12:38:59 +10:00
fryorcraken.eth feb6e1b92c
test: nwaku does not behave as expected 2023-09-21 12:25:38 +10:00
fryorcraken.eth 053b6545ad
feat!: return `REMOTE_PEER_REJECTED` if remote peer rejected the message 2023-09-21 11:56:02 +10:00