changeset 6719:bd8130a7eaf1 mercurial-5.7

test-compat: merge mercurial-5.8 into mercurial-5.7
author Anton Shestakov <av6@dwimlabs.net>
date Fri, 01 Mar 2024 13:50:17 -0300
parents 155de3e19adb (current diff) 92bde649e5aa (diff)
children 01063266d7a8 d1c9abab585e
files
diffstat 10 files changed, 73 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/.gitlab-ci.yml	Sun Feb 04 16:28:25 2024 -0300
+++ b/.gitlab-ci.yml	Fri Mar 01 13:50:17 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}')
--- a/.hgtags	Sun Feb 04 16:28:25 2024 -0300
+++ b/.hgtags	Fri Mar 01 13:50:17 2024 -0300
@@ -107,3 +107,4 @@
 33f24dd8cfa2c57a7da2fa6757ba41ffc69da794 11.0.1
 b9355f6f3093c0cf9698215f05059321880f28da 11.0.2
 a625eb5acea4d682becd21759170306ab769afb2 11.1.0
+369e248b6312cc3b0777033a4632f2c9e18a0897 11.1.1
--- a/CHANGELOG	Sun Feb 04 16:28:25 2024 -0300
+++ b/CHANGELOG	Fri Mar 01 13:50:17 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
 --------------------
 
--- a/debian/changelog	Sun Feb 04 16:28:25 2024 -0300
+++ b/debian/changelog	Fri Mar 01 13:50:17 2024 -0300
@@ -1,3 +1,9 @@
+mercurial-evolve (11.1.1-1) unstable; urgency=medium
+
+  * new upstream release
+
+ -- Anton Shestakov <av6@dwimlabs.net>  Mon, 05 Feb 2024 16:27:09 -0300
+
 mercurial-evolve (11.1.0-1) unstable; urgency=medium
 
   * new upstream release
--- a/hgext3rd/evolve/evolvecmd.py	Sun Feb 04 16:28:25 2024 -0300
+++ b/hgext3rd/evolve/evolvecmd.py	Fri Mar 01 13:50:17 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)
 
--- a/hgext3rd/evolve/metadata.py	Sun Feb 04 16:28:25 2024 -0300
+++ b/hgext3rd/evolve/metadata.py	Fri Mar 01 13:50:17 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/'
--- a/hgext3rd/topic/__init__.py	Sun Feb 04 16:28:25 2024 -0300
+++ b/hgext3rd/topic/__init__.py	Fri Mar 01 13:50:17 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/'
 
--- a/hgext3rd/topic/compat.py	Sun Feb 04 16:28:25 2024 -0300
+++ b/hgext3rd/topic/compat.py	Fri Mar 01 13:50:17 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)
--- a/hgext3rd/topic/topicmap.py	Sun Feb 04 16:28:25 2024 -0300
+++ b/hgext3rd/topic/topicmap.py	Fri Mar 01 13:50:17 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:
--- a/tests/test-issue-6028.t	Sun Feb 04 16:28:25 2024 -0300
+++ b/tests/test-issue-6028.t	Fri Mar 01 13:50:17 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(.) + .'