Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/py-mercurial Merge a number of patches already c...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/0e8606be73d3
branches:  trunk
changeset: 432651:0e8606be73d3
user:      joerg <joerg%pkgsrc.org@localhost>
date:      Sun May 24 01:16:26 2020 +0000

description:
Merge a number of patches already committed or under review for issues
found in the NetBSD deployment. Bump revision.

diffstat:

 devel/py-mercurial/Makefile            |    3 +-
 devel/py-mercurial/distinfo            |   10 +-
 devel/py-mercurial/patches/patch-D8480 |  181 ++++++++++++++++++++++++++
 devel/py-mercurial/patches/patch-D8481 |   67 +++++++++
 devel/py-mercurial/patches/patch-D8487 |   27 +++
 devel/py-mercurial/patches/patch-D8490 |   54 +++++++
 devel/py-mercurial/patches/patch-D8505 |   53 +++++++
 devel/py-mercurial/patches/patch-D8522 |  229 +++++++++++++++++++++++++++++++++
 devel/py-mercurial/patches/patch-D8574 |  129 ++++++++++++++++++
 devel/py-mercurial/patches/patch-D8575 |  132 +++++++++++++++++++
 10 files changed, 883 insertions(+), 2 deletions(-)

diffs (truncated from 936 to 300 lines):

diff -r e0da7dea9e5c -r 0e8606be73d3 devel/py-mercurial/Makefile
--- a/devel/py-mercurial/Makefile       Sun May 24 01:10:30 2020 +0000
+++ b/devel/py-mercurial/Makefile       Sun May 24 01:16:26 2020 +0000
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.40 2020/05/05 12:12:47 wiz Exp $
+# $NetBSD: Makefile,v 1.41 2020/05/24 01:16:26 joerg Exp $
 
 DISTNAME=      mercurial-${VERSION}
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
+PKGREVISION=   1
 CATEGORIES=    devel scm
 MASTER_SITES=  https://www.mercurial-scm.org/release/
 
diff -r e0da7dea9e5c -r 0e8606be73d3 devel/py-mercurial/distinfo
--- a/devel/py-mercurial/distinfo       Sun May 24 01:10:30 2020 +0000
+++ b/devel/py-mercurial/distinfo       Sun May 24 01:16:26 2020 +0000
@@ -1,6 +1,14 @@
-$NetBSD: distinfo,v 1.87 2020/05/05 12:12:47 wiz Exp $
+$NetBSD: distinfo,v 1.88 2020/05/24 01:16:26 joerg Exp $
 
 SHA1 (mercurial-5.4.tar.gz) = 652a2c61dec85f5e9eb101425861e9648bd6369a
 RMD160 (mercurial-5.4.tar.gz) = 002ccbd67bc903b7e19e470db44503e6cb37a2f2
 SHA512 (mercurial-5.4.tar.gz) = 5f92d653ab74da4696ba7f1402e6cb219c0c514a5eeecb9d7282ab95aef2c6f16d5c8e3d0149525f3dc694a133c713b671ba92327e1b0dc3ad8701d522986d8d
 Size (mercurial-5.4.tar.gz) = 7722447 bytes
