Conversation
Add info about relation to Helia
889086d to
e52e6d3
Compare
Besides libp2p being required for @helia/ipns, what's the reason you'd still want libp2p? If you're only fetching from gateways, you shouldn't even need delegated routing. |
Basically anything that uses peer/content routing, which is most things outside of block retrieval. The future is for PUTs on gateways so by configuring HTTP peer/content routers we can use the same code paths as everything else and not need to maintain extra libraries. |
The whole point of @helia/http is to be focused solely on verified block retrieval from gateways, which wouldn't use peer/content routing.
What's the source for this? (are you referring to data onboarding via gateways?). This sounds like a premature optimisation for a use-case that hasn't even been planned. |
If this is the case then maybe it doesn't belong in the I think it's completely reasonable for a user to assume that I'm interested in the resistance to this, could you speak a bit more to that? |
That's an important point to consider. This idea for the package started initially with discussions around verified retrieval in browsers for dapp developers.
I agree. The boundaries between libp2p and Helia are a bit blurry. I presumed that you'd be able to use delegated routing too, without libp2p, but that may arise from a misunderstanding of the boundaries between the two.
|
@2color I've opened #378 - I think it might draw a bit more of a dividing line between them?
Ah, ok cool - this sounds like the sort of use case we'd be encouraging people to use https://github.com/ipfs/web3-fetch/ for? Obviously this PR is needed to implement that functionality but it's got the nice familiar fetch-style API, etc. |
Thank you!
Exactly!
Yep! 💯 |
Removes all libp2p/bitswap deps from `@helia/interface` but retains them in `helia`. Adds a general `Routing` interface to `@helia/interface` that can be used to resolve IPNS names amoung other things. This means `@helia/http` can be libp2p-free.
9d3317d to
26f4327
Compare
2color
left a comment
There was a problem hiding this comment.
Neat having the routers abstraction, thanks for getting this in shape!
I left some a few cosmetic comments, but looks generally good.
1ac91b6 to
67bbef3
Compare
|
I'm going to merge this so we get RCs published for further experimentation. |
Adds code from https://github.com/meandavejustice/helia-http to the monorepo, preserving commit history.
Fixes: #289 and #344
BREAKING CHANGE: the
libp2pproperty has been removed from theHeliainterface in@helia/interface- it is still present on the return type ofcreateHeliafrom theheliamodule