Skip to content

Conversation

draguve
Copy link
Contributor

@draguve draguve commented Oct 9, 2025

This PR adds support for compressing files during transfers using zstd, using the new abstract stream API merged in iroh-blobs#147.

Compression can be enabled with the -z flag, and the compression quality can be configured via the -q flag. The feature is gated behind the zstd feature flag, disabling this flag removes compression support entirely. This change also introduces a new dependency on the async-compression crate.

When sending with -z, the progress bars are currently non-functional. This is because the get_hash_seq_and_sizes function directly takes a connection rather than something that implements the GetStreamPair trait. As a result, it bypasses the abstraction used to wrap streams for compression. Unless there’s an alternative path I’ve missed

@n0bot n0bot bot added this to iroh Oct 9, 2025
@github-project-automation github-project-automation bot moved this to 🏗 In progress in iroh Oct 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🏗 In progress

Development

Successfully merging this pull request may close these issues.

1 participant