feat: integrate Helia as IPFS client replacing Kubo#101
feat: integrate Helia as IPFS client replacing Kubo#101akhileshthite wants to merge 138 commits intomainfrom
Conversation
…d better peer reachability
…oPeers for local/dev
…r accurate test timing
pure esm js. no ts-node, no make-dir.
tripledoublev
left a comment
There was a problem hiding this comment.
Solid move to Helia!
I have one comment regarding pressure on memory when syncing large files.
Other than that, it looks great!
feat(helia): implement streaming for file sync to address memory concerns
|
Why the change to make it restart daily? |
|
We wanted to see if that solved the reproviding content error. It did not. See this issue for context |
|
IMO we should be reproviding every hour or so to account for DHT churn |
protocols/ipfs.ts
Outdated
| console.time('Helia Initialization') // Start timing | ||
| const datastorePath = path.join(this.options.path, 'datastore') | ||
| const blockstorePath = path.join(this.options.path, 'blockstore') | ||
| const datastore = new FsDatastore(datastorePath) |
There was a problem hiding this comment.
As discussed in ipfs/helia#835 (comment)
I recommend switching to datastore-level and blockstore-level. https://www.npmjs.com/package/datastore-level
There was a problem hiding this comment.
Yes, thanks!
Will do and let you know :)
|
Make sure to update the dependencies and use the latest kad-dht: https://github.com/libp2p/js-libp2p/releases/tag/kad-dht-v15.1.11 which includes a fix to a bug where reprovides were inefficient. |
Optimize IPFS sync performance for faster uploads
Related: #102