From 1e86c3d63e6532dabbe10e01376d42dc6bcb0b85 Mon Sep 17 00:00:00 2001 From: Danish Arora <35004822+danisharora099@users.noreply.github.com> Date: Tue, 12 Mar 2024 15:56:49 +0530 Subject: [PATCH] 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 --- .gitignore | 2 +- .release-please-manifest.json | 5 +- .size-limit.cjs | 12 +- package-lock.json | 953 +++--------------- package.json | 4 +- .../.eslintrc.cjs | 0 .../.mocha.reporters.json | 0 .../{dns-discovery => discovery}/.mocharc.cjs | 0 .../karma.conf.cjs | 0 .../{dns-discovery => discovery}/package.json | 25 +- .../rollup.config.js | 0 .../src => discovery/src/dns}/constants.ts | 0 .../src => discovery/src/dns}/dns.spec.ts | 0 .../src => discovery/src/dns}/dns.ts | 0 .../src/dns}/dns_discovery.ts | 0 .../src/dns}/dns_over_https.ts | 0 .../src => discovery/src/dns}/enrtree.spec.ts | 0 .../src => discovery/src/dns}/enrtree.ts | 0 .../src/dns}/fetch_nodes.spec.ts | 0 .../src => discovery/src/dns}/fetch_nodes.ts | 0 .../src => discovery/src/dns}/index.spec.ts | 0 .../src => discovery/src/dns}/index.ts | 0 .../src => discovery/src/dns}/testdata.json | 0 packages/discovery/src/index.ts | 21 + .../src/local-peer-cache/index.spec.ts} | 11 +- .../src/local-peer-cache}/index.ts | 0 .../src/peer-exchange}/index.ts | 0 .../src/peer-exchange}/rpc.ts | 0 .../src/peer-exchange}/waku_peer_exchange.ts | 0 .../waku_peer_exchange_discovery.ts | 0 .../tsconfig.dev.json | 0 .../tsconfig.json | 2 +- .../tsconfig.karma.json | 0 packages/dns-discovery/CHANGELOG.md | 305 ------ packages/dns-discovery/tsconfig.json | 10 - packages/dns-discovery/typedoc.json | 4 - .../local-peer-cache-discovery/.eslintrc.cjs | 6 - .../.mocha.reporters.json | 6 - .../local-peer-cache-discovery/.mocharc.cjs | 26 - .../local-peer-cache-discovery/CHANGELOG.md | 20 - .../local-peer-cache-discovery/karma.conf.cjs | 3 - .../local-peer-cache-discovery/package.json | 96 -- .../rollup.config.js | 24 - .../tsconfig.dev.json | 3 - .../local-peer-cache-discovery/typedoc.json | 4 - packages/peer-exchange/.eslintrc.cjs | 6 - packages/peer-exchange/CHANGELOG.md | 285 ------ packages/peer-exchange/package.json | 95 -- packages/peer-exchange/rollup.config.js | 24 - packages/peer-exchange/tsconfig.dev.json | 3 - packages/peer-exchange/tsconfig.json | 10 - packages/peer-exchange/typedoc.json | 4 - packages/sdk/package.json | 1 + packages/tests/package.json | 3 +- .../tests/tests/dns-peer-discovery.spec.ts | 2 +- .../tests/peer-exchange/compliance.spec.ts | 2 +- .../tests/tests/peer-exchange/index.spec.ts | 2 +- .../tests/peer-exchange/pe.optional.spec.ts | 2 +- .../tests/tests/peer-exchange/query.spec.ts | 4 +- .../tests/sharding/peer_management.spec.ts | 2 +- .../tests/tests/waku.node.optional.spec.ts | 2 +- release-please-config.json | 4 +- 62 files changed, 218 insertions(+), 1775 deletions(-) rename packages/{dns-discovery => discovery}/.eslintrc.cjs (100%) rename packages/{dns-discovery => discovery}/.mocha.reporters.json (100%) rename packages/{dns-discovery => discovery}/.mocharc.cjs (100%) rename packages/{dns-discovery => discovery}/karma.conf.cjs (100%) rename packages/{dns-discovery => discovery}/package.json (80%) rename packages/{dns-discovery => discovery}/rollup.config.js (100%) rename packages/{dns-discovery/src => discovery/src/dns}/constants.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/dns.spec.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/dns.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/dns_discovery.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/dns_over_https.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/enrtree.spec.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/enrtree.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/fetch_nodes.spec.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/fetch_nodes.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/index.spec.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/index.ts (100%) rename packages/{dns-discovery/src => discovery/src/dns}/testdata.json (100%) create mode 100644 packages/discovery/src/index.ts rename packages/{local-peer-cache-discovery/src/local_discovery.spec.ts => discovery/src/local-peer-cache/index.spec.ts} (93%) rename packages/{local-peer-cache-discovery/src => discovery/src/local-peer-cache}/index.ts (100%) rename packages/{peer-exchange/src => discovery/src/peer-exchange}/index.ts (100%) rename packages/{peer-exchange/src => discovery/src/peer-exchange}/rpc.ts (100%) rename packages/{peer-exchange/src => discovery/src/peer-exchange}/waku_peer_exchange.ts (100%) rename packages/{peer-exchange/src => discovery/src/peer-exchange}/waku_peer_exchange_discovery.ts (100%) rename packages/{dns-discovery => discovery}/tsconfig.dev.json (100%) rename packages/{local-peer-cache-discovery => discovery}/tsconfig.json (76%) rename packages/{dns-discovery => discovery}/tsconfig.karma.json (100%) delete mode 100644 packages/dns-discovery/CHANGELOG.md delete mode 100644 packages/dns-discovery/tsconfig.json delete mode 100644 packages/dns-discovery/typedoc.json delete mode 100644 packages/local-peer-cache-discovery/.eslintrc.cjs delete mode 100644 packages/local-peer-cache-discovery/.mocha.reporters.json delete mode 100644 packages/local-peer-cache-discovery/.mocharc.cjs delete mode 100644 packages/local-peer-cache-discovery/CHANGELOG.md delete mode 100644 packages/local-peer-cache-discovery/karma.conf.cjs delete mode 100644 packages/local-peer-cache-discovery/package.json delete mode 100644 packages/local-peer-cache-discovery/rollup.config.js delete mode 100644 packages/local-peer-cache-discovery/tsconfig.dev.json delete mode 100644 packages/local-peer-cache-discovery/typedoc.json delete mode 100644 packages/peer-exchange/.eslintrc.cjs delete mode 100644 packages/peer-exchange/CHANGELOG.md delete mode 100644 packages/peer-exchange/package.json delete mode 100644 packages/peer-exchange/rollup.config.js delete mode 100644 packages/peer-exchange/tsconfig.dev.json delete mode 100644 packages/peer-exchange/tsconfig.json delete mode 100644 packages/peer-exchange/typedoc.json diff --git a/.gitignore b/.gitignore index 08c5d8446c..ebcefbd801 100644 --- a/.gitignore +++ b/.gitignore @@ -13,4 +13,4 @@ test-results playwright-report example allure-results -packages/local-peer-cache-discovery/mock_local_storage \ No newline at end of file +packages/discovery/mock_local_storage \ No newline at end of file diff --git a/.release-please-manifest.json b/.release-please-manifest.json index b4c0d346d4..aec775fb7d 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -4,11 +4,8 @@ "packages/interfaces": "0.0.22", "packages/message-hash": "0.1.11", "packages/enr": "0.0.21", - "packages/peer-exchange": "0.0.20", "packages/core": "0.0.27", - "packages/dns-discovery": "0.0.21", "packages/message-encryption": "0.0.25", "packages/relay": "0.0.10", - "packages/sdk": "0.0.23", - "packages/local-peer-cache-discovery": "1.0.0" + "packages/sdk": "0.0.23" } diff --git a/.size-limit.cjs b/.size-limit.cjs index 3fe0b6f7f7..b77b56f9b5 100644 --- a/.size-limit.cjs +++ b/.size-limit.cjs @@ -24,9 +24,19 @@ module.exports = [ }, { name: "DNS discovery", - path: "packages/dns-discovery/bundle/index.js", + path: "packages/discovery/bundle/index.js", import: "{ PeerDiscoveryDns }", }, + { + name: "Peer Exchange discovery", + path: "packages/discovery/bundle/index.js", + import: "{ wakuPeerExchangeDiscovery }", + }, + { + name: "Local Peer Cache Discovery", + path: "packages/discovery/bundle/index.js", + import: "{ wakuLocalPeerCacheDiscovery }", + }, { name: "Privacy preserving protocols", path: "packages/relay/bundle/index.js", diff --git a/package-lock.json b/package-lock.json index 6ff994f8b4..d970f44fed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,9 +13,7 @@ "packages/enr", "packages/core", "packages/relay", - "packages/peer-exchange", - "packages/dns-discovery", - "packages/local-peer-cache-discovery", + "packages/discovery", "packages/message-encryption", "packages/sdk", "packages/tests", @@ -2853,7 +2851,8 @@ }, "node_modules/@libp2p/interfaces": { "version": "3.3.2", - "license": "Apache-2.0 OR MIT", + "resolved": "https://registry.npmjs.org/@libp2p/interfaces/-/interfaces-3.3.2.tgz", + "integrity": "sha512-p/M7plbrxLzuQchvNwww1Was7ZeGE2NaOFulMaZBYIihU8z3fhaV+a033OqnC/0NTX/yhfdNOG7znhYq3XoR/g==", "engines": { "node": ">=16.0.0", "npm": ">=7.0.0" @@ -5403,10 +5402,26 @@ "node": ">= 10.0.0" } }, - "node_modules/@waku/dns-discovery": { - "resolved": "packages/dns-discovery", + "node_modules/@waku/discovery": { + "resolved": "packages/discovery", "link": true }, + "node_modules/@waku/dns-discovery": { + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@waku/dns-discovery/-/dns-discovery-0.0.21.tgz", + "integrity": "sha512-l6TVLNiP9HjVrSCWRVP4pKGAADkPzMY2+/tFxnLI1lx3NWmBrkwsEsZHKlfGpdDTT3130nxXkvENcswqWLsc1w==", + "dependencies": { + "@waku/enr": "0.0.21", + "@waku/utils": "0.0.15", + "debug": "^4.3.4", + "dns-query": "^0.11.2", + "hi-base32": "^0.5.1", + "uint8arrays": "^5.0.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/@waku/enr": { "resolved": "packages/enr", "link": true @@ -5416,8 +5431,17 @@ "link": true }, "node_modules/@waku/local-peer-cache-discovery": { - "resolved": "packages/local-peer-cache-discovery", - "link": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@waku/local-peer-cache-discovery/-/local-peer-cache-discovery-1.0.0.tgz", + "integrity": "sha512-He3xudQF8cMbQUU2q9nUlinSW8FSwKX51DLwhPhblVVwhrfdmjvfhjCaMaq2YDoA+y88CIqQG0bLxxl5QADpWQ==", + "dependencies": { + "@libp2p/interface": "^1.1.2", + "@waku/interfaces": "^0.0.22", + "@waku/utils": "^0.0.15" + }, + "engines": { + "node": ">=18" + } }, "node_modules/@waku/message-encryption": { "resolved": "packages/message-encryption", @@ -5428,8 +5452,24 @@ "link": true }, "node_modules/@waku/peer-exchange": { - "resolved": "packages/peer-exchange", - "link": true + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@waku/peer-exchange/-/peer-exchange-0.0.20.tgz", + "integrity": "sha512-Tbdw80VAk4Or6sKUX4LPCkuDo4zYB1/6hOLOMbSo1ck7w8ADNkcByyD5W/wVCmE4wM8Yen2Awb/auIsqunM8LQ==", + "dependencies": { + "@libp2p/interfaces": "^3.3.2", + "@waku/core": "0.0.27", + "@waku/enr": "0.0.21", + "@waku/interfaces": "0.0.22", + "@waku/proto": "0.0.6", + "@waku/utils": "0.0.15", + "debug": "^4.3.4", + "it-all": "^3.0.4", + "it-length-prefixed": "^9.0.4", + "it-pipe": "^3.0.1" + }, + "engines": { + "node": ">=18" + } }, "node_modules/@waku/proto": { "resolved": "packages/proto", @@ -8258,21 +8298,6 @@ "node": ">= 0.10" } }, - "node_modules/cosmiconfig": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.0.0.tgz", - "integrity": "sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ==", - "dev": true, - "dependencies": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - } - }, "node_modules/cpu-features": { "version": "0.0.9", "hasInstallScript": true, @@ -27812,9 +27837,63 @@ } } }, + "packages/discovery": { + "name": "@waku/discovery", + "version": "0.0.1", + "license": "MIT OR Apache-2.0", + "dependencies": { + "@waku/enr": "0.0.21", + "@waku/interfaces": "0.0.22", + "@waku/proto": "^0.0.6", + "@waku/utils": "0.0.15", + "debug": "^4.3.4", + "dns-query": "^0.11.2", + "hi-base32": "^0.5.1", + "uint8arrays": "^5.0.1" + }, + "devDependencies": { + "@libp2p/peer-id": "^4.0.4", + "@libp2p/peer-id-factory": "^4.0.5", + "@multiformats/multiaddr": "^12.0.0", + "@rollup/plugin-commonjs": "^25.0.7", + "@rollup/plugin-json": "^6.0.0", + "@rollup/plugin-node-resolve": "^15.2.3", + "@types/chai": "^4.3.11", + "@types/node-localstorage": "^1.3.3", + "@waku/build-utils": "*", + "chai": "^4.3.10", + "chai-as-promised": "^7.1.1", + "cspell": "^8.3.2", + "mocha": "^10.3.0", + "node-localstorage": "^3.0.5", + "npm-run-all": "^4.1.5", + "rollup": "^4.12.0", + "sinon": "^17.0.1" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@libp2p/interface": "^1.1.2", + "@waku/core": "0.0.27", + "@waku/enr": "0.0.21", + "@waku/interfaces": "0.0.22", + "@waku/proto": "0.0.6", + "@waku/utils": "0.0.15" + }, + "peerDependenciesMeta": { + "@libp2p/interface": { + "optional": true + }, + "@waku/interfaces": { + "optional": true + } + } + }, "packages/dns-discovery": { "name": "@waku/dns-discovery", - "version": "0.0.21", + "version": "0.0.20", + "extraneous": true, "license": "MIT OR Apache-2.0", "dependencies": { "@waku/enr": "0.0.21", @@ -27950,7 +28029,8 @@ }, "packages/local-peer-cache-discovery": { "name": "@waku/local-peer-cache-discovery", - "version": "1.0.0", + "version": "0.0.1", + "extraneous": true, "license": "MIT OR Apache-2.0", "dependencies": { "@libp2p/interface": "^1.1.2", @@ -27990,421 +28070,6 @@ } } }, - "packages/local-peer-cache-discovery/node_modules/@cspell/cspell-bundled-dicts": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-7.3.9.tgz", - "integrity": "sha512-ebfrf5Zaw33bcqT80Qrkv7IGT7GI/CDp15bSk2EUmdORzk1SCKZl6L4vUo3NLMmxVwYioS+OQmsW8E88sJNyGg==", - "dev": true, - "dependencies": { - "@cspell/dict-ada": "^4.0.2", - "@cspell/dict-aws": "^4.0.0", - "@cspell/dict-bash": "^4.1.2", - "@cspell/dict-companies": "^3.0.27", - "@cspell/dict-cpp": "^5.0.9", - "@cspell/dict-cryptocurrencies": "^4.0.0", - "@cspell/dict-csharp": "^4.0.2", - "@cspell/dict-css": "^4.0.12", - "@cspell/dict-dart": "^2.0.3", - "@cspell/dict-django": "^4.1.0", - "@cspell/dict-docker": "^1.1.7", - "@cspell/dict-dotnet": "^5.0.0", - "@cspell/dict-elixir": "^4.0.3", - "@cspell/dict-en_us": "^4.3.11", - "@cspell/dict-en-common-misspellings": "^1.0.2", - "@cspell/dict-en-gb": "1.1.33", - "@cspell/dict-filetypes": "^3.0.2", - "@cspell/dict-fonts": "^4.0.0", - "@cspell/dict-fsharp": "^1.0.1", - "@cspell/dict-fullstack": "^3.1.5", - "@cspell/dict-gaming-terms": "^1.0.4", - "@cspell/dict-git": "^2.0.0", - "@cspell/dict-golang": "^6.0.4", - "@cspell/dict-haskell": "^4.0.1", - "@cspell/dict-html": "^4.0.5", - "@cspell/dict-html-symbol-entities": "^4.0.0", - "@cspell/dict-java": "^5.0.6", - "@cspell/dict-k8s": "^1.0.2", - "@cspell/dict-latex": "^4.0.0", - "@cspell/dict-lorem-ipsum": "^4.0.0", - "@cspell/dict-lua": "^4.0.2", - "@cspell/dict-makefile": "^1.0.0", - "@cspell/dict-node": "^4.0.3", - "@cspell/dict-npm": "^5.0.12", - "@cspell/dict-php": "^4.0.4", - "@cspell/dict-powershell": "^5.0.2", - "@cspell/dict-public-licenses": "^2.0.5", - "@cspell/dict-python": "^4.1.10", - "@cspell/dict-r": "^2.0.1", - "@cspell/dict-ruby": "^5.0.1", - "@cspell/dict-rust": "^4.0.1", - "@cspell/dict-scala": "^5.0.0", - "@cspell/dict-software-terms": "^3.3.9", - "@cspell/dict-sql": "^2.1.2", - "@cspell/dict-svelte": "^1.0.2", - "@cspell/dict-swift": "^2.0.1", - "@cspell/dict-typescript": "^3.1.2", - "@cspell/dict-vue": "^3.0.0" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/cspell-json-reporter": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-7.3.9.tgz", - "integrity": "sha512-QHsem5OZXshFX+Wdlx3VpdPi9WS7KgoBMGGJ4zQZ3lp81Rb1tRj0Ij/98whq882QOmAVQfr+uOHANHLnyPr0LQ==", - "dev": true, - "dependencies": { - "@cspell/cspell-types": "7.3.9" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/cspell-pipe": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-7.3.9.tgz", - "integrity": "sha512-gKYTHcryKOaTmr6t+M5h1sZnQ42eHeumBJejovphipXfdivedUnuYyQrrQGFAlUKzfEOWcOPME1nm17xsaX5Ww==", - "dev": true, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/cspell-resolver": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-7.3.9.tgz", - "integrity": "sha512-2slYAGvi7EFLKyJ5hrYBNaFT2iyOEQM1pEIzm+PDuhNJE/9wuBY5pBVqIgFSPz53vsQvW9GJThNY8h1/2EH3ZA==", - "dev": true, - "dependencies": { - "global-dirs": "^3.0.1" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/cspell-service-bus": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-7.3.9.tgz", - "integrity": "sha512-VyfK3qWtJZag4Fe/x1Oh/tqCNVGKGlQ2ArX1fVdmTVGQtZcbXuMKdZI80t4b8SGtzGINHufAdakpu3xucX/FrQ==", - "dev": true, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/cspell-types": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-7.3.9.tgz", - "integrity": "sha512-p7s8yEV6ASz0HjiArH11yjNj3vXzK2Ep94GrpdtYJxSxFC2w1mXAVUaJB/5+jC4+1YeYsmcBFTXmZ1rGMyTv3g==", - "dev": true, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/dict-cryptocurrencies": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-4.0.0.tgz", - "integrity": "sha512-EiZp91ATyRxTmauIQfOX9adLYCunKjHEh092rrM7o2eMXP9n7zpXAL9BK7LviL+LbB8VDOm21q+s83cKrrRrsg==", - "dev": true - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/dict-en-common-misspellings": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz", - "integrity": "sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw==", - "dev": true - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/dict-git": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-2.0.0.tgz", - "integrity": "sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w==", - "dev": true - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/dynamic-import": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-7.3.9.tgz", - "integrity": "sha512-P6tAmDVhrW03hmhetxhBKlNTYwL2lk8ZehYQwSpXaLnaFrS3xrQvfUaJ3Mj9W2CIMzSYXlLmPO2FLRhXK2dnEw==", - "dev": true, - "dependencies": { - "import-meta-resolve": "^3.1.1" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/@cspell/strong-weak-map": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-7.3.9.tgz", - "integrity": "sha512-XKpw/p3+EN+PWiFAWc45RJPI9zQRkPSVdUFeZb0YLseWF/CkogScgIe4CLfMLITiVbP0X/FKk90+aTPfAU38kg==", - "dev": true, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell/-/cspell-7.3.9.tgz", - "integrity": "sha512-QzunjO9CmV5+98UfG4ONhvPtrcAC6Y2pEKeOrp5oPeyAI7HwgxmfsR3ybHRlMPAGcwKtDOurBKxM7jqXNwkzmA==", - "dev": true, - "dependencies": { - "@cspell/cspell-json-reporter": "7.3.9", - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "@cspell/dynamic-import": "7.3.9", - "chalk": "^5.3.0", - "chalk-template": "^1.1.0", - "commander": "^11.1.0", - "cspell-gitignore": "7.3.9", - "cspell-glob": "7.3.9", - "cspell-io": "7.3.9", - "cspell-lib": "7.3.9", - "fast-glob": "^3.3.2", - "fast-json-stable-stringify": "^2.1.0", - "file-entry-cache": "^7.0.1", - "get-stdin": "^9.0.0", - "semver": "^7.5.4", - "strip-ansi": "^7.1.0", - "vscode-uri": "^3.0.8" - }, - "bin": { - "cspell": "bin.mjs", - "cspell-esm": "bin.mjs" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/streetsidesoftware/cspell?sponsor=1" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-dictionary": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-7.3.9.tgz", - "integrity": "sha512-lkWfX5QNbs4yKqD9wa+G+NHRWmLgFdyposgJOyd/ojDbx99CDPMhMhg9pyMKdYl6Yt8kjMow58/i12EYvD8wnA==", - "dev": true, - "dependencies": { - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "cspell-trie-lib": "7.3.9", - "fast-equals": "^4.0.3", - "gensequence": "^6.0.0" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-dictionary/node_modules/fast-equals": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz", - "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg==", - "dev": true - }, - "packages/local-peer-cache-discovery/node_modules/cspell-gitignore": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-7.3.9.tgz", - "integrity": "sha512-DLuu+K2q4xYNL4DpLyysUeiGU/NYYoObzfOYiISzOKYpi3aFLiUaiyfF6xWGsahmlijif+8bwSsIMmcvGa5dgA==", - "dev": true, - "dependencies": { - "cspell-glob": "7.3.9", - "find-up": "^5.0.0" - }, - "bin": { - "cspell-gitignore": "bin.mjs" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-glob": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-7.3.9.tgz", - "integrity": "sha512-7PaTkCzJWjQex3men857v3ExF7Q10jbQkfD+wdln2te9iNFd+HEkstA173vb828D9yeib1q1of8oONr2SeGycg==", - "dev": true, - "dependencies": { - "micromatch": "^4.0.5" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-grammar": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-7.3.9.tgz", - "integrity": "sha512-s1QOPg4AxWE8XBewDQLe14j0uDyWGjREfm4dZFTrslAZUrQ8/df5s152M5LtgOEza33FrkKKE2axbGvgS9O7sQ==", - "dev": true, - "dependencies": { - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9" - }, - "bin": { - "cspell-grammar": "bin.mjs" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-io": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-7.3.9.tgz", - "integrity": "sha512-IbXOYaDxLg94uijv13kqb+6PQjEwGboQYtABuZs2+HuUVW89K2tE+fQcEhkAsrZ11sDj5lUqgEQj9omvknZSuA==", - "dev": true, - "dependencies": { - "@cspell/cspell-service-bus": "7.3.9", - "node-fetch": "^2.7.0" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-lib": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-7.3.9.tgz", - "integrity": "sha512-eFYYs8XoYmdu78UxrPisD+hAoXOLaLzcevKf9+oDPDgJmHpkGoFgbIBnHMRIsAM1e+QDS6OlWG/rybhZTqanCQ==", - "dev": true, - "dependencies": { - "@cspell/cspell-bundled-dicts": "7.3.9", - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-resolver": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "@cspell/dynamic-import": "7.3.9", - "@cspell/strong-weak-map": "7.3.9", - "clear-module": "^4.1.2", - "comment-json": "^4.2.3", - "configstore": "^6.0.0", - "cosmiconfig": "8.0.0", - "cspell-dictionary": "7.3.9", - "cspell-glob": "7.3.9", - "cspell-grammar": "7.3.9", - "cspell-io": "7.3.9", - "cspell-trie-lib": "7.3.9", - "fast-equals": "^5.0.1", - "find-up": "^6.3.0", - "gensequence": "^6.0.0", - "import-fresh": "^3.3.0", - "resolve-from": "^5.0.0", - "vscode-languageserver-textdocument": "^1.0.11", - "vscode-uri": "^3.0.8" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-lib/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "packages/local-peer-cache-discovery/node_modules/cspell-trie-lib": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-7.3.9.tgz", - "integrity": "sha512-aTWm2KYXjQ+MlM6kB37wmTV9RU8+fgZYkiFfMc48M0MhBc6XkHUibMGrFAS29gp+B70kWPxe+VHLmFIk9pRPyg==", - "dev": true, - "dependencies": { - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "gensequence": "^6.0.0" - }, - "engines": { - "node": ">=16" - } - }, - "packages/local-peer-cache-discovery/node_modules/file-entry-cache": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.2.tgz", - "integrity": "sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==", - "dev": true, - "dependencies": { - "flat-cache": "^3.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "packages/local-peer-cache-discovery/node_modules/import-meta-resolve": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-3.1.1.tgz", - "integrity": "sha512-qeywsE/KC3w9Fd2ORrRDUw6nS/nLwZpXgfrOc2IILvZYnCaEMd+D56Vfg9k4G29gIeVi3XKql1RQatME8iYsiw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "packages/local-peer-cache-discovery/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "packages/local-peer-cache-discovery/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "packages/local-peer-cache-discovery/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "packages/local-peer-cache-discovery/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "packages/local-peer-cache-discovery/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "packages/local-storage-discovery": { "name": "@waku/local-discovery", "version": "0.0.1", @@ -28517,7 +28182,8 @@ }, "packages/peer-exchange": { "name": "@waku/peer-exchange", - "version": "0.0.20", + "version": "0.0.19", + "extraneous": true, "license": "MIT OR Apache-2.0", "dependencies": { "@libp2p/interfaces": "^3.3.2", @@ -28633,6 +28299,7 @@ "@libp2p/ping": "^1.0.12", "@libp2p/websockets": "^8.0.11", "@waku/core": "0.0.27", + "@waku/discovery": "0.0.1", "@waku/dns-discovery": "0.0.21", "@waku/interfaces": "0.0.22", "@waku/local-peer-cache-discovery": "^1.0.0", @@ -28703,9 +28370,8 @@ "@types/mocha": "^10.0.6", "@types/sinon": "^17.0.3", "@types/tail": "^2.2.3", - "@waku/dns-discovery": "*", + "@waku/discovery": "*", "@waku/message-encryption": "*", - "@waku/peer-exchange": "*", "@waku/sdk": "*", "allure-commandline": "^2.27.0", "allure-mocha": "^2.9.2", @@ -30723,7 +30389,9 @@ } }, "@libp2p/interfaces": { - "version": "3.3.2" + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@libp2p/interfaces/-/interfaces-3.3.2.tgz", + "integrity": "sha512-p/M7plbrxLzuQchvNwww1Was7ZeGE2NaOFulMaZBYIihU8z3fhaV+a033OqnC/0NTX/yhfdNOG7znhYq3XoR/g==" }, "@libp2p/logger": { "version": "4.0.6", @@ -32595,8 +32263,8 @@ } } }, - "@waku/dns-discovery": { - "version": "file:packages/dns-discovery", + "@waku/discovery": { + "version": "file:packages/discovery", "requires": { "@libp2p/peer-id": "^4.0.4", "@libp2p/peer-id-factory": "^4.0.5", @@ -32605,18 +32273,36 @@ "@rollup/plugin-json": "^6.0.0", "@rollup/plugin-node-resolve": "^15.2.3", "@types/chai": "^4.3.11", + "@types/node-localstorage": "^1.3.3", "@waku/build-utils": "*", "@waku/enr": "0.0.21", "@waku/interfaces": "0.0.22", + "@waku/proto": "^0.0.6", "@waku/utils": "0.0.15", "chai": "^4.3.10", + "chai-as-promised": "^7.1.1", "cspell": "^8.3.2", "debug": "^4.3.4", "dns-query": "^0.11.2", "hi-base32": "^0.5.1", "mocha": "^10.3.0", + "node-localstorage": "^3.0.5", "npm-run-all": "^4.1.5", "rollup": "^4.12.0", + "sinon": "^17.0.1", + "uint8arrays": "^5.0.1" + } + }, + "@waku/dns-discovery": { + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@waku/dns-discovery/-/dns-discovery-0.0.21.tgz", + "integrity": "sha512-l6TVLNiP9HjVrSCWRVP4pKGAADkPzMY2+/tFxnLI1lx3NWmBrkwsEsZHKlfGpdDTT3130nxXkvENcswqWLsc1w==", + "requires": { + "@waku/enr": "0.0.21", + "@waku/utils": "0.0.15", + "debug": "^4.3.4", + "dns-query": "^0.11.2", + "hi-base32": "^0.5.1", "uint8arrays": "^5.0.1" } }, @@ -32660,345 +32346,13 @@ } }, "@waku/local-peer-cache-discovery": { - "version": "file:packages/local-peer-cache-discovery", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@waku/local-peer-cache-discovery/-/local-peer-cache-discovery-1.0.0.tgz", + "integrity": "sha512-He3xudQF8cMbQUU2q9nUlinSW8FSwKX51DLwhPhblVVwhrfdmjvfhjCaMaq2YDoA+y88CIqQG0bLxxl5QADpWQ==", "requires": { "@libp2p/interface": "^1.1.2", - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-json": "^6.0.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@types/chai": "^4.3.11", - "@types/node-localstorage": "^1.3.3", - "@waku/build-utils": "*", "@waku/interfaces": "^0.0.22", - "@waku/utils": "^0.0.15", - "chai": "^4.3.10", - "chai-as-promised": "^7.1.1", - "cspell": "^7.3.2", - "mocha": "^10.2.0", - "node-localstorage": "^3.0.5", - "npm-run-all": "^4.1.5", - "rollup": "^4.12.0", - "sinon": "^17.0.1" - }, - "dependencies": { - "@cspell/cspell-bundled-dicts": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-7.3.9.tgz", - "integrity": "sha512-ebfrf5Zaw33bcqT80Qrkv7IGT7GI/CDp15bSk2EUmdORzk1SCKZl6L4vUo3NLMmxVwYioS+OQmsW8E88sJNyGg==", - "dev": true, - "requires": { - "@cspell/dict-ada": "^4.0.2", - "@cspell/dict-aws": "^4.0.0", - "@cspell/dict-bash": "^4.1.2", - "@cspell/dict-companies": "^3.0.27", - "@cspell/dict-cpp": "^5.0.9", - "@cspell/dict-cryptocurrencies": "^4.0.0", - "@cspell/dict-csharp": "^4.0.2", - "@cspell/dict-css": "^4.0.12", - "@cspell/dict-dart": "^2.0.3", - "@cspell/dict-django": "^4.1.0", - "@cspell/dict-docker": "^1.1.7", - "@cspell/dict-dotnet": "^5.0.0", - "@cspell/dict-elixir": "^4.0.3", - "@cspell/dict-en_us": "^4.3.11", - "@cspell/dict-en-common-misspellings": "^1.0.2", - "@cspell/dict-en-gb": "1.1.33", - "@cspell/dict-filetypes": "^3.0.2", - "@cspell/dict-fonts": "^4.0.0", - "@cspell/dict-fsharp": "^1.0.1", - "@cspell/dict-fullstack": "^3.1.5", - "@cspell/dict-gaming-terms": "^1.0.4", - "@cspell/dict-git": "^2.0.0", - "@cspell/dict-golang": "^6.0.4", - "@cspell/dict-haskell": "^4.0.1", - "@cspell/dict-html": "^4.0.5", - "@cspell/dict-html-symbol-entities": "^4.0.0", - "@cspell/dict-java": "^5.0.6", - "@cspell/dict-k8s": "^1.0.2", - "@cspell/dict-latex": "^4.0.0", - "@cspell/dict-lorem-ipsum": "^4.0.0", - "@cspell/dict-lua": "^4.0.2", - "@cspell/dict-makefile": "^1.0.0", - "@cspell/dict-node": "^4.0.3", - "@cspell/dict-npm": "^5.0.12", - "@cspell/dict-php": "^4.0.4", - "@cspell/dict-powershell": "^5.0.2", - "@cspell/dict-public-licenses": "^2.0.5", - "@cspell/dict-python": "^4.1.10", - "@cspell/dict-r": "^2.0.1", - "@cspell/dict-ruby": "^5.0.1", - "@cspell/dict-rust": "^4.0.1", - "@cspell/dict-scala": "^5.0.0", - "@cspell/dict-software-terms": "^3.3.9", - "@cspell/dict-sql": "^2.1.2", - "@cspell/dict-svelte": "^1.0.2", - "@cspell/dict-swift": "^2.0.1", - "@cspell/dict-typescript": "^3.1.2", - "@cspell/dict-vue": "^3.0.0" - } - }, - "@cspell/cspell-json-reporter": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-7.3.9.tgz", - "integrity": "sha512-QHsem5OZXshFX+Wdlx3VpdPi9WS7KgoBMGGJ4zQZ3lp81Rb1tRj0Ij/98whq882QOmAVQfr+uOHANHLnyPr0LQ==", - "dev": true, - "requires": { - "@cspell/cspell-types": "7.3.9" - } - }, - "@cspell/cspell-pipe": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-7.3.9.tgz", - "integrity": "sha512-gKYTHcryKOaTmr6t+M5h1sZnQ42eHeumBJejovphipXfdivedUnuYyQrrQGFAlUKzfEOWcOPME1nm17xsaX5Ww==", - "dev": true - }, - "@cspell/cspell-resolver": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-7.3.9.tgz", - "integrity": "sha512-2slYAGvi7EFLKyJ5hrYBNaFT2iyOEQM1pEIzm+PDuhNJE/9wuBY5pBVqIgFSPz53vsQvW9GJThNY8h1/2EH3ZA==", - "dev": true, - "requires": { - "global-dirs": "^3.0.1" - } - }, - "@cspell/cspell-service-bus": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-7.3.9.tgz", - "integrity": "sha512-VyfK3qWtJZag4Fe/x1Oh/tqCNVGKGlQ2ArX1fVdmTVGQtZcbXuMKdZI80t4b8SGtzGINHufAdakpu3xucX/FrQ==", - "dev": true - }, - "@cspell/cspell-types": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-7.3.9.tgz", - "integrity": "sha512-p7s8yEV6ASz0HjiArH11yjNj3vXzK2Ep94GrpdtYJxSxFC2w1mXAVUaJB/5+jC4+1YeYsmcBFTXmZ1rGMyTv3g==", - "dev": true - }, - "@cspell/dict-cryptocurrencies": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-4.0.0.tgz", - "integrity": "sha512-EiZp91ATyRxTmauIQfOX9adLYCunKjHEh092rrM7o2eMXP9n7zpXAL9BK7LviL+LbB8VDOm21q+s83cKrrRrsg==", - "dev": true - }, - "@cspell/dict-en-common-misspellings": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz", - "integrity": "sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw==", - "dev": true - }, - "@cspell/dict-git": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-2.0.0.tgz", - "integrity": "sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w==", - "dev": true - }, - "@cspell/dynamic-import": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-7.3.9.tgz", - "integrity": "sha512-P6tAmDVhrW03hmhetxhBKlNTYwL2lk8ZehYQwSpXaLnaFrS3xrQvfUaJ3Mj9W2CIMzSYXlLmPO2FLRhXK2dnEw==", - "dev": true, - "requires": { - "import-meta-resolve": "^3.1.1" - } - }, - "@cspell/strong-weak-map": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-7.3.9.tgz", - "integrity": "sha512-XKpw/p3+EN+PWiFAWc45RJPI9zQRkPSVdUFeZb0YLseWF/CkogScgIe4CLfMLITiVbP0X/FKk90+aTPfAU38kg==", - "dev": true - }, - "cspell": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell/-/cspell-7.3.9.tgz", - "integrity": "sha512-QzunjO9CmV5+98UfG4ONhvPtrcAC6Y2pEKeOrp5oPeyAI7HwgxmfsR3ybHRlMPAGcwKtDOurBKxM7jqXNwkzmA==", - "dev": true, - "requires": { - "@cspell/cspell-json-reporter": "7.3.9", - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "@cspell/dynamic-import": "7.3.9", - "chalk": "^5.3.0", - "chalk-template": "^1.1.0", - "commander": "^11.1.0", - "cspell-gitignore": "7.3.9", - "cspell-glob": "7.3.9", - "cspell-io": "7.3.9", - "cspell-lib": "7.3.9", - "fast-glob": "^3.3.2", - "fast-json-stable-stringify": "^2.1.0", - "file-entry-cache": "^7.0.1", - "get-stdin": "^9.0.0", - "semver": "^7.5.4", - "strip-ansi": "^7.1.0", - "vscode-uri": "^3.0.8" - } - }, - "cspell-dictionary": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-7.3.9.tgz", - "integrity": "sha512-lkWfX5QNbs4yKqD9wa+G+NHRWmLgFdyposgJOyd/ojDbx99CDPMhMhg9pyMKdYl6Yt8kjMow58/i12EYvD8wnA==", - "dev": true, - "requires": { - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "cspell-trie-lib": "7.3.9", - "fast-equals": "^4.0.3", - "gensequence": "^6.0.0" - }, - "dependencies": { - "fast-equals": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz", - "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg==", - "dev": true - } - } - }, - "cspell-gitignore": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-7.3.9.tgz", - "integrity": "sha512-DLuu+K2q4xYNL4DpLyysUeiGU/NYYoObzfOYiISzOKYpi3aFLiUaiyfF6xWGsahmlijif+8bwSsIMmcvGa5dgA==", - "dev": true, - "requires": { - "cspell-glob": "7.3.9", - "find-up": "^5.0.0" - } - }, - "cspell-glob": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-7.3.9.tgz", - "integrity": "sha512-7PaTkCzJWjQex3men857v3ExF7Q10jbQkfD+wdln2te9iNFd+HEkstA173vb828D9yeib1q1of8oONr2SeGycg==", - "dev": true, - "requires": { - "micromatch": "^4.0.5" - } - }, - "cspell-grammar": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-7.3.9.tgz", - "integrity": "sha512-s1QOPg4AxWE8XBewDQLe14j0uDyWGjREfm4dZFTrslAZUrQ8/df5s152M5LtgOEza33FrkKKE2axbGvgS9O7sQ==", - "dev": true, - "requires": { - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9" - } - }, - "cspell-io": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-7.3.9.tgz", - "integrity": "sha512-IbXOYaDxLg94uijv13kqb+6PQjEwGboQYtABuZs2+HuUVW89K2tE+fQcEhkAsrZ11sDj5lUqgEQj9omvknZSuA==", - "dev": true, - "requires": { - "@cspell/cspell-service-bus": "7.3.9", - "node-fetch": "^2.7.0" - } - }, - "cspell-lib": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-7.3.9.tgz", - "integrity": "sha512-eFYYs8XoYmdu78UxrPisD+hAoXOLaLzcevKf9+oDPDgJmHpkGoFgbIBnHMRIsAM1e+QDS6OlWG/rybhZTqanCQ==", - "dev": true, - "requires": { - "@cspell/cspell-bundled-dicts": "7.3.9", - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-resolver": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "@cspell/dynamic-import": "7.3.9", - "@cspell/strong-weak-map": "7.3.9", - "clear-module": "^4.1.2", - "comment-json": "^4.2.3", - "configstore": "^6.0.0", - "cosmiconfig": "8.0.0", - "cspell-dictionary": "7.3.9", - "cspell-glob": "7.3.9", - "cspell-grammar": "7.3.9", - "cspell-io": "7.3.9", - "cspell-trie-lib": "7.3.9", - "fast-equals": "^5.0.1", - "find-up": "^6.3.0", - "gensequence": "^6.0.0", - "import-fresh": "^3.3.0", - "resolve-from": "^5.0.0", - "vscode-languageserver-textdocument": "^1.0.11", - "vscode-uri": "^3.0.8" - }, - "dependencies": { - "find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "requires": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - } - } - } - }, - "cspell-trie-lib": { - "version": "7.3.9", - "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-7.3.9.tgz", - "integrity": "sha512-aTWm2KYXjQ+MlM6kB37wmTV9RU8+fgZYkiFfMc48M0MhBc6XkHUibMGrFAS29gp+B70kWPxe+VHLmFIk9pRPyg==", - "dev": true, - "requires": { - "@cspell/cspell-pipe": "7.3.9", - "@cspell/cspell-types": "7.3.9", - "gensequence": "^6.0.0" - } - }, - "file-entry-cache": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.2.tgz", - "integrity": "sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==", - "dev": true, - "requires": { - "flat-cache": "^3.2.0" - } - }, - "import-meta-resolve": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-3.1.1.tgz", - "integrity": "sha512-qeywsE/KC3w9Fd2ORrRDUw6nS/nLwZpXgfrOc2IILvZYnCaEMd+D56Vfg9k4G29gIeVi3XKql1RQatME8iYsiw==", - "dev": true - }, - "locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "requires": { - "p-locate": "^6.0.0" - } - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "requires": { - "p-limit": "^4.0.0" - } - }, - "path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true - }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true - } + "@waku/utils": "^0.0.15" } }, "@waku/message-encryption": { @@ -33052,27 +32406,20 @@ } }, "@waku/peer-exchange": { - "version": "file:packages/peer-exchange", + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@waku/peer-exchange/-/peer-exchange-0.0.20.tgz", + "integrity": "sha512-Tbdw80VAk4Or6sKUX4LPCkuDo4zYB1/6hOLOMbSo1ck7w8ADNkcByyD5W/wVCmE4wM8Yen2Awb/auIsqunM8LQ==", "requires": { "@libp2p/interfaces": "^3.3.2", - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-json": "^6.0.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@waku/build-utils": "*", "@waku/core": "0.0.27", "@waku/enr": "0.0.21", "@waku/interfaces": "0.0.22", "@waku/proto": "0.0.6", "@waku/utils": "0.0.15", - "chai": "^4.3.10", - "cspell": "^8.3.2", "debug": "^4.3.4", "it-all": "^3.0.4", "it-length-prefixed": "^9.0.4", - "it-pipe": "^3.0.1", - "npm-run-all": "^4.1.5", - "rollup": "^4.12.0", - "uint8arraylist": "^2.4.3" + "it-pipe": "^3.0.1" } }, "@waku/proto": { @@ -33124,6 +32471,7 @@ "@rollup/plugin-node-resolve": "^15.2.3", "@waku/build-utils": "*", "@waku/core": "0.0.27", + "@waku/discovery": "0.0.1", "@waku/dns-discovery": "0.0.21", "@waku/interfaces": "0.0.22", "@waku/local-peer-cache-discovery": "^1.0.0", @@ -33149,11 +32497,10 @@ "@types/sinon": "^17.0.3", "@types/tail": "^2.2.3", "@waku/core": "*", - "@waku/dns-discovery": "*", + "@waku/discovery": "*", "@waku/enr": "*", "@waku/interfaces": "*", "@waku/message-encryption": "*", - "@waku/peer-exchange": "*", "@waku/sdk": "*", "@waku/utils": "*", "allure-commandline": "^2.27.0", @@ -35073,18 +34420,6 @@ "vary": "^1" } }, - "cosmiconfig": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.0.0.tgz", - "integrity": "sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ==", - "dev": true, - "requires": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - } - }, "cpu-features": { "version": "0.0.9", "optional": true, diff --git a/package.json b/package.json index d7a89a8276..084fa2e5a3 100644 --- a/package.json +++ b/package.json @@ -10,9 +10,7 @@ "packages/enr", "packages/core", "packages/relay", - "packages/peer-exchange", - "packages/dns-discovery", - "packages/local-peer-cache-discovery", + "packages/discovery", "packages/message-encryption", "packages/sdk", "packages/tests", diff --git a/packages/dns-discovery/.eslintrc.cjs b/packages/discovery/.eslintrc.cjs similarity index 100% rename from packages/dns-discovery/.eslintrc.cjs rename to packages/discovery/.eslintrc.cjs diff --git a/packages/dns-discovery/.mocha.reporters.json b/packages/discovery/.mocha.reporters.json similarity index 100% rename from packages/dns-discovery/.mocha.reporters.json rename to packages/discovery/.mocha.reporters.json diff --git a/packages/dns-discovery/.mocharc.cjs b/packages/discovery/.mocharc.cjs similarity index 100% rename from packages/dns-discovery/.mocharc.cjs rename to packages/discovery/.mocharc.cjs diff --git a/packages/dns-discovery/karma.conf.cjs b/packages/discovery/karma.conf.cjs similarity index 100% rename from packages/dns-discovery/karma.conf.cjs rename to packages/discovery/karma.conf.cjs diff --git a/packages/dns-discovery/package.json b/packages/discovery/package.json similarity index 80% rename from packages/dns-discovery/package.json rename to packages/discovery/package.json index c37b51d099..a2b7d2b44e 100644 --- a/packages/dns-discovery/package.json +++ b/packages/discovery/package.json @@ -1,7 +1,7 @@ { - "name": "@waku/dns-discovery", - "version": "0.0.21", - "description": "DNS Peer Discovery (EIP-1459)", + "name": "@waku/discovery", + "version": "0.0.1", + "description": "Contains various discovery mechanisms: DNS Discovery (EIP-1459, Peer Exchange, Local Peer Cache Discovery.", "types": "./dist/index.d.ts", "module": "./dist/index.js", "exports": { @@ -12,7 +12,7 @@ }, "type": "module", "author": "Waku Team", - "homepage": "https://github.com/waku-org/js-waku/tree/master/packages/dns-discovery#readme", + "homepage": "https://github.com/waku-org/js-waku/tree/master/packages/discovery#readme", "repository": { "type": "git", "url": "https://github.com/waku-org/js-waku.git" @@ -51,6 +51,8 @@ "node": ">=18" }, "dependencies": { + "@waku/interfaces": "0.0.22", + "@waku/proto": "^0.0.6", "@waku/enr": "0.0.21", "@waku/utils": "0.0.15", "debug": "^4.3.4", @@ -66,22 +68,31 @@ "@rollup/plugin-json": "^6.0.0", "@rollup/plugin-node-resolve": "^15.2.3", "@types/chai": "^4.3.11", + "@types/node-localstorage": "^1.3.3", "@waku/build-utils": "*", - "@waku/interfaces": "0.0.22", "chai": "^4.3.10", + "chai-as-promised": "^7.1.1", "cspell": "^8.3.2", "mocha": "^10.3.0", + "node-localstorage": "^3.0.5", "npm-run-all": "^4.1.5", - "rollup": "^4.12.0" + "rollup": "^4.12.0", + "sinon": "^17.0.1" }, "peerDependencies": { + "@waku/core": "0.0.27", "@waku/enr": "0.0.21", + "@waku/interfaces": "0.0.22", + "@waku/proto": "0.0.6", "@waku/utils": "0.0.15", - "@waku/interfaces": "0.0.22" + "@libp2p/interface": "^1.1.2" }, "peerDependenciesMeta": { "@waku/interfaces": { "optional": true + }, + "@libp2p/interface": { + "optional": true } }, "files": [ diff --git a/packages/dns-discovery/rollup.config.js b/packages/discovery/rollup.config.js similarity index 100% rename from packages/dns-discovery/rollup.config.js rename to packages/discovery/rollup.config.js diff --git a/packages/dns-discovery/src/constants.ts b/packages/discovery/src/dns/constants.ts similarity index 100% rename from packages/dns-discovery/src/constants.ts rename to packages/discovery/src/dns/constants.ts diff --git a/packages/dns-discovery/src/dns.spec.ts b/packages/discovery/src/dns/dns.spec.ts similarity index 100% rename from packages/dns-discovery/src/dns.spec.ts rename to packages/discovery/src/dns/dns.spec.ts diff --git a/packages/dns-discovery/src/dns.ts b/packages/discovery/src/dns/dns.ts similarity index 100% rename from packages/dns-discovery/src/dns.ts rename to packages/discovery/src/dns/dns.ts diff --git a/packages/dns-discovery/src/dns_discovery.ts b/packages/discovery/src/dns/dns_discovery.ts similarity index 100% rename from packages/dns-discovery/src/dns_discovery.ts rename to packages/discovery/src/dns/dns_discovery.ts diff --git a/packages/dns-discovery/src/dns_over_https.ts b/packages/discovery/src/dns/dns_over_https.ts similarity index 100% rename from packages/dns-discovery/src/dns_over_https.ts rename to packages/discovery/src/dns/dns_over_https.ts diff --git a/packages/dns-discovery/src/enrtree.spec.ts b/packages/discovery/src/dns/enrtree.spec.ts similarity index 100% rename from packages/dns-discovery/src/enrtree.spec.ts rename to packages/discovery/src/dns/enrtree.spec.ts diff --git a/packages/dns-discovery/src/enrtree.ts b/packages/discovery/src/dns/enrtree.ts similarity index 100% rename from packages/dns-discovery/src/enrtree.ts rename to packages/discovery/src/dns/enrtree.ts diff --git a/packages/dns-discovery/src/fetch_nodes.spec.ts b/packages/discovery/src/dns/fetch_nodes.spec.ts similarity index 100% rename from packages/dns-discovery/src/fetch_nodes.spec.ts rename to packages/discovery/src/dns/fetch_nodes.spec.ts diff --git a/packages/dns-discovery/src/fetch_nodes.ts b/packages/discovery/src/dns/fetch_nodes.ts similarity index 100% rename from packages/dns-discovery/src/fetch_nodes.ts rename to packages/discovery/src/dns/fetch_nodes.ts diff --git a/packages/dns-discovery/src/index.spec.ts b/packages/discovery/src/dns/index.spec.ts similarity index 100% rename from packages/dns-discovery/src/index.spec.ts rename to packages/discovery/src/dns/index.spec.ts diff --git a/packages/dns-discovery/src/index.ts b/packages/discovery/src/dns/index.ts similarity index 100% rename from packages/dns-discovery/src/index.ts rename to packages/discovery/src/dns/index.ts diff --git a/packages/dns-discovery/src/testdata.json b/packages/discovery/src/dns/testdata.json similarity index 100% rename from packages/dns-discovery/src/testdata.json rename to packages/discovery/src/dns/testdata.json diff --git a/packages/discovery/src/index.ts b/packages/discovery/src/index.ts new file mode 100644 index 0000000000..eb9ba8ea2c --- /dev/null +++ b/packages/discovery/src/index.ts @@ -0,0 +1,21 @@ +// DNS Discovery +export { PeerDiscoveryDns, wakuDnsDiscovery } from "./dns/dns_discovery.js"; +export { enrTree } from "./dns/constants.js"; +export { DnsNodeDiscovery } from "./dns/dns.js"; + +// Peer Exchange Discovery +export { + wakuPeerExchange, + PeerExchangeCodec, + WakuPeerExchange +} from "./peer-exchange/waku_peer_exchange.js"; +export { + wakuPeerExchangeDiscovery, + PeerExchangeDiscovery +} from "./peer-exchange/waku_peer_exchange_discovery.js"; + +// Local Peer Cache Discovery +export { + LocalPeerCacheDiscovery, + wakuLocalPeerCacheDiscovery +} from "./local-peer-cache/index.js"; diff --git a/packages/local-peer-cache-discovery/src/local_discovery.spec.ts b/packages/discovery/src/local-peer-cache/index.spec.ts similarity index 93% rename from packages/local-peer-cache-discovery/src/local_discovery.spec.ts rename to packages/discovery/src/local-peer-cache/index.spec.ts index a180fa117f..28cb0677d5 100644 --- a/packages/local-peer-cache-discovery/src/local_discovery.spec.ts +++ b/packages/discovery/src/local-peer-cache/index.spec.ts @@ -11,14 +11,21 @@ import { LocalStoragePeerInfo } from "@waku/interfaces"; import chai, { expect } from "chai"; import chaiAsPromised from "chai-as-promised"; import { MemoryDatastore } from "datastore-core/memory"; -import { LocalStorage } from "node-localstorage"; import sinon from "sinon"; import { LocalPeerCacheDiscovery } from "./index.js"; chai.use(chaiAsPromised); -global.localStorage = new LocalStorage("./mock_local_storage"); +// dynamically importing the local storage polyfill for node +if (typeof window === "undefined") { + try { + const { LocalStorage } = await import("node-localstorage"); + global.localStorage = new LocalStorage("./scratch"); + } catch (error) { + console.error("Failed to load localStorage polyfill:", error); + } +} const mockPeers = [ { diff --git a/packages/local-peer-cache-discovery/src/index.ts b/packages/discovery/src/local-peer-cache/index.ts similarity index 100% rename from packages/local-peer-cache-discovery/src/index.ts rename to packages/discovery/src/local-peer-cache/index.ts diff --git a/packages/peer-exchange/src/index.ts b/packages/discovery/src/peer-exchange/index.ts similarity index 100% rename from packages/peer-exchange/src/index.ts rename to packages/discovery/src/peer-exchange/index.ts diff --git a/packages/peer-exchange/src/rpc.ts b/packages/discovery/src/peer-exchange/rpc.ts similarity index 100% rename from packages/peer-exchange/src/rpc.ts rename to packages/discovery/src/peer-exchange/rpc.ts diff --git a/packages/peer-exchange/src/waku_peer_exchange.ts b/packages/discovery/src/peer-exchange/waku_peer_exchange.ts similarity index 100% rename from packages/peer-exchange/src/waku_peer_exchange.ts rename to packages/discovery/src/peer-exchange/waku_peer_exchange.ts diff --git a/packages/peer-exchange/src/waku_peer_exchange_discovery.ts b/packages/discovery/src/peer-exchange/waku_peer_exchange_discovery.ts similarity index 100% rename from packages/peer-exchange/src/waku_peer_exchange_discovery.ts rename to packages/discovery/src/peer-exchange/waku_peer_exchange_discovery.ts diff --git a/packages/dns-discovery/tsconfig.dev.json b/packages/discovery/tsconfig.dev.json similarity index 100% rename from packages/dns-discovery/tsconfig.dev.json rename to packages/discovery/tsconfig.dev.json diff --git a/packages/local-peer-cache-discovery/tsconfig.json b/packages/discovery/tsconfig.json similarity index 76% rename from packages/local-peer-cache-discovery/tsconfig.json rename to packages/discovery/tsconfig.json index eebbc51585..92e40cddaf 100644 --- a/packages/local-peer-cache-discovery/tsconfig.json +++ b/packages/discovery/tsconfig.json @@ -6,5 +6,5 @@ "tsBuildInfoFile": "dist/.tsbuildinfo" }, "include": ["src"], - "exclude": ["src/**/*.spec.ts", "src/test_utils"] + "exclude": ["src/**/*.spec.ts"] } diff --git a/packages/dns-discovery/tsconfig.karma.json b/packages/discovery/tsconfig.karma.json similarity index 100% rename from packages/dns-discovery/tsconfig.karma.json rename to packages/discovery/tsconfig.karma.json diff --git a/packages/dns-discovery/CHANGELOG.md b/packages/dns-discovery/CHANGELOG.md deleted file mode 100644 index 7264a8c5a6..0000000000 --- a/packages/dns-discovery/CHANGELOG.md +++ /dev/null @@ -1,305 +0,0 @@ -# Changelog - -All notable changes to this project will be documented in this file. - -The file is maintained by [Release Please](https://github.com/googleapis/release-please) based on [Conventional Commits](https://www.conventionalcommits.org) specification, -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.6 to 0.0.7 - * devDependencies - * @waku/interfaces bumped from 0.0.8 to 0.0.9 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.7 to 0.0.8 - * @waku/utils bumped from 0.0.2 to 0.0.3 - * devDependencies - * @waku/interfaces bumped from 0.0.9 to 0.0.10 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.8 to 0.0.9 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.10 to 0.0.11 - * @waku/utils bumped from 0.0.4 to 0.0.5 - * devDependencies - * @waku/interfaces bumped from 0.0.11 to 0.0.12 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.12 to 0.0.13 - * @waku/utils bumped from 0.0.6 to 0.0.7 - * devDependencies - * @waku/interfaces bumped from 0.0.13 to 0.0.14 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.19 to 0.0.20 - * @waku/utils bumped from 0.0.13 to 0.0.14 - * devDependencies - * @waku/interfaces bumped from 0.0.20 to 0.0.21 - -## [0.0.21](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.20...dns-discovery-v0.0.21) (2024-03-04) - - -### ⚠ BREAKING CHANGES - -* protocols filter peers as per configured shard ([#1756](https://github.com/waku-org/js-waku/issues/1756)) - -### Features - -* Protocols filter peers as per configured shard ([#1756](https://github.com/waku-org/js-waku/issues/1756)) ([477c2a5](https://github.com/waku-org/js-waku/commit/477c2a5918f2f75cd2c14bc6ed75e1687c5a09b4)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.20 to 0.0.21 - * @waku/utils bumped from 0.0.14 to 0.0.15 - * devDependencies - * @waku/interfaces bumped from 0.0.21 to 0.0.22 - -## [0.0.19](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.18...dns-discovery-v0.0.19) (2023-11-01) - - -### Features - -* Logger with log levels ([#1672](https://github.com/waku-org/js-waku/issues/1672)) ([0f7d63e](https://github.com/waku-org/js-waku/commit/0f7d63ef93716223dc8fea7e8cb09e12e267b386)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.18 to 0.0.19 - * @waku/utils bumped from 0.0.12 to 0.0.13 - * devDependencies - * @waku/interfaces bumped from 0.0.19 to 0.0.20 - -## [0.0.18](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.17...dns-discovery-v0.0.18) (2023-10-16) - - -### Features - -* Add Firefox and Webkit to karma ([#1598](https://github.com/waku-org/js-waku/issues/1598)) ([d9e4bcb](https://github.com/waku-org/js-waku/commit/d9e4bcbe3f7bcc092f20621bd362d76426701dab)) -* **static-sharding:** Filter peer connections per shards ([#1626](https://github.com/waku-org/js-waku/issues/1626)) ([124a29e](https://github.com/waku-org/js-waku/commit/124a29ebba59c05fbbf199d969e6ba3f9e57d45b)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.17 to 0.0.18 - * @waku/utils bumped from 0.0.11 to 0.0.12 - * devDependencies - * @waku/interfaces bumped from 0.0.18 to 0.0.19 - -## [0.0.17](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.16...dns-discovery-v0.0.17) (2023-09-11) - - -### ⚠ BREAKING CHANGES - -* upgrade to libp2p@0.45 ([#1400](https://github.com/waku-org/js-waku/issues/1400)) -* @waku/relay ([#1316](https://github.com/waku-org/js-waku/issues/1316)) - -### Features - -* @waku/relay ([#1316](https://github.com/waku-org/js-waku/issues/1316)) ([50c2c25](https://github.com/waku-org/js-waku/commit/50c2c2540f3c5ff78d93f3fea646da0eee246e17)) -* Allow passing of multiple ENR URLs to DNS Discovery & dial multiple peers in parallel ([#1379](https://github.com/waku-org/js-waku/issues/1379)) ([f32d7d9](https://github.com/waku-org/js-waku/commit/f32d7d9fe0b930b4fa9c46b8644e6d21be45d5c1)) -* **dns-discovery:** Set default for `NodeRequirements` ([#1466](https://github.com/waku-org/js-waku/issues/1466)) ([aab9c08](https://github.com/waku-org/js-waku/commit/aab9c08caefb9f72460261ec0c38df88ae0f02ce)) -* Upgrade to libp2p@0.45 ([#1400](https://github.com/waku-org/js-waku/issues/1400)) ([420e6c6](https://github.com/waku-org/js-waku/commit/420e6c698dd8f44d40d34e47d876da5d2e1ce85e)) - - -### Bug Fixes - -* **dns-discovery:** Use DOH list from dns-query ([1dd3210](https://github.com/waku-org/js-waku/commit/1dd32101baf2750527369f7f25981882aa1f9527)) -* Improve connection manager error handling + edge cases ([#1450](https://github.com/waku-org/js-waku/issues/1450)) ([785df52](https://github.com/waku-org/js-waku/commit/785df528fe6e5010a61391994e222028dbc4e4c5)) -* Remove typesVersions ([#1359](https://github.com/waku-org/js-waku/issues/1359)) ([0ad1954](https://github.com/waku-org/js-waku/commit/0ad19540d527309e0174afa7e9fff2924570d361)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.16 to 0.0.17 - * @waku/utils bumped from 0.0.10 to 0.0.11 - * devDependencies - * @waku/interfaces bumped from 0.0.17 to 0.0.18 - -## [0.0.16](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.15...dns-discovery-v0.0.16) (2023-08-02) - - -### Bug Fixes - -* Improve connection manager error handling + edge cases ([#1450](https://github.com/waku-org/js-waku/issues/1450)) ([785df52](https://github.com/waku-org/js-waku/commit/785df528fe6e5010a61391994e222028dbc4e4c5)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.15 to 0.0.16 - * @waku/utils bumped from 0.0.9 to 0.0.10 - * devDependencies - * @waku/interfaces bumped from 0.0.16 to 0.0.17 - -## [0.0.15](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.14...dns-discovery-v0.0.15) (2023-07-26) - - -### ⚠ BREAKING CHANGES - -* upgrade to libp2p@0.45 ([#1400](https://github.com/waku-org/js-waku/issues/1400)) - -### Features - -* Upgrade to libp2p@0.45 ([#1400](https://github.com/waku-org/js-waku/issues/1400)) ([420e6c6](https://github.com/waku-org/js-waku/commit/420e6c698dd8f44d40d34e47d876da5d2e1ce85e)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.14 to 0.0.15 - * @waku/utils bumped from 0.0.8 to 0.0.9 - * devDependencies - * @waku/interfaces bumped from 0.0.15 to 0.0.16 - -## [0.0.14](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.13...dns-discovery-v0.0.14) (2023-06-08) - - -### Features - -* Allow passing of multiple ENR URLs to DNS Discovery & dial multiple peers in parallel ([#1379](https://github.com/waku-org/js-waku/issues/1379)) ([f32d7d9](https://github.com/waku-org/js-waku/commit/f32d7d9fe0b930b4fa9c46b8644e6d21be45d5c1)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.13 to 0.0.14 - * @waku/utils bumped from 0.0.7 to 0.0.8 - * devDependencies - * @waku/interfaces bumped from 0.0.14 to 0.0.15 - -## [0.0.12](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.11...dns-discovery-v0.0.12) (2023-05-18) - - -### ⚠ BREAKING CHANGES - -* @waku/relay ([#1316](https://github.com/waku-org/js-waku/issues/1316)) - -### Features - -* @waku/relay ([#1316](https://github.com/waku-org/js-waku/issues/1316)) ([50c2c25](https://github.com/waku-org/js-waku/commit/50c2c2540f3c5ff78d93f3fea646da0eee246e17)) - - -### Bug Fixes - -* Remove typesVersions ([#1359](https://github.com/waku-org/js-waku/issues/1359)) ([0ad1954](https://github.com/waku-org/js-waku/commit/0ad19540d527309e0174afa7e9fff2924570d361)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from * to 0.0.12 - * @waku/utils bumped from * to 0.0.6 - * devDependencies - * @waku/interfaces bumped from * to 0.0.13 - -## [0.0.10](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.9...dns-discovery-v0.0.10) (2023-04-03) - - -### Bug Fixes - -* **dns-discovery:** Use DOH list from dns-query ([1dd3210](https://github.com/waku-org/js-waku/commit/1dd32101baf2750527369f7f25981882aa1f9527)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.9 to 0.0.10 - * @waku/utils bumped from 0.0.3 to 0.0.4 - * devDependencies - * @waku/interfaces bumped from 0.0.10 to 0.0.11 - -## [0.0.6](https://github.com/waku-org/js-waku/compare/dns-discovery-v0.0.5...dns-discovery-v0.0.6) (2023-03-16) - - -### ⚠ BREAKING CHANGES - -* add exports map to @waku/utils ([#1201](https://github.com/waku-org/js-waku/issues/1201)) -* directly convert from ENR to `PeerInfo`, remove unneeded utility -* extract decoder code -* bump typescript -* bump libp2p dependencies - -### Features - -* Add mocha to dns-discovery ([#1154](https://github.com/waku-org/js-waku/issues/1154)) ([f945eb9](https://github.com/waku-org/js-waku/commit/f945eb90c49bb54322c4cb58c20cfdeee72ff4f2)) -* DNS discovery as default bootstrap discovery ([#1114](https://github.com/waku-org/js-waku/issues/1114)) ([11819fc](https://github.com/waku-org/js-waku/commit/11819fc7b14e18385d421facaf2af0832cad1da8)) - - -### Bug Fixes - -* **dns-discovery/peer-exchange:** Check if peer is already tagged ([952aadd](https://github.com/waku-org/js-waku/commit/952aadd7bbbe1a7265c5126c1678f552bef0648d)) -* Prettier and cspell ignore CHANGELOG ([#1235](https://github.com/waku-org/js-waku/issues/1235)) ([4d7b3e3](https://github.com/waku-org/js-waku/commit/4d7b3e39e6761afaf5d05a13cc4b3c23e15f9bd5)) - - -### Miscellaneous Chores - -* Add exports map to @waku/utils ([#1201](https://github.com/waku-org/js-waku/issues/1201)) ([a30b2bd](https://github.com/waku-org/js-waku/commit/a30b2bd747dedeef69b46cfafb88898ba35d8f67)) -* Bump libp2p dependencies ([803ae7b](https://github.com/waku-org/js-waku/commit/803ae7bd8ed3de665026446c23cde90e7eba9d36)) -* Bump typescript ([12d86e6](https://github.com/waku-org/js-waku/commit/12d86e6abcc68e27c39ca86b4f0dc2b68cdd6000)) -* Directly convert from ENR to `PeerInfo`, remove unneeded utility ([6dbcde0](https://github.com/waku-org/js-waku/commit/6dbcde041ab8fa8c2df75cc25319a0eccf6b0454)) -* Extract decoder code ([130c49b](https://github.com/waku-org/js-waku/commit/130c49b636807063364f309da0da2a24a68f2178)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from * to 0.0.6 - * @waku/utils bumped from * to 0.0.2 - * devDependencies - * @waku/interfaces bumped from * to 0.0.8 - -## [Unreleased] - -## [0.0.5] - 2023-01-25 - -### Changed - -- Replaced OpenDNS with AhaDNS in the default DoH DNS list. - -### Fixed - -- Moved `chai` to `devDependencies`. - -## [0.0.4] - 2023-01-18 - -### Changed - -- Improved test coverage, various fixes. - -[unreleased]: https://github.com/waku-org/js-waku/compare/@waku/dns-discovery@0.0.5...HEAD -[0.0.5]: https://github.com/status-im/js-waku/compare/@waku/dns-discovery@0.0.4...@waku/dns-discovery@0.0.5 -[0.0.4]: https://github.com/status-im/js-waku/compare/f7f28f03b01fa5bc89eaeb083b68981169b45c39...@waku/dns-discovery@0.0.4 diff --git a/packages/dns-discovery/tsconfig.json b/packages/dns-discovery/tsconfig.json deleted file mode 100644 index eebbc51585..0000000000 --- a/packages/dns-discovery/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig", - "compilerOptions": { - "outDir": "dist/", - "rootDir": "src", - "tsBuildInfoFile": "dist/.tsbuildinfo" - }, - "include": ["src"], - "exclude": ["src/**/*.spec.ts", "src/test_utils"] -} diff --git a/packages/dns-discovery/typedoc.json b/packages/dns-discovery/typedoc.json deleted file mode 100644 index 00aa3dc064..0000000000 --- a/packages/dns-discovery/typedoc.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": ["../../typedoc.base.json"], - "entryPoints": ["src/index.ts"] -} \ No newline at end of file diff --git a/packages/local-peer-cache-discovery/.eslintrc.cjs b/packages/local-peer-cache-discovery/.eslintrc.cjs deleted file mode 100644 index 2299ed822e..0000000000 --- a/packages/local-peer-cache-discovery/.eslintrc.cjs +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - parserOptions: { - tsconfigRootDir: __dirname, - project: "./tsconfig.dev.json" - } -}; diff --git a/packages/local-peer-cache-discovery/.mocha.reporters.json b/packages/local-peer-cache-discovery/.mocha.reporters.json deleted file mode 100644 index 8c00e441fc..0000000000 --- a/packages/local-peer-cache-discovery/.mocha.reporters.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "reporterEnabled": "spec, allure-mocha", - "allureMochaReporter": { - "outputDir": "allure-results" - } -} diff --git a/packages/local-peer-cache-discovery/.mocharc.cjs b/packages/local-peer-cache-discovery/.mocharc.cjs deleted file mode 100644 index 423c0517bd..0000000000 --- a/packages/local-peer-cache-discovery/.mocharc.cjs +++ /dev/null @@ -1,26 +0,0 @@ -const config = { - extension: ['ts'], - spec: 'src/**/*.spec.ts', - require: ['ts-node/register', 'isomorphic-fetch'], - loader: 'ts-node/esm', - 'node-option': [ - 'experimental-specifier-resolution=node', - 'loader=ts-node/esm' - ], - exit: true -}; - -if (process.env.CI) { - console.log("Running tests in parallel"); - config.parallel = true; - config.jobs = 6; - console.log("Activating allure reporting"); - config.reporter = 'mocha-multi-reporters'; - config.reporterOptions = { - configFile: '.mocha.reporters.json' - }; -} else { - console.log("Running tests serially. To enable parallel execution update mocha config"); -} - -module.exports = config; diff --git a/packages/local-peer-cache-discovery/CHANGELOG.md b/packages/local-peer-cache-discovery/CHANGELOG.md deleted file mode 100644 index 7a6dd3d8c2..0000000000 --- a/packages/local-peer-cache-discovery/CHANGELOG.md +++ /dev/null @@ -1,20 +0,0 @@ -# Changelog - -## 1.0.0 (2024-03-04) - - -### ⚠ BREAKING CHANGES - -* rename local-discovery to local-peer-cache-discovery ([#1867](https://github.com/waku-org/js-waku/issues/1867)) - -### Miscellaneous Chores - -* Rename local-discovery to local-peer-cache-discovery ([#1867](https://github.com/waku-org/js-waku/issues/1867)) ([f3cb10d](https://github.com/waku-org/js-waku/commit/f3cb10d484bac134377b8cfd77e077ffc33bd319)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/interfaces bumped from ^0.0.21 to ^0.0.22 - * @waku/utils bumped from ^0.0.14 to ^0.0.15 diff --git a/packages/local-peer-cache-discovery/karma.conf.cjs b/packages/local-peer-cache-discovery/karma.conf.cjs deleted file mode 100644 index 1acbc3dd2a..0000000000 --- a/packages/local-peer-cache-discovery/karma.conf.cjs +++ /dev/null @@ -1,3 +0,0 @@ -const config = require("../../karma.conf.cjs"); - -module.exports = config; diff --git a/packages/local-peer-cache-discovery/package.json b/packages/local-peer-cache-discovery/package.json deleted file mode 100644 index cf0ceb0579..0000000000 --- a/packages/local-peer-cache-discovery/package.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "name": "@waku/local-peer-cache-discovery", - "version": "1.0.0", - "description": "Local Peer Cache keeps records of healthy peers in the browser's local storage for quicker bootstrapping.", - "types": "./dist/index.d.ts", - "module": "./dist/index.js", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js" - } - }, - "type": "module", - "author": "Waku Team", - "homepage": "https://github.com/waku-org/js-waku/tree/master/packages/local-peer-cache-discovery#readme", - "repository": { - "type": "git", - "url": "https://github.com/waku-org/js-waku.git" - }, - "bugs": { - "url": "https://github.com/waku-org/js-waku/issues" - }, - "license": "MIT OR Apache-2.0", - "keywords": [ - "waku", - "decentralized", - "secure", - "communication", - "web3", - "ethereum", - "dapps", - "privacy" - ], - "scripts": { - "build": "run-s build:**", - "build:esm": "tsc", - "build:bundle": "rollup --config rollup.config.js", - "fix": "run-s fix:*", - "fix:lint": "eslint src *.js --fix", - "check": "run-s check:*", - "check:lint": "eslint src --ext .ts", - "check:spelling": "cspell \"{README.md,src/**/*.ts}\"", - "check:tsc": "tsc -p tsconfig.dev.json", - "prepublish": "npm run build", - "reset-hard": "git clean -dfx -e .idea && git reset --hard && npm i && npm run build", - "test": "NODE_ENV=test run-s test:*", - "test:node": "NODE_ENV=test TS_NODE_PROJECT=./tsconfig.dev.json mocha" - }, - "engines": { - "node": ">=18" - }, - "dependencies": { - "@libp2p/interface": "^1.1.2", - "@waku/interfaces": "^0.0.22", - "@waku/utils": "^0.0.15" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-json": "^6.0.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@types/chai": "^4.3.11", - "@types/node-localstorage": "^1.3.3", - "@waku/build-utils": "*", - "chai": "^4.3.10", - "chai-as-promised": "^7.1.1", - "cspell": "^7.3.2", - "mocha": "^10.2.0", - "node-localstorage": "^3.0.5", - "npm-run-all": "^4.1.5", - "rollup": "^4.12.0", - "sinon": "^17.0.1" - }, - "peerDependencies": { - "@libp2p/interface": "^1.1.2", - "@waku/utils": "0.0.15", - "@waku/interfaces": "0.0.22" - }, - "peerDependenciesMeta": { - "@waku/interfaces": { - "optional": true - }, - "@libp2p/interface": { - "optional": true - } - }, - "files": [ - "dist", - "bundle", - "src/**/*.ts", - "!**/*.spec.*", - "!**/*.json", - "CHANGELOG.md", - "LICENSE", - "README.md" - ] -} diff --git a/packages/local-peer-cache-discovery/rollup.config.js b/packages/local-peer-cache-discovery/rollup.config.js deleted file mode 100644 index 4d0757b1c9..0000000000 --- a/packages/local-peer-cache-discovery/rollup.config.js +++ /dev/null @@ -1,24 +0,0 @@ -import commonjs from "@rollup/plugin-commonjs"; -import json from "@rollup/plugin-json"; -import { nodeResolve } from "@rollup/plugin-node-resolve"; -import { extractExports } from "@waku/build-utils"; - -import * as packageJson from "./package.json" assert { type: "json" }; - -const input = extractExports(packageJson); - -export default { - input, - output: { - dir: "bundle", - format: "esm" - }, - plugins: [ - commonjs(), - json(), - nodeResolve({ - browser: true, - preferBuiltins: false - }) - ] -}; diff --git a/packages/local-peer-cache-discovery/tsconfig.dev.json b/packages/local-peer-cache-discovery/tsconfig.dev.json deleted file mode 100644 index 4f7c34af3c..0000000000 --- a/packages/local-peer-cache-discovery/tsconfig.dev.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "../../tsconfig.dev" -} diff --git a/packages/local-peer-cache-discovery/typedoc.json b/packages/local-peer-cache-discovery/typedoc.json deleted file mode 100644 index 00aa3dc064..0000000000 --- a/packages/local-peer-cache-discovery/typedoc.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": ["../../typedoc.base.json"], - "entryPoints": ["src/index.ts"] -} \ No newline at end of file diff --git a/packages/peer-exchange/.eslintrc.cjs b/packages/peer-exchange/.eslintrc.cjs deleted file mode 100644 index 2299ed822e..0000000000 --- a/packages/peer-exchange/.eslintrc.cjs +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - parserOptions: { - tsconfigRootDir: __dirname, - project: "./tsconfig.dev.json" - } -}; diff --git a/packages/peer-exchange/CHANGELOG.md b/packages/peer-exchange/CHANGELOG.md deleted file mode 100644 index a2251a544e..0000000000 --- a/packages/peer-exchange/CHANGELOG.md +++ /dev/null @@ -1,285 +0,0 @@ -# Changelog - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.12 to 0.0.13 - * @waku/enr bumped from 0.0.7 to 0.0.8 - * @waku/proto bumped from 0.0.3 to 0.0.4 - * @waku/utils bumped from * to 0.0.3 - * devDependencies - * @waku/interfaces bumped from 0.0.9 to 0.0.10 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from 0.0.8 to 0.0.9 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.14 to 0.0.15 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.15 to 0.0.16 - * @waku/enr bumped from 0.0.9 to 0.0.10 - * @waku/utils bumped from 0.0.3 to 0.0.4 - * devDependencies - * @waku/interfaces bumped from 0.0.10 to 0.0.11 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.16 to 0.0.17 - * @waku/enr bumped from 0.0.10 to 0.0.11 - * @waku/utils bumped from 0.0.4 to 0.0.5 - * devDependencies - * @waku/interfaces bumped from 0.0.11 to 0.0.12 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.18 to 0.0.19 - * @waku/enr bumped from 0.0.12 to 0.0.13 - * @waku/proto bumped from * to 0.0.5 - * @waku/utils bumped from 0.0.6 to 0.0.7 - * devDependencies - * @waku/interfaces bumped from 0.0.13 to 0.0.14 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.19 to 0.0.20 - * @waku/enr bumped from 0.0.13 to 0.0.14 - * @waku/utils bumped from 0.0.7 to 0.0.8 - * devDependencies - * @waku/interfaces bumped from 0.0.14 to 0.0.15 - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.25 to 0.0.26 - * @waku/enr bumped from 0.0.19 to 0.0.20 - * @waku/interfaces bumped from 0.0.20 to 0.0.21 - * @waku/proto bumped from 0.0.5 to 0.0.6 - * @waku/utils bumped from 0.0.13 to 0.0.14 - -## [0.0.20](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.19...peer-exchange-v0.0.20) (2024-03-04) - - -### ⚠ BREAKING CHANGES - -* protocols filter peers as per configured shard ([#1756](https://github.com/waku-org/js-waku/issues/1756)) - -### Features - -* Decouple sharding params out of core ([e138b4f](https://github.com/waku-org/js-waku/commit/e138b4f5c49a35a37830e31e8be87d824f53249f)) -* Protocols filter peers as per configured shard ([#1756](https://github.com/waku-org/js-waku/issues/1756)) ([477c2a5](https://github.com/waku-org/js-waku/commit/477c2a5918f2f75cd2c14bc6ed75e1687c5a09b4)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.26 to 0.0.27 - * @waku/enr bumped from 0.0.20 to 0.0.21 - * @waku/interfaces bumped from 0.0.21 to 0.0.22 - * @waku/utils bumped from 0.0.14 to 0.0.15 - -## [0.0.18](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.17...peer-exchange-v0.0.18) (2023-11-01) - - -### Features - -* Logger with log levels ([#1672](https://github.com/waku-org/js-waku/issues/1672)) ([0f7d63e](https://github.com/waku-org/js-waku/commit/0f7d63ef93716223dc8fea7e8cb09e12e267b386)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.24 to 0.0.25 - * @waku/enr bumped from 0.0.18 to 0.0.19 - * @waku/interfaces bumped from 0.0.19 to 0.0.20 - * @waku/utils bumped from 0.0.12 to 0.0.13 - -## [0.0.17](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.16...peer-exchange-v0.0.17) (2023-10-16) - - -### Features - -* **static-sharding:** Filter peer connections per shards ([#1626](https://github.com/waku-org/js-waku/issues/1626)) ([124a29e](https://github.com/waku-org/js-waku/commit/124a29ebba59c05fbbf199d969e6ba3f9e57d45b)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.23 to 0.0.24 - * @waku/enr bumped from 0.0.17 to 0.0.18 - * @waku/interfaces bumped from 0.0.18 to 0.0.19 - * @waku/utils bumped from 0.0.11 to 0.0.12 - -## [0.0.16](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.15...peer-exchange-v0.0.16) (2023-09-11) - - -### ⚠ BREAKING CHANGES - -* set peer-exchange with default bootstrap ([#1469](https://github.com/waku-org/js-waku/issues/1469)) - -### Features - -* Pre-emptive stream creation for protocols ([#1516](https://github.com/waku-org/js-waku/issues/1516)) ([b4f8216](https://github.com/waku-org/js-waku/commit/b4f821676120aa06f4772eed62fb105d5afae7c6)) -* Set peer-exchange with default bootstrap ([#1469](https://github.com/waku-org/js-waku/issues/1469)) ([81a52a8](https://github.com/waku-org/js-waku/commit/81a52a8097ba948783c9d798ba362af0f27e1c10)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.22 to 0.0.23 - * @waku/enr bumped from 0.0.16 to 0.0.17 - * @waku/interfaces bumped from 0.0.17 to 0.0.18 - * @waku/utils bumped from 0.0.10 to 0.0.11 - -## [0.0.15](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.14...peer-exchange-v0.0.15) (2023-08-02) - - -### Bug Fixes - -* Improve connection manager error handling + edge cases ([#1450](https://github.com/waku-org/js-waku/issues/1450)) ([785df52](https://github.com/waku-org/js-waku/commit/785df528fe6e5010a61391994e222028dbc4e4c5)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.21 to 0.0.22 - * @waku/enr bumped from 0.0.15 to 0.0.16 - * @waku/utils bumped from 0.0.9 to 0.0.10 - * @waku/interfaces bumped from 0.0.16 to 0.0.17 - -## [0.0.14](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.13...peer-exchange-v0.0.14) (2023-07-26) - - -### ⚠ BREAKING CHANGES - -* upgrade to libp2p@0.45 ([#1400](https://github.com/waku-org/js-waku/issues/1400)) - -### Features - -* Enable event emission for peer discovery/connection in ConnectionManager ([#1438](https://github.com/waku-org/js-waku/issues/1438)) ([6ce898d](https://github.com/waku-org/js-waku/commit/6ce898d77132f30b5d8f33b48c7f6276992a486e)) -* Upgrade to libp2p@0.45 ([#1400](https://github.com/waku-org/js-waku/issues/1400)) ([420e6c6](https://github.com/waku-org/js-waku/commit/420e6c698dd8f44d40d34e47d876da5d2e1ce85e)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from 0.0.20 to 0.0.21 - * @waku/enr bumped from 0.0.14 to 0.0.15 - * @waku/utils bumped from 0.0.8 to 0.0.9 - * @waku/interfaces bumped from 0.0.15 to 0.0.16 - -## [0.0.11](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.10...peer-exchange-v0.0.11) (2023-05-18) - - -### ⚠ BREAKING CHANGES - -* @waku/relay ([#1316](https://github.com/waku-org/js-waku/issues/1316)) - -### Features - -* @waku/relay ([#1316](https://github.com/waku-org/js-waku/issues/1316)) ([50c2c25](https://github.com/waku-org/js-waku/commit/50c2c2540f3c5ff78d93f3fea646da0eee246e17)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from * to 0.0.18 - * @waku/enr bumped from * to 0.0.12 - * @waku/utils bumped from * to 0.0.6 - * devDependencies - * @waku/interfaces bumped from * to 0.0.13 - -## [0.0.5](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.4...peer-exchange-v0.0.5) (2023-03-23) - - -### Features - -* Compliance test for peer-exchange discovery ([#1186](https://github.com/waku-org/js-waku/issues/1186)) ([5b0c3c3](https://github.com/waku-org/js-waku/commit/5b0c3c3cac3ddb5687d8f59457d6056527a8666c)) - - -### Bug Fixes - -* @waku/peer-exchange uses @waku/core and should depend on it ([e922ed4](https://github.com/waku-org/js-waku/commit/e922ed49ec70553227751518251152c765efd07c)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/core bumped from * to 0.0.12 - * @waku/enr bumped from 0.0.6 to 0.0.7 - * devDependencies - * @waku/interfaces bumped from 0.0.8 to 0.0.9 - -## [0.0.4](https://github.com/waku-org/js-waku/compare/peer-exchange-v0.0.3...peer-exchange-v0.0.4) (2023-03-16) - - -### ⚠ BREAKING CHANGES - -* directly convert from ENR to `PeerInfo`, remove unneeded utility -* extract decoder code -* bump typescript -* bump all prod dependencies -* bump libp2p dependencies - -### Features - -* Codec as a property of the protocol implementations ([a5ff788](https://github.com/waku-org/js-waku/commit/a5ff788eed419556e11319f22ca9e3109c81df92)) -* DNS discovery as default bootstrap discovery ([#1114](https://github.com/waku-org/js-waku/issues/1114)) ([11819fc](https://github.com/waku-org/js-waku/commit/11819fc7b14e18385d421facaf2af0832cad1da8)) - - -### Bug Fixes - -* **dns-discovery/peer-exchange:** Check if peer is already tagged ([952aadd](https://github.com/waku-org/js-waku/commit/952aadd7bbbe1a7265c5126c1678f552bef0648d)) -* Prettier and cspell ignore CHANGELOG ([#1235](https://github.com/waku-org/js-waku/issues/1235)) ([4d7b3e3](https://github.com/waku-org/js-waku/commit/4d7b3e39e6761afaf5d05a13cc4b3c23e15f9bd5)) -* Remove initialising peer-exchange while creating a node ([#1158](https://github.com/waku-org/js-waku/issues/1158)) ([1b41569](https://github.com/waku-org/js-waku/commit/1b4156902387ea35b24b3d6f5d22e4635ea8cf18)) - - -### Miscellaneous Chores - -* Bump all prod dependencies ([88cc76d](https://github.com/waku-org/js-waku/commit/88cc76d2b811e1fa4460207f38704ecfe18fb260)) -* Bump libp2p dependencies ([803ae7b](https://github.com/waku-org/js-waku/commit/803ae7bd8ed3de665026446c23cde90e7eba9d36)) -* Bump typescript ([12d86e6](https://github.com/waku-org/js-waku/commit/12d86e6abcc68e27c39ca86b4f0dc2b68cdd6000)) -* Directly convert from ENR to `PeerInfo`, remove unneeded utility ([6dbcde0](https://github.com/waku-org/js-waku/commit/6dbcde041ab8fa8c2df75cc25319a0eccf6b0454)) -* Extract decoder code ([130c49b](https://github.com/waku-org/js-waku/commit/130c49b636807063364f309da0da2a24a68f2178)) - - -### Dependencies - -* The following workspace dependencies were updated - * dependencies - * @waku/enr bumped from * to 0.0.6 - * @waku/proto bumped from * to 0.0.3 - * devDependencies - * @waku/interfaces bumped from * to 0.0.8 - -## Changelog - -All notable changes to this project will be documented in this file. - -The file is maintained by [Release Please](https://github.com/googleapis/release-please) based on [Conventional Commits](https://www.conventionalcommits.org) specification, -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). diff --git a/packages/peer-exchange/package.json b/packages/peer-exchange/package.json deleted file mode 100644 index 3da4836bd2..0000000000 --- a/packages/peer-exchange/package.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "name": "@waku/peer-exchange", - "version": "0.0.20", - "description": "Peer Exchange (https://rfc.vac.dev/spec/34/) protocol for Waku", - "types": "./dist/index.d.ts", - "module": "./dist/index.js", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js" - } - }, - "type": "module", - "author": "Waku Team", - "homepage": "https://github.com/waku-org/js-waku/tree/master/packages/peer-exchange#readme", - "repository": { - "type": "git", - "url": "https://github.com/waku-org/js-waku.git" - }, - "bugs": { - "url": "https://github.com/waku-org/js-waku/issues" - }, - "license": "MIT OR Apache-2.0", - "keywords": [ - "waku", - "decentralized", - "secure", - "communication", - "web3", - "ethereum", - "dapps", - "privacy" - ], - "scripts": { - "build": "run-s build:**", - "build:esm": "tsc", - "build:bundle": "rollup --config rollup.config.js", - "fix": "run-s fix:*", - "fix:lint": "eslint src *.js --fix", - "check": "run-s check:*", - "check:lint": "eslint src *.js", - "check:spelling": "cspell \"{README.md,src/**/*.ts}\"", - "check:tsc": "tsc -p tsconfig.dev.json", - "prepublish": "npm run build", - "reset-hard": "git clean -dfx -e .idea && git reset --hard && npm i && npm run build" - }, - "engines": { - "node": ">=18" - }, - "dependencies": { - "@libp2p/interfaces": "^3.3.2", - "@waku/core": "0.0.27", - "@waku/enr": "0.0.21", - "@waku/interfaces": "0.0.22", - "@waku/proto": "0.0.6", - "@waku/utils": "0.0.15", - "debug": "^4.3.4", - "it-all": "^3.0.4", - "it-length-prefixed": "^9.0.4", - "it-pipe": "^3.0.1" - }, - "devDependencies": { - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-json": "^6.0.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@waku/build-utils": "*", - "chai": "^4.3.10", - "cspell": "^8.3.2", - "npm-run-all": "^4.1.5", - "rollup": "^4.12.0", - "uint8arraylist": "^2.4.3" - }, - "peerDependencies": { - "@waku/core": "0.0.27", - "@waku/enr": "0.0.21", - "@waku/interfaces": "0.0.22", - "@waku/proto": "0.0.6", - "@waku/utils": "0.0.15" - }, - "peerDependenciesMeta": { - "@waku/interfaces": { - "optional": true - } - }, - "files": [ - "dist", - "bundle", - "src/**/*.ts", - "!**/*.spec.*", - "!**/*.json", - "CHANGELOG.md", - "LICENSE", - "README.md" - ] -} diff --git a/packages/peer-exchange/rollup.config.js b/packages/peer-exchange/rollup.config.js deleted file mode 100644 index 4d0757b1c9..0000000000 --- a/packages/peer-exchange/rollup.config.js +++ /dev/null @@ -1,24 +0,0 @@ -import commonjs from "@rollup/plugin-commonjs"; -import json from "@rollup/plugin-json"; -import { nodeResolve } from "@rollup/plugin-node-resolve"; -import { extractExports } from "@waku/build-utils"; - -import * as packageJson from "./package.json" assert { type: "json" }; - -const input = extractExports(packageJson); - -export default { - input, - output: { - dir: "bundle", - format: "esm" - }, - plugins: [ - commonjs(), - json(), - nodeResolve({ - browser: true, - preferBuiltins: false - }) - ] -}; diff --git a/packages/peer-exchange/tsconfig.dev.json b/packages/peer-exchange/tsconfig.dev.json deleted file mode 100644 index 4f7c34af3c..0000000000 --- a/packages/peer-exchange/tsconfig.dev.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "../../tsconfig.dev" -} diff --git a/packages/peer-exchange/tsconfig.json b/packages/peer-exchange/tsconfig.json deleted file mode 100644 index eebbc51585..0000000000 --- a/packages/peer-exchange/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig", - "compilerOptions": { - "outDir": "dist/", - "rootDir": "src", - "tsBuildInfoFile": "dist/.tsbuildinfo" - }, - "include": ["src"], - "exclude": ["src/**/*.spec.ts", "src/test_utils"] -} diff --git a/packages/peer-exchange/typedoc.json b/packages/peer-exchange/typedoc.json deleted file mode 100644 index 00aa3dc064..0000000000 --- a/packages/peer-exchange/typedoc.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": ["../../typedoc.base.json"], - "entryPoints": ["src/index.ts"] -} \ No newline at end of file diff --git a/packages/sdk/package.json b/packages/sdk/package.json index f32cf6e2a7..0005c17723 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -66,6 +66,7 @@ "@libp2p/mplex": "^10.0.12", "@libp2p/ping": "^1.0.12", "@libp2p/websockets": "^8.0.11", + "@waku/discovery": "0.0.1", "@waku/core": "0.0.27", "@waku/dns-discovery": "0.0.21", "@waku/interfaces": "0.0.22", diff --git a/packages/tests/package.json b/packages/tests/package.json index 5d0ed9c669..f532b21f46 100644 --- a/packages/tests/package.json +++ b/packages/tests/package.json @@ -74,9 +74,8 @@ "@types/mocha": "^10.0.6", "@types/sinon": "^17.0.3", "@types/tail": "^2.2.3", - "@waku/dns-discovery": "*", + "@waku/discovery": "*", "@waku/message-encryption": "*", - "@waku/peer-exchange": "*", "@waku/sdk": "*", "allure-commandline": "^2.27.0", "allure-mocha": "^2.9.2", diff --git a/packages/tests/tests/dns-peer-discovery.spec.ts b/packages/tests/tests/dns-peer-discovery.spec.ts index 6df774d3e4..87c09df893 100644 --- a/packages/tests/tests/dns-peer-discovery.spec.ts +++ b/packages/tests/tests/dns-peer-discovery.spec.ts @@ -8,7 +8,7 @@ import { enrTree, PeerDiscoveryDns, wakuDnsDiscovery -} from "@waku/dns-discovery"; +} from "@waku/discovery"; import { Libp2pComponents } from "@waku/interfaces"; import { createLightNode } from "@waku/sdk"; import { expect } from "chai"; diff --git a/packages/tests/tests/peer-exchange/compliance.spec.ts b/packages/tests/tests/peer-exchange/compliance.spec.ts index 6fed552a2d..681c5cf0c3 100644 --- a/packages/tests/tests/peer-exchange/compliance.spec.ts +++ b/packages/tests/tests/peer-exchange/compliance.spec.ts @@ -1,6 +1,6 @@ import tests from "@libp2p/interface-compliance-tests/peer-discovery"; +import { PeerExchangeCodec, PeerExchangeDiscovery } from "@waku/discovery"; import type { LightNode } from "@waku/interfaces"; -import { PeerExchangeCodec, PeerExchangeDiscovery } from "@waku/peer-exchange"; import { createLightNode } from "@waku/sdk"; import { singleShardInfoToPubsubTopic } from "@waku/utils"; diff --git a/packages/tests/tests/peer-exchange/index.spec.ts b/packages/tests/tests/peer-exchange/index.spec.ts index 84aea0fb86..42db96e298 100644 --- a/packages/tests/tests/peer-exchange/index.spec.ts +++ b/packages/tests/tests/peer-exchange/index.spec.ts @@ -1,7 +1,7 @@ import { bootstrap } from "@libp2p/bootstrap"; import type { PeerId } from "@libp2p/interface"; +import { wakuPeerExchangeDiscovery } from "@waku/discovery"; import type { LightNode, PeersByDiscoveryResult } from "@waku/interfaces"; -import { wakuPeerExchangeDiscovery } from "@waku/peer-exchange"; import { createLightNode, Tags } from "@waku/sdk"; import { Logger, singleShardInfoToPubsubTopic } from "@waku/utils"; import { expect } from "chai"; diff --git a/packages/tests/tests/peer-exchange/pe.optional.spec.ts b/packages/tests/tests/peer-exchange/pe.optional.spec.ts index 2a1824d74f..fa1f1af647 100644 --- a/packages/tests/tests/peer-exchange/pe.optional.spec.ts +++ b/packages/tests/tests/peer-exchange/pe.optional.spec.ts @@ -3,8 +3,8 @@ import { Fleet, getPredefinedBootstrapNodes } from "@waku/core/lib/predefined_bootstrap_nodes"; +import { wakuPeerExchangeDiscovery } from "@waku/discovery"; import type { LightNode } from "@waku/interfaces"; -import { wakuPeerExchangeDiscovery } from "@waku/peer-exchange"; import { createLightNode, DefaultPubsubTopic } from "@waku/sdk"; import { expect } from "chai"; diff --git a/packages/tests/tests/peer-exchange/query.spec.ts b/packages/tests/tests/peer-exchange/query.spec.ts index dca0ffb965..72e3027e4a 100644 --- a/packages/tests/tests/peer-exchange/query.spec.ts +++ b/packages/tests/tests/peer-exchange/query.spec.ts @@ -2,12 +2,12 @@ import { bootstrap } from "@libp2p/bootstrap"; import type { PeerId } from "@libp2p/interface"; import { multiaddr } from "@multiformats/multiaddr"; import type { Multiaddr } from "@multiformats/multiaddr"; -import type { LightNode, PeerInfo } from "@waku/interfaces"; import { PeerExchangeCodec, WakuPeerExchange, wakuPeerExchangeDiscovery -} from "@waku/peer-exchange"; +} from "@waku/discovery"; +import type { LightNode, PeerInfo } from "@waku/interfaces"; import { createLightNode, Libp2pComponents } from "@waku/sdk"; import { Logger, singleShardInfoToPubsubTopic } from "@waku/utils"; import { expect } from "chai"; diff --git a/packages/tests/tests/sharding/peer_management.spec.ts b/packages/tests/tests/sharding/peer_management.spec.ts index 4cf75792bd..5e49f9bb21 100644 --- a/packages/tests/tests/sharding/peer_management.spec.ts +++ b/packages/tests/tests/sharding/peer_management.spec.ts @@ -1,6 +1,6 @@ import { bootstrap } from "@libp2p/bootstrap"; import type { PeerId } from "@libp2p/interface"; -import { wakuPeerExchangeDiscovery } from "@waku/peer-exchange"; +import { wakuPeerExchangeDiscovery } from "@waku/discovery"; import { ContentTopicInfo, createLightNode, diff --git a/packages/tests/tests/waku.node.optional.spec.ts b/packages/tests/tests/waku.node.optional.spec.ts index d9a0009349..80299b9530 100644 --- a/packages/tests/tests/waku.node.optional.spec.ts +++ b/packages/tests/tests/waku.node.optional.spec.ts @@ -1,5 +1,5 @@ import { bootstrap } from "@libp2p/bootstrap"; -import { enrTree, wakuDnsDiscovery } from "@waku/dns-discovery"; +import { enrTree, wakuDnsDiscovery } from "@waku/discovery"; import { LightNode } from "@waku/interfaces"; import { createLightNode } from "@waku/sdk"; import { expect } from "chai"; diff --git a/release-please-config.json b/release-please-config.json index 5d15503449..bc09a7a86d 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -11,12 +11,10 @@ "packages/interfaces": {}, "packages/message-hash": {}, "packages/enr": {}, - "packages/peer-exchange": {}, "packages/core": {}, - "packages/dns-discovery": {}, "packages/message-encryption": {}, "packages/sdk": {}, "packages/relay": {}, - "packages/local-peer-cache-discovery": {} + "packages/discovery": {} } }