Skip to content

RemoteFlow 0.3.0

Choose a tag to compare

@github-actions github-actions released this 22 Aug 17:21
· 16 commits to main since this release

RemoteFlow 0.3.0 adds cloud object storage. Amazon S3 and Azure Blob Storage are connection types like
any other, with a page that puts your own files beside the bucket and a transfer engine built for objects
in the gigabytes.

It is also the first release built end to end by CI on both platforms: the Linux .deb and tarball used
to be produced on a maintainer's machine and attached by hand.

What's new

S3 and Azure Blob accounts save as connections. Choose the protocol and the editor asks for what that
provider needs — an access key ID and a region for S3, a storage account name for Azure. Host and port
fill themselves in and stop doing so the moment you type over them, which is how a sovereign-cloud account
is reached. Keys go into the platform keychain like every other RemoteFlow credential, never into the
database or a plaintext backup. A custom endpoint and path-style addressing make the S3 protocol work
against MinIO, Ceph, Backblaze B2, Cloudflare R2 and Wasabi.

A Storage page, with your own files beside the bucket. Local filesystem on the left, bucket or
container on the right, transfer queue along the bottom. Select and press Upload or Download, drag
between the panes, or press Enter. Double-clicking an S3 or Azure Blob connection opens it here. The
queue is the same one the Transfers page shows, not a second one.

Two things it will not pretend to do. "Starts with" is not a search — both providers narrow a listing by
prefix and neither searches by substring. And a listing stops at 10,000 rows with "of many shown" rather
than inventing a total, because S3 cannot cheaply count a prefix.

Objects in the gigabytes transfer in parallel chunks. Uploads split into parts and downloads into
ranges, sized from the object — an 8 MiB part for a 4 GiB object, 64 MiB for a 500 GB one — four in flight
at a time. Memory stays flat regardless of object size and the progress bar never goes backwards. A failed
part retries on its own rather than restarting the transfer, and cancelling aborts the incomplete upload so
its parts are not left behind and billed.

RemoteFlow cannot promise that after a crash or a power cut, so set a lifecycle rule on the bucket — S3's
AbortIncompleteMultipartUpload at seven days — as the durable backstop. Azure needs nothing: uncommitted
blocks expire on their own.

Before you upgrade

Your database moves to schema version 2. Once this build has opened it, RemoteFlow 0.2.6 and earlier
will refuse it with a message telling you to upgrade, rather than failing part-way through opening the
connections page. Existing databases are stamped on first launch and need no action from you.

The same applies in one direction to backups: an archive written by this release that contains an S3 or
Azure Blob connection cannot be imported by 0.2.6 or earlier. Backups containing only SSH, SFTP and RDP
connections are unaffected both ways.

Downloads

Windows artefacts and the portable Linux builds, named for the version and the runtime identifier:

File What it is
RemoteFlow-0.3.0-win-x64.zip Portable build for Intel and AMD machines.
RemoteFlow-0.3.0-win-arm64.zip Portable build for ARM machines.
RemoteFlow-0.3.0-win-x64-setup.exe Per-user installer for x64.
RemoteFlow-0.3.0-win-arm64-setup.exe Per-user installer for ARM64.
RemoteFlow-0.3.0-linux-x64.tar.gz Portable Linux build for Intel and AMD machines.
RemoteFlow-0.3.0-linux-arm64.tar.gz Portable Linux build for ARM machines.

The Debian packages follow Debian's own naming, because apt and dpkg expect it:

File What it is
remoteflow_0.3.0_amd64.deb Debian/Ubuntu package for x64.
remoteflow_0.3.0_arm64.deb Debian/Ubuntu package for ARM64.

Every build is self-contained: the .NET runtime is inside it, so a clean machine needs nothing installed
first. The Windows installers are per-user, need no elevation, and leave your connections and settings in
place when you uninstall unless you ask for them to be removed. Install the .deb with
sudo apt install ./remoteflow_0.3.0_amd64.deb rather than dpkg -i, so dependencies are resolved.

Verifying your download

checksums.txt lists the SHA-256 of all eight files.

sha256sum --check --ignore-missing checksums.txt

On Windows without sha256sum:

Get-FileHash .\RemoteFlow-0.3.0-win-x64.zip -Algorithm SHA256

Nothing here is code-signed. Windows SmartScreen will warn that the publisher is unknown, and the Linux
artefacts have no detached signature and no apt repository behind them. That is expected and is not a sign
of a corrupted download; the checksum is how you tell the difference. It proves the file arrived intact
and says nothing about who built it.


Full changelog: v0.2.6...v0.3.0