Releases: libp2p/go-libp2p-pubsub
Releases · libp2p/go-libp2p-pubsub
v0.2.5
v0.2.4
v0.2.3
v0.2.2
v0.2.1
v0.2.0
This release has a number of large changes and bugfixes:
Functionality and Interfaces
Active Peer Discovery
PubSub can now actively discover peers for a given topic using libp2p Discovery libp2p/go-libp2p-pubsub-router#28 #184
- Passing the
WithDiscoveryoption into PubSub will cause active discovery of peers until they reach an appropriate threshold defined by each router (i.e. floodsub, gossipsub, etc.) - This includes both initial bootstrapping and continuous polling if the number of peers for a given topic drops too low
Topic Handles
Added Topic and TopicEventHandler objects to serve as the entry points to PubSub functionality #198 #184
- Calling
pubsub.Join(topic, topicOpts...)will return aTopicobject thatPublishandSubscribecan be called on.- The new
topic.Publishfunction has an updated function signature - The old
pubsub.Publishandpubsub.Subscribemethods are still usable, but have been deprecated - Option for publish to block until the router has enough peers. Fixes #211 and some testing race conditions
- The new
- The events added in v0.1.0 have been moved from
Subscriptionto a separateTopicEventHandlerthat can be created by theTopic.
Message contains reference to the message deliverer
Messages returned by Subscription now contain the peer ID of the peer that actually delivered the message
Bugfixes
- Subscription cancellation fix #200, #201
- Gossipsub on Join minor fix #194, #196
- Gossipsub protocol compliance fix libp2p/docs#66, #204
- minor spec update we're complying with at libp2p/specs#219
- Gossipsub cache documentation and some defensive coding #205
v0.1.1
v0.1.0
🎉 This release applies the core refactor to this module; migrating to the consolidated types under go-libp2p-core. See libp2p/go-libp2p#602 for more context.