diff --git a/package.json b/package.json index 76d93c9..0c29396 100644 --- a/package.json +++ b/package.json @@ -152,7 +152,9 @@ "dep-check": "aegir dep-check -i rimraf" }, "dependencies": { - "@libp2p/logger": "^1.1.4", + "@libp2p/interface-dht": "^1.0.1", + "@libp2p/interface-pubsub": "^1.0.4", + "@libp2p/logger": "^2.0.0", "datastore-core": "^7.0.0", "debug": "^4.2.0", "err-code": "^3.0.1", @@ -160,16 +162,18 @@ "uint8arrays": "^3.0.0" }, "devDependencies": { - "@chainsafe/libp2p-gossipsub": "^1.0.1", - "@libp2p/interface-compliance-tests": "^2.0.3", - "@libp2p/interfaces": "^2.0.2", + "@libp2p/components": "^2.0.0", + "@libp2p/floodsub": "^3.0.0", + "@libp2p/interface-compliance-tests": "^3.0.2", + "@libp2p/interface-mocks": "^3.0.1", + "@libp2p/interfaces": "^3.0.3", "@libp2p/peer-id-factory": "^1.0.9", - "@libp2p/record": "^1.0.4", + "@libp2p/record": "^2.0.0", "@types/detect-node": "^2.0.0", "aegir": "^37.0.13", "detect-node": "^2.0.4", "install": "^0.13.0", - "ipfs-core-types": "^0.10.2", + "ipfs-core-types": "^0.11.1", "it-pair": "^2.0.2", "libp2p": "next", "npm": "^8.10.0", diff --git a/src/index.js b/src/index.js index bb6e68e..57ee896 100644 --- a/src/index.js +++ b/src/index.js @@ -8,9 +8,9 @@ import { logger } from '@libp2p/logger' const log = logger('datastore-pubsub:publisher') /** - * @typedef {import('@libp2p/interfaces/peer-id').PeerId} PeerId + * @typedef {import('@libp2p/interface-peer-id').PeerId} PeerId * @typedef {import('./types').SubscriptionKeyFn} SubscriptionKeyFn - * @typedef {import('@libp2p/interfaces/pubsub').Message} PubSubMessage + * @typedef {import('@libp2p/interface-pubsub').Message} PubSubMessage */ // DatastorePubsub is responsible for providing an api for pubsub to be used as a datastore with @@ -19,11 +19,11 @@ export class PubSubDatastore extends BaseDatastore { /** * Creates an instance of DatastorePubsub. * - * @param {import('@libp2p/interfaces/pubsub').PubSub} pubsub - pubsub implementation + * @param {import('@libp2p/interface-pubsub').PubSub} pubsub - pubsub implementation * @param {import('interface-datastore').Datastore} datastore - datastore instance * @param {PeerId} peerId - peer-id instance - * @param {import('@libp2p/interfaces/dht').ValidateFn} validator - validator function - * @param {import('@libp2p/interfaces/dht').SelectFn} selector - selector function + * @param {import('@libp2p/interface-dht').ValidateFn} validator - validator function + * @param {import('@libp2p/interface-dht').SelectFn} selector - selector function * @param {SubscriptionKeyFn} [subscriptionKeyFn] - function to manipulate the key topic received before processing it * @memberof DatastorePubsub */ diff --git a/test/index.spec.js b/test/index.spec.js index 3090f57..46390a4 100644 --- a/test/index.spec.js +++ b/test/index.spec.js @@ -19,12 +19,12 @@ import { keyToTopic, topicToKey } from '../src/utils.js' import { stop } from '@libp2p/interfaces/startable' /** - * @typedef {import('@libp2p/interfaces/pubsub').PubSub} PubSub + * @typedef {import('@libp2p/interface-pubsub').PubSub} PubSub * @typedef {import('interface-datastore').Datastore} Datastore - * @typedef {import('@libp2p/interfaces/peer-id').PeerId} PeerId - * @typedef {import('@libp2p/interfaces/dht').ValidateFn} Validator + * @typedef {import('@libp2p/interface-peer-id').PeerId} PeerId + * @typedef {import('@libp2p/interface-dht').ValidateFn} Validator * @typedef {import('../src/types').SubscriptionKeyFn} SubscriptionKeyFn - * @typedef {import('@libp2p/interfaces/components').Components} Components + * @typedef {import('@libp2p/components').Components} Components */ // Always returning the expected values diff --git a/test/utils.js b/test/utils.js index 908f9a4..7a25af1 100644 --- a/test/utils.js +++ b/test/utils.js @@ -1,15 +1,13 @@ import pWaitFor from 'p-wait-for' -import { GossipSub } from '@chainsafe/libp2p-gossipsub' +import { FloodSub, multicodec } from '@libp2p/floodsub' import { createEd25519PeerId } from '@libp2p/peer-id-factory' -import { connectionPair, mockRegistrar, mockConnectionManager } from '@libp2p/interface-compliance-tests/mocks' -import { Components } from '@libp2p/interfaces/components' +import { connectionPair, mockRegistrar, mockConnectionManager } from '@libp2p/interface-mocks' +import { Components } from '@libp2p/components' import { MemoryDatastore } from 'datastore-core' -const { multicodec } = GossipSub - /** - * @typedef {import('@libp2p/interfaces/pubsub').PubSub} PubSub - * @typedef {import('@libp2p/interfaces/peer-id').PeerId} PeerId + * @typedef {import('@libp2p/interface-pubsub').PubSub} PubSub + * @typedef {import('@libp2p/interface-peer-id').PeerId} PeerId */ /** @@ -25,9 +23,8 @@ export const createComponents = async () => { connectionManager: mockConnectionManager() }) - const pubsub = new GossipSub({ - emitSelf: true, - allowPublishToZeroPeers: true + const pubsub = new FloodSub({ + emitSelf: true }) pubsub.init(components) await pubsub.start()