Skip to content

Releases

repose 1.1.2

Choose a tag to compare

@NomadicDaddy NomadicDaddy released this 08 Nov 00:26

repose 1.1.2 is a maintenance release after 1.1.1. The app itself is unchanged. The release gate now catches a stale licence-notices file, tests check what Enter and Space do on every row you can reach with Tab, and 1.1.1's notes are corrected: Enter and Space already opened those rows. See CHANGELOG.md for the full list.

Downloads

  • repose.exe: Windows 11 x64. It needs Git 2.45 or later on PATH; no runtime is bundled or downloaded.
  • LICENSE (MIT), THIRD-PARTY-NOTICES.md and RUST-STD-COPYRIGHT.html: the licences of everything the executable contains.
  • SHA256SUMS: check your download with sha256sum -c SHA256SUMS, or in PowerShell compare (Get-FileHash repose.exe).Hash with its line.

The executable is unsigned, so Windows SmartScreen may warn about an unknown publisher.

To build from source instead, follow the README: pwsh scripts/qc.ps1 runs the gate and stages these same files, and pwsh scripts/install-user.ps1 installs them for the current user.

Development

  • The gate's licence-notices check now runs again when LICENSE or the vendored PowerShell grammar's LICENSE.txt changes. Before, editing only those files kept the step cached, so a stale THIRD-PARTY-NOTICES.md could pass the gate. The gate's self-test now checks that the step's input list covers every file the notices generator reads from the repository.
  • Tests pin what Enter and Space each do on every painted row that Tab reaches: a changed file opens its diff, a commit opens and closes, a commit's file opens that file's diff at the commit, a file-view line becomes the current line, and a repository becomes the selection without opening anything.

Correction to 1.1.1's notes

  • 1.1.1's known limitations said Enter doesn't open a changed file, commit or repository that Tab has reached. That was wrong: in 1.1.1 as released, Enter and Space already do what a click does on each of them, and the tests above pass on its unchanged app code.

Known limitations

  • Development: the other findings from 1.1.1's gate audit are still open for a later release. A gate step whose command can't start is recorded as a pass; the test step's cache key leaves out the machine's global git configuration; the warm test suite takes about 105 s; and pushes to the public repository run no checks. None of them changes what repose does.
  • Development: three of the 28 audits that apply have no current report, and no audit ran for this release, since it changes no app code.
  • scripts/install-user.ps1 has still been run only on the development machine; there is no clean-machine install record.

Startup is measured, not gated. This build's gate reported a median of about 1.4 s (runs of 1.5, 1.3 and 1.4 s) against a target of about 300 ms.

repose 1.1.1

Choose a tag to compare

@NomadicDaddy NomadicDaddy released this 07 Nov 20:53

repose 1.1.1 is a polish release after 1.1.0. A filter in Find a repository now says how many repositories match, and when it hides the one you're viewing. Diffs, counts, the list's status line, expanded commits, the close-without-committing dialog and long header paths read and line up correctly. An scp-style remote no longer shows a ? or # part in the header. See CHANGELOG.md for the full list.

Downloads

  • repose.exe: Windows 11 x64. It needs Git 2.45 or later on PATH; no runtime is bundled or downloaded.
  • LICENSE (MIT), THIRD-PARTY-NOTICES.md and RUST-STD-COPYRIGHT.html: the licences of everything the executable contains.
  • SHA256SUMS: check your download with sha256sum -c SHA256SUMS, or in PowerShell compare (Get-FileHash repose.exe).Hash with its line.

The executable is unsigned, so Windows SmartScreen may warn about an unknown publisher.

To build from source instead, follow the README: pwsh scripts/qc.ps1 runs the gate and stages these same files, and pwsh scripts/install-user.ps1 installs them for the current user.

Added

  • With a filter typed in Find a repository, the list's status line says how many repositories match ("1 of 4 match"). When the filter hides the repository the right pane is showing, the pane says so under its name ("Hidden from the list by the filter").

Fixed

  • A diff whose first change is at the top of the file no longer opens with a "0 unchanged lines" separator; a separator shows only when it hides lines.
  • Counts read correctly for one: "1 file", "1 line", "1 unchanged line", "1 path", "1 worktree", "1 repository".
  • The list's status line stays on one line after a fetch; it now reads "1 fetched, last HH:MM" once something has been fetched, and "Saved refs; no fetch" before.
  • The worktree chevron beside "1 worktree" is drawn to the text's size and sits on its line; it had been a small character above it.
  • In an expanded commit, the change letter ("R", "M") sits on the same line as its file's path.
  • The question shown when closing with an unsaved commit message has room around its text and buttons, and names each repository first, with its path below.
  • A long repository path in the header wraps at a folder separator rather than inside a folder name.
  • A remote written the scp way (git@host:path) no longer shows a ? or # part in the header, where a token such as ?access_token= could ride. A local path is still shown whole, since those characters are legal in a folder name.

