Releases: gekap/blitcp
Release list
v4.0.0 — fast-copy is now blitcp
fast-copy is now blitcp — new name, same tool ("blit" as in bit-block transfer, the block-order engine namesake). New home: https://blitcp.dev
Upgrading from fast-copy
Nothing breaks: run --update from v3.12.7 (or download fresh), and your existing dedup databases, transfer manifests, audit logs and saved connections are migrated in place on first run — nothing is re-hashed or restarted. The FAST_COPY_* environment variables remain honoured.
Highlights
- Interface in 7 languages (CLI + GUI): English, Ελληνικά, 中文, Deutsch, Italiano, Español, 日本語 —
--lang,BLITCP_LANG, or the GUI Settings. - Passphrase generator for credentials encryption:
blitcp creds encrypt --generate(and a Generate button in the GUI) — 6-word diceware, EFF wordlist, ~77 bits, fully offline. - Progress you can trust: the bar/ETA no longer jump to 100% with thousands of small files still copying; a failed verification now returns a proper exit code.
- Windows fixes: FAT32 path validation no longer blocks small files; the dedup DB placement handles unwritable drive roots (C:) gracefully.
- Release assets are now named
blitcp-*.
Full details in CHANGELOG.md.
v3.12.7 — Bug fixes, improvement of the update process
Bug fixes and an improvement of the update process.
Improved
- Update process — the update checker (CLI and GUI) now recognises release assets under both current and future naming schemes, so
--updateand the GUI update flow keep working seamlessly across upcoming releases. Clearer message when no matching asset is found.
v3.12.6
v3.12.6 — Linux GUI keyboard fix, wider Linux compatibility, release-pipeline hardening
GUI (Linux)
- FIXED: the GUI crashed (segfault) on the first key press on some
distributions. The binary bundled half of the libxkbcommon library pair;
the GUI now always uses the host's matched pair (and CI installs both
halves as belt-and-braces), eliminating the crash in
xkb_state_key_get_layout. - A saved SSH port
0is no longer silently rewritten to22at connect
time.
Compatibility
- Linux binaries are now built against glibc 2.35 — they run on
RHEL/Rocky/AlmaLinux 9, Debian 12 and other distributions that the
previous builds refused to start on (GLIBC_2.38 not found).
Release pipeline (Windows NTFS ACL support)
- CI now verifies pywin32 both in the build environment and inside the
frozen .exe — a release can no longer ship a Windows binary whose NTFS
owner/DACL preservation silently no-ops. - pywin32 installs from the tracked
requirements-win.txteverywhere (one
source of truth for the version pin); removed the ineffective
--collect-submodules=win32.
v3.12.3
fast-copy v3.12.3
A large consolidated release covering everything since the 3.7 line: new
transports and dedup engines, full file and directory metadata preservation,
and a substantial correctness and security hardening pass.
New features
- SMB/CIFS (smb://, UNC): native transport to and from Windows shares and Azure Files.
- --index-existing: reflink-dedup a copy against files that already exist at the destination.
- --dedup-existing: in-place reflink merge of duplicate files already on disk.
- ReFS block cloning on Windows (real copy-on-write clones).
- Metadata preservation for directories as well as files (mode/owner/times/xattr/acl, incl. setuid/setgid and the remote-to-local pull path).
- GUI: SMB credential management and an in-app self-update flow.
Improvements
- --preserve acl is ~3.5-4x faster (xattr fast-path).
- Much faster large dedup trees via HDD-aware hashing and a persistent hash cache.
- Full extent dedup for large files (accurate reclaimed-space reporting).
- Live progress everywhere: per-phase timing, files/sec, link/verify/index progress.
- Verify explains the real cause of a failure.
- Batched SQLite commits; AES-GCM credential encryption (no plaintext).
Bug fixes
- FAT32/removable destinations copy correctly; an incomplete verify now fails the run.
- Cross-mount source is warned and skipped instead of crashing.
- --index-existing edge cases (non-UTF-8 names, hash-algorithm mismatch, empty-file linking).
- --ssh-no-sftp directory nesting.
- Security: setuid/setgid privesc hardening, O_NOFOLLOW TOCTOU mitigation, updated crypto deps.
Credits
--index-existing and --dedup-existing were contributed by @YoSiJo in #3. Thank you!
v3.7.6 — reliability fix for repeated copies with deduplication
Bug Fixes
- On copy-on-write filesystems (btrfs, XFS, APFS), repeating a copy no longer re-links a file that is already present at the destination against itself — already-present files are now left untouched, so re-runs are a clean no-op. Recommended update for anyone copying to btrfs / XFS / APFS. (ext4 / NTFS / HFS+ were unaffected.)
v3.7.5 — bug fixes
Bug fixes
- Windows: copies no longer crash. Preserving file mode (the default) called the POSIX-only
os.fchmod, which crashed large-file copies on Windows — including copies to UNC\\host\sharedestinations. Mode is now applied via a path-basedchmodfallback. - GUI: credentials are never written in cleartext. Cancelling the encryption passphrase prompt now refuses the save (rolled back) instead of storing passwords/keys unencrypted. Deselecting every preserve option now means "preserve nothing".
- Clean errors. A read-only or permission-denied destination reports a single-line error instead of a raw Python traceback.
Upgrade with fast_copy --update, or download a binary below.
v3.7.4 — desktop GUI, app icon, encrypt-by-default
fast-copy v3.7.4
- New PySide6 desktop GUI alongside the CLI.
- Encrypt-by-default credential storage (AES-256-GCM).
- Application icon for Windows/macOS builds.
- Prebuilt CLI + GUI binaries for Windows, macOS (arm64 & intel) and Linux.
Downloads
Grab the binary for your platform below. Windows builds are Authenticode
code-signed via the free SignPath Foundation open-source program.
| Platform | CLI | GUI |
|---|---|---|
| Windows | fast_copy-windows.exe | fast_copy_gui-windows.exe |
| macOS (Apple Silicon) | fast_copy-macos-arm64 | fast_copy_gui-macos-arm64.app.zip |
| macOS (Intel) | fast_copy-macos-intel | fast_copy_gui-macos-intel.app.zip |
| Linux | fast_copy-linux | fast_copy_gui-linux |