Skip to content

v1.7.0

Latest

Choose a tag to compare

@github-actions github-actions released this 25 Jun 13:20
· 4 commits to main since this release
f95ac50

Summary

Before a transfer starts, fsend now shows you exactly what's about to move — the file list with sizes, on both the sender and the receiver — so you can confirm you're sending (and receiving) the right thing.

See what you're transferring

Run fsend on a folder and you get a preview before anything leaves your machine:

  Sending proj/  ·  4 files  ·  1.3 MB
      921.6 KB   video.mp4
      307.2 KB   audio.m4a
       51.2 KB   notes/outline.md
          11 B   README

The receiver sees the same list before accepting. Largest files come first (trimmed to the top 10, with a … and N more line), and the sizes always add up to the total in the header.

Machine-readable output for scripts

When you're driving fsend from a script rather than watching the terminal, two new flags hand you the file list as plain CSV — one for each side of a transfer:

  • On the sending side, --preview lists every file fsend would send — path,size — then exits. No code, no transfer, nothing leaves your machine:
    fsend --preview proj/
    
    It prints to standard output, so redirect it to a file when you want to keep it, e.g. fsend --preview proj/ > files.csv.
  • On the receiving side, --manifest writes a record after the transfer finishes: each received file as path,size,status, where status is new, identical, overwritten, kept, or resumed:
    fsend abc-defg-jkm --manifest record.csv
    

Symlinks are followed

fsend now sends what a symlink points to, not the link itself, so the receiver ends up with a real file instead of a link that dangles on their machine. In the preview the file shows where it came from, like latest (→ video.mp4).

A link whose target is missing, unreadable, or loops back on itself stops the send with a clear error (E036) rather than being silently dropped — fix the link or skip it with --exclude.

Fixes

  • Large transfers no longer drop. A packet-demultiplexing collision between STUN and QUIC could tear down big transfers mid-flight over the internet path.
  • Share codes shrug off stray whitespace and capitalization. A code pasted with a trailing space or newline — a Windows CRLF, or one a chat app auto-capitalized — is now accepted instead of failing with a confusing "no such file." Only the code argument is normalized; filenames are left exactly as typed.

Changelog

How to update

Note

To update, run fsend --update, or re-run the command from the Install section.