Skip to content

v0.3.2

Latest

Choose a tag to compare

@github-actions github-actions released this 06 Jul 11:28

Added

  • Cut Release GitHub Actions workflow: cut a full release from the GitHub web UI (tests, version stamping in main.go/README.md/CHANGELOG.md, release commit, tag, push) mirroring the workstation procedure

Fixed

  • Crash when pressing Enter while the search matched no projects (LB_ERR from LB_GETCURSEL was not detected on 64-bit)
  • Fuzzy search now matches non-ASCII project names correctly (rune-based matching instead of byte-based)
  • Ctrl+Backspace in the search box no longer mangles text containing non-ASCII characters (UTF-16 aware word deletion)
  • Data races between the GUI thread and the background update check on the shared config and dialog state
  • Settings dialog no longer leaks a permanent callback on every open, closes without waiting for the next input message, and no longer swallows an in-flight quit message
  • Header controls, window minimum size, and the initial window size now scale with display DPI (previously only fonts and list items scaled)
  • Config file writes are atomic (temp file + rename); a corrupt config is preserved as config.json.corrupt instead of being silently overwritten
  • Error dialog shown if the main window cannot be created (previously hung invisibly)
  • Down arrow with no selection now selects the first item
  • Bold/small fonts and background brushes are released on exit; the Settings button is disabled during launch like the other controls

Changed

  • Renamed LICENCE.md to LICENSE.md so packaging tools detect it automatically
  • Chocolatey package no longer bundles the binary: it is downloaded at install time from the official GitHub release with a SHA256 checksum, and a VERIFICATION.txt is included describing how to verify it
  • Removed the unused internal/process package (its process enumeration could never return results) and other dead code (update.ShouldNotify, unused Win32 constants)
  • Shared Win32 helpers consolidated into a new internal/win32 package; internal/gui split into focused files
  • List item drawing reuses cached brushes and package-level procs instead of re-creating them on every paint; search strings are precomputed instead of rebuilt per keystroke
  • Filesystem probing in the encoded-path decoder is capped to avoid pathological startup delays
  • internal/projects tests are now Windows-only (they assert Windows path separators)