Release notes

Gitmun builds

Release notes are generated from GitHub Releases and shown in reverse chronological order.

Latest release notes
v0.11.1 7 September 2026 Permalink GitHub release

v0.11.1

What's New

  • Improved the commit hook progress display: it now appears as a clear banner in the staging area.
  • Hardened commit-signature verification by only using trusted global GPG program settings.
  • Release packages are now published only after all supported distribution targets have successfully completed publication.
  • Updated bundled dependencies, including networking and Rust components.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.11.0...v0.11.1

v0.11.0 4 September 2026 Permalink GitHub release

v0.11.0

What's New

Git workflow

  • See live output and hook progress while committing, pushing, switching branches, creating checked-out branches, and managing remote branches or tags.
  • When supported hooks reject a commit or push, review their output and choose to retry without hooks.
  • Receive a warning when a post-checkout hook fails after a successful branch switch or checkout.
  • Configure automatic remote fetching every 5, 10, 30, or 60 minutes while a repository window is focused.

Repository navigation and history

  • Recent repositories now integrate with system history:
    • Windows users get recent repositories in the Gitmun Jump List.
    • Linux users get recent repositories in the desktop recent-files history.
  • Remove repositories directly from the Recent Repositories list or the Open Repository menu.
  • Browse files changed by a commit in a collapsible folder tree, with searchable paths.
  • Commit searches now temporarily hide the commit graph for clearer results and show a dedicated “No commits found” state.

AI extension changes (experimental)

  • Configure a separate AI model specifically for commit-message generation while retaining the main model for conflict resolution and writing tasks.
  • Set the commit-message model through GITMUN_AI_COMMIT_MODEL.
  • Add an Off reasoning preference to explicitly disable reasoning where supported.
  • OpenRouter now uses task-aware reasoning defaults and keeps reasoning traces out of responses.
  • AI writing results now provide copy confirmation, and context previews present included files more clearly.
  • Amazon Bedrock is now listed among supported AI providers.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.10.1...v0.11.0

v0.10.1 12 August 2026 Permalink GitHub release

v0.10.1

What's New

This patch release contains a small set of user-facing improvements and a number of internal fixes and packaging tweaks. Highlights include a new "unstage multiple files" command and improvements to the commit-graph rendering and generated avatar styling.

Highlights

Unstage multiple files

  • New Tauri command and API: unstage_files (unstage multiple selected paths in a single operation).
  • UI: Project view now calls unstageFiles to perform a single backend operation for bulk unstage.
  • Git backends:
    • CLI backend supports --pathspec-from-file=- --pathspec-file-nul for safe, literal path handling.
    • gix backend delegates to CLI fallback for this operation.
  • Tests: comprehensive tests added for the new behaviour (preserving worktree files, literal pathspec handling, whitespace in paths, rejecting empty/NUL paths, initial/unborn-HEAD behaviour).

Commit graph improvements

  • Commit graph supports a fixed viewport with horizontal scrolling when the graph has more lanes than fit the viewport.
  • Visual / CSS tokens added for lane colours; gradients use named tokens rather than raw colours.
  • Utilities exported to compute viewport/total widths, and graph rendering updated to use the shared viewport and scroll position.
  • Tests updated for wider graphs and viewport behaviour.

Generated avatars & Titlebar changes

  • New stable initials + colour selection helper:
    • src/utils/generatedAvatar.ts supplies initials and a stable colour index.
    • CSS tokens added for generated avatar colours/backgrounds.
  • Titlebar now accepts an identity name and uses the generated avatar helpers; tests updated to match.

Packaging & build

  • Rust version bumped: rust-version = "1.94.1" in src-tauri/Cargo.toml.
  • Packaging/spec files updated to require cargo/rust >= 1.94.1 in OBS/specs and Debian control.
  • OBS project config adjusted and packaging scripts updated for source URL validation.

Minor UI & tests

  • ProjectView: streamlined avatar / identity handling and bulk unstage flow.
  • Commit graph gutter, layout, and accessibility (scroll region) improvements.
  • Small CSS tweaks (Titlebar/commit graph/avatars).
  • Added and adjusted unit/integration tests for the new features and layout changes.

