💾 Archived View for dmerej.info › en › blog › 0068-introducing-rusync.gmi captured on 2024-05-12 at 15:07:26. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2022-07-16)

-=-=-=-=-=-=-

2018, May 08 - Dimitri Merejkowsky
License: CC By 4.0

Today I wrote my first "real" rust project.

It's a re-write of `rsync` in Rust called `rusync`.

Here's what its installation and usage look like:

$ cargo install rusync
$ rusync test/src test/dest
:: Syncing from test/src to test/dest …
-> foo/baz.txt
-> foo/bar.txt
 ✓ Synced 2 files (1 up to date)

You can find the sources on github[1].

1: https://github.com/dmerejkowsky/rusync

Feedback request

I wrote this because I wanted to give Rust a try.

If you're already are a Rust developer, I'd appreciate it if you could give me a honest review of the code I wrote.

See the contact page[2] for all the possible ways to reach me, and many thanks in advance!

2: page de contact

What's next

Here's a list of features I plan to implement

The last one is interesting: we need to recursively walk through all the files in the source folder in order to estimate the total size of the transfer, but we want to do that *while the transfer is in progress*.

That will be an opportunity to play a little bit with Rust concurrency features :)

Cheers!

3: https://github.com/dmerejkowsky/rusync/commit/01f68335c9593c6cbf99d6d971adf67d2e0ec379

----

Back to Index

Contact me