Skip to content

v0.10.1

Latest

Choose a tag to compare

@cst8t cst8t released this 12 Aug 01:24
· 6 commits to main since this release
701e9d5

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: v0.10.0...v0.10.1