Mercurial > hg > evolve
changeset 7082:6c0d12b12025 stable
evolve: move the common check for in-memory merge feature to compat module
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Mon, 03 Feb 2025 16:08:38 +0100 |
parents | 37086bb5544b |
children | f3b21a979a7d |
files | hgext3rd/evolve/compat.py hgext3rd/evolve/evolvecmd.py hgext3rd/evolve/rewriteutil.py |
diffstat | 3 files changed, 9 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext3rd/evolve/compat.py +++ b/hgext3rd/evolve/compat.py @@ -40,6 +40,13 @@ except (AttributeError, ImportError): mergestate = mergemod.mergestate # pytype: disable=module-attr +try: + mergestatemod.memmergestate + hasmemmergestate = True +except AttributeError: + # hg <= 5.5 (19590b126764) + hasmemmergestate = False + from . import ( exthelper, )
--- a/hgext3rd/evolve/evolvecmd.py +++ b/hgext3rd/evolve/evolvecmd.py @@ -911,12 +911,8 @@ return commitmsg def use_in_memory_merge(repo): - try: - from mercurial import mergestate as mergestatemod - mergestatemod.memmergestate - except (AttributeError, ImportError): + if not compat.hasmemmergestate: # no in-memory evolve if Mercurial lacks the required code - # hg <= 5.5 (19590b126764) return False config_value = repo.ui.config(b'experimental', b'evolution.in-memory') if config_value == b'force':
--- a/hgext3rd/evolve/rewriteutil.py +++ b/hgext3rd/evolve/rewriteutil.py @@ -233,14 +233,6 @@ revs = sorted(revs) return repomarks, revs -try: - from mercurial import mergestate - mergestate.memmergestate - hasmemmergestate = True -except (ImportError, AttributeError): - # hg <= 5.5 (19590b126764) - hasmemmergestate = False - def rewrite(repo, old, head, newbases, commitopts): """Return (nodeid, created) where nodeid is the identifier of the changeset generated by the rewrite process, and created is True if @@ -251,7 +243,7 @@ # mergestate and use that. We don't want that to happen, so we'll require # users of old Mercurial versions to run `hg touch` etc without # mergestate. - if not hasmemmergestate: + if not compat.hasmemmergestate: ms = compat.mergestate.read(repo) mergeutil.checkunresolved(ms)