phase: also overwrite phase's sets when replacing a phasecache
We need to copy this new attributes around too. This fix an issue where phases
data used by 'not public()' were not invalidated properly.
--- a/mercurial/phases.py Mon Jun 15 15:57:47 2015 -0700
+++ b/mercurial/phases.py Mon Jun 15 16:08:22 2015 -0700
@@ -171,7 +171,7 @@
return ph
def replace(self, phcache):
- for a in 'phaseroots dirty opener _phaserevs'.split():
+ for a in 'phaseroots dirty opener _phaserevs _phasesets'.split():
setattr(self, a, getattr(phcache, a))
def _getphaserevsnative(self, repo):