# HG changeset patch # User Pierre-Yves David # Date 1553773075 -3600 # Node ID a019067fea9e80513595001d91534eed20546ece # Parent ab5bc57ba897a3a4e0d700caaaff52c54324a015# Parent 9b0cde5efbc9550d4523a41b884888ee6169c70c branching: merge with stable diff -r ab5bc57ba897 -r a019067fea9e hgext3rd/evolve/__init__.py --- a/hgext3rd/evolve/__init__.py Tue Mar 12 09:48:05 2019 -0700 +++ b/hgext3rd/evolve/__init__.py Thu Mar 28 12:37:55 2019 +0100 @@ -836,14 +836,14 @@ created = ret[1] if (opts['obsolete'] and None not in (created, expected['node']) and created != expected['node']): - tr = repo.transaction('import-obs') - try: - metadata = {'user': ui.username()} - repo.obsstore.create(tr, expected['node'], (created,), - metadata=metadata) - tr.close() - finally: - tr.release() + tr = repo.transaction('import-obs') + try: + metadata = {'user': ui.username()} + repo.obsstore.create(tr, expected['node'], (created,), + metadata=metadata) + tr.close() + finally: + tr.release() return ret diff -r ab5bc57ba897 -r a019067fea9e hgext3rd/topic/topicmap.py --- a/hgext3rd/topic/topicmap.py Tue Mar 12 09:48:05 2019 -0700 +++ b/hgext3rd/topic/topicmap.py Thu Mar 28 12:37:55 2019 +0100 @@ -9,6 +9,7 @@ cmdutil, extensions, repoview, + util, ) basefilter = set(['base', 'immutable']) @@ -164,8 +165,13 @@ def copy(self): """return an deep copy of the branchcache object""" - new = self.__class__(self, self.tipnode, self.tiprev, self.filteredhash, - self._closednodes) + if util.safehasattr(self, '_entries'): + _entries = self._entries + else: + # hg <= 4.9 (624d6683c705, b137a6793c51) + _entries = self + new = self.__class__(_entries, self.tipnode, self.tiprev, + self.filteredhash, self._closednodes) new.phaseshash = self.phaseshash return new