phases: fix verify with secret csets
Verify uses repo.cancopy() to detect whether a repo is a plain old
local repo, so it was giving a confusing error message when secret
changesets were present.
--- a/mercurial/hg.py Sun Jan 29 12:59:21 2012 -0600
+++ b/mercurial/hg.py Sun Jan 29 13:36:10 2012 -0600
@@ -289,7 +289,7 @@
dircleanup = DirCleanup(dest)
copy = False
- if srcrepo.cancopy() and islocal(dest):
+ if srcrepo.cancopy() and islocal(dest) and not srcrepo.revs("secret()"):
copy = not pull and not rev
if copy:
--- a/mercurial/localrepo.py Sun Jan 29 12:59:21 2012 -0600
+++ b/mercurial/localrepo.py Sun Jan 29 13:36:10 2012 -0600
@@ -637,10 +637,6 @@
def local(self):
return self
- def cancopy(self):
- return (repo.repository.cancopy(self)
- and not self._phaseroots[phases.secret])
-
def join(self, f):
return os.path.join(self.path, f)