395 Commits

Author SHA1 Message Date
Danish Arora
8d0e647966
feat!: filter v2 (#1332)
* implement proto

* implement filter v2

* add tests

* minor improvements
- make unsubscribe functions private in
filter
- enable all tests

* enable all tests

* readd multiaddrinput

* address comment removals

* unsubscribe based on contentFilters passed

* update unsubscribe function parameters in test

* reset interfaces & filter v1

* refactor filterv2 into 2 classes
- removes generics from types on filter which means
manual typecasting to filter version is required on
consumer side
- defaults to filterv2
- splits filterv2 into 2 classes:
  - one to create the subscription object with a
peer which returns the second class
  - the other to manage all subscription functions

* updates filter tests for the new API
- also fixes an interface import

* update `toAsyncIterator` test for Filter V1

* implement IReceiver on FilterV2

* remove return values from subscription functions

* update `to_async_iterator`

* address variable naming

* add tsdoc comments for hidden function

* address minor comments

* update docs to default to filter v2

* address comments

* rename `wakuFilter` to `wakuFilterV1`

* chore: Remove static variables (#1371)

* chore: Remove static variables

- Remove internal types from `@core/interfaces`
- Remove data being redundantly stored (pubsub topic)
- Remove usage of static variables
- Clean up callbacks and decoders when using `unsubscribe`
- Clean up callbacks and decoders when using `unsubscribeAll`

* fix setting activeSubscription

---------

Co-authored-by: danisharora099 <danisharora099@gmail.com>

* make activeSub getter and setter private

* update size-limit

---------

Co-authored-by: fryorcraken.eth <110212804+fryorcraken@users.noreply.github.com>
2023-05-23 16:06:46 +05:30
fryorcraken.eth
b25f7e0acf
chore: release master (#1343) 2023-05-19 13:38:52 +02:00
Sasha
0ad19540d5
fix: remove typesVersions (#1359)
* export types properly

* remove typesVersion

* remove typesVersions for @waku/relay
2023-05-19 00:51:28 +02:00
Danish Arora
94e1abdd65
chore: upgrade nwaku to v0.17.0 (#1364) 2023-05-19 01:52:06 +05:30
Danish Arora
60304bc908
chore: rename file to node.ts (#1363)
* rename file to node.ts

* update imports
2023-05-19 01:38:43 +05:30
Danish Arora
d80042fc47
fix: failing px tests for nwaku master (#1355)
* move dockerode into a separate class

* rename `nwaku` to `WakuNode` to generalise
- nwaku and go-waku were running through
`nwaku.ts`

* move wakunode and docker into one subdir

* rename node to `NimGoNode` and update imports in tests

* update docker to host all containers in a specific network

* update the peer exchange test

* assign static IPs to containers

* enable relay on px interop

* fix px compliance tests

* fix import
2023-05-19 01:28:49 +05:30
Sasha
72f97d4545
feat: add 1MB restriction to LightPush and Relay (#1351)
* add 1MB restriction to LightPush and Relay

* fix condition

* improve lightPush test

* update test

* add isomorphic-webcrypto

* import module

* add errors to SendResult and tests

* fix lint
2023-05-17 23:40:52 +02:00
Sasha
ef87af6e7a
chore: add iterator timeout and unblock main thread (#1357)
* add iterator timeout
* add idle state to generator
* add js-doc and iterator option
2023-05-17 10:38:20 +02:00
dependabot[bot]
27657e45a1
chore(deps)(deps-dev): bump typescript from 4.9.5 to 5.0.4
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.5 to 5.0.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.5...v5.0.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-17 05:58:36 +00:00
Stuart
97d5659c47
chore: update ecmascript version (#1352)
* updates to ES2022

* 🚿 cleanup
2023-05-16 14:19:44 +05:30
dependabot[bot]
a543d4ba71
chore(deps)(deps-dev): bump @types/dockerode from 3.3.15 to 3.3.17 (#1350)
Bumps [@types/dockerode](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/dockerode) from 3.3.15 to 3.3.17.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/dockerode)

---
updated-dependencies:
- dependency-name: "@types/dockerode"
  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-05-15 15:09:14 +05:30
Sasha
014c52a4ac
fix: add timeout to utils test (#1348) 2023-05-12 15:28:01 +02:00
Danish Arora
50c2c2540f
feat!: @waku/relay (#1316)
* move constants & core's func to @waku/utils

* setup @waku/relay

* use @waku/relay for create

* address: principal review

* fix: size-limit

* move all constants to @waku/core

* move TopicOnlyDecoder to relay

* merge: master

* fix: tests

* Move constants out of core (#1340)

* update package.lock

* change constants folder into a ts file

* use dependency version as * instead of version number

* add constants import from @waku/core

* add empty changelog file for relay

---------

Co-authored-by: fryorcraken.eth <110212804+fryorcraken@users.noreply.github.com>
2023-05-11 14:08:00 +05:30
Danish Arora
f4e31019e1
fix: improve logging for connection manager (#1303)
* merge: master

* fix: CI

* use: js script instead of shell script to run precheck and mocha

* improve logging when dial fails

* use hashmap for errors instead of redeclaring variable
2023-05-11 13:35:58 +05:30
fryorcraken.eth
55ed6e3765
chore: fix import 2023-05-11 15:04:23 +10:00
fryorcraken.eth
5724bb2b21
feat: expose meta on IDecodedMessage
Decoders are expected to expose this field in their return type.
Somehow missed in previous PRs.
2023-05-10 14:41:07 +10:00
fryorcraken.eth
af927933a9
chore: release master (#1296) 2023-05-09 20:54:20 +02:00
Sasha
7daa9d05bf
feat: toSubscriptionIterator impl for IReceiver (#1307) 2023-05-09 20:15:37 +02:00
dependabot[bot]
1386ff31f8
chore(deps)(deps-dev): bump @libp2p/interface-content-routing
Bumps [@libp2p/interface-content-routing](https://github.com/libp2p/js-libp2p-interfaces) from 2.0.2 to 2.1.1.
- [Release notes](https://github.com/libp2p/js-libp2p-interfaces/releases)
- [Commits](https://github.com/libp2p/js-libp2p-interfaces/compare/@libp2p/interface-content-routing-v2.0.2...@libp2p/interface-content-routing-v2.1.1)

---
updated-dependencies:
- dependency-name: "@libp2p/interface-content-routing"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-08 15:16:28 +00:00
dependabot[bot]
df8e68ff36
chore(deps)(deps): bump it-length-prefixed from 8.0.4 to 9.0.1
Bumps [it-length-prefixed](https://github.com/alanshaw/it-length-prefixed) from 8.0.4 to 9.0.1.
- [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/v8.0.4...v9.0.1)

---
updated-dependencies:
- dependency-name: it-length-prefixed
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-06 14:07:05 +10:00
fryorcraken.eth
c8c2cbfbb1
chore: ignore changelog file as it's handled by release please 2023-05-06 13:50:20 +10:00
fryorcraken.eth
c781e49e1e
chore: improve var name 2023-05-06 13:50:20 +10:00
fryorcraken.eth
71985038a2
test: fix karma config 2023-05-06 13:50:20 +10:00
fryorcraken.eth
fe57461329
feat: implement deterministic message hash logic 2023-05-06 13:50:20 +10:00
fryorcraken.eth
76d1d4faf5
chore: new empty message-hash package 2023-05-06 13:32:30 +10:00
fryorcraken.eth
c9e7af470d
fix: enum used from this dependency 2023-05-06 13:25:34 +10:00
dependabot[bot]
26c0500d79
chore(deps)(deps-dev): bump fast-check from 3.7.1 to 3.8.1
Bumps [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check) from 3.7.1 to 3.8.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.8.1/packages/fast-check)

---
updated-dependencies:
- dependency-name: fast-check
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-06 03:19:13 +00:00
Sasha
4615b51568
feath: use sha256 for Relay msgIdFn (#1322) 2023-05-05 18:26:54 +02:00
dependabot[bot]
f1c63ee069
chore(deps)(deps-dev): bump prettier from 2.8.7 to 2.8.8
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.7 to 2.8.8.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.7...2.8.8)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-04 16:24:58 +00:00
dependabot[bot]
e4e719e29b
chore(deps)(deps-dev): bump rollup from 3.19.1 to 3.21.3 (#1324)
Bumps [rollup](https://github.com/rollup/rollup) from 3.19.1 to 3.21.3.
- [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.19.1...v3.21.3)

---
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>
2023-05-04 11:29:08 +05:30
dependabot[bot]
1156be6090
chore(deps)(deps-dev): bump @libp2p/peer-id-factory from 2.0.2 to 2.0.3 (#1321)
Bumps [@libp2p/peer-id-factory](https://github.com/libp2p/js-libp2p-peer-id) from 2.0.2 to 2.0.3.
- [Release notes](https://github.com/libp2p/js-libp2p-peer-id/releases)
- [Commits](https://github.com/libp2p/js-libp2p-peer-id/compare/@libp2p/peer-id-factory-v2.0.2...@libp2p/peer-id-factory-v2.0.3)

---
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>
2023-05-03 15:01:55 +05:30
dependabot[bot]
52eb7bbe74
chore(deps)(deps-dev): bump @rollup/plugin-node-resolve
Bumps [@rollup/plugin-node-resolve](https://github.com/rollup/plugins/tree/HEAD/packages/node-resolve) from 15.0.1 to 15.0.2.
- [Release notes](https://github.com/rollup/plugins/releases)
- [Changelog](https://github.com/rollup/plugins/blob/master/packages/node-resolve/CHANGELOG.md)
- [Commits](https://github.com/rollup/plugins/commits/node-resolve-v15.0.2/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>
2023-04-27 16:04:28 +00:00
dependabot[bot]
8e7e5dfbb2
chore(deps)(deps): bump it-all from 2.0.1 to 3.0.1
Bumps [it-all](https://github.com/achingbrain/it) from 2.0.1 to 3.0.1.
- [Release notes](https://github.com/achingbrain/it/releases)
- [Commits](https://github.com/achingbrain/it/compare/it-all-v2.0.1...it-all-v3.0.1)

---
updated-dependencies:
- dependency-name: it-all
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-26 16:04:20 +00:00
dependabot[bot]
afe8442776
chore(deps)(deps-dev): bump @libp2p/interface-metrics (#1311)
Bumps [@libp2p/interface-metrics](https://github.com/libp2p/js-libp2p-interfaces) from 4.0.5 to 4.0.7.
- [Release notes](https://github.com/libp2p/js-libp2p-interfaces/releases)
- [Commits](https://github.com/libp2p/js-libp2p-interfaces/compare/@libp2p/interface-metrics-v4.0.5...@libp2p/interface-metrics-v4.0.7)

---
updated-dependencies:
- dependency-name: "@libp2p/interface-metrics"
  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-04-25 22:15:17 +05:30
dependabot[bot]
6ab8cfe605
chore(deps)(deps): bump @libp2p/crypto from 1.0.14 to 1.0.15
Bumps [@libp2p/crypto](https://github.com/libp2p/js-libp2p-crypto) from 1.0.14 to 1.0.15.
- [Release notes](https://github.com/libp2p/js-libp2p-crypto/releases)
- [Changelog](https://github.com/libp2p/js-libp2p-crypto/blob/master/CHANGELOG.md)
- [Commits](https://github.com/libp2p/js-libp2p-crypto/compare/v1.0.14...v1.0.15)

---
updated-dependencies:
- dependency-name: "@libp2p/crypto"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 04:05:47 +00:00
Sasha
763dc0125d
feat: add mapping function to multiaddr of peerid (#1306)
* feat: add mapping function to multiaddr of peerid

* remove unused
2023-04-19 20:03:27 +02:00
Danish Arora
b7d4b675bd
fix: peer-exchange go-waku interop (#1300)
* merge: master

* fix: CI

* use: js script instead of shell script to run precheck and mocha

* check for peer id instead of ws multiaddr in response
2023-04-19 13:07:29 +05:30
dependabot[bot]
3df5f8b376
chore(deps)(deps): bump @libp2p/peer-id from 2.0.2 to 2.0.3
Bumps [@libp2p/peer-id](https://github.com/libp2p/js-libp2p-peer-id) from 2.0.2 to 2.0.3.
- [Release notes](https://github.com/libp2p/js-libp2p-peer-id/releases)
- [Commits](https://github.com/libp2p/js-libp2p-peer-id/compare/@libp2p/peer-id-v2.0.2...@libp2p/peer-id-v2.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>
2023-04-17 05:11:12 +00:00
Danish Arora
dc3774c0ed
feat: use nwaku/go-waku docker images instead of building binaries (#1259)
* merge: master

* fix: CI

* use: js script instead of shell script to run precheck and mocha

* use `console.log` instead of `debug.log` for `run-tests.js`
2023-04-17 10:29:36 +05:30
dependabot[bot]
49dedfbd5b
chore(deps)(deps-dev): bump prettier from 2.8.4 to 2.8.7
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.4 to 2.8.7.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.4...2.8.7)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-05 05:01:50 +00:00
fryorcraken.eth
bd9d07394f
feat: ensure content topic is defined
Waku Messages are considered invalid if the content topic is undefined
or an empty string.

Avoid user error by throwing.
2023-04-04 14:56:59 +10:00
Sasha
6abee4880f
chore: use root .prettierignore (#1285)
* use root .prettierignore for fix and check
2023-04-03 23:39:59 +02:00
fryorcraken.eth
17ae7e5312 chore: release master 2023-04-03 16:15:39 +10:00
fryorcraken.eth
1dd32101ba
fix(dns-discovery): Use DOH list from dns-query
To make the library more robust as not all DOH allow CORS. Previous
default DOH got CORS disabled.
2023-04-03 16:05:21 +10:00
fryorcraken.eth
03c9cac3d0
fix(utils): typescript to able to find types 2023-04-03 14:57:43 +10:00
Sasha
e11e5b4870
feat!: add and implement IReceiver (#1219)
- remove extend Relay by GossipSub and use it as public property;
- detach GossipSub initialisation;
2023-03-31 03:17:41 +02:00
fryorcraken.eth
e8f750fa2b
chore: release master (#1286) 2023-03-31 03:09:02 +02:00
Sasha
5def8ddb4d
fix: update @waku/core changelog (#1287) 2023-03-31 02:44:51 +02:00
dependabot[bot]
6f12c15bda
chore(deps)(deps-dev): bump puppeteer from 19.7.4 to 19.8.2 (#1283)
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 19.7.4 to 19.8.2.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v19.7.4...puppeteer-v19.8.2)

---
updated-dependencies:
- dependency-name: puppeteer
  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>
Co-authored-by: Sasha <118575614+weboko@users.noreply.github.com>
2023-03-31 02:13:06 +02:00
Sasha
45f84ed67f
chore: bump core version (#1284) 2023-03-31 02:04:39 +02:00