Skip to content

Releases: denisix/bsync

v0.8

07 Apr 14:43

Choose a tag to compare

network: robustness fixes and Windows support

  • Add Windows build with drive enumeration (-a flag) and physical drive access
  • Add server-side progress stats with -P flag to suppress in SSH mode
  • Add TCP keep-alive, per-loop deadlines, and io.ReadFull throughout
  • Add retry loop with reconnect for failed blocks (client)
  • Fix: reset deadline before data payload read in serverHandleReq
  • Fix: check connWrite error on hash send, return on failure
  • Fix: remove double SetWriteDeadline from AutoReconnectTCP.Write
  • Remove dead processBlockJob function

v0.7

28 Mar 18:41

Choose a tag to compare

  • fix -n flag for remote ssh
  • add auto-copy binary to remote via ssh
  • optimize binary size

v0.6

25 Mar 00:14

Choose a tag to compare

feat: add sparse file support, encryption, compression levels, and comprehensive tests

  • Add ChaCha20-Poly1305 encryption with auto-generated keys (-e flag)
  • Add compression level control (-L fast/default/better/best)
  • Add IP binding option (-i flag)
  • Optimize zero block handling - no network transfer, preserves sparse holes
  • Fix block calculation off-by-one bug affecting truncation
  • Add buffer pools for decompression to reduce GC pressure
  • Increase zero buffer from 1MB to 100MB
  • Add 20 new flag tests (multi-worker, encryption, compression, block sizes)
  • Update README with all features and examples

All 63 tests passing.

v0.5

24 Mar 20:47

Choose a tag to compare

  • Added stream encryption/decryption
  • Performance optimizations and memory leak fixes:
    • Optimize isZeroBlock with 8-byte chunk comparison (~10x faster)
    • Add TCP buffer tuning (4MB buffers, TCP_NODELAY)
    • Add compression level flag (-L fast/default/better/best)
    • Add FNV hash pool for reduced allocations
    • Fix goroutine leak in server with context cancellation
    • Add ChecksumCache.Delete() for optional memory cleanup
    • Clear original data when compressed version is used
    • Cache AEAD cipher instance globally
    • Add shared zero buffer for zero block writes
    • Add safety check for nil data in processPrecomputedBlock

v0.4

21 Mar 20:03

Choose a tag to compare

Add parallel hash+compression pipeline for HDD-friendly multi-worker …

v0.3

10 Nov 10:48

Choose a tag to compare

added download mode

added binding to specific IP address

26 Oct 07:32

Choose a tag to compare

  • added binding to specific IP address

first release

25 Oct 19:47

Choose a tag to compare

this is the first release, binary for Linux

Full Changelog: https://github.com/denisix/bsync/commits/release