feat: store blocks under multihash key #211
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is related to ipfs/js-ipfs#2415
Breaking change
repo.blocks.query()
now returns multihashes as a key instead of CID.Question!
repo.blocks.query()
currently returns Datastore's query object (eq.{key: '', value: ''}
). Shouldn't it returnjs-ipfs-block
's Block instead? All otherrepo.blocks
functions return Block... As I will be refactoring all usages ofrepo.blocks.query()
this might be good oportunity to change it.Yet if we would do it, we would have to reconstruct the CID using IPLD RAW codec. This will be generally desired behavior of the
query()
function anyway (there is already implemented behavior for this, but is used only when called asquery({}, true)
).But on the other hand not sure how we would handle the case when
query()
would be called with for examplerepo.blocks.query({keysOnly: true})
...