# HG changeset patch # User Steve Borho # Date 2010-05-04 19:52:25 # Node ID 380ab78dbd69e48367efd373d8824915a9cfcebe # Parent 9651fa5a3cbf68dfb2b5030feca8fff8e0146e04 workingctx: add explicit status method, add ignored and fix clean workingctx.clean() and memctx.clean() have both been returning ignored files since their creation. This patch fixes clean() while introducing a method for querying ignored files. The new status() method can be used to explicitly override the default (fast) arguments used by the _status property. diff --git a/mercurial/context.py b/mercurial/context.py --- a/mercurial/context.py +++ b/mercurial/context.py @@ -642,6 +642,15 @@ class workingctx(changectx): self._parents = [changectx(self._repo, x) for x in p] return self._parents + def status(self, ignored=False, clean=False, unknown=False): + """Explicit status query + Unless this method is used to query the working copy status, the + _status property will implicitly read the status using its default + arguments.""" + self._status = self._repo.status(ignored=ignored, clean=clean, + unknown=unknown) + return self._status + def manifest(self): return self._manifest def user(self): @@ -663,8 +672,10 @@ class workingctx(changectx): return self._status[3] def unknown(self): return self._status[4] + def ignored(self): + return self._status[5] def clean(self): - return self._status[5] + return self._status[6] def branch(self): return self._extra['branch'] def extra(self): @@ -878,8 +889,10 @@ class memctx(object): return self._status[3] def unknown(self): return self._status[4] + def ignored(self): + return self._status[5] def clean(self): - return self._status[5] + return self._status[6] def branch(self): return self._extra['branch'] def extra(self):