Ghi v0.2.7
Ghi v0.2.7
Source coverage
ghi test --coverreports executed Ghi statement entries by file and in total.--coverprofile coverage.outwrites a Go-stylemode: setprofile with project-relative Ghi paths and byte columns; watch mode forwards coverage options.- Constructors, methods, closures, exceptions and inherited method copies retain source identity. Uncalled production code remains in the denominator.
- Coverage counters exist only in test coverage builds. Failed or cancelled tests preserve the previous profile; protected input files cannot be overwritten.
- This measures statement entry, not branches or conditions.
Linux distributions
- Added Linux amd64 and arm64 archives alongside Windows and macOS.
- The archive installer verifies checksums with
sha256sumorshasum, installs Ghi and independently versioned Mojave v0.1.0, and prepares a compatible Go toolchain.
Service integration
Request Journal now uses published arm092/config v0.1.0 together with migrations v0.4.0 and validation v0.1.0. Configuration is validated before opening the database; shutdown timeout is configurable.
Verification
- Windows amd64: complete
go test ./...andgo vet ./...passed. - Linux amd64 and arm64: archive installation, automatic Go download, project creation/run and source coverage passed in Alpine containers. ARM64 used emulation, not native ARM hardware.
- Request Journal passed fresh Windows consumer checks and a Linux amd64 Docker deployment built from the public Ghi/Mojave release and locked packages: health, non-root read-only runtime, migrations, persistent data/history across container replacement, and completion of an active HTTP request after SIGTERM. The Docker recipe and smoke runner are available on master under
services/request-journal. - All six archives were checked for exact contents, embedded binary hashes and Unix executable permissions.
- Windows Setup and the macOS installer build kit are included. Native macOS/Homebrew checks remain deferred; there is no newly built macOS .pkg in this release. Windows ARM64 was cross-compiled, not run on native hardware.
Download an archive matching your OS and CPU, extract it completely and run its installer. checksums.txt covers the release assets. Go is prepared automatically when needed.