# HG changeset patch # User Anton Shestakov # Date 1698342577 10800 # Node ID a7d94f235488ab7a8fc97df68b74f54c9feb4b58 # Parent c329bd4beaa64a219ed20e52788f7e57768a677e topic: remove transaction validator compatibility for hg 5.3 diff -r c329bd4beaa6 -r a7d94f235488 hgext3rd/topic/__init__.py --- a/hgext3rd/topic/__init__.py Wed Feb 07 16:31:44 2024 -0300 +++ b/hgext3rd/topic/__init__.py Thu Oct 26 14:49:37 2023 -0300 @@ -843,23 +843,11 @@ reporef = weakref.ref(self) if self.ui.configbool(b'experimental', b'enforce-single-head'): - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - origvalidator_single_head = tr._validator - def _validate_single_head(tr2): repo = reporef() flow.enforcesinglehead(repo, tr2) - def validator(tr2): - _validate_single_head(tr2) - return origvalidator_single_head(tr2) - - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - tr._validator = validator - else: - tr.addvalidator(b'000-enforce-single-head', _validate_single_head) + tr.addvalidator(b'000-enforce-single-head', _validate_single_head) topicmodeserver = self.ui.config(b'experimental', b'topic-mode.server', b'ignore') @@ -867,23 +855,11 @@ b'topic.publish-bare-branch') ispush = desc.startswith((b'push', b'serve')) if (topicmodeserver != b'ignore' and ispush): - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - origvalidator_untopiced = tr._validator - def _validate_untopiced(tr2): repo = reporef() flow.rejectuntopicedchangeset(repo, tr2) - def validator(tr2): - _validate_untopiced(tr2) - return origvalidator_untopiced(tr2) - - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - tr._validator = validator - else: - tr.addvalidator(b'000-reject-untopiced', _validate_untopiced) + tr.addvalidator(b'000-reject-untopiced', _validate_untopiced) elif publishbare and ispush: origclose = tr.close @@ -899,43 +875,18 @@ b'topic.allow-publish', True) if not allow_publish: - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - origvalidator_publish = tr._validator - def _validate_publish(tr2): repo = reporef() flow.reject_publish(repo, tr2) - def validator(tr2): - _validate_publish(tr2) - return origvalidator_publish(tr2) - - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - tr._validator = validator - else: - tr.addvalidator(b'000-reject-publish', _validate_publish) - - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - origvalidator_affected_tns = tr._validator + tr.addvalidator(b'000-reject-publish', _validate_publish) def _validate_affected_tns(tr2): repo = reporef() assert repo is not None # help pytype find_affected_tns(repo, tr2) - def validator(tr2): - result = origvalidator_affected_tns(tr2) - _validate_affected_tns(tr2) - return result - - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - tr._validator = validator - else: - tr.addvalidator(b'999-find-affected-tns', _validate_affected_tns) + tr.addvalidator(b'999-find-affected-tns', _validate_affected_tns) # real transaction start ct = self.currenttopic diff -r c329bd4beaa6 -r a7d94f235488 hgext3rd/topic/discovery.py --- a/hgext3rd/topic/discovery.py Wed Feb 07 16:31:44 2024 -0300 +++ b/hgext3rd/topic/discovery.py Thu Oct 26 14:49:37 2023 -0300 @@ -263,9 +263,6 @@ return tr._prepushheads = _nbheads(op.repo) reporef = weakref.ref(op.repo) - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - oldvalidator = tr._validator def _validate(tr): repo = reporef() @@ -295,15 +292,7 @@ b"pushing new heads") raise compat.StateError(msg, hint=hint) - def validator(tr): - _validate(tr) - return oldvalidator(tr) - - if util.safehasattr(tr, '_validator'): - # hg <= 5.3 (36f08ae87ef6) - tr._validator = validator - else: - tr.addvalidator(b'000-new-head-check', _validate) + tr.addvalidator(b'000-new-head-check', _validate) handlecheckheads.params = frozenset()