What's New
TCP Bitrate Pacing (-b for TCP)
The -b flag now works for TCP, not just UDP:
xfr <host> -b 100M # TCP at 100 Mbps
xfr <host> -b 100M -P 4 # 4 streams, 25 Mbps each
xfr <host> -b 0 # Explicit unlimited (same as omitting -b)Uses byte-budget sleep pacing with:
- Interruptible sleeps - cancel/Ctrl+C responds immediately, even during pacing
- Buffer auto-capping - prevents large first-write burst at low bitrates
- Per-stream division - total bitrate divided evenly across
-Pstreams
Resolves #14.
Changelog
Added
- TCP bitrate pacing (
-bfor TCP) --bflag now works for TCP, not just UDP. Uses byte-budget sleep pacing with interruptible sleeps for responsive cancellation. Buffer size auto-caps to prevent first-write burst at low bitrates.
Dependency Updates
- clap 4.5.56 → 4.5.57
- anyhow 1.0.100 → 1.0.101
- criterion 0.8.1 → 0.8.2
Install
# Homebrew
brew upgrade lance0/tap/xfr
# Cargo
cargo install xfr
# Binary (Linux x86_64)
curl -L https://github.com/lance0/xfr/releases/download/v0.6.1/xfr-x86_64-unknown-linux-musl.tar.gz | tar xzFull Changelog: v0.6.0...v0.6.1