Skip to content

0.1.2 - 2026-03-15

Choose a tag to compare

@github-actions github-actions released this 15 Mar 14:22

Release Notes

Added

  • SQLite analytics cache (repolyze-store crate) — repeat analysis on unchanged repos is instant
  • Contributor analytics views: analyze users-contribution and analyze activity with --format table
  • analyze all (default) shows both contribution and activity tables in TUI
  • Per-contributor activity facts: weekday/hour commit counts, active date buckets
  • Cross-repository contributor merging by lowercased email with date deduplication
  • Plain-text table output with right-aligned numbers, dash separators, and totals row
  • Analysis header showing period, project count, and elapsed time
  • Recursive directory discovery — pass a parent folder and nested repos are found automatically
  • TUI Analyze submenu: All / Users contribution / Most active days and hours
  • TUI Metadata screen showing database path, file size, and table row counts
  • Ctrl+C graceful quit from any TUI screen
  • Worktree dirty detection — dirty repos bypass cache for fresh analysis
  • Scan run history tracking (hit/miss/bypass/success/failure)
  • Dev/release database path separation (target/debug/repolyze-dev.db vs ~/.repolyze/repolyze.db)
  • scripts/release.py for automated version bump, merge, and tag workflow
  • Project website with feature cards, usage examples, and live output demo

Changed

  • TUI Analyze screen shows results directly instead of path entry form
  • Errors menu item replaced with Metadata screen
  • Help screen updated to reflect current screens and keybindings
  • Compare screen key hints show Ctrl+C instead of misleading Q for quit
  • Static screens (Help, Metadata) no longer respond to arrow keys

Fixed

  • Saturating arithmetic for net_lines, lines_modified, and weekday/hour commit merging
  • most_active_index returns N/A for contributors with zero activity instead of "Monday"
  • load_snapshot distinguishes QueryReturnedNoRows from real database errors
  • Transaction rollback on COMMIT failure in upsert_commit and save_snapshot
  • Store errors logged instead of silently discarded
  • Stale analysis state cleared when navigating home
  • Status message reset between analysis runs
  • Empty snapshot_ids slice guarded against invalid SQL
  • View/format validation runs before expensive analysis in CLI
  • HeadMetadata.branch_name uses Option<String> instead of empty-string sentinel

Infrastructure

  • WAL mode enabled for concurrent read-write safety
  • Migrations restructured as ordered list for future V2 support
  • ON DELETE CASCADE on all foreign keys
  • open_default_store eliminates duplicated store-opening code across CLI and TUI
  • StoreError::Io variant added for path-related failures

Install repolyze 0.1.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/maximgorbatyuk/repolyze/releases/download/v0.1.2/repolyze-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install maximgorbatyuk/tap/repolyze

Download repolyze 0.1.2

File Platform Checksum
repolyze-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
repolyze-x86_64-apple-darwin.tar.xz Intel macOS checksum
repolyze-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum