Repository navigation
Releases: hexlabelposition/gff
Release list
v0.2.0 — Progress
Progress reporting for gff — go fast fetch.
Features
- Display a progress bar and percentage when the download size is known.
- Show downloaded and expected file sizes.
- Display average download speed and estimated remaining time.
- Format sizes using binary units: KiB, MiB, and GiB.
- Update progress on a single terminal line.
- Report downloaded bytes when the total size is unknown.
Build from source
Requires Go 1.27.0 or newer.
git clone --branch v0.2.0 https://github.com/hexlabelposition/gff.git
cd gff
go build -o bin/gff ./cmd/gffUsage
./bin/gff https://example.com/
./bin/gff versionKnown limitations
Resume, retries, and concurrent downloads are planned.
Failed or interrupted downloads may leave incomplete files.
Progress output requires an ANSI-compatible terminal.
Redirected output contains terminal control sequences.
Ctrl+C may leave the progress line unfinished.
Validation
Automated tests cover progress calculations, formatting, callbacks,
known and unknown response sizes, empty responses, and progress line
completion after successful and failed downloads. CI checks pass.
v0.1.0 — Fetch
First release of gff — go fast fetch.
Features
- Download a single file over HTTP or HTTPS.
- Stream downloads directly to disk.
- Determine the filename from the original URL, with
downloadas a fallback. - Follow HTTP redirects.
- Preserve existing files by refusing to overwrite them.
- Display the application version with
gff version.
Build from source
Requires Go 1.27.0 or newer.
git clone --branch v0.1.0 https://github.com/hexlabelposition/gff.git
cd gff
go build -o bin/gff ./cmd/gffUsage
./bin/gff https://example.com/
./bin/gff versionKnown limitations
Progress reporting, resume, retries, and concurrent downloads are planned.
Failed or interrupted downloads may leave incomplete files.
Validation
Automated tests cover downloads, HTTP 404 responses, redirects,
existing-file preservation, and downloader API results. CI checks pass.