hyperdiscovery
hyperdiscovery copied to clipboard
Update to hyperswarm
The dat CLI is currently using discovery-swarm, which attempts to connect over a dht (which fails) but also opportunistically tries mdns and dns. Hyperswarm introduces a new DHT which we want to integrate here to replace the DHT that isn't working. Hyperswarm also has holepunching!! This will be great for the CLI.
What do you think about retiring discovery-swarm/channel completely and using as much of hyperswarm as possible, but also adding support for mdns and dns-discovery in this repository. Then we can use this repository in the dat v2 CLI.
Option 2 would be to update the discovery code in hyperswarm/discovery so that it also tries mdns and dns. Then this hyperdiscovery repository would not be needed and could be retired.
Thoughts, @RangerMauve @mafintosh @andrewosh ?
I was thinking of retiring hyperdiscovery alltogether as part of the migration to Dat 2. The wire formats aren't backwards compatible so I don't know if having a mix of discovery-channel things and hyperswarm would give us any gains.
+1 on retiring. See hyperswarm/replicator for the api equivalent ish hyperswarm one
Great, so we will need mdns support with hyperswarm, is that already possible or would pr be welcome there? @mafintosh
It has mdns yes. I think @RangerMauve was interested in moving it to full bonjour in the future if feasible
Oo, yeah also @sammacbeth was interested in Bonjour. 😁
I'm currently working on hyperswarm-proxy and I might have spare dev cycles after that depending on the progress of hypercore8 integration with corestore and the such (since I'm waiting on it to continue SDK integration)
@mafintosh does hyperswarm/replicator
support multiple drives/cores replicating through a single hyperswarm
instance? Looking at the code it looks as though a new hyperswarm
is created for each replicated data structure.
I think this use-case is important for a drop-in hyperswarm-based replacement for this module, as the main contribution here is matching incoming connections with added feeds.
Ah didn't know this did that. Yea, would be good to support a simple version of that feature