HomePhabricator

rust-status: move to recursive traversal to prepare for parallel traversal

Authored by Alphare.

Description

rust-status: move to recursive traversal to prepare for parallel traversal

I have looked into traversing the working directory in parallel either
by a recursive or an iterative algorithm. The recursive approach won quite
decisively both in terms of performance and code readability.

You can look at my experiment here:
https://heptapod.octobus.net/Alphare/rayon-recursive-traversal

The chance of a stack overflow happening because the directories get too nested
seems slim.

This change does not yet do anything in parallel.

Differential Revision: https://phab.mercurial-scm.org/D8215