CarWriter.fromIterable(roots, blockIterator) #50
Labels
exp/intermediate
Prior experience is likely helpful
help wanted
Seeking public contribution on this issue
@alanshaw had an API suggestion over @ storacha/ipfs-car#74
Some things to be resolved:
fromBlockIterable()
to make absolutely clear that this is a{cid,bytes}
iterator it wants, because every otherfromIterable()
in the API currently is aUint8Array
iterator? This API would be able to take as input aCarBlockIterator
, so we have prior-art for that name. (fs.createWriteStream('out.car', CarWriter.fromIterable([], await CarBlockIterator.fromIterable(fs.createReadStream('in.car'))
[transferring roots is possible but it would take more than one line!]).await
and if so what is it waiting on? Looking at the code, I thinkCarWriter.create()
now is sync and doesn't need theawait
even though I see I've used it on the README! I don't think there's any good reason why aCarWriter.fromIterable()
couldn't returnout
straight away, so maybe theawait
is entirely unnecessary here. The AsyncIterable protocol gives us everything we need to set up async constructions and should also allow proper error propagation regardless of where it happens in this chain.The text was updated successfully, but these errors were encountered: