Files
sized/CHANGELOG.md
T
gamertan f379064e44 feat: v0.2.0 optimization refactor and docs
- Refactor core traversal to single-pass O(N) tree construction
- Optimize CSV output using `csv` crate for robust escaping
- Optimize JSON output with zero-copy serialization
- Add MANUAL.md
- Bump version to 0.2.0
- Remove walkdir dependency
2026-01-22 13:17:12 -05:00

1.6 KiB

Changelog

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

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.2.0] - 2026-01-22

Changed

  • Refactored core traversal logic to a single-pass, in-memory tree construction algorithm. This visits every file exactly once, replacing the previous O(N \times Depth) behavior with O(N).
  • Switched default CSV output to use the csv crate for robust escaping (fixes issues with filenames containing commas).
  • Optimized JSON output to use zero-copy serialization, improving performance and memory usage.

Added

  • Added MANUAL.md with comprehensive usage documentation.

Removed

  • Removed walkdir dependency (replaced by ignore::WalkBuilder for all traversal).

[0.1.0] - 2026-01-22

Added

  • Core directory traversal and size calculation logic.
  • Parallel processing using rayon for high performance.
  • Rich table output format using comfy-table with colored entries.
  • Recursive depth control via -d/--depth.
  • Minimum size filtering via -m/--min-size.
  • Multi-column sorting support (--sort).
  • Relative path display by default, with -f/--path-full override.
  • "Total size" summary with dual units (Binary/Decimal) and block counts.
  • Concurrency control via -j/--threads.
  • .gitignore and .ignore file support via -i/--ignore.
  • Multiple output formats: Text (Table), CSV, JSON (--format).
  • Save to file functionality with auto-naming (--save).
  • Shell completion generation (--completions).