Skip to content

Feature request: Compression #79

@NotNite

Description

@NotNite

There doesn't seem to be any compression in sendme. Take, for example, a 1G file of zeroes:

$ dd if=/dev/zero of=empty bs=1G count=1
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.526697 s, 2.0 GB/s
$ sendme send empty
⠁ [00:00:00] waiting for requests
⠒ [00:00:00] waiting for requests
imported file empty, 1.00 GiB, hash 14fd9525cba83ddee5526775575b1680a509bc95eaf47b4b7814c036365e4cc9

If I receive this file on another machine, it takes the entire gigabyte to send. I can, of course, compress it myself:

$ gzip empty
$ sendme send empty.gz

...in which case it'll receive it much faster. However, fiddling with compression tools is a lot of added friction on receiving a file, and file transfer tools like sendme are (in my opinion) designed to solve friction.

It would be nice if sendme has optional compression (and if there are multiple compression algorithms, the ability to pick one, e.g. --compression zlib). Ideally it would let the user know when it's compressing a file, because it can take a long time for some files, and having no user feedback can make the user think it's stuck.

If compression is implemented, you should be able to turn it off (e.g. --compression none). A lot of file types are already compressed in some way, and extra compression will waste my time and CPU more than it would pay off.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions