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 PR allows to watch downloads. It adds
watchDownloads
andunwatchDownloads
methods to the hypercore service. If watching downloads,onDownload
is called towards the client for each downloaded block. Only theseq
is transferred, not the full block. Download events are disabled by default, to skip the overhead for clients that don't need them.This is a part of #2 and a step towards running kappa-style apps on top of hyperspace, especially for indexing sparsely synced hypercores in live mode.
Instead of adding
watchDownloads
andunwatchDownloads
methods I was also considering of adding a singleoptions
method with aOptionsRequest { bool watchDownloads = 1 }
. When/if other session options came along that could make this more straightforward instead of adding getters and setters for each option - not sure though.