Development

  • Commits are checked by a leak guard (a pre-commit hook delivered by smokestack) that refuses staged changes that look like secrets. After cloning, run git config core.hooksPath scripts/smokestack/hooks once to turn it on (README, "Build, run and install").
  • .records/ is no longer ignored: repose keeps its records under .aidd/.
  • Tests lay out the list's status line with repose's own fonts and check its exact wording and that it stays on one line, at three-digit counts and with a filter typed.

Known limitations

  • Development: the gate's licence-notices check is cached on a key that leaves out LICENSE and the vendored PowerShell licence, so editing only those files can leave THIRD-PARTY-NOTICES.md stale on a passing gate. 1.1.1 changes neither file. The fix is planned for 1.1.2.
  • Development: the release audit run completed 7 of its 8 audits; QC_PIPELINE, which checks the gate itself, did not complete. Its draft findings are filed for after 1.1.1.
  • scripts/install-user.ps1 has still been run only on the development machine; there is no clean-machine install record.

Startup is measured, not gated. This build's gate reported a median of about 1.6 s (runs of 1.9, 1.6 and 1.1 s) against a target of about 300 ms.

repose 1.1.0

Choose a tag to compare

@NomadicDaddy NomadicDaddy released this 06 Nov 01:52

repose 1.1.0 makes the viewer readable by screen readers and usable from the keyboard throughout, adds Fetch as the one action that reaches the network (only on your click, never prompting for a sign-in), and follows Windows' Animation effects setting. It also links the origin line to the repository's web page, adds --help, keeps reads moving while long commit hooks run, and cuts long commit subjects cleanly. See CHANGELOG.md for the full list.

Downloads

  • repose.exe: Windows 11 x64. It needs Git 2.45 or later on PATH; no runtime is bundled or downloaded.
  • LICENSE (MIT), THIRD-PARTY-NOTICES.md and RUST-STD-COPYRIGHT.html: the licences of everything the executable contains.
  • SHA256SUMS: check your download with sha256sum -c SHA256SUMS, or in PowerShell compare (Get-FileHash repose.exe).Hash with its line.

The executable is unsigned, so Windows SmartScreen may warn about an unknown publisher.

To build from source instead, follow the README: pwsh scripts/qc.ps1 runs the gate and stages these same files, and pwsh scripts/install-user.ps1 installs them for the current user.

Resolved from 1.0.0

  • Changes, History and file-view rows now show the keyboard focus outline.
  • Painted rows and diff lines now have accessible names.
  • The gate reuses a step that already passed with exactly the same inputs.
  • Open remote page's disabled tooltip no longer calls a URL origin a local path.
  • The CHANGELOG's early-commit host-name entry is corrected.

Known limitations

  • scripts/install-user.ps1 has still been run only on the development machine; there is no clean-machine install record and no uninstall script yet.
  • The ASSERTIONS audit has not run yet. The other audits were last run on 2026-11-03, before this release's changes.
  • A few small layout details are queued for 1.2: a "0 unchanged lines" separator at the top of a diff, "1 files" in the Files header, the sidebar status line wrapping after a fetch, the filter not saying how many repositories match, and a cramped close-without-committing dialog.

Startup is measured, not gated. This build's gate reported a median of about 1.2 s against a target of about 300 ms; across this release's gates on the development machine the median has ranged from about 0.7 to 1.2 s.

repose 1.0.0

Choose a tag to compare

@NomadicDaddy NomadicDaddy released this 04 Nov 12:26

repose 1.0.0 is a fast, lightweight desktop viewer for many Git repositories at once, written in Rust. It shows every repository with its branch and state, the changes in the selected one, a linear commit history with the files each commit touched, read-only diffs with syntax highlighting, and staging and committing from the same window. See CHANGELOG.md for the full list.

Downloads

  • repose.exe: Windows 11 x64. It needs Git 2.45 or later on PATH; no runtime is bundled or downloaded.
  • LICENSE (MIT), THIRD-PARTY-NOTICES.md and RUST-STD-COPYRIGHT.html: the licences of everything the executable contains.
  • SHA256SUMS: check your download with sha256sum -c SHA256SUMS, or in PowerShell compare (Get-FileHash repose.exe).Hash with its line.

The executable is unsigned, so Windows SmartScreen may warn about an unknown publisher.

To build from source instead, follow the README: pwsh scripts/qc.ps1 runs the gate and stages these same files, and pwsh scripts/install-user.ps1 installs them for the current user.

Known limitations

  • Changes, History and file-view rows show no keyboard focus outline.
  • Painted rows and diff lines have no accessible names, so a screen reader cannot read them.
  • The gate reruns every step on each run; there is no cache for unchanged checks.
  • The ASSERTIONS audit could not run for this release; it is scheduled again for v1.1.
  • scripts/install-user.ps1 has been run only on the development machine; there is no clean-machine install record and no uninstall script yet.
  • When Open remote page is disabled because a URL origin has no page (for example http://localhost?who=a@b), its tooltip still says the origin is a local path.

Startup is measured, not gated. The release gate reported a median of about 0.8 s against a target of about 300 ms.

The CHANGELOG also lists a limitation about the host name in early commits. That history was rewritten before publication, so it no longer applies; the CHANGELOG entry is corrected in 1.1.