Skip to content

Latest commit

 

History

History
195 lines (115 loc) · 4.32 KB

File metadata and controls

195 lines (115 loc) · 4.32 KB

Changelog

v0.2.10 - 2026-07-20

Features

  • Compact path display by factoring out common prefix and suffix
  • Color-code path diffs in terminal output
  • Polish path diff display with padded braces and root prefix absorption
  • Render empty path diff as "." so suffix factoring kicks in for sub-paths
  • Omit duration from completion message when under 1 second

Fixes

  • Truncate progress bar message to fit terminal width

Chores

  • Gate release jobs on fmt/clippy/test and publish to crates.io from CI via Trusted Publishing
  • Use cross-deploy helper for just deploy-linux

v0.2.9 - 2026-04-07

Features

  • Exclude renamed/reflinked files from throughput summary

Fixes

  • Include file path in error output via anyhow context

Performance

  • Skip recursive walk when moving directory to non-existent dest (single rename)
  • Rename non-overlapping subdirectories wholesale during merge
  • Skip collect_total_size and progress bar for same-device moves

Docs

  • Add crates.io install option, fix verbosity flag descriptions

Chores

  • Populate GitHub Release notes from CHANGELOG.md

v0.2.8 - 2026-03-21

Features

  • Auto-create dest directory for multiple sources (dirs always; files with trailing /)
  • Dim individual completion messages only in batch mode
  • Batch summary with bold/italic progress labels
  • Dim completion messages and show average transfer speed
  • Batch progress bar showing total size and item count for multi-source operations

Fixes

  • Add -f flag to cpx calls in make_fixtures.sh to allow re-running
  • Hide batch progress bar for single-source operations

Refactoring

  • Remove SourceKind::Mixed; validate_sources returns SourceKind directly
  • Replace is_dir bool with SourceKind enum; consolidate message formatting into Ctx methods
  • Inline single-caller methods and extract shared helpers from run_batch
  • Use integer arithmetic in human_speed to eliminate clippy cast suppressions

Chores

  • Upgrade indicatif 0.17.11 -> 0.18.4
  • Replace Makefile with justfile, add just fix command
  • Add deploy-linux just command for cross-compiling

Docs

  • Replace scattered behavior sections with source/dest behavior matrix in README
  • Fix stale CLAUDE.md references

v0.2.7 - 2026-02-07

Features

  • Force exit on double Ctrl-C

Fixes

  • Let current file finish on first Ctrl+C, abort on second
  • Make Ctrl+C responsive during large file transfers
  • Preserve empty directories and clean up incrementally during moves
  • Use _exit() for force Ctrl-C to avoid deadlock on cleanup

Performance

  • Remove double buffering in buffered_copy

Refactoring

  • Use recursive DFS for directory merge/copy
  • Introduce Ctx struct to bundle session-level state

v0.2.6 - 2026-02-05

Features

  • Add dry-run option (-n/--dry-run)
  • Support MODE_DRY_RUN environment variable for dry-run mode
  • Overwrite protection (-f flag)
  • Ctrl+C handling

Refactoring

  • Add ensure_dest for destination resolution
  • Simplify progress handling and add batch validation

v0.2.5 - 2025-11-03

Features

  • Total bytes progress bar

Fixes

  • Total bytes progress tracking

Refactoring

  • Redesign messages and progress bars
  • Pass progress handler around instead of progress bars

v0.2.4 - 2025-07-18

Features

  • Sort files while merging directories

v0.2.3 - 2025-06-10

Fixes

  • Finish message display

v0.2.2 - 2025-06-09

Refactoring

  • Simplify progress bar handling
  • Use AsRef<[Src]> for flexible source input

v0.2.1 - 2025-06-02

Features

  • Accept multiple source arguments

v0.2.0 - 2025-05-31

Features

  • Add cpx (copy) binary
  • Fallback for any reflink error

Refactoring

  • Split into file, dir, and bin modules with unit tests
  • Use fs::rename CrossesDevices error instead of manual device comparison

v0.1.3 - 2025-05-29

Features

  • Colored error messages
  • Different symbols for move and merge
  • Logging support

Fixes

  • Skip steady tick when progress bar is hidden

v0.1.2 - 2025-05-28

Fixes

  • Only remove source directory if empty

v0.1.1 - 2025-05-28

Fixes

  • Graceful exit handling
  • Handle case where dest parent cannot be determined
  • Fix mvx a b single file rename

v0.1.0 - 2025-05-27

Initial release: enhanced mv command with directory merging, progress bars, and quiet mode.