Other notable changes

  • README and docs unchanged in content here (focus was bugfix, graph & staging changes).
  • Many internal refactors and test coverage improvements.
  • Various build and packaging tweaks to improve compatibility with updated toolchains.

Upgrade / compatibility notes

  • No user-facing breaking changes expected.
  • If you build packaged artifacts, ensure rust/cargo >= 1.94.1 is available.
  • The new unstage_files behaviour depends on the underlying git CLI behaviour; path arguments are treated as literal pathspecs and NUL-separated when provided by the UI/backend.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.10.0...v0.10.1

v0.10.0 9 August 2026 Permalink GitHub release

v0.10.0

What's New

This release adds two experimental, opt-in features - Local Copy and a bundled AI extension - plus a large set of AI/runtime integrations, documentation, and internal dependency updates. Both experimental features are disabled by default.

Highlights

Experimental: Local Copy

  • New CLI and UI command: gitmun copy

  • Modes:

    • files-only - copies every hidden, ignored, untracked and tracked file (excludes .git entries), preserves symlinks and materialises checked-out submodules.
    • complete-repository - recursively clones the source into a new destination.
  • Examples:

    • gitmun copy /path/to/source /path/to/destination
    • gitmun copy /path/to/source --to /path/to/destination --mode files-only --start
    • gitmun copy https://github.com/owner/repo.git /path/to/destination --mode complete-repository --start
  • Enable: Settings > Application > Experimental → enable Local Copy, or set enableLocalCopy = true in src-tauri/config.example.toml (or your config.toml).

Experimental: AI extension (opt-in)

  • Bundled experimental AI extension for:

    • commit-message previews and generation
    • conflict-resolution proposals
    • staged-change reviews
    • branch summaries, PR descriptions, and release notes
  • Provider support:

    • OpenAI-compatible endpoints, Anthropic Claude, Mistral, Google Gemini, OpenRouter, Azure OpenAI, Ollama, LM Studio, Amazon Bedrock (SigV4), and local providers.
  • Privacy & controls:

    • Per-repo and global path exclusions, commit/history inclusion controls, and first-use outbound previews with explicit consent.
    • Environment overrides supported via GITMUN_AI_* variables (see docs).
  • Config and usage:

    • New example configuration in src-tauri/config.example.toml includes AI extension entries, commit/conflict context limits, prompt files, and AI parameters.
    • See docs/ai-extension.md for full provider configuration, environment variables, privacy notes, and workflow details (commit generation, conflict proposals, structured JSON outputs).
  • Workflows:

    • Commit message generation (single-candidate or composer modes), conflict resolution (per-region proposals, multi-file queuing), and preview-only writing tools for branches/PRs/release notes.
    • Structured output support (JSON Schema / JSON Object / Prompt-only) with fallbacks and heuristics when providers reject structured formats.

Other notable changes

  • README updates:

    • Added sections describing Experimental Local Copy and the AI extension with usage examples.
    • Config example referenced as TOML (config.example.toml).
  • New docs:

    • docs/ai-extension.md - full AI extension documentation, provider profiles, environment overrides, and privacy/workflows.
  • AI implementation surface:

    • New code under src-tauri/src/ai: adapters for OpenAI-compatible APIs, Claude, Bedrock, AWS SigV4 signing, model discovery, structured output handling, and runtime orchestration.
    • Tauri command surface added for AI features (commit-writing, conflict resolution, model discovery, credential handling, usage recording, etc.).
  • Config & defaults:

    • src-tauri/config.example.toml now shows experimental keys: enableLocalCopy, bundled AI extension options, commit/conflict context limits, max tokens, prompt fields, consented destinations, and repository policies.
  • Build changes:

    • build.rs now shortens embedded commit SHA to 7 characters; minor build tweaks.
  • Dependency updates:

    • npm package bumps (e.g., nanoid, postcss) and numerous Rust dependency additions/updates (keyring, aws-sigv4, aws-credential-types, tokio, sha2, serde_urlencoded, etc.), reflected in src-tauri/Cargo.lock.

Upgrade / compatibility notes

  • Experimental features are disabled by default - enable explicitly before use.
  • AI features may require provider credentials and explicit consent; review docs/ai-extension.md and GITMUN_AI_* environment variables.
  • Verify provider-specific configs (endpoint, request_path, auth mode). Azure OpenAI requires explicit deployment configuration when used.