+SHA1 (patch-D8480) = dca33fd25007a160cff02054ca659cce2a01511c
+SHA1 (patch-D8481) = 71dc7d12f1b892d2705dfc900faddf85a917e4c6
+SHA1 (patch-D8487) = beba279489895c9855f1ca2013c1197ef2f1d86c
+SHA1 (patch-D8490) = 96a4eefb403919d17f188573b7d1dc34cef28388
+SHA1 (patch-D8505) = 3244948bd009746941c9bdbfd5844f058c3caf59
+SHA1 (patch-D8522) = 6bc2d7b6fc40b217339b78ee2745c7ca33073642
+SHA1 (patch-D8574) = 56cecc1c83558803186e84d90ef67b4dce68f8e9
+SHA1 (patch-D8575) = 5f414acb04ba5f8c141ceada93f29f6f7d43a833
diff -r e0da7dea9e5c -r 0e8606be73d3 devel/py-mercurial/patches/patch-D8480
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/py-mercurial/patches/patch-D8480    Sun May 24 01:16:26 2020 +0000
@@ -0,0 +1,181 @@
+$NetBSD: patch-D8480,v 1.1 2020/05/24 01:16:26 joerg Exp $
+
+# HG changeset patch
+# User Joerg Sonnenberger <joerg%bec.de@localhost>
+# Date 1587738964 -7200
+#      Fri Apr 24 16:36:04 2020 +0200
+# Branch stable
+# Node ID 8467bb8885f5468abba2ed57d3476d04fd8fb426
+# Parent  edffab2cf0ead5140fdaa391c1c827ddc53dfe35
+bundle: make obsolescence parts optional
+
+It is useful to ship obsolescence markers as part of clonebundles or
+pullbundles, but they shouldn't stop a non-evolution client from
+working. Marking the part as optional is enough to ensure this.
+This does not affect dynamically created bundles part of the regular
+pull/push exchange. Adjust existing test case coverage to ensure this is
+visible.
+
+Differential Revision: https://phab.mercurial-scm.org/D8480
+
+diff -r edffab2cf0ea -r 8467bb8885f5 mercurial/bundle2.py
+--- mercurial/bundle2.py       Tue May 12 22:20:56 2020 +0200
++++ mercurial/bundle2.py       Fri Apr 24 16:36:04 2020 +0200
+@@ -1729,7 +1729,7 @@
+ 
+     if opts.get(b'obsolescence', False):
+         obsmarkers = repo.obsstore.relevantmarkers(outgoing.missing)
+-        buildobsmarkerspart(bundler, obsmarkers)
++        buildobsmarkerspart(bundler, obsmarkers, False)
+ 
+     if opts.get(b'phases', False):
+         headsbyphase = phases.subsetphaseheads(repo, outgoing.missing)
+@@ -1852,7 +1852,7 @@
+     part.addparam(b'requirements', requirements, mandatory=True)
+ 
+ 
+-def buildobsmarkerspart(bundler, markers):
++def buildobsmarkerspart(bundler, markers, mandatory):
+     """add an obsmarker part to the bundler with <markers>
+ 
+     No part is created if markers is empty.
+@@ -1866,7 +1866,7 @@
+     if version is None:
+         raise ValueError(b'bundler does not support common obsmarker format')
+     stream = obsolete.encodemarkers(markers, True, version=version)
+-    return bundler.newpart(b'obsmarkers', data=stream)
++    return bundler.newpart(b'obsmarkers', data=stream, mandatory=mandatory)
+ 
+ 
+ def writebundle(
+diff -r edffab2cf0ea -r 8467bb8885f5 mercurial/exchange.py
+--- mercurial/exchange.py      Tue May 12 22:20:56 2020 +0200
++++ mercurial/exchange.py      Fri Apr 24 16:36:04 2020 +0200
+@@ -1157,7 +1157,7 @@
+     pushop.stepsdone.add(b'obsmarkers')
+     if pushop.outobsmarkers:
+         markers = obsutil.sortedmarkers(pushop.outobsmarkers)
+-        bundle2.buildobsmarkerspart(bundler, markers)
++        bundle2.buildobsmarkerspart(bundler, markers, True)
+ 
+ 
+ @b2partsgenerator(b'bookmarks')
+@@ -2615,7 +2615,7 @@
+         subset = [c.node() for c in repo.set(b'::%ln', heads)]
+         markers = repo.obsstore.relevantmarkers(subset)
+         markers = obsutil.sortedmarkers(markers)
+-        bundle2.buildobsmarkerspart(bundler, markers)
++        bundle2.buildobsmarkerspart(bundler, markers, True)
+ 
+ 
+ @getbundle2partsgenerator(b'phases')
+diff -r edffab2cf0ea -r 8467bb8885f5 tests/test-obsolete-bundle-strip.t
+--- tests/test-obsolete-bundle-strip.t Tue May 12 22:20:56 2020 +0200
++++ tests/test-obsolete-bundle-strip.t Fri Apr 24 16:36:04 2020 +0200
+@@ -1444,3 +1444,35 @@
+   # unbundling: new changesets 9ac430e15fca (1 drafts)
+   # unbundling: (1 other changesets obsolete on arrival)
+   # unbundling: (run 'hg update' to get a working copy)
++
++Test that obsolescence markers in bundles are ignored if unsupported
++
++  $ hg init repo-with-obs
++  $ cd repo-with-obs
++  $ hg debugbuilddag +1
++  $ hg debugobsolete `getid 0`
++  1 new obsolescence markers
++  obsoleted 1 changesets
++  $ hg bundle --config experimental.evolution.bundle-obsmarker=true --all --hidden bundle-with-obs
++  1 changesets found
++  $ cd ..
++  $ hg init repo-without-obs
++  $ cd repo-without-obs
++  $ hg --config experimental.evolution=False unbundle ../repo-with-obs/bundle-with-obs --debug
++  bundle2-input-bundle: 1 params with-transaction
++  bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported
++  adding changesets
++  add changeset 1ea73414a91b
++  adding manifests
++  adding file changes
++  bundle2-input-part: total payload size 190
++  bundle2-input-part: "cache:rev-branch-cache" (advisory) supported
++  bundle2-input-part: total payload size 39
++  bundle2-input-part: "obsmarkers" (advisory) supported
++  bundle2-input-part: total payload size 50
++  ignoring obsolescence markers, feature not enabled
++  bundle2-input-bundle: 3 parts total
++  updating the branch cache
++  added 1 changesets with 0 changes to 0 files
++  new changesets 1ea73414a91b (1 drafts)
++  (run 'hg update' to get a working copy)
+diff -r edffab2cf0ea -r 8467bb8885f5 tests/test-obsolete-changeset-exchange.t
+--- tests/test-obsolete-changeset-exchange.t   Tue May 12 22:20:56 2020 +0200
++++ tests/test-obsolete-changeset-exchange.t   Fri Apr 24 16:36:04 2020 +0200
+@@ -103,7 +103,7 @@
+   changegroup -- {nbchanges: 1, version: 02} (mandatory: True)
+       f89bcc95eba5174b1ccc3e33a82e84c96e8338ee
+   cache:rev-branch-cache -- {} (mandatory: False)
+-  obsmarkers -- {} (mandatory: True)
++  obsmarkers -- {} (mandatory: False)
+       version: 1 (70 bytes)
+       9d73aac1b2ed7d53835eaeec212ed41ea47da53a f89bcc95eba5174b1ccc3e33a82e84c96e8338ee 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 
+diff -r edffab2cf0ea -r 8467bb8885f5 tests/test-obsolete-distributed.t
+--- tests/test-obsolete-distributed.t  Tue May 12 22:20:56 2020 +0200
++++ tests/test-obsolete-distributed.t  Fri Apr 24 16:36:04 2020 +0200
+@@ -138,14 +138,42 @@
+ 
+   $ hg up 'desc("ROOT")'
+   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+-  $ hg pull --confirm --config ui.interactive=True << EOF
++  $ hg pull --debug --confirm --config ui.interactive=True << EOF
+   > n
+   > EOF
+   pulling from $TESTTMP/distributed-chain-building/server
++  query 1; heads
+   searching for changes
++  taking quick initial sample
++  query 2; still undecided: 1, sample size is: 1
++  2 total queries in 0.0091s
++  1 changesets found
++  list of changesets:
++  391a2bf12b1b8b05a72400ae36b26d50a091dc22
++  listing keys for "bookmarks"
++  bundle2-output-bundle: "HG20", 5 parts total
++  bundle2-output-part: "changegroup" (params: 1 mandatory 1 advisory) streamed payload
++  bundle2-output-part: "listkeys" (params: 1 mandatory) empty payload
++  bundle2-output-part: "obsmarkers" streamed payload
++  bundle2-output-part: "phase-heads" 48 bytes payload
++  bundle2-output-part: "cache:rev-branch-cache" (advisory) streamed payload
++  bundle2-input-bundle: with-transaction
++  bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported
+   adding changesets
++  add changeset 391a2bf12b1b
+   adding manifests
+   adding file changes
++  adding c_B1 revisions
++  bundle2-input-part: total payload size 485
++  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
++  bundle2-input-part: "obsmarkers" supported
++  bundle2-input-part: total payload size 143
++  bundle2-input-part: "phase-heads" supported
++  bundle2-input-part: total payload size 48
++  bundle2-input-part: "cache:rev-branch-cache" (advisory) supported
++  bundle2-input-part: total payload size 39
++  bundle2-input-bundle: 5 parts total
++  checking for updated bookmarks
+   adding 1 changesets with 1 changes to 1 files (+1 heads)
+   1 new obsolescence markers
+   obsoleting 1 changesets
+diff -r edffab2cf0ea -r 8467bb8885f5 tests/test-obsolete.t
+--- tests/test-obsolete.t      Tue May 12 22:20:56 2020 +0200
++++ tests/test-obsolete.t      Fri Apr 24 16:36:04 2020 +0200
+@@ -1632,7 +1632,7 @@
+       e016b03fd86fcccc54817d120b90b751aaf367d6
+       b0551702f918510f01ae838ab03a463054c67b46
+   cache:rev-branch-cache -- {} (mandatory: False)
+-  obsmarkers -- {} (mandatory: True)
++  obsmarkers -- {} (mandatory: False)
+       version: 1 (92 bytes)
+       e008cf2834908e5d6b0f792a9d4b0e2272260fb8 b0551702f918510f01ae838ab03a463054c67b46 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
+   phase-heads -- {} (mandatory: True)
diff -r e0da7dea9e5c -r 0e8606be73d3 devel/py-mercurial/patches/patch-D8481
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/py-mercurial/patches/patch-D8481    Sun May 24 01:16:26 2020 +0000
@@ -0,0 +1,67 @@
+$NetBSD: patch-D8481,v 1.1 2020/05/24 01:16:26 joerg Exp $
+
+# HG changeset patch
+# User Joerg Sonnenberger <joerg%bec.de@localhost>
+# Date 1587751225 -7200
+#      Fri Apr 24 20:00:25 2020 +0200
+# Branch stable
+# Node ID 3d5fb6cab832475975c96b6503f66c8adb7b984c
+# Parent  ed684a82e29bbea8556c3079f6159a9159689078
+pullbundles: use unfiltered repo for head/base matching
+
+The unfiltered view works even when changeset transistion from draft to
+hidden phase. The normal visibility is already ensured by discovery as
+invisible heads would have been filtered out before. Skipping the
+filtering has a positive impact on performance, too.
+
+Differential Revision: https://phab.mercurial-scm.org/D8481
+
+diff -r ed684a82e29b -r 3d5fb6cab832 mercurial/wireprotov1server.py
+--- mercurial/wireprotov1server.py     Thu May 07 03:14:52 2020 -0700
++++ mercurial/wireprotov1server.py     Fri Apr 24 20:00:25 2020 +0200
+@@ -391,7 +391,7 @@
+     res = exchange.filterclonebundleentries(repo, res)
+     if not res:
+         return None
+-    cl = repo.changelog
++    cl = repo.unfiltered().changelog
+     heads_anc = cl.ancestors([cl.rev(rev) for rev in heads], inclusive=True)
+     common_anc = cl.ancestors([cl.rev(rev) for rev in common], inclusive=True)
+     compformats = clientcompressionsupport(proto)
+diff -r ed684a82e29b -r 3d5fb6cab832 tests/test-pull-bundle.t
+--- tests/test-pull-bundle.t   Thu May 07 03:14:52 2020 -0700
++++ tests/test-pull-bundle.t   Fri Apr 24 20:00:25 2020 +0200
+@@ -36,6 +36,8 @@
+   $ cat <<EOF > .hg/hgrc
+   > [server]
+   > pullbundle = True
++  > [experimental]
++  > evolution = True
+   > [extensions]
+   > blackbox =
+   > EOF
+@@ -185,3 +187,24 @@
+   * sending pullbundle "0.hg" (glob)
+   * sending pullbundle "0.hg" (glob)
+   $ rm repo/.hg/blackbox.log
++
++Test processing when nodes used in the pullbundle.manifest end up being hidden
++
++  $ hg --repo repo debugobsolete ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a
++  1 new obsolescence markers
++  obsoleted 1 changesets
++  $ hg serve --repo repo --config server.view=visible -p $HGPORT -d --pid-file=hg.pid -E errors.log
++  $ cat hg.pid >> $DAEMON_PIDS
++  $ hg clone http://localhost:$HGPORT repo-obs
++  requesting all changes
++  adding changesets
++  adding manifests
++  adding file changes
++  adding changesets
++  adding manifests
++  adding file changes
++  added 2 changesets with 2 changes to 2 files
++  new changesets bbd179dfa0a7:effea6de0384
++  updating to branch default
++  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
++  $ killdaemons.py
diff -r e0da7dea9e5c -r 0e8606be73d3 devel/py-mercurial/patches/patch-D8487
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/py-mercurial/patches/patch-D8487    Sun May 24 01:16:26 2020 +0000
@@ -0,0 +1,27 @@
+$NetBSD: patch-D8487,v 1.1 2020/05/24 01:16:26 joerg Exp $
+
+# HG changeset patch
+# User Joerg Sonnenberger <joerg%bec.de@localhost>
+# Date 1587944362 -7200
+#      Mon Apr 27 01:39:22 2020 +0200
+# Branch stable
+# Node ID 5d309906ed0e4e2b0ade4d1539cbea7dc2c44771



Home | Main Index | Thread Index | Old Index