Skip to content

v2.40.0

Latest

Choose a tag to compare

@Byron Byron released this 31 Jul 10:35
ba139e0

The headline feature is 40% more scanning speed in my particular scenario. More cores on Linux should now scale much better as well, so I wouldn't be surprised if it's even faster for you.

New Features

  • Replace jwalk with a work-stealing directory walker for up to 40% more scan speed

    Replace jwalk and Rayon with a crate-local walker built on crossbeam-deque
    and standard-library threads. Directory reads and metadata collection run on
    stealable worker queues, while a bounded channel limits completed batches held
    ahead of the iterator. The walker never follows symlinks and no longer sorts
    entries because consumers sort their final results where needed.

    Provide two delivery modes on the shared implementation: aggregate scans and
    recursive deletion use completion order for maximum throughput and continuous
    progress; interactive traversal uses parent-first delivery so ancestor sizes
    and entry counts grow throughout the scan. Recursive deletion remains parallel
    through scoped standard-library workers.

    Raise the macOS default from three to eight filesystem workers based on
    warm-cache measurements.

Commit Statistics

  • 4 commits contributed to the release.
  • 1 day passed between releases.
  • 1 commit was understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Thanks Clippy

Clippy helped 1 time to make code idiomatic.

Commit Details

view details
  • Uncategorized
    • Prepare changelog prior to release (5c9976f)
    • Merge pull request #355 from Byron/workstealing (0b21b22)
    • Thanks clippy (9e36f03)
    • Replace jwalk with a work-stealing directory walker for up to 40% more scan speed (8ada93f)