( )⚙ D11099 dirstate-v2: Separate iterators for dirfoldmap and debugdirstate

This is an archive of the discontinued Mercurial Phabricator instance.

dirstate-v2: Separate iterators for dirfoldmap and debugdirstate
ClosedPublic

Authored by SimonSapin on Jul 16 2021, 8:37 AM.

Details

Summary

dirstatemap.dirfoldmap was recently changed to re-use a Rust iterator
that was added for the hg debugdirstate command.

That iterator was based on all nodes in the tree dirstate without an entry
only existing to hold child nodes, and therefore being directories.
However to optimize status further we may want to store additional nodes
for unknown or ignored files and directories. At that point the two users
of this iterator will want different things, so let’s make two iterators
instead.

See doc-comments in dispatch.rs.

Diff Detail

Repository
rHG Mercurial
Branch
default
Lint
No Linters Available
Unit
No Unit Test Coverage

Event Timeline

SimonSapin created this revision.Jul 16 2021, 8:37 AM
Alphare accepted this revision.Jul 16 2021, 9:40 AM
This revision is now accepted and ready to land.Jul 16 2021, 9:40 AM
baymax updated this revision to Diff 29356.Jul 16 2021, 5:45 PM

✅ refresh by Heptapod after a successful CI run (🐙 💚)

baymax updated this revision to Diff 29615.Jul 20 2021, 3:42 PM

✅ refresh by Heptapod after a successful CI run (🐙 💚)