D7531: rust-matchers: add support for `explicitmatcher` in `dirstate.status`
Alphare (Raphaël Gomès)
phabricator at mercurial-scm.org
Fri Nov 29 18:22:47 UTC 2019
Alphare created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D7531
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
@@ -1095,11 +1095,14 @@
dmap.preload()
use_rust = True
+
+ allowed_matchers = (matchmod.alwaysmatcher, matchmod.exactmatcher)
+
if rustmod is None:
use_rust = False
elif subrepos:
use_rust = False
- if bool(listunknown):
+ elif bool(listunknown):
# Pathauditor does not exist yet in Rust, unknown files
# can't be trusted.
use_rust = False
@@ -1107,7 +1110,7 @@
# Rust has no ignore mechanism yet, so don't use Rust for
# commands that need ignore.
use_rust = False
- elif not match.always():
+ elif not isinstance(match, allowed_matchers):
# Matchers have yet to be implemented
use_rust = False
@@ -1135,6 +1138,7 @@
clean,
) = rustmod.status(
dmap._rustmap,
+ match,
self._rootdir,
bool(listclean),
self._lastnormaltime,
To: Alphare, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list