tmuxido/CHANGELOG.md
cinco euzebio 66c2343851 feat: add self-update capability
Add `tmuxido --update` command to update binary from latest release.
- New `self_update` module with version comparison
- Atomic binary replacement with backup/rollback
- Fetches latest release from Gitea API
- Downloads correct binary for system architecture
2026-03-01 00:34:42 -03:00

2.1 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[0.4.0] - 2026-03-01

Added

  • Self-update feature (tmuxido --update) to update binary from latest GitHub release
  • New self_update module with version comparison and atomic binary replacement
  • --update CLI flag for in-place binary updates
  • Backup and rollback mechanism if update fails

[0.3.0] - 2026-03-01

Added

  • Dependency check for fzf and tmux at startup, before any operation
  • Automatic Linux package manager detection (apt, pacman, dnf, yum, zypper, emerge, xbps, apk)
  • Interactive installation prompt when required tools are missing
  • deps module with injectable BinaryChecker trait for unit testing without hitting the real system
  • Integration tests in tests/deps.rs (11 tests using real SystemBinaryChecker)
  • Docker test suite in tests/docker/ with 15 scenarios simulating a fresh Ubuntu 24.04 user

Fixed

  • Release pipeline publish step now reads DRONE_TAG via awk ENVIRON to prevent Drone's ${VAR} substitution from wiping local shell variables before the shell runs

[0.2.4] - 2026-03-01

Fixed

  • Coverage percentage calculation in CI (correct field from tarpaulin JSON output)
  • Release pipeline trigger now matches v* tag format instead of [0-9]*

[0.2.2] - 2026-02-28

Added

  • Coverage badge generated by cargo-tarpaulin in CI, hosted in Gitea Generic Package Registry
  • CI status, coverage, version, and Rust edition badges in README

[0.2.1] - 2026-02-28

Added

  • Drone CI pipeline (ci) running cargo fmt --check, cargo clippy, and cargo test on every push and pull request

[0.2.0] - 2026-02-28

Added

  • Unit tests for cache, session, and config modules
  • Integration tests for scan, session config, and cache lifecycle

Changed

  • Refactored business logic into lib.rs for better testability; main.rs is now a thin entrypoint

[0.1.1] - 2026-02-28

Fixed

  • Removed personal path references from default configuration and examples

[0.1.0] - 2026-02-28

Added

  • Initial release of tmuxido