Where to read more

  • docs/ai-extension.md - full AI extension documentation and configuration details.
  • README.md - Local Copy usage and experimental feature notes.

Changelog summary

  • Major new experimental features: Local Copy and bundled AI extension (opt-in).
  • Docs and config additions for AI features and experimental settings.
  • New AI runtime/adapters and Tauri command surface.
  • Dependency and build updates; developer tooling added.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.9.2...v0.10.0

v0.9.2 26 July 2026 Permalink GitHub release

v0.9.2

What's Changed

  • Fix: Avoid rewriting or locking .git/index during status/patch checks by using read-only git paths (use "without optional locks"); this prevents spurious index updates and leftover index.lock files during status, three-way-patch readiness and untracked-file checks.
  • Fix: Correct unstaged numstat collection (use git diff-files --numstat) so unstaged file stats are accurate.
  • Tests: Added coverage that simulates stale index entries, conflicted states and dirty/untracked submodules and asserts the index is not modified (and no index.lock left) by status/read operations. Also added gix conflict mapping and parity tests so CLI and gix handlers agree.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.9.1...v0.9.2

v0.9.1 11 July 2026 Permalink GitHub release

v0.9.1

What's New

Improved Linux terminal selection

  • Linux terminal preferences now use stable terminal IDs such as auto, custom, ghostty, and gnome-terminal.
  • The Settings window shows friendly terminal names while storing normalised IDs in config.
  • Custom Linux terminal commands are now wired through the same terminal registry path as known terminals.
  • Legacy config values such as Auto and GnomeTerminal are normalised when loaded. Empty values fall back
    to auto; unknown IDs are preserved.

Improved commit graph rendering

  • Reworked the experimental commit graph gutter with smoother SVG curves, clearer lane continuity, and
    improved node/connector contrast.
  • Lane-changing curves now blend colours between source and destination lanes.
  • Commit graph rows are hidden cleanly when the graph is turned off.
  • When the commit graph is visible, commit history is fetched in topo order so graph rendering better
    matches repository topology.

Commit history topo-order support

  • Commit history requests now support topo ordering.
  • The Git CLI backend passes --topo-order when requested.
  • The gix backend falls back to the CLI path for topo-ordered history to keep behaviour consistent.

Titlebar UX

  • Fixed truncated repository titles in the titlebar hover popup.
  • When the title is clipped, the popup now shows the full project display name and repository path while
    preserving click-to-copy behaviour.

Fixes

  • Linux terminal labels and launchers now use the terminal registry consistently.
  • Linux custom terminal commands are plumbed correctly through settings and repository “Open in terminal”
    actions.
  • Commit graph connectors now render smoother joins and caps, with gradient strokes for blended curves.
  • Commit graph DOM is no longer rendered when the graph is hidden.
  • Repository title hover detection now checks both the label and its clipping button container.

Developer Notes

  • LinuxTerminalEmulator has been replaced with flexible string IDs: LinuxTerminalId.
  • New constants: LINUX_TERMINAL_AUTO_ID and LINUX_TERMINAL_CUSTOM_ID.
  • get_linux_terminal_options / getLinuxTerminalOptions now return { id, label }.
  • set_linux_terminal_emulator / setLinuxTerminalEmulator now accept a terminal ID.
  • Commit history requests now include Rust topo_order / TypeScript topoOrder.
  • linux-terminal-launch was updated in Cargo.lock.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.9.0...v0.9.1

v0.9.0 5 July 2026 Permalink GitHub release

v0.9.0

What's New

Commit patch export

  • New backend and command export_commit_patch_file to export patches built from one or more commits
  • Export supports selecting multiple commits and writes an aggregated patch (oldest → newest)
  • Root (initial) commits are handled correctly and produce new-file hunks
  • Exports include full index object IDs (--full-index) and binary diffs for accurate round-trip application
  • CLI and gix backends return the same patch output

Commit message recovery

  • New API get_commit_message_recovery and TypeScript type CommitMessageRecovery
  • Reads the repository COMMIT_EDITMSG file and returns a cleaned message and timestamp when a draft exists
  • UI now offers a “Restore previous message” action when no draft is present and a recoverable edit message exists
  • Commit box will clear saved drafts after a successful commit and preserve them after failures

SSH signing / allowed signers support

  • New SSH allowed-signers status API get_ssh_allowed_signer_status and operation add_ssh_signing_key_to_allowed_signers
  • CLI and gix backends inspect user.signingkey, user.email, and gpg.ssh.allowedSignersFile to determine:
    • whether setup is needed
    • whether the allowed signers file is configured / exists
    • whether the signing key is present and trusted
  • New types SshAllowedSignerStatus and SshAllowedSignerReason
  • UI repair flows:
    • Log/signature popover can show instructions and add the configured SSH signing key to the allowed signers file
    • Identity panel surfaces allowed-signers state and lets users add the configured signing key
  • Tests for status, adding keys, and edge cases (inline key, private key paired pub file, missing email, configured-but-missing-file)

Patch import: safer 3-way apply and conflict handling

  • Import now supports three-way apply via ImportPatchRequest.three_way
  • Three-way apply is used as a retry path when normal git apply --binary fails
  • Three-way apply blocks when tracked files are dirty and will return a clear error code when blocked
  • Conflict results from 3-way apply are returned as an operation result (so the UI can route to conflict resolution)
  • Tests covering three-way conflicts, blocked conditions, and partial/no-blob patches

File tree, unversioned items and staging improvements

  • New unversioned “items” representation with file vs directory kinds (shows directories like assets/)
  • Untracked directory rows can be selected and staged as a unit
  • File tree compaction and default expand/collapse heuristics for large sections:
    • Avoid expanding huge folders by default; allow manual expansion
    • Selecting a compacted folder selects its descendants
  • Large root-level lists are virtualized to keep UI responsive and allow scrolling to later rows
  • Folder rows show "new" badge for directories introduced by the patch/untracked content
  • Better handling of submodules in status and unversioned item filtering

Staging and operation feedback

  • Introduced delayed operation feedback:
    • Inline small banner after 500ms for quick operations
    • Popup status overlay after 2500ms for long-running operations
  • Staging operations (stage/unstage/all) are tracked with an operation lock so bulk actions are disabled while busy
  • Visual inline feedback for staging operations in both staging view and centre panel
  • Staging UI: selection, bulk actions, and virtualized lists handle large selections and files with spaces robustly

