# HG changeset patch # User Anton Shestakov # Date 1709322072 10800 # Node ID 0ac82f1858f7c0eb7fef24181b4eb13783cdcede # Parent cdf929e69cde0b19c318f09c5d3275eea537eafb# Parent bee80cf468b147966b4b6be4d20ad29c442dbead test-compat: merge mercurial-5.2 into mercurial-5.1 diff -r cdf929e69cde -r 0ac82f1858f7 .gitlab-ci.yml --- a/.gitlab-ci.yml Mon Feb 05 15:19:51 2024 -0300 +++ b/.gitlab-ci.yml Fri Mar 01 16:41:12 2024 -0300 @@ -1,5 +1,6 @@ .prepare_hg: &prepare_hg - hg pull -R /ci/repos/mercurial/ + - hg pull -R /ci/repos/mercurial/ https://www.mercurial-scm.org/repo/hg-committed - hg_branch=${HG_BRANCH:-$(tests/testlib/map-hg-rev.sh "$(hg identify --branch)")} - hg -R /ci/repos/mercurial/ update "$hg_branch" - hg_rev=$(hg log -R /ci/repos/mercurial/ -r . -T '{node}') diff -r cdf929e69cde -r 0ac82f1858f7 .hgtags --- a/.hgtags Mon Feb 05 15:19:51 2024 -0300 +++ b/.hgtags Fri Mar 01 16:41:12 2024 -0300 @@ -107,3 +107,4 @@ 33f24dd8cfa2c57a7da2fa6757ba41ffc69da794 11.0.1 b9355f6f3093c0cf9698215f05059321880f28da 11.0.2 a625eb5acea4d682becd21759170306ab769afb2 11.1.0 +369e248b6312cc3b0777033a4632f2c9e18a0897 11.1.1 diff -r cdf929e69cde -r 0ac82f1858f7 CHANGELOG --- a/CHANGELOG Mon Feb 05 15:19:51 2024 -0300 +++ b/CHANGELOG Fri Mar 01 16:41:12 2024 -0300 @@ -1,6 +1,46 @@ Changelog ========= +11.1.2 - in progress +-------------------- + + * compatibility with Mercurial 6.7 + + * evolve: use functions from topic extension to set current topic and tns + +topic (1.1.2) + + * compatibility with Mercurial 6.7 + + * topic: handle commitstatus() with opts=None for hg <= 6.5 too + +11.1.1 -- 2024-02-05 +-------------------- + + * compatibility with Mercurial 6.6 + + * evolve: fix typo in "mercurial" and let hasmemmergestate be True sometimes + + * uncommit: set uncommit_source extra consistently in interactive mode + +topic (1.1.1) + + * compatibility with Mercurial 6.6 + + * topic: properly decode topic and topic namespace after reading from disk + * topic: wrap makebundlerepository() to wrap bundlerepository class + (issue6856) + * topic: internal config option to fix hg pick behavior (issue6406) + * topic: use the appropriate functions to change topic and topic namespace on + working directory update and don't write empty/default values to disk + + * topic namespaces: check that user-provided topic namespace names are + human-readable like topics + * topic namespaces: add tns_heads method to wirepeer directly instead of + using a subclass + * topic namespaces: remove .hg/topic-namespace file if it has the default + value ("none") + 11.1.0 -- 2023-10-23 -------------------- diff -r cdf929e69cde -r 0ac82f1858f7 debian/changelog --- a/debian/changelog Mon Feb 05 15:19:51 2024 -0300 +++ b/debian/changelog Fri Mar 01 16:41:12 2024 -0300 @@ -1,3 +1,9 @@ +mercurial-evolve (11.1.1-1) unstable; urgency=medium + + * new upstream release + + -- Anton Shestakov Mon, 05 Feb 2024 16:27:09 -0300 + mercurial-evolve (11.1.0-1) unstable; urgency=medium * new upstream release diff -r cdf929e69cde -r 0ac82f1858f7 hgext3rd/evolve/evolvecmd.py --- a/hgext3rd/evolve/evolvecmd.py Mon Feb 05 15:19:51 2024 -0300 +++ b/hgext3rd/evolve/evolvecmd.py Fri Mar 01 16:41:12 2024 -0300 @@ -18,6 +18,7 @@ context, encoding, error, + extensions, hg, merge, mergeutil, @@ -991,13 +992,12 @@ compat._update(repo, dest, branchmerge=False, force=True) if keepbranch: compat.setbranch(repo, orig.branch()) - if util.safehasattr(repo, 'currenttopic'): - # uurrgs - # there no other topic setter yet - if not orig.topic() and repo.vfs.exists(b'topic'): - repo.vfs.unlink(b'topic') - else: - repo.vfs.write(b'topic', orig.topic()) + if util.safehasattr(repo, 'currenttns') and repo.currenttns != orig.topic_namespace(): + topic = extensions.find(b'topic') + topic._changecurrenttns(repo, orig.topic_namespace()) + if util.safehasattr(repo, 'currenttopic') and repo.currenttopic != orig.topic(): + topic = extensions.find(b'topic') + topic._changecurrenttopic(repo, orig.topic()) stats = merge.graft(repo, orig, pctx, [b'destination', b'evolving'], True) diff -r cdf929e69cde -r 0ac82f1858f7 hgext3rd/evolve/metadata.py --- a/hgext3rd/evolve/metadata.py Mon Feb 05 15:19:51 2024 -0300 +++ b/hgext3rd/evolve/metadata.py Fri Mar 01 16:41:12 2024 -0300 @@ -5,7 +5,7 @@ # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. -__version__ = b'11.1.1.dev0' -testedwith = b'4.9 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 6.0 6.1 6.2 6.3 6.4 6.5 6.6' +__version__ = b'11.1.2.dev0' +testedwith = b'4.9 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 6.0 6.1 6.2 6.3 6.4 6.5 6.6 6.7' minimumhgversion = b'4.9' buglink = b'https://bz.mercurial-scm.org/' diff -r cdf929e69cde -r 0ac82f1858f7 hgext3rd/topic/__init__.py --- a/hgext3rd/topic/__init__.py Mon Feb 05 15:19:51 2024 -0300 +++ b/hgext3rd/topic/__init__.py Fri Mar 01 16:41:12 2024 -0300 @@ -237,9 +237,9 @@ b'log.topic': b'green_background', } -__version__ = b'1.1.1.dev0' +__version__ = b'1.1.2.dev0' -testedwith = b'4.9 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 6.0 6.1 6.2 6.3 6.4 6.5 6.6' +testedwith = b'4.9 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 6.0 6.1 6.2 6.3 6.4 6.5 6.6 6.7' minimumhgversion = b'4.9' buglink = b'https://bz.mercurial-scm.org/' diff -r cdf929e69cde -r 0ac82f1858f7 hgext3rd/topic/compat.py --- a/hgext3rd/topic/compat.py Mon Feb 05 15:19:51 2024 -0300 +++ b/hgext3rd/topic/compat.py Fri Mar 01 16:41:12 2024 -0300 @@ -59,6 +59,8 @@ def _orig(repo, node, branch, bheads=None, tip=None, **opts): opts = pycompat.byteskwargs(opts) return orig(repo, node, branch, bheads=bheads, tip=tip, opts=opts) + if opts is None: + opts = {} opts = pycompat.strkwargs(opts) return overridefn(_orig, repo, node, branch, bheads=bheads, tip=tip, **opts) extensions.wrapfunction(cmdutil, 'commitstatus', _override) diff -r cdf929e69cde -r 0ac82f1858f7 hgext3rd/topic/topicmap.py --- a/hgext3rd/topic/topicmap.py Mon Feb 05 15:19:51 2024 -0300 +++ b/hgext3rd/topic/topicmap.py Fri Mar 01 16:41:12 2024 -0300 @@ -68,16 +68,16 @@ def _phaseshash(repo, maxrev): """uniq ID for a phase matching a set of rev""" - revs = set() cl = repo.changelog fr = cl.filteredrevs - getrev = compat.getgetrev(cl) - for n in compat.nonpublicphaseroots(repo): - r = getrev(n) - if r not in fr and r < maxrev: - revs.add(r) + nppr = compat.nonpublicphaseroots(repo) + # starting with hg 6.7rc0 phase roots are already revs instead of nodes + # hg <= 6.6 (68289ed170c7) + if not util.safehasattr(repo._phasecache, '_phaseroots'): + getrev = compat.getgetrev(cl) + nppr = set(getrev(n) for n in nppr) + revs = sorted(set(r for r in nppr if r not in fr and r < maxrev)) key = nullid - revs = sorted(revs) if revs: s = hashlib.sha1() for rev in revs: diff -r cdf929e69cde -r 0ac82f1858f7 tests/test-issue-6028.t --- a/tests/test-issue-6028.t Mon Feb 05 15:19:51 2024 -0300 +++ b/tests/test-issue-6028.t Fri Mar 01 16:41:12 2024 -0300 @@ -130,6 +130,11 @@ atop:[4] merged b working directory is now at c920dd828523 +checking that we didn't write an empty topic file when relocating the commit on disk + + $ test -f .hg/topic + [1] + casually checking issue6141: position of p2 is not changed $ hg log -r 'predecessors(.) + .'