[Updated] D8520: status: also support for `traversedir` callback in the Rust fast-path

Alphare (Raphaël Gomès) phabricator at mercurial-scm.org
Thu May 14 20:31:45 UTC 2020


Closed by commit rHG4ba2a6ffcf24: status: also support for `traversedir` callback in the Rust fast-path (authored by Alphare).
This revision was automatically updated to reflect the committed changes.
This revision was not accepted when it landed; it landed in state "Needs Review".

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D8520?vs=21354&id=21382

CHANGES SINCE LAST ACTION
  https://phab.mercurial-scm.org/D8520/new/

REVISION DETAIL
  https://phab.mercurial-scm.org/D8520

AFFECTED FILES
  mercurial/dirstate.py

CHANGE DETAILS

diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -1107,6 +1107,7 @@
             unknown,
             warnings,
             bad,
+            traversed,
         ) = rustmod.status(
             self._map._rustmap,
             matcher,
@@ -1117,7 +1118,13 @@
             bool(list_clean),
             bool(list_ignored),
             bool(list_unknown),
+            bool(matcher.traversedir),
         )
+
+        if matcher.traversedir:
+            for dir in traversed:
+                matcher.traversedir(dir)
+
         if self._ui.warn:
             for item in warnings:
                 if isinstance(item, tuple):
@@ -1193,8 +1200,6 @@
             use_rust = False
         elif sparse.enabled:
             use_rust = False
-        elif match.traversedir is not None:
-            use_rust = False
         elif not isinstance(match, allowed_matchers):
             # Some matchers have yet to be implemented
             use_rust = False



To: Alphare, #hg-reviewers
Cc: mercurial-patches
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-patches/attachments/20200514/ff4529ac/attachment-0002.html>


More information about the Mercurial-patches mailing list