Commit box and draft UX

  • Commit message drafts are saved per-repository while typing and restored on revisit
  • Merge messages and amend interplay handled correctly (merge messages not overwritten by drafts)
  • Offer to restore COMMIT_EDITMSG content when no local draft exists (and it's different from the latest commit message)
  • Commit API updated to allow async result (commit handler can return false to indicate failure and keep draft)
  • Clear drafts only on confirmed successful commit

Log and refs UI improvements

  • Commit ref chips layout refined:
    • Prominent ref line for selected/checkout commits, inline meta refs for others
    • Priority ordering of refs (HEAD, local branches, upstream, remotes, tags)
    • Overflow handling with descriptive “N more refs” tooltips
  • Signature popover:
    • Copy actions for signer and fingerprint
    • Repair flow button for SSH signing (adds configured key to allowed signers if available)
    • Explanatory text for SSH allowed-signers status
  • Context menu additions: export commit patch(s) from a single commit or a multi-selection

API, TypeScript and wiring

  • New API endpoints and TypeScript functions:
    • exportCommitPatchFile / exportCommitPatchFile TS binding
    • getCommitMessageRecovery TS binding
    • getSshAllowedSignerStatus and addSshSigningKeyToAllowedSigners TS bindings
    • openMicrosoftStoreUpdatePage replaces older request method for MS Store flow
  • Backend: many repo command functions made async / moved to background threads to avoid blocking the Tauri main thread (e.g., commit_changes, stage_files, unstage_*, stage_all)
  • New internal CLI handler helpers for:
    • resolving SSH signing keys (supports inline key:: prefix, file, or key.pub suffix)
    • default and resolved allowed signers paths
    • robust commit-hash validation and building commit-based patches
    • safer three-way patch apply with status inspection
    • full-index patch generation for single-commit export

Configuration & migration

  • Removed or ignored legacy enableUpdateWithMSStoreFlow manual config keys during migration; config persists but the old key is ignored in the new config shape
  • New settings types and defaults updated to reflect store flow changes

Microsoft Store / update flow

  • Microsoft Store update flow simplified:
    • New action opens the Microsoft Store update page (open_microsoft_store_update_page) instead of attempting a direct in-process Store install
    • Local test harness simplified to three modes (available / mandatory / none)
    • Update dialog copy and state reflect “Store opened” and the new open-flow states

Tests and quality

  • Large suite updates and new tests:
    • CLI and gix handler behaviour (export/import/ssh allowed signers, commit recovery)
    • Staging view virtualization, large-list behaviour, compact folder selection, inline feedback timing
    • Commit box draft saving, recovery, and commit-clear behaviour
    • Identity panel allowed-signers repair flow and prompts
    • Log view: ref layout, signature repair flow, export commit patches

Fixes

  • Patch export now includes full-index object IDs for accurate patches suitable for three-way application
  • Fixed multiple UI race conditions and long-running work on the UI thread by moving heavy operations to background threads
  • Fixed unversioned paths handling to show directory entries and avoid losing folder selections
  • Improved detection and filtering of submodule entries from unversioned lists and repo status
  • Fixed staging selection and bulk operations to disable during active staging operations
  • Fixed commit draft lifecycle and ensured drafts are preserved after failed commits and cleared on success
  • Fixed signature popover copying and improved repair UX for SSH signing keys
  • Fixed Microsoft Store update flow to avoid unsupported in-process flows and present the Store page cleanly
  • Fixed a number of edge-case patch import and three-way-apply failure modes with clearer error codes
  • Various test fixes and added coverage for new features and regression scenarios

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.8.1...v0.9.0

v0.8.1 1 July 2026 Permalink GitHub release

v0.8.1

What's New

Repository Display Names

  • New command get_repo_display_name to read repository description as display name
  • Displays custom project names in the titlebar when configured
  • Falls back to repository folder name when no custom description is set
  • Automatically fetches display names for recently used repositories
  • Supports Git submodule .git file format with gitdir: references

Titlebar Enhancements

  • New disclosure tooltips for truncated repository and branch names
  • Interactive tooltips showing full details when labels overflow
  • Branch name tooltip displays full branch name when truncated
  • Repository tooltip displays both custom display name and full path when truncated
  • Better visual feedback for copy affordance with "Click to copy path" hint
  • Improved layout with cleaner repository name display

Commit Message Processing

  • New commit_message.rs module for parsing and processing commit bodies
  • Separates commit prose body from metadata trailers
  • Trailers are properly identified as contiguous Key: value pairs at message end
  • Empty lines between prose and trailers are handled correctly
  • Message body is now returned in CommitDetails for display in the UI
  • Both CLI and gix backends return identical body and trailer parsing

File Tree Compaction

  • Uninterrupted single-directory chains are now compacted in the file tree
  • Reduces visual depth for deeply nested single-folder paths
  • Shows full compacted path in folder labels (e.g., game/assets/graphics/100/en/symbols)
  • Only compacts when a directory contains only one subdirectory
  • Maintains proper layout and selection semantics

Repository State Monitoring Improvements

  • Better handling of Git lock files (.lock) - now ignored in file watch events
  • .git/objects/ directory writes are filtered out from state refreshes
  • Uses GIT_OPTIONAL_LOCKS=0 environment variable for status and numstat operations
  • More precise path filtering logic for relevant Git state changes
  • Reduces unnecessary refreshes during fetch operations

UI Improvements

  • File striping calculations now account for visible rows only
  • Striping restarts independently for staged and unstaged sections
  • Folder rows are no longer striped to maintain visual hierarchy
  • Commit details popover properly scrolls when content exceeds viewport height
  • Better handling of popover positioning near screen edges
  • Popover stays within viewport bounds with minimum 8px margin

Build and Dependencies

  • Updated esbuild from 0.28.0 to 0.28.1
  • Updated Vite from 8.0.8 to 8.1.0
  • Updated Rolldown from 1.0.0-rc.15 to 1.1.3
  • Updated postcss from 8.5.13 to 8.5.16
  • Updated nanoid from 3.3.11 to 3.3.15
  • Updated undici from 7.24.6 to 7.28.0
  • Updated tinyglobby from 0.2.15 to 0.2.17
  • Updated @napi-rs/wasm-runtime from 1.1.3 to 1.1.6
  • Updated @oxc-project/types from 0.124.0 to 0.137.0

Permissions and API Updates

  • Updated Tauri permissions schema to include new Opener plugin capabilities
  • New App permission allow-supports-multiple-windows
  • New Window permissions allow-activity-name and allow-scene-identifier
  • New Tray permission allow-set-icon-with-as-template
  • Dialog deprecated permissions allow-ask and allow-confirm marked as deprecated
  • Full Opener plugin scope support with URL and path configurations

TypeScript and API Additions

  • Added CommitDetails.body field to represent prose message content
  • New TypeScript utils for repository display name handling
  • Enhanced titlebar component tests for disclosure functionality
  • New diff panel tests for commit details display

Package Configuration

  • Added allowScripts configuration for esbuild

Fixes

  • Fixed commit trailers parsing to properly separate prose from metadata
  • Fixed file striping to not apply to folder rows
  • Fixed popover positioning to avoid going off-screen
  • Fixed file tree rendering to preserve striping consistency across sections
  • Improved Git lock file filtering for more reliable state monitoring
  • Better handling of concurrent Git operations with optional lock control

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.8.0...v0.8.1

v0.8.0 18 June 2026 Permalink GitHub release

v0.8.0

What's New

Commit Graph Visualisation

  • New experimental commit graph feature with visual lane representation
  • Shows commit ancestry relationships with coloured lanes and connecting lines
  • Includes commit node markers and parent relationship connectors
  • Graph can be toggled on/off with toolbar button (experimental feature behind setting)
  • Properly handles merge commits with multiple parents
  • Smart lane allocation to keep main parent on primary lane

Commit Reference Decorations

  • Displays branch names (local and remote) and tags directly on commit rows
  • Shows HEAD and upstream markers inline with commit metadata
  • Compact display with ellipsis for long ref names and a "+N more" indicator
  • Different styling for local branches (green), remote branches (accent), and tags (yellow)

Commit Navigation

  • Arrow key support for moving between commits in the log
  • Arrow Up/Down keys select adjacent commits with automatic scroll reveal
  • Focus management for keyboard-only navigation
  • Keyboard-accessible commit selection

Pagination and Performance

  • Explicit "Load more commits" button instead of automatic end-reached loading
  • Better error handling for failed page loads with retry capability
  • Shows loading state and error messages for pagination
  • Auto-reveals newly loaded commit when appending next page
  • Reduced verification batch size to 20 commits for better UX

Commit Verification Improvements

  • GPG keyserver verification (experimental): automatically fetch missing GPG keys from configured keyservers
  • SSH signature priority: SSH signatures verify before GPG signatures that may need keyserver lookup
  • Better verification state tracking with request IDs to handle out-of-order responses
  • Verification retries on failure with one automatic retry per batch
  • Only retries within visible range, background verification for loaded commits
  • Settings for enabling/disabling GPG keyserver verification

File Tree and Staging

  • Collapsible folder structure in staged/unstaged file lists
  • Folder selection toggles all descendant files
  • Indeterminate checkbox state for partially selected folders
  • Independent folder expansion state for staged versus unstaged sections
  • Cumulative statistics (additions/deletions) for folders

UI Improvements

  • Better left sidebar collapse/expand UI with improved hover state and accessibility
  • Enhanced titlebar layout with better text truncation for long branch names and repo paths
  • Improved upstream dialog with branch filtering and scrollable list
  • Fixed branch selection UI with keyboard support
  • Better visibility of branch pill with title attribute

Focus Management

  • Window focus detection to defer expensive operations when unfocused
  • Automatic refresh when window regains focus with pending changes
  • Reduces unnecessary git operations when app is backgrounded

Settings

  • New "Experimental" settings section
  • Commit graph button toggle (off by default)
  • GPG keyserver verification toggle (off by default) in Git section
  • Signature settings change event for coordinated verification updates

Localisation

  • New translations for commit graph UI
  • Translations for folder selection and staging operations
  • Translations for load more button and pagination states
  • Upstream dialog filtering and branch list translations

Fixes

  • Panel layout toggle width corrected to 24px
  • Better handling of concurrent refresh and load more operations
  • Improved error messages with more context in pagination failures
  • Fixed verification result ordering issues with concurrent requests
  • Proper deduplication of commits when pagination overlaps
  • Settings sync events for signature verification changes
  • Window focus event listeners with proper cleanup

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.7.1...v0.8.0

v0.7.1 7 June 2026 Permalink GitHub release

v0.7.1

What’s New

Panel Layout Refactoring

  • Renamed the pane layout system to panel layout for consistency with the app’s terminology
  • Improved left panel minimum width handling, now set to 260px, with better visibility constraints
  • Enhanced the panel resizing algorithm to maintain usable minimum sizes for all panels
  • Fixed panel drag constraints to prevent the left panel from being dragged below its minimum width
  • Corrected persisted layouts that become too narrow during window resize operations

Testing and Quality

  • Expanded panel layout test coverage with new test cases for minimum width constraints
  • Added tests for left panel drag correction and usable centre panel constraints
  • Improved test assertions for edge cases in panel resizing

Dependencies

  • Updated the linux-terminal-launch dependency to the latest commit

Other Improvements

  • Git initialisation now targets the main branch by default in test configurations
  • Code consistency improvements across layout management utilities

Fixes

  • Simplified and corrected panel layout clamping logic
  • Improved handling of extreme window sizes and panel width constraints
  • Improved minimum panel width enforcement during manual splitter drags

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.7.0...v0.7.1

v0.7.0 7 June 2026 Permalink GitHub release

v0.7.0

What's New

CLI Enhancements

  • Modern command-line interface with intuitive subcommands
    • gitmun open <path> - Open repositories
    • gitmun clone - Clone with flexible options
    • gitmun init - Initialize new repositories
  • Shell completions for bash, zsh, fish, and PowerShell
  • Window routing with --reuse-window and --new-window options

Linux Terminal Support

  • Choose your preferred terminal emulator (Konsole, GNOME Terminal, Alacritty, WezTerm, and more)
  • Custom terminal command support with configurable launch options
  • Auto-detection of installed terminals

Commit Message Improvements

  • Split subject/body interface with improved editing experience
  • Resizable commit box with saved height preferences
  • Keyboard shortcuts (Cmd/Ctrl+Enter) for quick commits
  • Better support for multi-line messages and trailers

Error Handling

  • Persistent error toasts with dismiss button
  • Configurable error message auto-close delay
  • Improved error messages with actionable suggestions
  • Better detection of unmerged branch deletion attempts

Reset Operations

  • Hard reset support to discard tracked changes

Dependencies

  • Updated Vitest 4.1.0, Esbuild 0.28.0, Chai 6.2.2
  • Loading skeletons for settings pages
  • Improved test coverage

Fixes

  • Commit message preservation for special characters and formatting
  • Multi-line commit message handling with proper whitespace
  • Unmerged branch deletion error messages
  • Configuration persistence across sessions
  • Various UI/UX improvements and stability fixes

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.6.4...v0.7.0

v0.6.4 28 May 2026 Permalink GitHub release

v0.6.4

What's Changed

Patch File Management

  • Import and export patch files with flexible scope options (staged, unstaged, all, or selected)
  • Selective file export with checkboxes for staged and unstaged changes
  • Full support for untracked files in patches

Git Mailmap Support

  • Commit author and committer identities now respect .mailmap files

UI/UX Improvements

  • "More" dropdown menu in titlebar for advanced operations
  • Recent repositories quick access in empty state (up to 5 repos)
  • Improved search bar styling and accessibility
  • Better keyboard navigation and focus handling

Backend Improvements

  • Added save dialog capability
  • Enhanced path validation for patch operations
  • Binary patch support

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.6.2...v0.6.4

v0.6.2 24 May 2026 Permalink GitHub release

v0.6.2

What's Changed

Microsoft Store Update Progress Tracking (experimental, disabled by default)

  • Real-time download and install progress display for Microsoft Store updates
  • Queue status monitoring with detailed extended state information
  • Distinction between download and install phases
  • Better error reporting for Microsoft Store issues
  • Application restart registration for MSIX installations

Commit Log Enhancements

  • Multi-select commits with Ctrl+Click (or Cmd+Click on macOS) and Shift+Click
  • Copy commit hash, short hash, subject, or full details from context menu
  • Support for bulk copy operations on selected commits
  • Context menu changes based on single vs. multiple selection

Pane Layout Improvements

  • Refactored pane layout calculation into reusable utilities
  • Improved ratio-based resizing to preserve splitter positions across window resizes
  • Consistent pane layout clamping logic

UI/UX Improvements

  • Copy repository path button in titlebar with "Copied" feedback
  • Better Linux WebKit text input handling in sub-windows
  • Improved AppImage rendering fallback for X11 with hardware renderer
  • Settings help text improvements for diff/merge tool configuration

Linux & Platform Improvements

  • AppImage force software renderer detection for X11 environments

Internal Changes

  • Updated Windows API bindings for better recovery and UI handling
  • Improved Microsoft Store queue item status tracking
  • Better test coverage for update flow and pane layout

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.6.0...v0.6.2

v0.6.0 22 May 2026 Permalink GitHub release

v0.6.0

What's Changed

Open in File Manager, Terminal, or Git Bash

  • New "Open in..." button to launch repository in File Explorer, Finder, Terminal, or Git Bash directly

Improved Error Interpretation & Guidance

  • Git errors now categorized with clear summaries and suggested actions
  • Network, authentication, merge conflicts, and upstream issues display helpful guidance
  • Localized action labels in Result Log

Enhanced Push Failure Handling

  • Network errors and authentication failures display in toasts with actionable advice
  • Force-with-lease support for rebased branches

Linux & Package Improvements

  • AppImage builds now available through OBS alongside DEB and RPM packages
  • Improved Flatpak environment variable handling

UI/UX Improvements

  • Responsive titlebar that hides labels on narrow windows
  • Warning icon for push rejection dialogs
  • Result Log shows expandable details for Git errors
  • Updated About window website link (gitmun.org now live)

Dependencies

  • Updated to gix 0.83.0 with improved diff and merge handling
  • Git output locked to machine locale for consistency

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.5.4...v0.6.0

v0.5.3 17 May 2026 Permalink GitHub release

v0.5.3

What’s New

Settings and usability

  • UI text size control is now available, with a cleaner slider control.
  • Settings window has been reorganised for easier navigation.
  • Row striping is now configurable to improve list scanning:
    • Off
    • Subtle
    • Strong

Theme improvements

  • Theme files are now editable, with expanded theme token support.
  • Font configuration has been improved, including bundled UI fonts.
  • Better light mode polish and improved list readability.
  • Improved dark mode file path contrast.

Updates

  • Added an experimental Microsoft Store update flow for MSIX installs.
  • This flow is disabled by default and intended for staged rollout/testing.

Stability and platform fixes

  • Linux rendering fallback logic has been tightened for improved runtime behaviour.
  • Potential fix for Windows window-drag handling.
  • OBS packaging fixes for protobuf-c dependency resolution on Fedora Rawhide.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.4.5...v0.5.3

v0.4.2 6 May 2026 Permalink GitHub release

v0.4.2

What's Changed

  • Fixed GPG verification/signing on Microsoft Store installs by detecting GPG from Git for Windows and
    common GnuPG install locations when it is not available on PATH.
  • Added Git settings for manually choosing the Git executable and GPG executable, with native file pickers.
  • Added Git version detection in Settings so the active Git binary is visible.
  • Added reset support for the Git executable override to return to automatic Git detection.
  • Avoided rewriting global Git config values when Settings is saved and nothing has changed.
  • Fixed the config file path shown in Settings for Microsoft Store installs, including an open-folder button
    for the real redirected config location.
  • Fixed commit history ordering when using gix so merge histories match git log ordering.
  • Fixed Microsoft Store/MSIX attributions packaging so the attributions window opens the generated
    attributions page.
  • Updated Microsoft Store/MSIX package icons with the new square icon assets.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.4.1...v0.4.2

v0.4.0 2 May 2026 Permalink GitHub release

v0.4.0

What's Changed

  • feat: add multi-window support (finally) by @cst8t in https://github.com/cst8t/gitmun/pull/22
    This means you can finally have as many instances of Gitmun open for as many projects as you want (as long as your computer can handle it)

  • feat: add i18next localisation by @cst8t in https://github.com/cst8t/gitmun/pull/23
    This should set things up nicely for when a Weblate instance is setup for crowd sourced translations.

Full Changelog: https://github.com/cst8t/gitmun/compare/v0.3.3...v0.4.0