0s autopkgtest [16:28:31]: starting date and time: 2025-11-17 16:28:31+0000 0s autopkgtest [16:28:31]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [16:28:31]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.3vzscl7c/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:dulwich --apt-upgrade hg-git --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=dulwich/0.24.10-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-amd64 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@sto01-4.secgroup --name adt-resolute-amd64-hg-git-20251117-162830-juju-7f2275-prod-proposed-migration-environment-2-18868380-ccee-4ebc-b9a1-912b947e5b3c --image adt/ubuntu-resolute-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-autopkgtest-workers-amd64 -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 4s Creating nova instance adt-resolute-amd64-hg-git-20251117-162830-juju-7f2275-prod-proposed-migration-environment-2-18868380-ccee-4ebc-b9a1-912b947e5b3c from image adt/ubuntu-resolute-amd64-server-20251117.img (UUID 9762b0cc-7c5b-4854-acd5-cc74ad0de8c6)... 43s autopkgtest [16:29:14]: testbed dpkg architecture: amd64 43s autopkgtest [16:29:14]: testbed apt version: 3.1.11 44s autopkgtest [16:29:15]: @@@@@@@@@@@@@@@@@@@@ test bed setup 44s autopkgtest [16:29:15]: testbed release detected to be: None 45s autopkgtest [16:29:16]: updating testbed package index (apt update) 45s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 45s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 45s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 45s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 45s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [81.5 kB] 45s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 45s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [839 kB] 45s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9848 B] 45s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main i386 Packages [118 kB] 45s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 Packages [159 kB] 45s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 c-n-f Metadata [3236 B] 45s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/restricted i386 Packages [3744 B] 45s Get:13 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 Packages [64.6 kB] 45s Get:14 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 c-n-f Metadata [336 B] 45s Get:15 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 Packages [585 kB] 45s Get:16 http://ftpmaster.internal/ubuntu resolute-proposed/universe i386 Packages [271 kB] 45s Get:17 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 c-n-f Metadata [20.1 kB] 45s Get:18 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse i386 Packages [6516 B] 45s Get:19 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 Packages [13.4 kB] 45s Get:20 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 c-n-f Metadata [680 B] 47s Fetched 2286 kB in 1s (3244 kB/s) 47s Reading package lists... 48s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 48s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 48s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 48s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 48s Reading package lists... 49s Reading package lists... 49s Building dependency tree... 49s Reading state information... 49s Calculating upgrade... 49s The following packages will be upgraded: 49s usbutils 49s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 49s Need to get 83.9 kB of archives. 49s After this operation, 0 B of additional disk space will be used. 49s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 usbutils amd64 1:019-1 [83.9 kB] 49s dpkg-preconfigure: unable to re-open stdin: No such file or directory 49s Fetched 83.9 kB in 0s (0 B/s) 49s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 83372 files and directories currently installed.) 49s Preparing to unpack .../usbutils_1%3a019-1_amd64.deb ... 49s Unpacking usbutils (1:019-1) over (1:018-2) ... 49s Setting up usbutils (1:019-1) ... 49s Processing triggers for man-db (2.13.1-1) ... 50s autopkgtest [16:29:21]: upgrading testbed (apt dist-upgrade and autopurge) 50s Reading package lists... 50s Building dependency tree... 50s Reading state information... 50s Calculating upgrade... 51s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 51s Reading package lists... 51s Building dependency tree... 51s Reading state information... 51s Solving dependencies... 51s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 53s autopkgtest [16:29:24]: testbed running kernel: Linux 6.17.0-5-generic #5-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 10:00:33 UTC 2025 54s autopkgtest [16:29:25]: @@@@@@@@@@@@@@@@@@@@ apt-source hg-git 54s Get:1 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (dsc) [2142 B] 54s Get:2 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (tar) [222 kB] 54s Get:3 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (diff) [6816 B] 55s gpgv: Signature made Sun Feb 16 14:22:41 2025 UTC 55s gpgv: using RSA key 8F6DE104377F3B11E741748731F3144544A1741A 55s gpgv: issuer "tchet@debian.org" 55s gpgv: Can't check signature: No public key 55s dpkg-source: warning: cannot verify inline signature for ./hg-git_1.2.0-1.dsc: no acceptable signature found 55s autopkgtest [16:29:26]: testing package hg-git version 1.2.0-1 55s autopkgtest [16:29:26]: build not needed 56s autopkgtest [16:29:27]: test testsuite: preparing testbed 56s Reading package lists... 56s Building dependency tree... 56s Reading state information... 56s Solving dependencies... 56s The following NEW packages will be installed: 56s git git-man liberror-perl mercurial mercurial-common mercurial-git 56s python3-dulwich unzip 56s 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded. 56s Need to get 9453 kB of archives. 56s After this operation, 48.7 MB of additional disk space will be used. 56s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 liberror-perl all 0.17030-1 [23.5 kB] 56s Get:2 http://ftpmaster.internal/ubuntu resolute/main amd64 git-man all 1:2.51.0-1ubuntu1 [1179 kB] 57s Get:3 http://ftpmaster.internal/ubuntu resolute/main amd64 git amd64 1:2.51.0-1ubuntu1 [4414 kB] 58s Get:4 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-common all 7.0.1-2 [2783 kB] 58s Get:5 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial amd64 7.0.1-2 [428 kB] 58s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 python3-dulwich amd64 0.24.10-1 [383 kB] 58s Get:7 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-git all 1.2.0-1 [60.9 kB] 58s Get:8 http://ftpmaster.internal/ubuntu resolute/main amd64 unzip amd64 6.0-28ubuntu7 [180 kB] 58s Fetched 9453 kB in 1s (7141 kB/s) 58s Selecting previously unselected package liberror-perl. 58s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 83372 files and directories currently installed.) 58s Preparing to unpack .../0-liberror-perl_0.17030-1_all.deb ... 58s Unpacking liberror-perl (0.17030-1) ... 58s Selecting previously unselected package git-man. 58s Preparing to unpack .../1-git-man_1%3a2.51.0-1ubuntu1_all.deb ... 58s Unpacking git-man (1:2.51.0-1ubuntu1) ... 58s Selecting previously unselected package git. 58s Preparing to unpack .../2-git_1%3a2.51.0-1ubuntu1_amd64.deb ... 58s Unpacking git (1:2.51.0-1ubuntu1) ... 58s Selecting previously unselected package mercurial-common. 58s Preparing to unpack .../3-mercurial-common_7.0.1-2_all.deb ... 58s Unpacking mercurial-common (7.0.1-2) ... 58s Selecting previously unselected package mercurial. 58s Preparing to unpack .../4-mercurial_7.0.1-2_amd64.deb ... 58s Unpacking mercurial (7.0.1-2) ... 58s Selecting previously unselected package python3-dulwich. 58s Preparing to unpack .../5-python3-dulwich_0.24.10-1_amd64.deb ... 58s Unpacking python3-dulwich (0.24.10-1) ... 58s Selecting previously unselected package mercurial-git. 58s Preparing to unpack .../6-mercurial-git_1.2.0-1_all.deb ... 58s Unpacking mercurial-git (1.2.0-1) ... 58s Selecting previously unselected package unzip. 58s Preparing to unpack .../7-unzip_6.0-28ubuntu7_amd64.deb ... 58s Unpacking unzip (6.0-28ubuntu7) ... 58s Setting up mercurial-common (7.0.1-2) ... 59s Setting up unzip (6.0-28ubuntu7) ... 59s Setting up liberror-perl (0.17030-1) ... 59s Setting up python3-dulwich (0.24.10-1) ... 59s Setting up git-man (1:2.51.0-1ubuntu1) ... 59s Setting up mercurial (7.0.1-2) ... 60s Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version 60s Setting up mercurial-git (1.2.0-1) ... 60s mercurial-git extension is disabled by default. 60s You can follow the instructions in /usr/share/doc/mercurial-git/README.Debian to enable it. 60s Setting up git (1:2.51.0-1ubuntu1) ... 60s Processing triggers for man-db (2.13.1-1) ... 61s autopkgtest [16:29:32]: test testsuite: [----------------------- 61s no username found, using 'ubuntu@autopkgtest.local' instead 61s cd tests && /usr/bin/python3 run-tests.py --with-hg=/usr/bin/hg --blacklist=/tmp/autopkgtest.5x2CBK/build.aD5/src/debian/hg-git.test_blacklist 61s running 82 tests using 2 parallel processes 69s ssssss 69s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull.t 69s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull.t#draft.err 69s @@ -39,17 +39,92 @@ 69s $ hg pull ../gitrepo 69s pulling from ../gitrepo 69s importing 3 git commits 69s - adding bookmark beta 69s - adding bookmark delta 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ git --git-dir .hg/git for-each-ref 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 69s $ hg log -Tp 69s - 2|draft|delta|tip 69s - 1|draft|beta| 69s - 0|draft|master|t_alpha 69s $ cd .. 69s $ rm -rf hgrepo 69s 69s @@ -61,20 +136,92 @@ 69s $ hg pull ../gitrepo 69s pulling from ../gitrepo 69s importing 3 git commits 69s - adding bookmark beta 69s - adding bookmark delta 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ git --git-dir .hg/git for-each-ref 69s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 69s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 69s $ hg log -Tp 69s - 2|draft|delta|default/delta tip 69s - 1|draft|beta|default/beta 69s - 0|draft|master|default/master t_alpha 69s $ cd .. 69s $ rm -rf hgrepo 69s 69s @@ -86,20 +233,92 @@ 69s $ hg pull 69s pulling from $TESTTMP/gitrepo 69s importing 3 git commits 69s - adding bookmark beta 69s - adding bookmark delta 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ git --git-dir .hg/git for-each-ref 69s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 69s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 69s $ hg log -Tp 69s - 2|draft|delta|default/delta tip 69s - 1|draft|beta|default/beta 69s - 0|draft|master|default/master t_alpha 69s $ cd .. 69s $ rm -rf hgrepo 69s 69s @@ -110,18 +329,183 @@ 69s $ hg -R hgrepo pull -r t_alpha 69s pulling from $TESTTMP/gitrepo 69s importing 1 git commits 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70 (1 drafts) 69s - (run 'hg update' to get a working copy) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo update t_alpha 69s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 69s + abort: unknown revision 't_alpha' 69s + [10] 69s $ hg log -Tp -R hgrepo 69s - 0|draft|master|default/master t_alpha tip 69s 69s no-op pull 69s $ hg -R hgrepo pull -r t_alpha 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s + importing 1 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s 69s no-op pull with added bookmark 69s $ cd gitrepo 69s @@ -129,8 +513,91 @@ 69s $ cd .. 69s $ hg -R hgrepo pull -r epsilon 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s - adding bookmark epsilon 69s + importing 1 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s 69s pull something that doesn't exist 69s $ hg -R hgrepo pull -r kaflaflibob 69s @@ -149,39 +616,187 @@ 69s pull a branch 69s $ hg -R hgrepo pull -r beta 69s pulling from $TESTTMP/gitrepo 69s - importing 1 git commits 69s - adding bookmark beta 69s - new changesets 7fe02317c63d (1 drafts) 69s - (run 'hg update' to get a working copy) 69s + importing 2 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo log --graph --template=phases 69s - o changeset: 1:7fe02317c63d 69s - | bookmark: beta 69s - | tag: default/beta 69s - | tag: tip 69s - | phase: draft 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - bookmark: master 69s - tag: default/epsilon 69s - tag: default/master 69s - tag: t_alpha 69s - phase: draft 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s 69s no-op pull should affect phases 69s $ hg -R hgrepo phase -fs beta 69s + abort: unknown revision 'beta' 69s + [10] 69s $ hg -R hgrepo pull -r beta 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s + importing 2 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo phase beta 69s - 1: draft 69s + abort: unknown revision 'beta' 69s + [10] 69s 69s 69s add another commit and tag to the git repo 69s @@ -197,49 +812,92 @@ 69s pull everything else 69s $ hg -R hgrepo pull 69s pulling from $TESTTMP/gitrepo 69s - importing 2 git commits 69s - adding bookmark delta 69s - updating bookmark master 69s - new changesets 678ebee93e38:6f898ad1f3e1 (2 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + importing 4 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo log --graph --template=phases 69s - o changeset: 3:6f898ad1f3e1 69s - | bookmark: master 69s - | tag: default/master 69s - | tag: tip 69s - | phase: draft 69s - | parent: 0:ff7a2f2d8d70 69s - | user: test 69s - | date: Mon Jan 01 00:00:13 2007 +0000 69s - | summary: add gamma 69s - | 69s - | o changeset: 2:678ebee93e38 69s - |/ bookmark: delta 69s - | tag: default/delta 69s - | phase: draft 69s - | parent: 0:ff7a2f2d8d70 69s - | user: test 69s - | date: Mon Jan 01 00:00:12 2007 +0000 69s - | summary: add delta 69s - | 69s - | o changeset: 1:7fe02317c63d 69s - |/ bookmark: beta 69s - | tag: default/beta 69s - | tag: t_beta 69s - | phase: draft 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - tag: default/epsilon 69s - tag: t_alpha 69s - phase: draft 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s add a merge to the git repo, and delete the branch 69s $ cd gitrepo 69s $ git merge -q -m "Merge branch 'beta'" beta 69s @@ -252,60 +910,186 @@ 69s 69s pull the merge 69s $ hg -R hgrepo tags | grep default/beta 69s - default/beta 1:7fe02317c63d 69s + [1] 69s $ hg -R hgrepo pull --config git.pull-prune-remote-branches=false 69s pulling from $TESTTMP/gitrepo 69s - importing 1 git commits 69s - updating bookmark master 69s - deleting bookmark beta 69s - new changesets a02330f767a4 (1 drafts) 69s - (run 'hg update' to get a working copy) 69s + importing 5 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo tags | grep default/beta 69s - default/beta 1:7fe02317c63d 69s + [1] 69s $ hg -R hgrepo pull 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s + importing 5 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo tags | grep default/beta 69s [1] 69s $ hg -R hgrepo log --graph 69s - o changeset: 4:a02330f767a4 69s - |\ bookmark: master 69s - | | tag: default/master 69s - | | tag: tip 69s - | | parent: 3:6f898ad1f3e1 69s - | | parent: 1:7fe02317c63d 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: Merge branch 'beta' 69s - | | 69s - | o changeset: 3:6f898ad1f3e1 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: add gamma 69s - | | 69s - | | o changeset: 2:678ebee93e38 69s - | |/ bookmark: delta 69s - | | tag: default/delta 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:12 2007 +0000 69s - | | summary: add delta 69s - | | 69s - o | changeset: 1:7fe02317c63d 69s - |/ tag: t_beta 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - tag: default/epsilon 69s - tag: t_alpha 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s pull with wildcards 69s $ cd gitrepo 69s $ git checkout -qb releases/v1 master 69s @@ -325,65 +1109,92 @@ 69s $ cd .. 69s $ hg -R hgrepo pull -r 'releases/*' 69s pulling from $TESTTMP/gitrepo 69s - importing 2 git commits 69s - adding bookmark releases/v1 69s - adding bookmark releases/v2 69s - new changesets 218b2d0660d3:a3f95e150b0a (2 drafts) 69s - (run 'hg heads .' to see heads, 'hg merge' to merge) 69s + importing 6 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo log --graph 69s - o changeset: 6:a3f95e150b0a 69s - | bookmark: releases/v2 69s - | tag: default/releases/v2 69s - | tag: tip 69s - | parent: 4:a02330f767a4 69s - | user: test 69s - | date: Mon Jan 01 00:00:15 2007 +0000 69s - | summary: add eta 69s - | 69s - | o changeset: 5:218b2d0660d3 69s - |/ bookmark: releases/v1 69s - | tag: default/releases/v1 69s - | user: test 69s - | date: Mon Jan 01 00:00:14 2007 +0000 69s - | summary: add zeta 69s - | 69s - o changeset: 4:a02330f767a4 69s - |\ bookmark: master 69s - | | tag: default/master 69s - | | parent: 3:6f898ad1f3e1 69s - | | parent: 1:7fe02317c63d 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: Merge branch 'beta' 69s - | | 69s - | o changeset: 3:6f898ad1f3e1 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: add gamma 69s - | | 69s - | | o changeset: 2:678ebee93e38 69s - | |/ bookmark: delta 69s - | | tag: default/delta 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:12 2007 +0000 69s - | | summary: add delta 69s - | | 69s - o | changeset: 1:7fe02317c63d 69s - |/ tag: t_beta 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - tag: default/epsilon 69s - tag: t_alpha 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s 69s add old and new commits to the git repo -- make sure we're using the commit date 69s and not the author date 69s @@ -418,15 +1229,8 @@ 69s pulling from $TESTTMP/gitrepo 69s no changes found 69s $ hg -R hgrepo log -r master 69s - changeset: 4:a02330f767a4 69s - bookmark: master 69s - tag: default/master 69s - parent: 3:6f898ad1f3e1 69s - parent: 1:7fe02317c63d 69s - user: test 69s - date: Mon Jan 01 00:00:13 2007 +0000 69s - summary: Merge branch 'beta' 69s - 69s + abort: unknown revision 'master' 69s + [10] 69s 69s $ cd gitrepo 69s $ git checkout -q master 69s @@ -441,50 +1245,93 @@ 69s $ cd .. 69s $ hg -R hgrepo pull 69s pulling from $TESTTMP/gitrepo 69s - importing 3 git commits 69s - updating bookmark master 69s - new changesets 49713da8f665:e103a73f33be (3 drafts) 69s - (run 'hg heads .' to see heads, 'hg merge' to merge) 69s + importing 7 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo heads 69s - changeset: 9:e103a73f33be 69s - bookmark: master 69s - tag: default/master 69s - tag: tip 69s - user: test 69s - date: Wed Jan 01 00:00:00 2014 +0000 69s - summary: newcommit 69s - 69s - changeset: 7:49713da8f665 69s - tag: newtag 69s - tag: oldtag 69s - parent: 4:a02330f767a4 69s - user: test 69s - date: Sat Mar 01 00:00:00 2014 +0000 69s - summary: oldtag 69s - 69s - changeset: 6:a3f95e150b0a 69s - bookmark: releases/v2 69s - tag: default/releases/v2 69s - parent: 4:a02330f767a4 69s - user: test 69s - date: Mon Jan 01 00:00:15 2007 +0000 69s - summary: add eta 69s - 69s - changeset: 5:218b2d0660d3 69s - bookmark: releases/v1 69s - tag: default/releases/v1 69s - user: test 69s - date: Mon Jan 01 00:00:14 2007 +0000 69s - summary: add zeta 69s - 69s - changeset: 2:678ebee93e38 69s - bookmark: delta 69s - tag: default/delta 69s - parent: 0:ff7a2f2d8d70 69s - user: test 69s - date: Mon Jan 01 00:00:12 2007 +0000 69s - summary: add delta 69s - 69s + [1] 69s 69s test for ssh vulnerability 69s 69s @@ -502,10 +1349,162 @@ 69s abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 69s [255] 69s $ hg pull -q 'git+ssh://fakehost|shellcommand/path' 69s - ssh: * fakehost%7?shellcommand* (glob) 69s - abort: git remote error: The remote server unexpectedly closed the connection. 69s - [255] 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 391, in fetch 69s + result = self.fetch_pack(remote.path, heads) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1644, in fetch_pack 69s + ret = self._call_client( 69s + remote, 69s + ...<4 lines>... 69s + progress.progress, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1680, in _call_client 69s + ret = func(path, *args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 69s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 69s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 69s + con = self.ssh_vendor.run_command( 69s + self.host, 69s + ...<4 lines>... 69s + **kwargs, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/_ssh.py", line 23, in run_command 69s + assert isinstance(command, str) 69s + ~~~~~~~~~~^^^^^^^^^^^^^^ 69s + AssertionError 69s + [1] 69s $ hg pull -q 'git+ssh://fakehost%7Cshellcommand/path' 69s - ssh: * fakehost%7?shellcommand* (glob) 69s - abort: git remote error: The remote server unexpectedly closed the connection. 69s - [255] 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 391, in fetch 69s + result = self.fetch_pack(remote.path, heads) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1644, in fetch_pack 69s + ret = self._call_client( 69s + remote, 69s + ...<4 lines>... 69s + progress.progress, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1680, in _call_client 69s + ret = func(path, *args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 69s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 69s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 69s + con = self.ssh_vendor.run_command( 69s + self.host, 69s + ...<4 lines>... 69s + **kwargs, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/_ssh.py", line 23, in run_command 69s + assert isinstance(command, str) 69s + ~~~~~~~~~~^^^^^^^^^^^^^^ 69s + AssertionError 69s + [1] 69s 69s ERROR: test-pull.t#draft output changed 69s ! 69s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull.t 69s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull.t#secret.err 69s @@ -39,17 +39,92 @@ 69s $ hg pull ../gitrepo 69s pulling from ../gitrepo 69s importing 3 git commits 69s - adding bookmark beta 69s - adding bookmark delta 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ git --git-dir .hg/git for-each-ref 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 69s $ hg log -Tp 69s - 2|draft|delta|tip 69s - 1|draft|beta| 69s - 0|draft|master|t_alpha 69s $ cd .. 69s $ rm -rf hgrepo 69s 69s @@ -61,20 +136,92 @@ 69s $ hg pull ../gitrepo 69s pulling from ../gitrepo 69s importing 3 git commits 69s - adding bookmark beta 69s - adding bookmark delta 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ git --git-dir .hg/git for-each-ref 69s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 69s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 69s $ hg log -Tp 69s - 2|draft|delta|default/delta tip 69s - 1|draft|beta|default/beta 69s - 0|draft|master|default/master t_alpha 69s $ cd .. 69s $ rm -rf hgrepo 69s 69s @@ -86,20 +233,92 @@ 69s $ hg pull 69s pulling from $TESTTMP/gitrepo 69s importing 3 git commits 69s - adding bookmark beta 69s - adding bookmark delta 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ git --git-dir .hg/git for-each-ref 69s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 69s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 69s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 69s $ hg log -Tp 69s - 2|draft|delta|default/delta tip 69s - 1|draft|beta|default/beta 69s - 0|draft|master|default/master t_alpha 69s $ cd .. 69s $ rm -rf hgrepo 69s 69s @@ -110,18 +329,183 @@ 69s $ hg -R hgrepo pull -r t_alpha 69s pulling from $TESTTMP/gitrepo 69s importing 1 git commits 69s - adding bookmark master 69s - new changesets ff7a2f2d8d70 (1 drafts) 69s - (run 'hg update' to get a working copy) 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo update t_alpha 69s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 69s + abort: unknown revision 't_alpha' 69s + [10] 69s $ hg log -Tp -R hgrepo 69s - 0|draft|master|default/master t_alpha tip 69s 69s no-op pull 69s $ hg -R hgrepo pull -r t_alpha 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s + importing 1 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s 69s no-op pull with added bookmark 69s $ cd gitrepo 69s @@ -129,8 +513,91 @@ 69s $ cd .. 69s $ hg -R hgrepo pull -r epsilon 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s - adding bookmark epsilon 69s + importing 1 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s 69s pull something that doesn't exist 69s $ hg -R hgrepo pull -r kaflaflibob 69s @@ -149,39 +616,187 @@ 69s pull a branch 69s $ hg -R hgrepo pull -r beta 69s pulling from $TESTTMP/gitrepo 69s - importing 1 git commits 69s - adding bookmark beta 69s - new changesets 7fe02317c63d (1 drafts) 69s - (run 'hg update' to get a working copy) 69s + importing 2 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo log --graph --template=phases 69s - o changeset: 1:7fe02317c63d 69s - | bookmark: beta 69s - | tag: default/beta 69s - | tag: tip 69s - | phase: draft 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - bookmark: master 69s - tag: default/epsilon 69s - tag: default/master 69s - tag: t_alpha 69s - phase: draft 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s 69s no-op pull should affect phases 69s $ hg -R hgrepo phase -fs beta 69s + abort: unknown revision 'beta' 69s + [10] 69s $ hg -R hgrepo pull -r beta 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s + importing 2 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo phase beta 69s - 1: draft 69s + abort: unknown revision 'beta' 69s + [10] 69s 69s 69s add another commit and tag to the git repo 69s @@ -197,49 +812,92 @@ 69s pull everything else 69s $ hg -R hgrepo pull 69s pulling from $TESTTMP/gitrepo 69s - importing 2 git commits 69s - adding bookmark delta 69s - updating bookmark master 69s - new changesets 678ebee93e38:6f898ad1f3e1 (2 drafts) 69s - (run 'hg heads' to see heads, 'hg merge' to merge) 69s + importing 4 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo log --graph --template=phases 69s - o changeset: 3:6f898ad1f3e1 69s - | bookmark: master 69s - | tag: default/master 69s - | tag: tip 69s - | phase: draft 69s - | parent: 0:ff7a2f2d8d70 69s - | user: test 69s - | date: Mon Jan 01 00:00:13 2007 +0000 69s - | summary: add gamma 69s - | 69s - | o changeset: 2:678ebee93e38 69s - |/ bookmark: delta 69s - | tag: default/delta 69s - | phase: draft 69s - | parent: 0:ff7a2f2d8d70 69s - | user: test 69s - | date: Mon Jan 01 00:00:12 2007 +0000 69s - | summary: add delta 69s - | 69s - | o changeset: 1:7fe02317c63d 69s - |/ bookmark: beta 69s - | tag: default/beta 69s - | tag: t_beta 69s - | phase: draft 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - tag: default/epsilon 69s - tag: t_alpha 69s - phase: draft 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s add a merge to the git repo, and delete the branch 69s $ cd gitrepo 69s $ git merge -q -m "Merge branch 'beta'" beta 69s @@ -252,60 +910,186 @@ 69s 69s pull the merge 69s $ hg -R hgrepo tags | grep default/beta 69s - default/beta 1:7fe02317c63d 69s + [1] 69s $ hg -R hgrepo pull --config git.pull-prune-remote-branches=false 69s pulling from $TESTTMP/gitrepo 69s - importing 1 git commits 69s - updating bookmark master 69s - deleting bookmark beta 69s - new changesets a02330f767a4 (1 drafts) 69s - (run 'hg update' to get a working copy) 69s + importing 5 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo tags | grep default/beta 69s - default/beta 1:7fe02317c63d 69s + [1] 69s $ hg -R hgrepo pull 69s pulling from $TESTTMP/gitrepo 69s - no changes found 69s + importing 5 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo tags | grep default/beta 69s [1] 69s $ hg -R hgrepo log --graph 69s - o changeset: 4:a02330f767a4 69s - |\ bookmark: master 69s - | | tag: default/master 69s - | | tag: tip 69s - | | parent: 3:6f898ad1f3e1 69s - | | parent: 1:7fe02317c63d 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: Merge branch 'beta' 69s - | | 69s - | o changeset: 3:6f898ad1f3e1 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: add gamma 69s - | | 69s - | | o changeset: 2:678ebee93e38 69s - | |/ bookmark: delta 69s - | | tag: default/delta 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:12 2007 +0000 69s - | | summary: add delta 69s - | | 69s - o | changeset: 1:7fe02317c63d 69s - |/ tag: t_beta 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - tag: default/epsilon 69s - tag: t_alpha 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s pull with wildcards 69s $ cd gitrepo 69s $ git checkout -qb releases/v1 master 69s @@ -325,65 +1109,92 @@ 69s $ cd .. 69s $ hg -R hgrepo pull -r 'releases/*' 69s pulling from $TESTTMP/gitrepo 69s - importing 2 git commits 69s - adding bookmark releases/v1 69s - adding bookmark releases/v2 69s - new changesets 218b2d0660d3:a3f95e150b0a (2 drafts) 69s - (run 'hg heads .' to see heads, 'hg merge' to merge) 69s + importing 6 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo log --graph 69s - o changeset: 6:a3f95e150b0a 69s - | bookmark: releases/v2 69s - | tag: default/releases/v2 69s - | tag: tip 69s - | parent: 4:a02330f767a4 69s - | user: test 69s - | date: Mon Jan 01 00:00:15 2007 +0000 69s - | summary: add eta 69s - | 69s - | o changeset: 5:218b2d0660d3 69s - |/ bookmark: releases/v1 69s - | tag: default/releases/v1 69s - | user: test 69s - | date: Mon Jan 01 00:00:14 2007 +0000 69s - | summary: add zeta 69s - | 69s - o changeset: 4:a02330f767a4 69s - |\ bookmark: master 69s - | | tag: default/master 69s - | | parent: 3:6f898ad1f3e1 69s - | | parent: 1:7fe02317c63d 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: Merge branch 'beta' 69s - | | 69s - | o changeset: 3:6f898ad1f3e1 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:13 2007 +0000 69s - | | summary: add gamma 69s - | | 69s - | | o changeset: 2:678ebee93e38 69s - | |/ bookmark: delta 69s - | | tag: default/delta 69s - | | parent: 0:ff7a2f2d8d70 69s - | | user: test 69s - | | date: Mon Jan 01 00:00:12 2007 +0000 69s - | | summary: add delta 69s - | | 69s - o | changeset: 1:7fe02317c63d 69s - |/ tag: t_beta 69s - | user: test 69s - | date: Mon Jan 01 00:00:11 2007 +0000 69s - | summary: add beta 69s - | 69s - @ changeset: 0:ff7a2f2d8d70 69s - bookmark: epsilon 69s - tag: default/epsilon 69s - tag: t_alpha 69s - user: test 69s - date: Mon Jan 01 00:00:10 2007 +0000 69s - summary: add alpha 69s - 69s 69s add old and new commits to the git repo -- make sure we're using the commit date 69s and not the author date 69s @@ -418,15 +1229,8 @@ 69s pulling from $TESTTMP/gitrepo 69s no changes found 69s $ hg -R hgrepo log -r master 69s - changeset: 4:a02330f767a4 69s - bookmark: master 69s - tag: default/master 69s - parent: 3:6f898ad1f3e1 69s - parent: 1:7fe02317c63d 69s - user: test 69s - date: Mon Jan 01 00:00:13 2007 +0000 69s - summary: Merge branch 'beta' 69s - 69s + abort: unknown revision 'master' 69s + [10] 69s 69s $ cd gitrepo 69s $ git checkout -q master 69s @@ -441,50 +1245,93 @@ 69s $ cd .. 69s $ hg -R hgrepo pull 69s pulling from $TESTTMP/gitrepo 69s - importing 3 git commits 69s - updating bookmark master 69s - new changesets 49713da8f665:e103a73f33be (3 drafts) 69s - (run 'hg heads .' to see heads, 'hg merge' to merge) 69s + importing 7 git commits 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 69s + imported = self.import_git_objects( 69s + b'pull', 69s + ...<2 lines>... 69s + heads=heads, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 69s + self.import_git_commit( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + command, 69s + ^^^^^^^^ 69s + self.git[commit.sha], 69s + ^^^^^^^^^^^^^^^^^^^^^ 69s + commit.phase, 69s + ^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 69s + files, gitlinks, git_renames = self.get_files_changed( 69s + ~~~~~~~~~~~~~~~~~~~~~~^ 69s + commit, detect_renames 69s + ^^^^^^^^^^^^^^^^^^^^^^ 69s + ) 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 69s + oldfile, oldmode, oldsha = change.old 69s + ^^^^^^^^^^^^^^^^^^^^^^^^ 69s + TypeError: cannot unpack non-iterable NoneType object 69s + [1] 69s $ hg -R hgrepo heads 69s - changeset: 9:e103a73f33be 69s - bookmark: master 69s - tag: default/master 69s - tag: tip 69s - user: test 69s - date: Wed Jan 01 00:00:00 2014 +0000 69s - summary: newcommit 69s - 69s - changeset: 7:49713da8f665 69s - tag: newtag 69s - tag: oldtag 69s - parent: 4:a02330f767a4 69s - user: test 69s - date: Sat Mar 01 00:00:00 2014 +0000 69s - summary: oldtag 69s - 69s - changeset: 6:a3f95e150b0a 69s - bookmark: releases/v2 69s - tag: default/releases/v2 69s - parent: 4:a02330f767a4 69s - user: test 69s - date: Mon Jan 01 00:00:15 2007 +0000 69s - summary: add eta 69s - 69s - changeset: 5:218b2d0660d3 69s - bookmark: releases/v1 69s - tag: default/releases/v1 69s - user: test 69s - date: Mon Jan 01 00:00:14 2007 +0000 69s - summary: add zeta 69s - 69s - changeset: 2:678ebee93e38 69s - bookmark: delta 69s - tag: default/delta 69s - parent: 0:ff7a2f2d8d70 69s - user: test 69s - date: Mon Jan 01 00:00:12 2007 +0000 69s - summary: add delta 69s - 69s + [1] 69s 69s test for ssh vulnerability 69s 69s @@ -502,10 +1349,162 @@ 69s abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 69s [255] 69s $ hg pull -q 'git+ssh://fakehost|shellcommand/path' 69s - ssh: * fakehost%7?shellcommand* (glob) 69s - abort: git remote error: The remote server unexpectedly closed the connection. 69s - [255] 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 391, in fetch 69s + result = self.fetch_pack(remote.path, heads) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1644, in fetch_pack 69s + ret = self._call_client( 69s + remote, 69s + ...<4 lines>... 69s + progress.progress, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1680, in _call_client 69s + ret = func(path, *args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 69s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 69s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 69s + con = self.ssh_vendor.run_command( 69s + self.host, 69s + ...<4 lines>... 69s + **kwargs, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/_ssh.py", line 23, in run_command 69s + assert isinstance(command, str) 69s + ~~~~~~~~~~^^^^^^^^^^^^^^ 69s + AssertionError 69s + [1] 69s $ hg pull -q 'git+ssh://fakehost%7Cshellcommand/path' 69s - ssh: * fakehost%7?shellcommand* (glob) 69s - abort: git remote error: The remote server unexpectedly closed the connection. 69s - [255] 69s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 69s + ** which supports versions 6.9 of Mercurial. 69s + ** Please disable "hggit" and try your action again. 69s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 69s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 69s + ** Mercurial Distributed SCM (version 7.0.1) 69s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 69s + Traceback (most recent call last): 69s + File "/usr/bin/hg", line 51, in 69s + dispatch.run() 69s + ~~~~~~~~~~~~^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 69s + status = dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 69s + status = _rundispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 69s + ret = _runcatch(req) or 0 69s + ~~~~~~~~~^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 69s + return _callcatch(ui, _runcatchfunc) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 69s + return scmutil.callcatch(ui, func) 69s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 69s + return func() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 69s + return _dispatch(req) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 69s + return runcommand( 69s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 69s + ) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 69s + ret = _runcommand(ui, options, cmd, d) 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 69s + return cmdfunc() 69s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 69s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 69s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 69s + return func(*args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 69s + modheads = exchange.pull( 69s + ~~~~~~~~~~~~~^ 69s + repo, 69s + ^^^^^ 69s + ...<6 lines>... 69s + confirm=opts.get('confirm'), 69s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + ).cgresult 69s + ^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 69s + return f(*args, **kwargs) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 69s + pullop.cgresult = repo.githandler.fetch(remote, heads) 69s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 391, in fetch 69s + result = self.fetch_pack(remote.path, heads) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1644, in fetch_pack 69s + ret = self._call_client( 69s + remote, 69s + ...<4 lines>... 69s + progress.progress, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1680, in _call_client 69s + ret = func(path, *args, **kwargs) 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 69s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 69s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 69s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 69s + con = self.ssh_vendor.run_command( 69s + self.host, 69s + ...<4 lines>... 69s + **kwargs, 69s + ) 69s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/_ssh.py", line 23, in run_command 69s + assert isinstance(command, str) 69s + ~~~~~~~~~~^^^^^^^^^^^^^^ 69s + AssertionError 69s + [1] 69s 69s ERROR: test-pull.t#secret output changed 70s ! 70s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-submodules.t 70s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-submodules.t.err 70s @@ -189,260 +189,99 @@ 70s 70s $ hg clone gitrepo2 hgrepo 70s importing 10 git commits 70s - new changesets ff7a2f2d8d70:0ad944b2c4d8 (10 drafts) 70s - updating to bookmark master 70s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 70s + ** which supports versions 6.9 of Mercurial. 70s + ** Please disable "hggit" and try your action again. 70s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 70s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 70s + ** Mercurial Distributed SCM (version 7.0.1) 70s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 70s + Traceback (most recent call last): 70s + File "/usr/bin/hg", line 51, in 70s + dispatch.run() 70s + ~~~~~~~~~~~~^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 70s + status = dispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 70s + status = _rundispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 70s + ret = _runcatch(req) or 0 70s + ~~~~~~~~~^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 70s + return _callcatch(ui, _runcatchfunc) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 70s + return scmutil.callcatch(ui, func) 70s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 70s + return func() 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 70s + return _dispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 70s + return runcommand( 70s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 70s + ) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 70s + ret = _runcommand(ui, options, cmd, d) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 70s + return cmdfunc() 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 70s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 70s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 70s + return func(*args, **kwargs) 70s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 70s + r = hg.clone( 70s + ui, 70s + ...<11 lines>... 70s + depth=opts.get('depth') or None, 70s + ) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 70s + srcpeer, destpeer = orig(*args, **opts) 70s + ~~~~^^^^^^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 70s + exchange.pull( 70s + ~~~~~~~~~~~~~^ 70s + local, 70s + ^^^^^^ 70s + ...<5 lines>... 70s + depth=depth, 70s + ^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 70s + return f(*args, **kwargs) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 70s + pullop.cgresult = repo.githandler.fetch(remote, heads) 70s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 70s + imported = self.import_git_objects( 70s + b'pull', 70s + ...<2 lines>... 70s + heads=heads, 70s + ) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 70s + self.import_git_commit( 70s + ~~~~~~~~~~~~~~~~~~~~~~^ 70s + command, 70s + ^^^^^^^^ 70s + self.git[commit.sha], 70s + ^^^^^^^^^^^^^^^^^^^^^ 70s + commit.phase, 70s + ^^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 70s + files, gitlinks, git_renames = self.get_files_changed( 70s + ~~~~~~~~~~~~~~~~~~~~~~^ 70s + commit, detect_renames 70s + ^^^^^^^^^^^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 70s + oldfile, oldmode, oldsha = change.old 70s + ^^^^^^^^^^^^^^^^^^^^^^^^ 70s + TypeError: cannot unpack non-iterable NoneType object 70s + [1] 70s $ cd hgrepo 70s + $TESTTMP.sh: 133: cd: can't cd to hgrepo 70s $ hg log --graph 70s - @ changeset: 9:0ad944b2c4d8 70s - | bookmark: master 70s - | tag: default/master 70s - | tag: tip 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: remove all subrepos 70s - | 70s - o changeset: 8:33da452ef22f 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace subrepo with symlink 70s - | 70s - o changeset: 7:acebec53c0fc 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace symlink with subrepo 70s - | 70s - o changeset: 6:78c2ea52db4b 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: add symlink 70s - | 70s - o changeset: 5:c0d52ffc59b8 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace file with subrepo 70s - | 70s - o changeset: 4:73e078a178a0 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace subrepo with file 70s - | 70s - o changeset: 3:29e236ba4c06 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: add another subrepo 70s - | 70s - o changeset: 2:a6075a162f62 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: change subrepo commit 70s - | 70s - o changeset: 1:a4036e758995 70s - | user: test 70s - | date: Mon Jan 01 00:00:11 2007 +0000 70s - | summary: add subrepo 70s - | 70s - o changeset: 0:ff7a2f2d8d70 70s - user: test 70s - date: Mon Jan 01 00:00:10 2007 +0000 70s - summary: add alpha 70s - 70s - $ hg book 70s - * master 9:0ad944b2c4d8 70s - 70s -(add subrepo) 70s - $ hg cat -r 1 .hgsubstate 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo 70s - $ hg cat -r 1 .hgsub 70s - subrepo = [git]../gitsubrepo 70s - $ hg gverify -r 1 70s - verifying rev a4036e758995 against git commit e42b08b3cb7069b4594a4ee1d9cb641ee47b2355 70s - 70s -(change subrepo commit) 70s - $ hg cat -r 2 .hgsubstate 70s - aa2ead20c29b5cc6256408e1d9ef704870033afb subrepo 70s - $ hg cat -r 2 .hgsub 70s - subrepo = [git]../gitsubrepo 70s - $ hg gverify -r 2 70s - verifying rev a6075a162f62 against git commit a000567ceefbd9a2ce364e0dea6e298010b02b6d 70s - 70s -(add another subrepo) 70s - $ hg cat -r 3 .hgsubstate 70s - aa2ead20c29b5cc6256408e1d9ef704870033afb subrepo 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 70s - $ hg cat -r 3 .hgsub 70s - subrepo = [git]../gitsubrepo 70s - subrepo2 = [git]../gitsubrepo 70s - $ hg gverify -r 3 70s - verifying rev 29e236ba4c06 against git commit 6e219527869fa40eb6ffbdd013cd86d576b26b01 70s - 70s -(replace subrepo with file) 70s - $ hg cat -r 4 .hgsubstate 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 70s - $ hg cat -r 4 .hgsub 70s - subrepo2 = [git]../gitsubrepo 70s - $ hg manifest -r 4 70s - .hgsub 70s - .hgsubstate 70s - alpha 70s - subrepo 70s - $ hg gverify -r 4 70s - verifying rev 73e078a178a0 against git commit f6436a472da00f581d8d257e9bbaf3c358a5e88c 70s - 70s -(replace file with subrepo) 70s - $ hg cat -r 5 .hgsubstate 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 70s - $ hg cat -r 5 .hgsub 70s - subrepo2 = [git]../gitsubrepo 70s - alpha = [git]../gitsubrepo 70s - $ hg manifest -r 5 70s - .hgsub 70s - .hgsubstate 70s - subrepo 70s - $ hg gverify -r 5 70s - verifying rev c0d52ffc59b8 against git commit 88171163bf4795b5570924e51d5f8ede33f8bc28 70s - 70s -(replace symlink with subrepo) 70s - $ hg cat -r 7 .hgsub 70s - subrepo2 = [git]../gitsubrepo 70s - alpha = [git]../gitsubrepo 70s - foolink = [git]../gitsubrepo 70s - $ hg cat -r 7 .hgsubstate 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba foolink 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 70s - $ hg gverify -r 7 70s - verifying rev acebec53c0fc against git commit e3288fa737d429a60637b3b6782cb25b8298bc00 70s - 70s -(replace subrepo with symlink) 70s - $ hg cat -r 8 .hgsub .hgsubstate 70s - subrepo2 = [git]../gitsubrepo 70s - alpha = [git]../gitsubrepo 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 70s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 70s - 70s - $ hg gverify -r 8 70s - verifying rev 33da452ef22f against git commit d28364013fe1a0fde56c0e1921e49ecdeee8571d 70s - 70s -(remove all subrepos) 70s - $ hg cat -r 9 .hgsub .hgsubstate 70s - .hgsub: no such file in rev 0ad944b2c4d8 70s - .hgsubstate: no such file in rev 0ad944b2c4d8 70s - [1] 70s - $ hg gverify -r 9 70s - verifying rev 0ad944b2c4d8 against git commit 15ba94929481c654814178aac1dbca06ae688718 70s - 70s - $ hg debug-remove-hggit-state 70s - clearing out the git cache data 70s - $ hg gexport 70s - $ cd .hg/git 70s - $ git log --pretty=oneline 70s - 73c15b74fb81fa0cc60e9c59c73787a9f26c778b remove all subrepos 70s - d28364013fe1a0fde56c0e1921e49ecdeee8571d replace subrepo with symlink 70s - e3288fa737d429a60637b3b6782cb25b8298bc00 replace symlink with subrepo 70s - 2d1c135447d11df4dfe96dd5d4f37926dc5c821d add symlink 70s - 88171163bf4795b5570924e51d5f8ede33f8bc28 replace file with subrepo 70s - f6436a472da00f581d8d257e9bbaf3c358a5e88c replace subrepo with file 70s - 6e219527869fa40eb6ffbdd013cd86d576b26b01 add another subrepo 70s - a000567ceefbd9a2ce364e0dea6e298010b02b6d change subrepo commit 70s - e42b08b3cb7069b4594a4ee1d9cb641ee47b2355 add subrepo 70s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 add alpha 70s - 70s -test with rename detection enabled -- simply checking that the Mercurial hashes 70s -are the same is enough 70s - $ cd ../../.. 70s - $ hg --config git.similarity=100 clone gitrepo2 hgreporenames 70s - importing 10 git commits 70s - new changesets ff7a2f2d8d70:0ad944b2c4d8 (10 drafts) 70s - updating to bookmark master 70s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s - $ cd hgreporenames 70s - $ hg log --graph 70s - @ changeset: 9:0ad944b2c4d8 70s - | bookmark: master 70s - | tag: default/master 70s - | tag: tip 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: remove all subrepos 70s - | 70s - o changeset: 8:33da452ef22f 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace subrepo with symlink 70s - | 70s - o changeset: 7:acebec53c0fc 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace symlink with subrepo 70s - | 70s - o changeset: 6:78c2ea52db4b 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: add symlink 70s - | 70s - o changeset: 5:c0d52ffc59b8 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace file with subrepo 70s - | 70s - o changeset: 4:73e078a178a0 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: replace subrepo with file 70s - | 70s - o changeset: 3:29e236ba4c06 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: add another subrepo 70s - | 70s - o changeset: 2:a6075a162f62 70s - | user: test 70s - | date: Mon Jan 01 00:00:12 2007 +0000 70s - | summary: change subrepo commit 70s - | 70s - o changeset: 1:a4036e758995 70s - | user: test 70s - | date: Mon Jan 01 00:00:11 2007 +0000 70s - | summary: add subrepo 70s - | 70s - o changeset: 0:ff7a2f2d8d70 70s - user: test 70s - date: Mon Jan 01 00:00:10 2007 +0000 70s - summary: add alpha 70s - 70s - $ cd .. 70s - 70s -test handling of an invalid .gitmodules file (#380) 70s - 70s - $ git init --quiet gitrepo-issue380 70s - $ cd gitrepo-issue380 70s - $ git submodule add ../gitsubrepo 70s - Cloning into '$TESTTMP/gitrepo-issue380/gitsubrepo'... 70s - done. 70s - $ fn_git_commit -m 'add a submodule' 70s - $ cat >> .gitmodules < <<<<<<< HEAD 70s - > EOF 70s - $ fn_git_commit -a -m 'b0rken .gitmodules' 70s - $ git status 70s - fatal: bad config line 4 in file $TESTTMP/gitrepo-issue380/.gitmodules 70s - [128] 70s - $ sed -i.orig /HEAD/d .gitmodules 70s - $ fn_git_commit -a -m 'fix .gitmodules' 70s - $ git status 70s - On branch master 70s - Untracked files: 70s - (use "git add ..." to include in what will be committed) 70s - .gitmodules.orig 70s - 70s - nothing added to commit but untracked files present (use "git add" to track) 70s - $ cd .. 70s - $ git clone gitrepo-issue380 gitrepo-issue380~ 70s - Cloning into 'gitrepo-issue380~'... 70s - done. 70s - $ hg clone -U gitrepo-issue380 hgrepo-issue380 70s - importing 3 git commits 70s - warning: failed to parse .gitmodules in 2e4ec4293822 70s - new changesets ed60e5fbc192:9dfc0cdf1787 (3 drafts) 70s 70s ERROR: test-git-submodules.t output changed 70s ! 70s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-renames.t 70s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-renames.t.err 70s @@ -95,494 +95,99 @@ 70s 70s $ cd .. 70s $ hg clone -q repo.git hgrepo 70s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 70s + ** which supports versions 6.9 of Mercurial. 70s + ** Please disable "hggit" and try your action again. 70s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 70s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 70s + ** Mercurial Distributed SCM (version 7.0.1) 70s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 70s + Traceback (most recent call last): 70s + File "/usr/bin/hg", line 51, in 70s + dispatch.run() 70s + ~~~~~~~~~~~~^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 70s + status = dispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 70s + status = _rundispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 70s + ret = _runcatch(req) or 0 70s + ~~~~~~~~~^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 70s + return _callcatch(ui, _runcatchfunc) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 70s + return scmutil.callcatch(ui, func) 70s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 70s + return func() 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 70s + return _dispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 70s + return runcommand( 70s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 70s + ) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 70s + ret = _runcommand(ui, options, cmd, d) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 70s + return cmdfunc() 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 70s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 70s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 70s + return func(*args, **kwargs) 70s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 70s + r = hg.clone( 70s + ui, 70s + ...<11 lines>... 70s + depth=opts.get('depth') or None, 70s + ) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 70s + srcpeer, destpeer = orig(*args, **opts) 70s + ~~~~^^^^^^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 70s + exchange.pull( 70s + ~~~~~~~~~~~~~^ 70s + local, 70s + ^^^^^^ 70s + ...<5 lines>... 70s + depth=depth, 70s + ^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 70s + return f(*args, **kwargs) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 70s + pullop.cgresult = repo.githandler.fetch(remote, heads) 70s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 70s + imported = self.import_git_objects( 70s + b'pull', 70s + ...<2 lines>... 70s + heads=heads, 70s + ) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 70s + self.import_git_commit( 70s + ~~~~~~~~~~~~~~~~~~~~~~^ 70s + command, 70s + ^^^^^^^^ 70s + self.git[commit.sha], 70s + ^^^^^^^^^^^^^^^^^^^^^ 70s + commit.phase, 70s + ^^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 70s + files, gitlinks, git_renames = self.get_files_changed( 70s + ~~~~~~~~~~~~~~~~~~~~~~^ 70s + commit, detect_renames 70s + ^^^^^^^^^^^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 70s + oldfile, oldmode, oldsha = change.old 70s + ^^^^^^^^^^^^^^^^^^^^^^^^ 70s + TypeError: cannot unpack non-iterable NoneType object 70s + [1] 70s $ cd hgrepo 70s + $TESTTMP.sh: 115: cd: can't cd to hgrepo 70s $ hg book master -q 70s - $ hg log -p --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 70s - @ 8 497105ddbe119aa40af691eb2b1a029c29bf5247 remove submodule and rename back 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/.hgsub b/.hgsub 70s - | --- a/.hgsub 70s - | +++ b/.hgsub 70s - | @@ -1,2 +1,1 @@ 70s - | gitsubmodule2 = [git]../gitsubmodule 70s - | -gamma = [git]../gitsubmodule 70s - | diff --git a/.hgsubstate b/.hgsubstate 70s - | --- a/.hgsubstate 70s - | +++ b/.hgsubstate 70s - | @@ -1,2 +1,1 @@ 70s - | -5944b31ff85b415573d1a43eb942e2dea30ab8be gamma 70s - | 5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 70s - | diff --git a/gamma-new b/gamma 70s - | rename from gamma-new 70s - | rename to gamma 70s - | 70s - o 7 adfc1ce8461d3174dcf8425e112e2fa848de3913 rename and add submodule 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/.hgsub b/.hgsub 70s - | --- a/.hgsub 70s - | +++ b/.hgsub 70s - | @@ -1,1 +1,2 @@ 70s - | gitsubmodule2 = [git]../gitsubmodule 70s - | +gamma = [git]../gitsubmodule 70s - | diff --git a/.hgsubstate b/.hgsubstate 70s - | --- a/.hgsubstate 70s - | +++ b/.hgsubstate 70s - | @@ -1,1 +1,2 @@ 70s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gamma 70s - | 5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 70s - | diff --git a/gamma b/gamma-new 70s - | rename from gamma 70s - | rename to gamma-new 70s - | 70s - o 6 62c1a4b07240b53a71be1b1a46e94e99132c5391 beta renamed back 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/beta b/beta 70s - | old mode 120000 70s - | new mode 100644 70s - | --- a/beta 70s - | +++ b/beta 70s - | @@ -1,1 +1,12 @@ 70s - | -beta-new 70s - | \ No newline at end of file 70s - | +1 70s - | +2 70s - | +3 70s - | +4 70s - | +5 70s - | +6 70s - | +7 70s - | +8 70s - | +9 70s - | +10 70s - | +11 70s - | +12 70s - | diff --git a/beta-new b/beta-new 70s - | deleted file mode 100644 70s - | --- a/beta-new 70s - | +++ /dev/null 70s - | @@ -1,12 +0,0 @@ 70s - | -1 70s - | -2 70s - | -3 70s - | -4 70s - | -5 70s - | -6 70s - | -7 70s - | -8 70s - | -9 70s - | -10 70s - | -11 70s - | -12 70s - | 70s - o 5 f93fefed957cff2220d3f0d11182398350b5fa9a beta renamed 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/beta b/beta 70s - | old mode 100644 70s - | new mode 120000 70s - | --- a/beta 70s - | +++ b/beta 70s - | @@ -1,12 +1,1 @@ 70s - | -1 70s - | -2 70s - | -3 70s - | -4 70s - | -5 70s - | -6 70s - | -7 70s - | -8 70s - | -9 70s - | -10 70s - | -11 70s - | -12 70s - | +beta-new 70s - | \ No newline at end of file 70s - | diff --git a/beta b/beta-new 70s - | copy from beta 70s - | copy to beta-new 70s - | 70s - o 4 b9e63d96abc2783afc59246e798a6936cf05a35e move submodule 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/.hgsub b/.hgsub 70s - | --- a/.hgsub 70s - | +++ b/.hgsub 70s - | @@ -1,1 +1,1 @@ 70s - | -gitsubmodule = [git]../gitsubmodule 70s - | +gitsubmodule2 = [git]../gitsubmodule 70s - | diff --git a/.hgsubstate b/.hgsubstate 70s - | --- a/.hgsubstate 70s - | +++ b/.hgsubstate 70s - | @@ -1,1 +1,1 @@ 70s - | -5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule 70s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 70s - | 70s - o 3 55537ea256c28be1b5637f4f93a601fdde8a9a7f add submodule 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/.hgsub b/.hgsub 70s - | new file mode 100644 70s - | --- /dev/null 70s - | +++ b/.hgsub 70s - | @@ -0,0 +1,1 @@ 70s - | +gitsubmodule = [git]../gitsubmodule 70s - | diff --git a/.hgsubstate b/.hgsubstate 70s - | new file mode 100644 70s - | --- /dev/null 70s - | +++ b/.hgsubstate 70s - | @@ -0,0 +1,1 @@ 70s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule 70s - | 70s - o 2 20f9e56b6d006d0403f853245e483d0892b8ac48 gamma 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/beta b/beta 70s - | --- a/beta 70s - | +++ b/beta 70s - | @@ -9,3 +9,4 @@ 70s - | 9 70s - | 10 70s - | 11 70s - | +12 70s - | diff --git a/beta b/gamma 70s - | copy from beta 70s - | copy to gamma 70s - | --- a/beta 70s - | +++ b/gamma 70s - | @@ -9,3 +9,4 @@ 70s - | 9 70s - | 10 70s - | 11 70s - | +13 70s - | 70s - o 1 9f7744e68def81da3b394f11352f602ca9c8ab68 beta 70s - | branch=default hg-git-rename-source=git 70s - | 70s - | diff --git a/alpha b/beta 70s - | rename from alpha 70s - | rename to beta 70s - | --- a/alpha 70s - | +++ b/beta 70s - | @@ -8,3 +8,4 @@ 70s - | 8 70s - | 9 70s - | 10 70s - | +11 70s - | 70s - o 0 7bc844166f76e49562f81eacd54ea954d01a9e42 alpha 70s - branch=default hg-git-rename-source=git 70s - 70s - diff --git a/alpha b/alpha 70s - new file mode 100644 70s - --- /dev/null 70s - +++ b/alpha 70s - @@ -0,0 +1,10 @@ 70s - +1 70s - +2 70s - +3 70s - +4 70s - +5 70s - +6 70s - +7 70s - +8 70s - +9 70s - +10 70s - 70s - 70s -Make a new ordinary commit in Mercurial (no extra metadata) 70s - $ echo 14 >> gamma 70s - $ hg ci -m "gamma2" 70s - 70s -Make a new commit with a copy and a rename in Mercurial 70s - $ hg cp gamma delta 70s - $ echo 15 >> delta 70s - $ hg mv beta epsilon 70s - $ echo 16 >> epsilon 70s - $ hg ci -m "delta/epsilon" 70s - $ hg export . 70s - # HG changeset patch 70s - # User test 70s - # Date 0 0 70s - # Thu Jan 01 00:00:00 1970 +0000 70s - # Node ID ea6414fab78622fd53679e0593eddad96ff4178d 70s - # Parent ee9ec792d5866c313a4cb7a2f8772f2cffa90df4 70s - delta/epsilon 70s - 70s - diff --git a/gamma b/delta 70s - copy from gamma 70s - copy to delta 70s - --- a/gamma 70s - +++ b/delta 70s - @@ -11,3 +11,4 @@ 70s - 11 70s - 13 70s - 14 70s - +15 70s - diff --git a/beta b/epsilon 70s - rename from beta 70s - rename to epsilon 70s - --- a/beta 70s - +++ b/epsilon 70s - @@ -10,3 +10,4 @@ 70s - 10 70s - 11 70s - 12 70s - +16 70s - $ hg push 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - adding objects 70s - remote: found 0 deltas to reuse 70s - added 2 commits with 2 trees and 3 blobs 70s - updating reference refs/heads/master 70s - 70s - $ cd ../repo.git 70s - $ git log master --pretty=oneline 70s - 5f2948d029693346043f320620af99a615930dc4 delta/epsilon 70s - bbd2ec050f7fbc64f772009844f7d58a556ec036 gamma2 70s - 50d116676a308b7c22935137d944e725d2296f2a remove submodule and rename back 70s - 59fb8e82ea18f79eab99196f588e8948089c134f rename and add submodule 70s - f95497455dfa891b4cd9b524007eb9514c3ab654 beta renamed back 70s - 055f482277da6cd3dd37c7093d06983bad68f782 beta renamed 70s - d7f31298f27df8a9226eddb1e4feb96922c46fa5 move submodule 70s - c610256cb6959852d9e70d01902a06726317affc add submodule 70s - e1348449e0c3a417b086ed60fc13f068d4aa8b26 gamma 70s - cc83241f39927232f690d370894960b0d1943a0e beta 70s - 938bb65bb322eb4a3558bec4cdc8a680c4d1794c alpha 70s - 70s -Make sure the right metadata is stored 70s - $ git cat-file commit master^ 70s - tree 0adbde18545845f3b42ad1a18939ed60a9dec7a8 70s - parent 50d116676a308b7c22935137d944e725d2296f2a 70s - author test 0 +0000 70s - committer test 0 +0000 70s - HG:rename-source hg 70s - 70s - gamma2 70s - $ git cat-file commit master 70s - tree f8f32f4e20b56a5a74582c6a5952c175bf9ec155 70s - parent bbd2ec050f7fbc64f772009844f7d58a556ec036 70s - author test 0 +0000 70s - committer test 0 +0000 70s - HG:rename gamma:delta 70s - HG:rename beta:epsilon 70s - 70s - delta/epsilon 70s - 70s -Now make another clone and compare the hashes 70s - 70s - $ cd .. 70s - $ hg clone -q repo.git hgrepo2 70s - $ cd hgrepo2 70s - $ hg book master -qf 70s - $ hg export master 70s - # HG changeset patch 70s - # User test 70s - # Date 0 0 70s - # Thu Jan 01 00:00:00 1970 +0000 70s - # Node ID ea6414fab78622fd53679e0593eddad96ff4178d 70s - # Parent ee9ec792d5866c313a4cb7a2f8772f2cffa90df4 70s - delta/epsilon 70s - 70s - diff --git a/gamma b/delta 70s - copy from gamma 70s - copy to delta 70s - --- a/gamma 70s - +++ b/delta 70s - @@ -11,3 +11,4 @@ 70s - 11 70s - 13 70s - 14 70s - +15 70s - diff --git a/beta b/epsilon 70s - rename from beta 70s - rename to epsilon 70s - --- a/beta 70s - +++ b/epsilon 70s - @@ -10,3 +10,4 @@ 70s - 10 70s - 11 70s - 12 70s - +16 70s - 70s -Regenerate the Git metadata and compare the hashes 70s - $ hg debug-remove-hggit-state 70s - clearing out the git cache data 70s - $ hg gexport 70s - $ cd .hg/git 70s - $ git log master --pretty=oneline 70s - f3f6592447685566af9447c03ae262aa5432511d delta/epsilon (dulwich-rust !) 70s - c51ce14ec367c5ea72bf428dee3f8576f2fe1bb0 gamma2 (dulwich-rust !) 70s - df749cae534e3c7a0ad664cd0f214dd36e0ac259 remove submodule and rename back (dulwich-rust !) 70s - 8f9ec605ad0cc2532202f73cef8e35d3241797ee rename and add submodule (dulwich-rust !) 70s - 8a00d0fb75377c51c9a46e92ff154c919007f0e2 delta/epsilon (no-dulwich-rust !) 70s - dd7d4f1adb942a8d349dce585019f6949184bc64 gamma2 (no-dulwich-rust !) 70s - 3f1cdaf8b603816fcda02bd29e75198ae4cb13db remove submodule and rename back (no-dulwich-rust !) 70s - 2a4abf1178a999e2054158ceb0c7768079665d03 rename and add submodule (no-dulwich-rust !) 70s - 88c416e8d5e0e9dd1187d45ebafaa46111764196 beta renamed back 70s - 027d2a6e050705bf6f7e226e7e97f02ce5ae3200 beta renamed 70s - dc70e620634887e70ac5dd108bcc7ebd99c60ec3 move submodule 70s - c610256cb6959852d9e70d01902a06726317affc add submodule 70s - e1348449e0c3a417b086ed60fc13f068d4aa8b26 gamma 70s - cc83241f39927232f690d370894960b0d1943a0e beta 70s - 938bb65bb322eb4a3558bec4cdc8a680c4d1794c alpha 70s - 70s -Test findcopiesharder 70s - 70s - $ cd $TESTTMP 70s - $ git init -q gitcopyharder 70s - $ cd gitcopyharder 70s - $ cat >> file0 << EOF 70s - > 1 70s - > 2 70s - > 3 70s - > 4 70s - > 5 70s - > EOF 70s - $ git add file0 70s - $ fn_git_commit -m file0 70s - $ cp file0 file1 70s - $ git add file1 70s - $ fn_git_commit -m file1 70s - $ cp file0 file2 70s - $ echo 6 >> file2 70s - $ git add file2 70s - $ fn_git_commit -m file2 70s - 70s - $ cd .. 70s - 70s -Clone without findcopiesharder does not find copies from unmodified files 70s - 70s - $ hg clone gitcopyharder hgnocopyharder 70s - importing 3 git commits 70s - new changesets b45d023c6842:ec77ccdbefe0 (3 drafts) 70s - updating to bookmark master 70s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s - $ hg -R hgnocopyharder export 1::2 70s - # HG changeset patch 70s - # User test 70s - # Date 1167609621 0 70s - # Mon Jan 01 00:00:21 2007 +0000 70s - # Node ID 555831c93e2a250e5ba42efad45bf7ba71da13e4 70s - # Parent b45d023c6842337ffe694663a44aa672d311081c 70s - file1 70s - 70s - diff --git a/file1 b/file1 70s - new file mode 100644 70s - --- /dev/null 70s - +++ b/file1 70s - @@ -0,0 +1,5 @@ 70s - +1 70s - +2 70s - +3 70s - +4 70s - +5 70s - # HG changeset patch 70s - # User test 70s - # Date 1167609622 0 70s - # Mon Jan 01 00:00:22 2007 +0000 70s - # Node ID ec77ccdbefe023eb9898b0399f84f670c8c0f5fc 70s - # Parent 555831c93e2a250e5ba42efad45bf7ba71da13e4 70s - file2 70s - 70s - diff --git a/file2 b/file2 70s - new file mode 100644 70s - --- /dev/null 70s - +++ b/file2 70s - @@ -0,0 +1,6 @@ 70s - +1 70s - +2 70s - +3 70s - +4 70s - +5 70s - +6 70s - 70s -findcopiesharder finds copies from unmodified files if similarity is met 70s - 70s - $ hg --config git.findcopiesharder=true clone gitcopyharder hgcopyharder0 70s - importing 3 git commits 70s - new changesets b45d023c6842:9b3099834272 (3 drafts) 70s - updating to bookmark master 70s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s - $ hg -R hgcopyharder0 export 1::2 70s - # HG changeset patch 70s - # User test 70s - # Date 1167609621 0 70s - # Mon Jan 01 00:00:21 2007 +0000 70s - # Node ID cd05a87103eed9d270fc05b62b00f48e174ab960 70s - # Parent b45d023c6842337ffe694663a44aa672d311081c 70s - file1 70s - 70s - diff --git a/file0 b/file1 70s - copy from file0 70s - copy to file1 70s - # HG changeset patch 70s - # User test 70s - # Date 1167609622 0 70s - # Mon Jan 01 00:00:22 2007 +0000 70s - # Node ID 9b30998342729c7357d418bebed7399986cfe643 70s - # Parent cd05a87103eed9d270fc05b62b00f48e174ab960 70s - file2 70s - 70s - diff --git a/file0 b/file2 70s - copy from file0 70s - copy to file2 70s - --- a/file0 70s - +++ b/file2 70s - @@ -3,3 +3,4 @@ 70s - 3 70s - 4 70s - 5 70s - +6 70s - 70s - $ hg --config git.findcopiesharder=true --config git.similarity=95 clone gitcopyharder hgcopyharder1 70s - importing 3 git commits 70s - new changesets b45d023c6842:d9d2e8cbf050 (3 drafts) 70s - updating to bookmark master 70s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s - $ hg -R hgcopyharder1 export 1::2 70s - # HG changeset patch 70s - # User test 70s - # Date 1167609621 0 70s - # Mon Jan 01 00:00:21 2007 +0000 70s - # Node ID cd05a87103eed9d270fc05b62b00f48e174ab960 70s - # Parent b45d023c6842337ffe694663a44aa672d311081c 70s - file1 70s - 70s - diff --git a/file0 b/file1 70s - copy from file0 70s - copy to file1 70s - # HG changeset patch 70s - # User test 70s - # Date 1167609622 0 70s - # Mon Jan 01 00:00:22 2007 +0000 70s - # Node ID d9d2e8cbf050772be31dccf78851f71dc547d139 70s - # Parent cd05a87103eed9d270fc05b62b00f48e174ab960 70s - file2 70s - 70s - diff --git a/file2 b/file2 70s - new file mode 100644 70s - --- /dev/null 70s - +++ b/file2 70s - @@ -0,0 +1,6 @@ 70s - +1 70s - +2 70s - +3 70s - +4 70s - +5 70s - +6 70s - 70s -Config values out of range 70s - $ hg --config git.similarity=999 clone gitcopyharder hgcopyharder2 70s - importing 3 git commits 70s - abort: git.similarity must be between 0 and 100 70s - [255] 70s -Left-over on Windows with some pack files 70s - $ rm -rf hgcopyharder2 70s - $ hg --config git.renamelimit=-5 clone gitcopyharder hgcopyharder2 70s - importing 3 git commits 70s - abort: git.renamelimit must be non-negative 70s - [255] 70s 70s ERROR: test-renames.t output changed 70s !s 70s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-tags.t 70s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-tags.t#draft.err 70s @@ -42,336 +42,103 @@ 70s 70s $ hg clone repo.git hgrepo 70s importing 2 git commits 70s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 70s - updating to bookmark master 70s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 70s + ** which supports versions 6.9 of Mercurial. 70s + ** Please disable "hggit" and try your action again. 70s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 70s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 70s + ** Mercurial Distributed SCM (version 7.0.1) 70s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 70s + Traceback (most recent call last): 70s + File "/usr/bin/hg", line 51, in 70s + dispatch.run() 70s + ~~~~~~~~~~~~^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 70s + status = dispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 70s + status = _rundispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 70s + ret = _runcatch(req) or 0 70s + ~~~~~~~~~^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 70s + return _callcatch(ui, _runcatchfunc) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 70s + return scmutil.callcatch(ui, func) 70s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 70s + return func() 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 70s + return _dispatch(req) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 70s + return runcommand( 70s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 70s + ) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 70s + ret = _runcommand(ui, options, cmd, d) 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 70s + return cmdfunc() 70s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 70s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 70s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 70s + return func(*args, **kwargs) 70s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 70s + r = hg.clone( 70s + ui, 70s + ...<11 lines>... 70s + depth=opts.get('depth') or None, 70s + ) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 70s + srcpeer, destpeer = orig(*args, **opts) 70s + ~~~~^^^^^^^^^^^^^^^ 70s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 70s + exchange.pull( 70s + ~~~~~~~~~~~~~^ 70s + local, 70s + ^^^^^^ 70s + ...<5 lines>... 70s + depth=depth, 70s + ^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 70s + return f(*args, **kwargs) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 70s + pullop.cgresult = repo.githandler.fetch(remote, heads) 70s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 70s + imported = self.import_git_objects( 70s + b'pull', 70s + ...<2 lines>... 70s + heads=heads, 70s + ) 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 70s + self.import_git_commit( 70s + ~~~~~~~~~~~~~~~~~~~~~~^ 70s + command, 70s + ^^^^^^^^ 70s + self.git[commit.sha], 70s + ^^^^^^^^^^^^^^^^^^^^^ 70s + commit.phase, 70s + ^^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 70s + files, gitlinks, git_renames = self.get_files_changed( 70s + ~~~~~~~~~~~~~~~~~~~~~~^ 70s + commit, detect_renames 70s + ^^^^^^^^^^^^^^^^^^^^^^ 70s + ) 70s + ^ 70s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 70s + oldfile, oldmode, oldsha = change.old 70s + ^^^^^^^^^^^^^^^^^^^^^^^^ 70s + TypeError: cannot unpack non-iterable NoneType object 70s + [1] 70s 70s $ cd hgrepo 70s + $TESTTMP.sh: 39: cd: can't cd to hgrepo 70s 70s Verify that annotated tags are unaffected by reexports: 70s 70s $ GIT_DIR=.hg/git git tag -ln 70s - beta added tag beta 70s - $ hg gexport 70s - $ GIT_DIR=.hg/git git tag -ln 70s - beta added tag beta 70s - 70s -Error checking on tag creation 70s - 70s - $ hg tag --git beta --remove 70s - abort: cannot remove git tags 70s - (the git documentation heavily discourages editing tags) 70s - [255] 70s - $ hg tag --git beta -r null 70s - abort: cannot remove git tags 70s - (the git documentation heavily discourages editing tags) 70s - [255] 70s - $ hg tag --git beta --remove -r 0 70s - abort: cannot specify both --rev and --remove 70s - [10] 70s - $ hg tag --git alpha 70s - abort: git tags require an explicit revision 70s - (please specify -r/--rev) 70s - [255] 70s - $ hg tag --git alpha alpha -r 0 70s - abort: tag names must be unique 70s - [255] 70s - $ hg tag --git alpha -r 0 -e 70s - abort: cannot specify both --git and --edit 70s - [10] 70s - $ hg tag --git alpha -r 0 -m 42 70s - abort: cannot specify both --git and --message 70s - [10] 70s - $ hg tag --git alpha -r 0 -d 42 70s - abort: cannot specify both --git and --date 70s - [10] 70s - $ hg tag --git alpha -r 0 -u user@example.com 70s - abort: cannot specify both --git and --user 70s - [10] 70s - $ hg tag --git 'with space' -r 0 70s - abort: the name 'with space' is not a valid git tag 70s - [255] 70s - $ hg tag --git ' beta' -r 0 70s - abort: the name 'beta' already exists 70s - [255] 70s - $ hg tag --git master -r 0 70s - abort: the name 'master' already exists 70s - [255] 70s - $ hg tag --git tip -r 0 70s - abort: the name 'tip' is reserved 70s - [10] 70s - 70s -Create a git tag from hg 70s - 70s - $ hg tag --git alpha --debug -r 0 70s - finding unexported changesets 70s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 70s - adding git tag alpha 70s - $ hg log --graph 70s - @ changeset: 1:7fe02317c63d 70s - | bookmark: master 70s - | tag: beta 70s - | tag: default/master 70s - | tag: tip 70s - | user: test 70s - | date: Mon Jan 01 00:00:11 2007 +0000 70s - | summary: add beta 70s - | 70s - o changeset: 0:ff7a2f2d8d70 70s - tag: alpha 70s - user: test 70s - date: Mon Jan 01 00:00:10 2007 +0000 70s - summary: add alpha 70s - 70s - $ echo beta-fix >> beta 70s - $ fn_hg_commit -m 'fix for beta' 70s -#if secret 70s - $ hg phase -d 70s -#endif 70s - $ hg push 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - adding objects 70s - remote: found 0 deltas to reuse 70s - added 1 commits with 1 trees and 1 blobs 70s - updating reference refs/heads/master 70s - adding reference refs/tags/alpha 70s - 70s -Verify that amending commits known to remotes doesn't break anything 70s - 70s - $ cat >> $HGRCPATH << EOF 70s - > [experimental] 70s - > evolution = createmarkers 70s - > evolution.createmarkers = yes 70s - > EOF 70s - $ hg tags 70s - tip 2:61175962e488 70s - default/master 2:61175962e488 70s - beta 1:7fe02317c63d 70s - alpha 0:ff7a2f2d8d70 70s - $ echo beta-fix-again >> beta 70s - $ fn_hg_commit --amend 70s - $ hg log -T shorttags 70s - 3:3094b9e8da41 draft tip 70s - 2:61175962e488 draft default/master X 70s - 1:7fe02317c63d draft beta 70s - 0:ff7a2f2d8d70 draft alpha 70s - $ hg tags 70s - tip 3:3094b9e8da41 70s - default/master 2:61175962e488 70s - beta 1:7fe02317c63d 70s - alpha 0:ff7a2f2d8d70 70s - $ hg push 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - abort: pushing refs/heads/master overwrites 3094b9e8da41 70s - [255] 70s - $ hg push -f 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - adding objects 70s - remote: found 0 deltas to reuse 70s - added 1 commits with 1 trees and 1 blobs 70s - updating reference refs/heads/master 70s - 70s -Now create a tag for the old, obsolete master 70s - 70s - $ cd ../repo.git 70s - $ git tag detached $(hg log -R ../hgrepo --hidden -r 2 -T '{gitnode}\n') 70s - $ git tag 70s - alpha 70s - beta 70s - detached 70s - $ cd ../hgrepo 70s - $ hg pull 70s - pulling from $TESTTMP/repo.git 70s - no changes found 70s - $ hg log -T shorttags 70s - 3:3094b9e8da41 draft default/master tip 70s - 2:61175962e488 draft detached X 70s - 1:7fe02317c63d draft beta 70s - 0:ff7a2f2d8d70 draft alpha 70s - $ hg tags 70s - tip 3:3094b9e8da41 70s - default/master 3:3094b9e8da41 70s - detached 2:61175962e488 70s - beta 1:7fe02317c63d 70s - alpha 0:ff7a2f2d8d70 70s - $ hg push 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - no changes found 70s - [1] 70s - 70s - $ cd .. 70s - 70s -Verify that revsets can point out git tags; for that we need an 70s -untagged commit. 70s - 70s - $ cd hgrepo 70s - $ touch gamma 70s - $ fn_hg_commit -A -m 'add gamma' 70s -#if secret 70s - $ hg phase -d 70s -#endif 70s - $ hg log -T shorttags -r 'gittag()' 70s - 0:ff7a2f2d8d70 draft alpha 70s - 1:7fe02317c63d draft beta 70s - 2:61175962e488 draft detached X 70s - $ hg log -T shorttags -r 'gittag(detached)' 70s - 2:61175962e488 draft detached X 70s - $ hg log -T shorttags -r 'gittag("re:a$")' 70s - 0:ff7a2f2d8d70 draft alpha 70s - 1:7fe02317c63d draft beta 70s - 70s -Create a git tag from hg, but pointing to a new commit: 70s - 70s - $ hg tag --git gamma --debug -r tip 70s - invalid branch cache (visible): tip differs (?) 70s - finding unexported changesets 70s - exporting 1 changesets 70s - converting revision 0eb1ab0073a885a498d4ae3dc5cf0c26e750fa3d 70s - packing 3 loose objects... 70s - packed 3 loose objects! 70s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 70s - adding git tag gamma 70s - $ hg push 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - adding objects 70s - remote: found 0 deltas to reuse 70s - added 1 commits with 1 trees and 1 blobs 70s - updating reference refs/heads/master 70s - adding reference refs/tags/gamma 70s - $ cd ../gitrepo 70s - $ git fetch --quiet --tags 70s - $ git tag 70s - alpha 70s - beta 70s - detached 70s - gamma 70s - $ cd .. 70s - 70s -Try to overwrite an annotated tag: 70s - 70s - $ cd hgrepo 70s - $ hg tags -v 70s - tip 4:0eb1ab0073a8 70s - gamma 4:0eb1ab0073a8 git 70s - default/master 4:0eb1ab0073a8 git-remote 70s - detached 2:61175962e488 git 70s - beta 1:7fe02317c63d git 70s - alpha 0:ff7a2f2d8d70 git 70s - $ hg book not-master 70s - $ hg tag beta 70s - abort: tag 'beta' already exists (use -f to force) 70s - [10] 70s - $ hg tag -f beta 70s -#if secret 70s - $ hg phase -d 70s -#endif 70s - $ hg push 70s - pushing to $TESTTMP/repo.git 70s - warning: not overwriting annotated tag 'beta' 70s - searching for changes 70s - adding objects 70s - remote: found 0 deltas to reuse 70s - added 1 commits with 1 trees and 1 blobs 70s - adding reference refs/heads/not-master 70s - $ hg tags 70s - tip 5:c49682c7cba4 70s - default/not-master 5:c49682c7cba4 70s - gamma 4:0eb1ab0073a8 70s - default/master 4:0eb1ab0073a8 70s - beta 4:0eb1ab0073a8 70s - detached 2:61175962e488 70s - alpha 0:ff7a2f2d8d70 70s - $ cd .. 70s - 70s -Check whether `gimport` handles tags 70s - 70s - $ cd hgrepo 70s - $ rm .hg/git-tags .hg/git-mapfile 70s - $ hg gimport 70s - importing 6 git commits 70s - $ hg tags -q 70s - tip 70s - default/not-master 70s - gamma 70s - default/master 70s - beta 70s - detached 70s - alpha 70s - $ cd .. 70s - 70s -Test how pulling an explicit branch with an annotated tag: 70s - 70s - $ hg clone -r master repo.git hgrepo-2 70s - importing 4 git commits 70s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 70s - updating to branch default 70s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s - $ hg log -r 'ancestors(master) and tagged()' -T shorttags -R hgrepo-2 70s - 0:ff7a2f2d8d70 draft alpha 70s - 1:7fe02317c63d draft beta 70s - 3:0eb1ab0073a8 draft default/master gamma tip 70s - $ hg tags -v -R hgrepo-2 70s - tip 3:0eb1ab0073a8 70s - gamma 3:0eb1ab0073a8 git 70s - default/master 3:0eb1ab0073a8 git-remote 70s - beta 1:7fe02317c63d git 70s - alpha 0:ff7a2f2d8d70 git 70s - $ GIT_DIR=hgrepo-2/.hg/git git fetch --quiet repo.git 70s - $ rm -rf hgrepo-2 70s - 70s - $ hg clone -r master repo.git hgrepo-2 70s - importing 4 git commits 70s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 70s - updating to branch default 70s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 70s - $ hg log -r 'tagged()' -T shorttags -R hgrepo-2 70s - 0:ff7a2f2d8d70 draft alpha 70s - 1:7fe02317c63d draft beta 70s - 3:0eb1ab0073a8 draft default/master gamma tip 70s -This used to die: 70s - $ hg -R hgrepo-2 gexport 70s -This used to fail, since we didn't actually pull the annotated tag: 70s - $ hg -R hgrepo-2 push 70s - pushing to $TESTTMP/repo.git 70s - searching for changes 70s - no changes found 70s - [1] 70s - $ rm -rf hgrepo-2 70s - 70s -Check that pulling will update phases only: 70s - 70s - $ cd hgrepo 70s - $ hg phase -fs gamma detached 70s - $ hg pull 70s - pulling from $TESTTMP/repo.git 70s - no changes found 70s - $ hg log -T shorttags -r gamma -r detached 70s - 4:0eb1ab0073a8 draft beta default/master gamma 70s - 2:61175962e488 draft detached X 70s - $ cd .. 70s - 70s -Check that we pull new tags to existing commits: 70s - $ cd gitrepo 70s - $ git tag 70s - alpha 70s - beta 70s - detached 70s - gamma 70s - $ fn_git_tag extra-simple-tag 70s - $ fn_git_tag -m annotated extra-annotated-tag 70s - $ git push --tags 70s - To $TESTTMP/repo.git 70s - * [new tag] extra-annotated-tag -> extra-annotated-tag 70s - * [new tag] extra-simple-tag -> extra-simple-tag 70s - $ cd ../hgrepo 70s - $ hg pull -r master 70s - pulling from $TESTTMP/repo.git 70s - no changes found 70s - $ hg tags -v | grep extra 70s - extra-simple-tag 1:7fe02317c63d git 70s - extra-annotated-tag 1:7fe02317c63d git 70s 70s ERROR: test-git-tags.t#draft output changed 71s !. 71s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-tags.t 71s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-tags.t#secret.err 71s @@ -42,336 +42,103 @@ 71s 71s $ hg clone repo.git hgrepo 71s importing 2 git commits 71s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 71s - updating to bookmark master 71s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 71s + ** which supports versions 6.9 of Mercurial. 71s + ** Please disable "hggit" and try your action again. 71s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 71s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 71s + ** Mercurial Distributed SCM (version 7.0.1) 71s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 71s + Traceback (most recent call last): 71s + File "/usr/bin/hg", line 51, in 71s + dispatch.run() 71s + ~~~~~~~~~~~~^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 71s + status = dispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 71s + status = _rundispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 71s + ret = _runcatch(req) or 0 71s + ~~~~~~~~~^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 71s + return _callcatch(ui, _runcatchfunc) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 71s + return scmutil.callcatch(ui, func) 71s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 71s + return func() 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 71s + return _dispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 71s + return runcommand( 71s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 71s + ) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 71s + ret = _runcommand(ui, options, cmd, d) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 71s + return cmdfunc() 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 71s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 71s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 71s + return func(*args, **kwargs) 71s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 71s + r = hg.clone( 71s + ui, 71s + ...<11 lines>... 71s + depth=opts.get('depth') or None, 71s + ) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 71s + srcpeer, destpeer = orig(*args, **opts) 71s + ~~~~^^^^^^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 71s + exchange.pull( 71s + ~~~~~~~~~~~~~^ 71s + local, 71s + ^^^^^^ 71s + ...<5 lines>... 71s + depth=depth, 71s + ^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 71s + return f(*args, **kwargs) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 71s + pullop.cgresult = repo.githandler.fetch(remote, heads) 71s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 71s + imported = self.import_git_objects( 71s + b'pull', 71s + ...<2 lines>... 71s + heads=heads, 71s + ) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 71s + self.import_git_commit( 71s + ~~~~~~~~~~~~~~~~~~~~~~^ 71s + command, 71s + ^^^^^^^^ 71s + self.git[commit.sha], 71s + ^^^^^^^^^^^^^^^^^^^^^ 71s + commit.phase, 71s + ^^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 71s + files, gitlinks, git_renames = self.get_files_changed( 71s + ~~~~~~~~~~~~~~~~~~~~~~^ 71s + commit, detect_renames 71s + ^^^^^^^^^^^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 71s + oldfile, oldmode, oldsha = change.old 71s + ^^^^^^^^^^^^^^^^^^^^^^^^ 71s + TypeError: cannot unpack non-iterable NoneType object 71s + [1] 71s 71s $ cd hgrepo 71s + $TESTTMP.sh: 44: cd: can't cd to hgrepo 71s 71s Verify that annotated tags are unaffected by reexports: 71s 71s $ GIT_DIR=.hg/git git tag -ln 71s - beta added tag beta 71s - $ hg gexport 71s - $ GIT_DIR=.hg/git git tag -ln 71s - beta added tag beta 71s - 71s -Error checking on tag creation 71s - 71s - $ hg tag --git beta --remove 71s - abort: cannot remove git tags 71s - (the git documentation heavily discourages editing tags) 71s - [255] 71s - $ hg tag --git beta -r null 71s - abort: cannot remove git tags 71s - (the git documentation heavily discourages editing tags) 71s - [255] 71s - $ hg tag --git beta --remove -r 0 71s - abort: cannot specify both --rev and --remove 71s - [10] 71s - $ hg tag --git alpha 71s - abort: git tags require an explicit revision 71s - (please specify -r/--rev) 71s - [255] 71s - $ hg tag --git alpha alpha -r 0 71s - abort: tag names must be unique 71s - [255] 71s - $ hg tag --git alpha -r 0 -e 71s - abort: cannot specify both --git and --edit 71s - [10] 71s - $ hg tag --git alpha -r 0 -m 42 71s - abort: cannot specify both --git and --message 71s - [10] 71s - $ hg tag --git alpha -r 0 -d 42 71s - abort: cannot specify both --git and --date 71s - [10] 71s - $ hg tag --git alpha -r 0 -u user@example.com 71s - abort: cannot specify both --git and --user 71s - [10] 71s - $ hg tag --git 'with space' -r 0 71s - abort: the name 'with space' is not a valid git tag 71s - [255] 71s - $ hg tag --git ' beta' -r 0 71s - abort: the name 'beta' already exists 71s - [255] 71s - $ hg tag --git master -r 0 71s - abort: the name 'master' already exists 71s - [255] 71s - $ hg tag --git tip -r 0 71s - abort: the name 'tip' is reserved 71s - [10] 71s - 71s -Create a git tag from hg 71s - 71s - $ hg tag --git alpha --debug -r 0 71s - finding unexported changesets 71s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 71s - adding git tag alpha 71s - $ hg log --graph 71s - @ changeset: 1:7fe02317c63d 71s - | bookmark: master 71s - | tag: beta 71s - | tag: default/master 71s - | tag: tip 71s - | user: test 71s - | date: Mon Jan 01 00:00:11 2007 +0000 71s - | summary: add beta 71s - | 71s - o changeset: 0:ff7a2f2d8d70 71s - tag: alpha 71s - user: test 71s - date: Mon Jan 01 00:00:10 2007 +0000 71s - summary: add alpha 71s - 71s - $ echo beta-fix >> beta 71s - $ fn_hg_commit -m 'fix for beta' 71s -#if secret 71s - $ hg phase -d 71s -#endif 71s - $ hg push 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - updating reference refs/heads/master 71s - adding reference refs/tags/alpha 71s - 71s -Verify that amending commits known to remotes doesn't break anything 71s - 71s - $ cat >> $HGRCPATH << EOF 71s - > [experimental] 71s - > evolution = createmarkers 71s - > evolution.createmarkers = yes 71s - > EOF 71s - $ hg tags 71s - tip 2:61175962e488 71s - default/master 2:61175962e488 71s - beta 1:7fe02317c63d 71s - alpha 0:ff7a2f2d8d70 71s - $ echo beta-fix-again >> beta 71s - $ fn_hg_commit --amend 71s - $ hg log -T shorttags 71s - 3:3094b9e8da41 draft tip 71s - 2:61175962e488 draft default/master X 71s - 1:7fe02317c63d draft beta 71s - 0:ff7a2f2d8d70 draft alpha 71s - $ hg tags 71s - tip 3:3094b9e8da41 71s - default/master 2:61175962e488 71s - beta 1:7fe02317c63d 71s - alpha 0:ff7a2f2d8d70 71s - $ hg push 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - abort: pushing refs/heads/master overwrites 3094b9e8da41 71s - [255] 71s - $ hg push -f 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - updating reference refs/heads/master 71s - 71s -Now create a tag for the old, obsolete master 71s - 71s - $ cd ../repo.git 71s - $ git tag detached $(hg log -R ../hgrepo --hidden -r 2 -T '{gitnode}\n') 71s - $ git tag 71s - alpha 71s - beta 71s - detached 71s - $ cd ../hgrepo 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - $ hg log -T shorttags 71s - 3:3094b9e8da41 draft default/master tip 71s - 2:61175962e488 draft detached X 71s - 1:7fe02317c63d draft beta 71s - 0:ff7a2f2d8d70 draft alpha 71s - $ hg tags 71s - tip 3:3094b9e8da41 71s - default/master 3:3094b9e8da41 71s - detached 2:61175962e488 71s - beta 1:7fe02317c63d 71s - alpha 0:ff7a2f2d8d70 71s - $ hg push 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - no changes found 71s - [1] 71s - 71s - $ cd .. 71s - 71s -Verify that revsets can point out git tags; for that we need an 71s -untagged commit. 71s - 71s - $ cd hgrepo 71s - $ touch gamma 71s - $ fn_hg_commit -A -m 'add gamma' 71s -#if secret 71s - $ hg phase -d 71s -#endif 71s - $ hg log -T shorttags -r 'gittag()' 71s - 0:ff7a2f2d8d70 draft alpha 71s - 1:7fe02317c63d draft beta 71s - 2:61175962e488 draft detached X 71s - $ hg log -T shorttags -r 'gittag(detached)' 71s - 2:61175962e488 draft detached X 71s - $ hg log -T shorttags -r 'gittag("re:a$")' 71s - 0:ff7a2f2d8d70 draft alpha 71s - 1:7fe02317c63d draft beta 71s - 71s -Create a git tag from hg, but pointing to a new commit: 71s - 71s - $ hg tag --git gamma --debug -r tip 71s - invalid branch cache (visible): tip differs (?) 71s - finding unexported changesets 71s - exporting 1 changesets 71s - converting revision 0eb1ab0073a885a498d4ae3dc5cf0c26e750fa3d 71s - packing 3 loose objects... 71s - packed 3 loose objects! 71s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 71s - adding git tag gamma 71s - $ hg push 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - updating reference refs/heads/master 71s - adding reference refs/tags/gamma 71s - $ cd ../gitrepo 71s - $ git fetch --quiet --tags 71s - $ git tag 71s - alpha 71s - beta 71s - detached 71s - gamma 71s - $ cd .. 71s - 71s -Try to overwrite an annotated tag: 71s - 71s - $ cd hgrepo 71s - $ hg tags -v 71s - tip 4:0eb1ab0073a8 71s - gamma 4:0eb1ab0073a8 git 71s - default/master 4:0eb1ab0073a8 git-remote 71s - detached 2:61175962e488 git 71s - beta 1:7fe02317c63d git 71s - alpha 0:ff7a2f2d8d70 git 71s - $ hg book not-master 71s - $ hg tag beta 71s - abort: tag 'beta' already exists (use -f to force) 71s - [10] 71s - $ hg tag -f beta 71s -#if secret 71s - $ hg phase -d 71s -#endif 71s - $ hg push 71s - pushing to $TESTTMP/repo.git 71s - warning: not overwriting annotated tag 'beta' 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - adding reference refs/heads/not-master 71s - $ hg tags 71s - tip 5:c49682c7cba4 71s - default/not-master 5:c49682c7cba4 71s - gamma 4:0eb1ab0073a8 71s - default/master 4:0eb1ab0073a8 71s - beta 4:0eb1ab0073a8 71s - detached 2:61175962e488 71s - alpha 0:ff7a2f2d8d70 71s - $ cd .. 71s - 71s -Check whether `gimport` handles tags 71s - 71s - $ cd hgrepo 71s - $ rm .hg/git-tags .hg/git-mapfile 71s - $ hg gimport 71s - importing 6 git commits 71s - $ hg tags -q 71s - tip 71s - default/not-master 71s - gamma 71s - default/master 71s - beta 71s - detached 71s - alpha 71s - $ cd .. 71s - 71s -Test how pulling an explicit branch with an annotated tag: 71s - 71s - $ hg clone -r master repo.git hgrepo-2 71s - importing 4 git commits 71s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 71s - updating to branch default 71s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ hg log -r 'ancestors(master) and tagged()' -T shorttags -R hgrepo-2 71s - 0:ff7a2f2d8d70 draft alpha 71s - 1:7fe02317c63d draft beta 71s - 3:0eb1ab0073a8 draft default/master gamma tip 71s - $ hg tags -v -R hgrepo-2 71s - tip 3:0eb1ab0073a8 71s - gamma 3:0eb1ab0073a8 git 71s - default/master 3:0eb1ab0073a8 git-remote 71s - beta 1:7fe02317c63d git 71s - alpha 0:ff7a2f2d8d70 git 71s - $ GIT_DIR=hgrepo-2/.hg/git git fetch --quiet repo.git 71s - $ rm -rf hgrepo-2 71s - 71s - $ hg clone -r master repo.git hgrepo-2 71s - importing 4 git commits 71s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 71s - updating to branch default 71s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ hg log -r 'tagged()' -T shorttags -R hgrepo-2 71s - 0:ff7a2f2d8d70 draft alpha 71s - 1:7fe02317c63d draft beta 71s - 3:0eb1ab0073a8 draft default/master gamma tip 71s -This used to die: 71s - $ hg -R hgrepo-2 gexport 71s -This used to fail, since we didn't actually pull the annotated tag: 71s - $ hg -R hgrepo-2 push 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - no changes found 71s - [1] 71s - $ rm -rf hgrepo-2 71s - 71s -Check that pulling will update phases only: 71s - 71s - $ cd hgrepo 71s - $ hg phase -fs gamma detached 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - $ hg log -T shorttags -r gamma -r detached 71s - 4:0eb1ab0073a8 draft beta default/master gamma 71s - 2:61175962e488 draft detached X 71s - $ cd .. 71s - 71s -Check that we pull new tags to existing commits: 71s - $ cd gitrepo 71s - $ git tag 71s - alpha 71s - beta 71s - detached 71s - gamma 71s - $ fn_git_tag extra-simple-tag 71s - $ fn_git_tag -m annotated extra-annotated-tag 71s - $ git push --tags 71s - To $TESTTMP/repo.git 71s - * [new tag] extra-annotated-tag -> extra-annotated-tag 71s - * [new tag] extra-simple-tag -> extra-simple-tag 71s - $ cd ../hgrepo 71s - $ hg pull -r master 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - $ hg tags -v | grep extra 71s - extra-simple-tag 1:7fe02317c63d git 71s - extra-annotated-tag 1:7fe02317c63d git 71s 71s ERROR: test-git-tags.t#secret output changed 71s ! 71s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull-after-rebase.t 71s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull-after-rebase.t.err 71s @@ -39,274 +39,99 @@ 71s 71s $ hg clone -U repo.git hgrepo 71s importing 3 git commits 71s - new changesets ff7a2f2d8d70:205a004356ef (3 drafts) 71s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 71s + ** which supports versions 6.9 of Mercurial. 71s + ** Please disable "hggit" and try your action again. 71s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 71s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 71s + ** Mercurial Distributed SCM (version 7.0.1) 71s + ** Extensions loaded: hggit unknown (dulwich 0.24.10), rebase 71s + Traceback (most recent call last): 71s + File "/usr/bin/hg", line 51, in 71s + dispatch.run() 71s + ~~~~~~~~~~~~^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 71s + status = dispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 71s + status = _rundispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 71s + ret = _runcatch(req) or 0 71s + ~~~~~~~~~^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 71s + return _callcatch(ui, _runcatchfunc) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 71s + return scmutil.callcatch(ui, func) 71s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 71s + return func() 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 71s + return _dispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 71s + return runcommand( 71s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 71s + ) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 71s + ret = _runcommand(ui, options, cmd, d) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 71s + return cmdfunc() 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 71s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 71s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 71s + return func(*args, **kwargs) 71s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 71s + r = hg.clone( 71s + ui, 71s + ...<11 lines>... 71s + depth=opts.get('depth') or None, 71s + ) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 71s + srcpeer, destpeer = orig(*args, **opts) 71s + ~~~~^^^^^^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 71s + exchange.pull( 71s + ~~~~~~~~~~~~~^ 71s + local, 71s + ^^^^^^ 71s + ...<5 lines>... 71s + depth=depth, 71s + ^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 71s + return f(*args, **kwargs) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 71s + pullop.cgresult = repo.githandler.fetch(remote, heads) 71s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 71s + imported = self.import_git_objects( 71s + b'pull', 71s + ...<2 lines>... 71s + heads=heads, 71s + ) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 71s + self.import_git_commit( 71s + ~~~~~~~~~~~~~~~~~~~~~~^ 71s + command, 71s + ^^^^^^^^ 71s + self.git[commit.sha], 71s + ^^^^^^^^^^^^^^^^^^^^^ 71s + commit.phase, 71s + ^^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 71s + files, gitlinks, git_renames = self.get_files_changed( 71s + ~~~~~~~~~~~~~~~~~~~~~~^ 71s + commit, detect_renames 71s + ^^^^^^^^^^^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 71s + oldfile, oldmode, oldsha = change.old 71s + ^^^^^^^^^^^^^^^^^^^^^^^^ 71s + TypeError: cannot unpack non-iterable NoneType object 71s + [1] 71s $ cd hgrepo 71s + $TESTTMP.sh: 48: cd: can't cd to hgrepo 71s $ hg state 71s - o branch default/branch tip 2:205a004356ef32b8da782afb89d9179d12ca31e9 71s - | add gamma 71s - | o master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 71s - |/ add beta 71s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 71s - add alpha 71s - $ hg up branch 71s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - (activating bookmark branch) 71s - $ hg rebase --quiet -d master 71s - $ hg state 71s - @ branch tip 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 71s - | add gamma 71s - | x default/branch 2:205a004356ef32b8da782afb89d9179d12ca31e9 71s - | | add gamma 71s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 71s - |/ add beta 71s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 71s - add alpha 71s - 71s - $ hg push -fr tip 71s - pushing to $TESTTMP/repo.git 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - updating reference refs/heads/branch 71s - $ cd .. 71s - 71s -Now switch back to git and create a new commit based on what we just rebased 71s - 71s - $ cd gitrepo 71s - $ git checkout --quiet -b otherbranch branch 71s - $ git log --oneline --graph --all --decorate 71s - * e5023f9 (HEAD -> otherbranch, origin/branch, branch) add gamma 71s - | * 9497a4e (origin/master, master) add beta 71s - |/ 71s - * 7eeab2e add alpha 71s - $ echo delta > delta 71s - $ git add delta 71s - $ fn_git_commit -m 'add delta' 71s - $ git push --quiet --set-upstream origin otherbranch 71s - Branch 'otherbranch' set up to track remote branch 'otherbranch' from 'origin'. (?) 71s - $ git log --oneline --graph --all --decorate 71s - * bba0011 (HEAD -> otherbranch, origin/otherbranch) add delta 71s - * e5023f9 (origin/branch, branch) add gamma 71s - | * 9497a4e (origin/master, master) add beta 71s - |/ 71s - * 7eeab2e add alpha 71s - $ cd .. 71s - 71s -Pull that 71s - 71s - $ cd hgrepo 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - importing 1 git commits 71s - adding bookmark otherbranch 71s - 1 new orphan changesets 71s - new changesets 075302705298 (1 drafts) 71s - (run 'hg heads' to see heads, 'hg merge' to merge) 71s - $ hg state 71s - * otherbranch default/otherbranch tip 4:0753027052980aef9c9c37adb7d76d5719e8d818 71s - | add delta 71s - | @ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 71s - | | add gamma 71s - x | 2:205a004356ef32b8da782afb89d9179d12ca31e9 71s - | | add gamma 71s - | o master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 71s - |/ add beta 71s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 71s - add alpha 71s - 71s - $ cd .. 71s - 71s -To reproduce bug #386, do like github and save the old commit in a 71s -ref, and create a clone containing just the converted git commits: 71s - 71s - $ cd repo.git 71s - $ git update-ref refs/pr/1 otherbranch 71s - $ cd .. 71s - $ hg clone -U repo.git hgrepo-issue386 71s - importing 5 git commits 71s - new changesets ff7a2f2d8d70:075302705298 (5 drafts) 71s - 71s -Now try rebasing that branch, from the Git side of things 71s - 71s - $ cd gitrepo 71s - $ git checkout -q otherbranch 71s - $ git log --oneline --graph --all --decorate 71s - * bba0011 (HEAD -> otherbranch, origin/otherbranch) add delta 71s - * e5023f9 (origin/branch, branch) add gamma 71s - | * 9497a4e (origin/master, master) add beta 71s - |/ 71s - * 7eeab2e add alpha 71s - $ fn_git_rebase --onto master branch otherbranch 71s - $ git log --oneline --graph --all --decorate 71s - * 9c58139 (HEAD -> otherbranch) add delta 71s - * 9497a4e (origin/master, master) add beta 71s - | * bba0011 (origin/otherbranch) add delta 71s - | * e5023f9 (origin/branch, branch) add gamma 71s - |/ 71s - * 7eeab2e add alpha 71s - $ git push -f 71s - To $TESTTMP/repo.git 71s - + bba0011...9c58139 otherbranch -> otherbranch (forced update) 71s - $ git log --oneline --graph --all --decorate 71s - * 9c58139 (HEAD -> otherbranch, origin/otherbranch) add delta 71s - * 9497a4e (origin/master, master) add beta 71s - | * e5023f9 (origin/branch, branch) add gamma 71s - |/ 71s - * 7eeab2e add alpha 71s - $ cd .. 71s - 71s -Now strip the old commit 71s - 71s - $ cd hgrepo-issue386 71s - $ hg up null 71s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ hg id -qr otherbranch 71s - 075302705298 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - importing 1 git commits 71s - not updating diverged bookmark otherbranch 71s - new changesets d64bf0521af6 (1 drafts) 71s - (run 'hg heads .' to see heads, 'hg merge' to merge) 71s - $ hg debugstrip --hidden --no-backup otherbranch 71s - $ hg book -d otherbranch 71s - $ hg git-cleanup 71s - git commit map cleaned 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - adding bookmark otherbranch 71s - $ cd .. 71s - 71s -And check that pulling something else doesn't delete that branch. 71s - 71s - $ cd hgrepo 71s - $ hg pull -r master 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - $ cd .. 71s - 71s -A special case, is that we can pull into a repository, where a commit 71s -corresponding to the new branch exists, but that commit is obsolete. 71s -In order to avoid “pinning” the obsolete commit, and thereby making it 71s -visible, we first pull from Git as an unnamed remote. 71s - 71s - $ hg clone --config phases.publish=no hgrepo hgrepo-clone 71s - updating to branch default 71s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ cd hgrepo-clone 71s - $ hg pull ../repo.git 71s - pulling from ../repo.git 71s - importing 4 git commits 71s - not updating diverged bookmark otherbranch 71s - new changesets d64bf0521af6 (1 drafts) 71s - (run 'hg heads .' to see heads, 'hg merge' to merge) 71s - $ hg debugobsolete d64bf0521af68fe2160791a1b4ab9baf282a3879 71s - 1 new obsolescence markers 71s - obsoleted 1 changesets 71s - $ cp ../hgrepo/.hg/hgrc .hg 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - not updating diverged bookmark otherbranch 71s - $ cd .. 71s - $ rm -rf hgrepo-clone 71s - 71s -Another special case, is that we should update commits over obsolete boundaries: 71s - 71s - $ hg clone --config phases.publish=no hgrepo hgrepo-clone 71s - updating to branch default 71s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ cd hgrepo-clone 71s - $ hg pull ../repo.git 71s - pulling from ../repo.git 71s - importing 4 git commits 71s - not updating diverged bookmark otherbranch 71s - new changesets d64bf0521af6 (1 drafts) 71s - (run 'hg heads .' to see heads, 'hg merge' to merge) 71s - $ hg debugobsolete 0753027052980aef9c9c37adb7d76d5719e8d818 d64bf0521af68fe2160791a1b4ab9baf282a3879 71s - 1 new obsolescence markers 71s - obsoleted 1 changesets 71s - $ hg book -r 075302705298 otherbranch 71s - $ cp ../hgrepo/.hg/hgrc .hg 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - updating bookmark otherbranch 71s - $ cd .. 71s - $ rm -rf hgrepo-clone 71s - 71s -Now just pull it: 71s - 71s - $ cd hgrepo 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - importing 1 git commits 71s - not updating diverged bookmark otherbranch 71s - new changesets d64bf0521af6 (1 drafts) 71s - (run 'hg heads .' to see heads, 'hg merge' to merge) 71s - $ hg state 71s - o default/otherbranch tip 5:d64bf0521af68fe2160791a1b4ab9baf282a3879 71s - | add delta 71s - | * otherbranch 4:0753027052980aef9c9c37adb7d76d5719e8d818 71s - | | add delta 71s - +---@ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 71s - | | add gamma 71s - | x 2:205a004356ef32b8da782afb89d9179d12ca31e9 71s - | | add gamma 71s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 71s - |/ add beta 71s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 71s - add alpha 71s - $ cd .. 71s - 71s -And finally, delete it: 71s - 71s - $ cd gitrepo 71s - $ git push origin :otherbranch 71s - To $TESTTMP/repo.git 71s - - [deleted] otherbranch 71s - $ cd .. 71s - 71s -And pull that: 71s - 71s - $ cd hgrepo 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - not deleting diverged bookmark otherbranch 71s - $ hg state 71s - o tip 5:d64bf0521af68fe2160791a1b4ab9baf282a3879 71s - | add delta 71s - | * otherbranch 4:0753027052980aef9c9c37adb7d76d5719e8d818 71s - | | add delta 71s - +---@ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 71s - | | add gamma 71s - | x 2:205a004356ef32b8da782afb89d9179d12ca31e9 71s - | | add gamma 71s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 71s - |/ add beta 71s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 71s - add alpha 71s - $ cd .. 71s - 71s -We only get that message once: 71s - 71s - $ hg -R hgrepo pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - 71s -Now try deleting one already gone locally, which shouldn't output 71s -anything: 71s - 71s - $ cd gitrepo 71s - $ git push origin :branch 71s - To $TESTTMP/repo.git 71s - - [deleted] branch 71s - $ cd ../hgrepo 71s - $ hg book -d branch 71s - $ hg pull 71s - pulling from $TESTTMP/repo.git 71s - no changes found 71s - $ cd .. 71s 71s ERROR: test-pull-after-rebase.t output changed 71s ! 71s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push.t 71s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push.t.err 71s @@ -13,286 +13,100 @@ 71s $ cd .. 71s $ hg clone -u tip gitrepo hgrepo 71s importing 1 git commits 71s - new changesets ff7a2f2d8d70 (1 drafts) 71s - updating to branch default 71s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 71s + ** which supports versions 6.9 of Mercurial. 71s + ** Please disable "hggit" and try your action again. 71s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 71s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 71s + ** Mercurial Distributed SCM (version 7.0.1) 71s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 71s + Traceback (most recent call last): 71s + File "/usr/bin/hg", line 51, in 71s + dispatch.run() 71s + ~~~~~~~~~~~~^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 71s + status = dispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 71s + status = _rundispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 71s + ret = _runcatch(req) or 0 71s + ~~~~~~~~~^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 71s + return _callcatch(ui, _runcatchfunc) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 71s + return scmutil.callcatch(ui, func) 71s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 71s + return func() 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 71s + return _dispatch(req) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 71s + return runcommand( 71s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 71s + ) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 71s + ret = _runcommand(ui, options, cmd, d) 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 71s + return cmdfunc() 71s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 71s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 71s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 71s + return func(*args, **kwargs) 71s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 71s + r = hg.clone( 71s + ui, 71s + ...<11 lines>... 71s + depth=opts.get('depth') or None, 71s + ) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 71s + srcpeer, destpeer = orig(*args, **opts) 71s + ~~~~^^^^^^^^^^^^^^^ 71s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 71s + exchange.pull( 71s + ~~~~~~~~~~~~~^ 71s + local, 71s + ^^^^^^ 71s + ...<5 lines>... 71s + depth=depth, 71s + ^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 71s + return f(*args, **kwargs) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 71s + pullop.cgresult = repo.githandler.fetch(remote, heads) 71s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 71s + imported = self.import_git_objects( 71s + b'pull', 71s + ...<2 lines>... 71s + heads=heads, 71s + ) 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 71s + self.import_git_commit( 71s + ~~~~~~~~~~~~~~~~~~~~~~^ 71s + command, 71s + ^^^^^^^^ 71s + self.git[commit.sha], 71s + ^^^^^^^^^^^^^^^^^^^^^ 71s + commit.phase, 71s + ^^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 71s + files, gitlinks, git_renames = self.get_files_changed( 71s + ~~~~~~~~~~~~~~~~~~~~~~^ 71s + commit, detect_renames 71s + ^^^^^^^^^^^^^^^^^^^^^^ 71s + ) 71s + ^ 71s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 71s + oldfile, oldmode, oldsha = change.old 71s + ^^^^^^^^^^^^^^^^^^^^^^^^ 71s + TypeError: cannot unpack non-iterable NoneType object 71s + [1] 71s 71s $ cd hgrepo 71s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 71s $ hg bookmark -q master 71s - $ echo beta > beta 71s - $ hg add beta 71s - $ fn_hg_commit -m 'add beta' 71s - 71s - 71s - $ echo gamma > gamma 71s - $ hg add gamma 71s - $ fn_hg_commit -m 'add gamma' 71s - 71s - $ hg book -r 1 beta 71s - $ hg push -r beta 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - adding reference refs/heads/beta 71s - 71s - $ cd .. 71s - 71s -should have two different branches 71s - $ cd gitrepo 71s - $ git branch -v 71s - beta 0f378ab add beta 71s - master 7eeab2e add alpha 71s - * not-master 7eeab2e add alpha 71s - 71s -some more work on master from git 71s - $ git checkout master 2>&1 | sed s/\'/\"/g 71s - Switched to branch "master" 71s - $ echo delta > delta 71s - $ git add delta 71s - $ fn_git_commit -m "add delta" 71s - $ git checkout not-master 2>&1 | sed s/\'/\"/g 71s - Switched to branch "not-master" 71s - 71s - $ cd .. 71s - 71s - $ cd hgrepo 71s -this should fail 71s - $ hg push -r master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 71s - [255] 71s - 71s -... even with -f 71s - $ hg push -fr master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 71s - [255] 71s - 71s - $ hg pull 2>&1 | grep -v 'divergent bookmark' 71s - pulling from $TESTTMP/gitrepo 71s - importing 1 git commits 71s - not updating diverged bookmark master 71s - new changesets 25eed24f5e8f (1 drafts) 71s - (run 'hg heads' to see heads, 'hg merge' to merge) 71s -TODO shouldn't need to do this since we're (in theory) pushing master explicitly, 71s -which should not implicitly also push the not-master ref. 71s - $ hg book not-master -r default/not-master --force 71s -master and default/master should be diferent 71s - $ hg log -r master 71s - changeset: 2:953796e1cfd8 71s - bookmark: master 71s - user: test 71s - date: Mon Jan 01 00:00:12 2007 +0000 71s - summary: add gamma 71s - 71s - $ hg log -r default/master 71s - changeset: 3:25eed24f5e8f 71s - tag: default/master 71s - tag: tip 71s - parent: 0:ff7a2f2d8d70 71s - user: test 71s - date: Mon Jan 01 00:00:13 2007 +0000 71s - summary: add delta 71s - 71s - 71s -this should also fail 71s - $ hg push -r master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - abort: pushing refs/heads/master overwrites 953796e1cfd8 71s - [255] 71s - 71s -... but succeed with -f 71s - $ hg push -fr master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - updating reference refs/heads/master 71s - 71s -this should fail, no changes to push 71s - $ hg push -r master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - no changes found 71s - [1] 71s - 71s -hg-git issue103 -- directories can lose information at hg-git export time 71s - 71s - $ hg up master 71s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ mkdir dir1 71s - $ echo alpha > dir1/alpha 71s - $ hg add dir1/alpha 71s - $ fn_hg_commit -m 'add dir1/alpha' 71s - $ hg push -r master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 2 trees and 0 blobs 71s - updating reference refs/heads/master 71s - 71s - $ echo beta > dir1/beta 71s - $ hg add dir1/beta 71s - $ fn_hg_commit -m 'add dir1/beta' 71s - $ hg push -r master 71s - pushing to $TESTTMP/gitrepo 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 2 trees and 0 blobs 71s - updating reference refs/heads/master 71s - $ hg log -r master 71s - changeset: 5:ba0476ff1899 71s - bookmark: master 71s - tag: default/master 71s - tag: tip 71s - user: test 71s - date: Mon Jan 01 00:00:15 2007 +0000 71s - summary: add dir1/beta 71s - 71s - 71s - $ cat >> .hg/hgrc << EOF 71s - > [paths] 71s - > default:pushurl = file:///$TESTTMP/gitrepo 71s - > EOF 71s -NB: the triple slashes are intentional, due to windows 71s - $ hg push -r master 71s - pushing to file:///$TESTTMP/gitrepo 71s - searching for changes 71s - no changes found 71s - [1] 71s - 71s - $ cd .. 71s - 71s - $ hg clone -u tip gitrepo hgrepo-test 71s - importing 5 git commits 71s - new changesets ff7a2f2d8d70:ba0476ff1899 (5 drafts) 71s - updating to branch default 71s - 5 files updated, 0 files merged, 0 files removed, 0 files unresolved 71s - $ hg -R hgrepo-test log -r master 71s - changeset: 4:ba0476ff1899 71s - bookmark: master 71s - tag: default/master 71s - tag: tip 71s - user: test 71s - date: Mon Jan 01 00:00:15 2007 +0000 71s - summary: add dir1/beta 71s - 71s - $ hg tags -R hgrepo-test | grep ^default/ 71s - default/master 4:ba0476ff1899 71s - default/beta 1:47580592d3d6 71s - default/not-master 0:ff7a2f2d8d70 71s - 71s -Push a fast-forward to a currently checked out branch, which sometimes 71s -fails: 71s - 71s - $ cd hgrepo 71s - $ hg book -r master not-master 71s - moving bookmark 'not-master' forward from ff7a2f2d8d70 71s - $ hg push 71s - pushing to file:///$TESTTMP/gitrepo 71s - searching for changes 71s - warning: failed to update HEAD; unable to set b'HEAD' to b'7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03' (?) 71s - updating reference refs/heads/not-master 71s -That should have updated the tag: 71s - $ hg tags | grep ^default/ 71s - default/not-master 5:ba0476ff1899 71s - default/master 5:ba0476ff1899 71s - default/beta 1:47580592d3d6 71s - $ cd .. 71s - 71s -We can push only one of two bookmarks on the same revision: 71s - 71s - $ cd hgrepo 71s - $ hg book -r 0 also-not-master really-not-master 71s - $ hg push -B also-not-master 71s - pushing to file:///$TESTTMP/gitrepo 71s - searching for changes 71s - adding reference refs/heads/also-not-master 71s - 71s -We can also push another bookmark to a path with another revision 71s -specified: 71s - 71s - $ hg book -r 3 also-not-master 71s - moving bookmark 'also-not-master' forward from ff7a2f2d8d70 71s - $ hg push -B also-not-master "file:///$TESTTMP/gitrepo#master" 71s - pushing to file:///$TESTTMP/gitrepo 71s - searching for changes 71s - adding objects 71s - remote: found 0 deltas to reuse 71s - added 1 commits with 1 trees and 1 blobs 71s - updating reference refs/heads/also-not-master 71s - 71s -And we can delete them again afterwards: 71s - 71s - $ hg book -d also-not-master really-not-master 71s - $ hg push -B also-not-master -B really-not-master 71s - pushing to file:///$TESTTMP/gitrepo 71s - searching for changes 71s - warning: unable to delete 'refs/heads/really-not-master' as it does not exist on the remote repository 71s - deleting reference refs/heads/also-not-master 71s - 71s -Push empty Hg repo to empty Git repo (issue #58) 71s - $ hg init hgrepo2 71s - $ git init -q --bare repo.git 71s - $ hg -R hgrepo2 push repo.git 71s - pushing to repo.git 71s - searching for changes 71s - abort: no bookmarks or tags to push to git 71s - (see "hg help bookmarks" for details on creating them) 71s - [255] 71s - 71s -The remote repo is empty and the local one doesn't have any bookmarks/tags 71s - $ cd hgrepo2 71s - $ echo init >> test.txt 71s - $ hg addremove 71s - adding test.txt 71s - $ fn_hg_commit -m init 71s - $ hg update null 71s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 71s - $ hg push ../repo.git 71s - pushing to ../repo.git 71s - searching for changes 71s - abort: no bookmarks or tags to push to git 71s - (see "hg help bookmarks" for details on creating them) 71s - [255] 71s - $ hg summary 71s - parent: -1:000000000000 (no revision checked out) 71s - branch: default 71s - commit: (clean) 71s - update: 1 new changesets (update) 71s - phases: 1 draft 71s -That should not create any bookmarks 71s - $ hg bookmarks 71s - no bookmarks set 71s -And no tags for the remotes either: 71s - $ hg tags 71s - tip 0:8aded40be5af 71s - 71s -test for ssh vulnerability 71s - 71s - $ cat >> $HGRCPATH << EOF 71s - > [ui] 71s - > ssh = ssh -o ConnectTimeout=1 71s - > EOF 71s - $ hg push -q 'git+ssh://-oProxyCommand=rm${IFS}nonexistent/path' 71s - abort: potentially unsafe hostname: '-oProxyCommand=rm${IFS}nonexistent' 71s - [255] 71s - $ hg push -q 'git+ssh://-oProxyCommand=rm%20nonexistent/path' 71s - abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 71s - [255] 71s - $ hg push -q 'git+ssh://fakehost|rm%20nonexistent/path' 71s - ssh: * fakehost%7?rm%20nonexistent* (glob) 71s - abort: git remote error: The remote server unexpectedly closed the connection. 71s - [255] 71s - $ hg push -q 'git+ssh://fakehost%7Crm%20nonexistent/path' 71s - ssh: * fakehost%7?rm%20nonexistent* (glob) 71s - abort: git remote error: The remote server unexpectedly closed the connection. 71s - [255] 71s 71s ERROR: test-push.t output changed 76s ! 76s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-clone.t 76s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-clone.t#draft.err 76s @@ -39,59 +39,218 @@ 76s 76s $ hg clone -r alpha gitrepo hgrepo-a 76s importing 1 git commits 76s - new changesets ff7a2f2d8d70 (1 drafts) 76s - updating to branch default 76s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-a bookmarks 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-a not found 76s + [255] 76s $ hg -R hgrepo-a log --graph --template=phases 76s - @ changeset: 0:ff7a2f2d8d70 76s - bookmark: master 76s - tag: alpha 76s - tag: default/master 76s - tag: tip 76s - phase: draft 76s - user: test 76s - date: Mon Jan 01 00:00:10 2007 +0000 76s - summary: add alpha 76s - 76s + abort: repository hgrepo-a not found 76s + [255] 76s $ git --git-dir hgrepo-a/.hg/git for-each-ref 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-a/.hg/git' 76s + [128] 76s Make sure this is still draft since we didn't pull remote's HEAD 76s $ hg -R hgrepo-a phase -r alpha 76s - 0: draft 76s + abort: repository hgrepo-a not found 76s + [255] 76s 76s clone a branch 76s $ hg clone -r beta gitrepo hgrepo-b 76s importing 2 git commits 76s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 76s - updating to branch default 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-b bookmarks 76s - * beta 1:7fe02317c63d 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-b not found 76s + [255] 76s $ hg -R hgrepo-b log --graph 76s - @ changeset: 1:7fe02317c63d 76s - | bookmark: beta 76s - | tag: default/beta 76s - | tag: tip 76s - | user: test 76s - | date: Mon Jan 01 00:00:11 2007 +0000 76s - | summary: add beta 76s - | 76s - o changeset: 0:ff7a2f2d8d70 76s - bookmark: master 76s - tag: alpha 76s - tag: default/master 76s - user: test 76s - date: Mon Jan 01 00:00:10 2007 +0000 76s - summary: add alpha 76s - 76s + abort: repository hgrepo-b not found 76s + [255] 76s $ git --git-dir hgrepo-b/.hg/git for-each-ref 76s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-b/.hg/git' 76s + [128] 76s 76s Make sure that a deleted .hgsubstate does not confuse hg-git 76s 76s @@ -105,47 +264,224 @@ 76s 76s $ hg clone -r beta gitrepo hgrepo-c 76s importing 4 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (4 drafts) 76s - updating to branch default 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-c bookmarks 76s - * beta 3:47d12948785d 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-c not found 76s + [255] 76s $ hg --cwd hgrepo-c status 76s + abort: No such file or directory: 'hgrepo-c' 76s + [255] 76s $ git --git-dir hgrepo-c/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-c/.hg/git' 76s + [128] 76s 76s test shared repositories 76s 76s $ hg clone gitrepo hgrepo-base 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - updating to bookmark beta 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-base bookmarks 76s - * beta 4:47d12948785d 76s - gamma 2:ca33a262eb46 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-base not found 76s + [255] 76s $ hg --config extensions.share= share hgrepo-base hgrepo-shared 76s - updating working directory 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + abort: repository hgrepo-base not found 76s + [255] 76s $ hg -R hgrepo-shared pull gitrepo 76s - pulling from gitrepo 76s - no changes found 76s - adding bookmark beta 76s - adding bookmark gamma 76s - adding bookmark master 76s + abort: repository hgrepo-shared not found 76s + [255] 76s $ hg -R hgrepo-shared push gitrepo 76s - pushing to gitrepo 76s - searching for changes 76s - no changes found 76s - [1] 76s + abort: repository hgrepo-shared not found 76s + [255] 76s $ ls hgrepo-shared/.hg | grep git 76s + ls: cannot access 'hgrepo-shared/.hg': No such file or directory 76s [1] 76s $ hg -R hgrepo-shared git-cleanup 76s - git commit map cleaned 76s + abort: repository hgrepo-shared not found 76s + [255] 76s $ rm -rf hgrepo-base hgrepo-shared 76s 76s test cloning HEAD 76s @@ -155,14 +491,102 @@ 76s $ cd .. 76s $ hg clone gitrepo hgrepo-2 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - updating to bookmark master 76s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ git --git-dir hgrepo-2/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-2/.hg/git' 76s + [128] 76s $ rm -rf hgrepo-2 76s 76s clone empty repo 76s @@ -181,24 +605,108 @@ 76s $ cd .. 76s $ hg clone gitrepo hgrepo-2 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - updating to bookmark master 76s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-2 book 76s - beta 4:47d12948785d 76s - gamma 2:ca33a262eb46 76s - * master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ hg -R hgrepo-2 tags -v 76s - tip 4:47d12948785d 76s - default/beta 4:47d12948785d git-remote 76s - default/gamma 2:ca33a262eb46 git-remote 76s - default/master 0:ff7a2f2d8d70 git-remote 76s - alpha 0:ff7a2f2d8d70 git 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ git --git-dir hgrepo-2/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-2/.hg/git' 76s + [128] 76s $ rm -rf hgrepo-2 76s 76s test cloning fully detached HEAD; we don't convert the 76s @@ -213,22 +721,108 @@ 76s $ cd .. 76s $ hg clone gitrepo hgrepo-2 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - warning: the git source repository has a detached head 76s - (you may want to update to a bookmark) 76s - updating to branch default 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-2 book 76s - beta 4:47d12948785d 76s - gamma 2:ca33a262eb46 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ hg -R hgrepo-2 id --tags 76s - default/beta tip 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ git --git-dir hgrepo-2/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-2/.hg/git' 76s + [128] 76s $ rm -rf hgrepo-2 76s 76s test that cloning a regular mercurial repository does not introduce 76s 76s ERROR: test-clone.t#draft output changed 76s ! 76s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-clone.t 76s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-clone.t#secret.err 76s @@ -39,59 +39,218 @@ 76s 76s $ hg clone -r alpha gitrepo hgrepo-a 76s importing 1 git commits 76s - new changesets ff7a2f2d8d70 (1 drafts) 76s - updating to branch default 76s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-a bookmarks 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-a not found 76s + [255] 76s $ hg -R hgrepo-a log --graph --template=phases 76s - @ changeset: 0:ff7a2f2d8d70 76s - bookmark: master 76s - tag: alpha 76s - tag: default/master 76s - tag: tip 76s - phase: draft 76s - user: test 76s - date: Mon Jan 01 00:00:10 2007 +0000 76s - summary: add alpha 76s - 76s + abort: repository hgrepo-a not found 76s + [255] 76s $ git --git-dir hgrepo-a/.hg/git for-each-ref 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-a/.hg/git' 76s + [128] 76s Make sure this is still draft since we didn't pull remote's HEAD 76s $ hg -R hgrepo-a phase -r alpha 76s - 0: draft 76s + abort: repository hgrepo-a not found 76s + [255] 76s 76s clone a branch 76s $ hg clone -r beta gitrepo hgrepo-b 76s importing 2 git commits 76s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 76s - updating to branch default 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-b bookmarks 76s - * beta 1:7fe02317c63d 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-b not found 76s + [255] 76s $ hg -R hgrepo-b log --graph 76s - @ changeset: 1:7fe02317c63d 76s - | bookmark: beta 76s - | tag: default/beta 76s - | tag: tip 76s - | user: test 76s - | date: Mon Jan 01 00:00:11 2007 +0000 76s - | summary: add beta 76s - | 76s - o changeset: 0:ff7a2f2d8d70 76s - bookmark: master 76s - tag: alpha 76s - tag: default/master 76s - user: test 76s - date: Mon Jan 01 00:00:10 2007 +0000 76s - summary: add alpha 76s - 76s + abort: repository hgrepo-b not found 76s + [255] 76s $ git --git-dir hgrepo-b/.hg/git for-each-ref 76s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-b/.hg/git' 76s + [128] 76s 76s Make sure that a deleted .hgsubstate does not confuse hg-git 76s 76s @@ -105,47 +264,224 @@ 76s 76s $ hg clone -r beta gitrepo hgrepo-c 76s importing 4 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (4 drafts) 76s - updating to branch default 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-c bookmarks 76s - * beta 3:47d12948785d 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-c not found 76s + [255] 76s $ hg --cwd hgrepo-c status 76s + abort: No such file or directory: 'hgrepo-c' 76s + [255] 76s $ git --git-dir hgrepo-c/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-c/.hg/git' 76s + [128] 76s 76s test shared repositories 76s 76s $ hg clone gitrepo hgrepo-base 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - updating to bookmark beta 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-base bookmarks 76s - * beta 4:47d12948785d 76s - gamma 2:ca33a262eb46 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-base not found 76s + [255] 76s $ hg --config extensions.share= share hgrepo-base hgrepo-shared 76s - updating working directory 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + abort: repository hgrepo-base not found 76s + [255] 76s $ hg -R hgrepo-shared pull gitrepo 76s - pulling from gitrepo 76s - no changes found 76s - adding bookmark beta 76s - adding bookmark gamma 76s - adding bookmark master 76s + abort: repository hgrepo-shared not found 76s + [255] 76s $ hg -R hgrepo-shared push gitrepo 76s - pushing to gitrepo 76s - searching for changes 76s - no changes found 76s - [1] 76s + abort: repository hgrepo-shared not found 76s + [255] 76s $ ls hgrepo-shared/.hg | grep git 76s + ls: cannot access 'hgrepo-shared/.hg': No such file or directory 76s [1] 76s $ hg -R hgrepo-shared git-cleanup 76s - git commit map cleaned 76s + abort: repository hgrepo-shared not found 76s + [255] 76s $ rm -rf hgrepo-base hgrepo-shared 76s 76s test cloning HEAD 76s @@ -155,14 +491,102 @@ 76s $ cd .. 76s $ hg clone gitrepo hgrepo-2 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - updating to bookmark master 76s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ git --git-dir hgrepo-2/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-2/.hg/git' 76s + [128] 76s $ rm -rf hgrepo-2 76s 76s clone empty repo 76s @@ -181,24 +605,108 @@ 76s $ cd .. 76s $ hg clone gitrepo hgrepo-2 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - updating to bookmark master 76s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-2 book 76s - beta 4:47d12948785d 76s - gamma 2:ca33a262eb46 76s - * master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ hg -R hgrepo-2 tags -v 76s - tip 4:47d12948785d 76s - default/beta 4:47d12948785d git-remote 76s - default/gamma 2:ca33a262eb46 git-remote 76s - default/master 0:ff7a2f2d8d70 git-remote 76s - alpha 0:ff7a2f2d8d70 git 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ git --git-dir hgrepo-2/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-2/.hg/git' 76s + [128] 76s $ rm -rf hgrepo-2 76s 76s test cloning fully detached HEAD; we don't convert the 76s @@ -213,22 +721,108 @@ 76s $ cd .. 76s $ hg clone gitrepo hgrepo-2 76s importing 5 git commits 76s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 76s - warning: the git source repository has a detached head 76s - (you may want to update to a bookmark) 76s - updating to branch default 76s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 76s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 76s + ** which supports versions 6.9 of Mercurial. 76s + ** Please disable "hggit" and try your action again. 76s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 76s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 76s + ** Mercurial Distributed SCM (version 7.0.1) 76s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 76s + Traceback (most recent call last): 76s + File "/usr/bin/hg", line 51, in 76s + dispatch.run() 76s + ~~~~~~~~~~~~^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 76s + status = dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 76s + status = _rundispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 76s + ret = _runcatch(req) or 0 76s + ~~~~~~~~~^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 76s + return _callcatch(ui, _runcatchfunc) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 76s + return scmutil.callcatch(ui, func) 76s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 76s + return func() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 76s + return _dispatch(req) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 76s + return runcommand( 76s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 76s + ) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 76s + ret = _runcommand(ui, options, cmd, d) 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 76s + return cmdfunc() 76s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 76s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 76s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 76s + return func(*args, **kwargs) 76s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 76s + r = hg.clone( 76s + ui, 76s + ...<11 lines>... 76s + depth=opts.get('depth') or None, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 76s + srcpeer, destpeer = orig(*args, **opts) 76s + ~~~~^^^^^^^^^^^^^^^ 76s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 76s + exchange.pull( 76s + ~~~~~~~~~~~~~^ 76s + local, 76s + ^^^^^^ 76s + ...<5 lines>... 76s + depth=depth, 76s + ^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 76s + return f(*args, **kwargs) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 76s + pullop.cgresult = repo.githandler.fetch(remote, heads) 76s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 76s + imported = self.import_git_objects( 76s + b'pull', 76s + ...<2 lines>... 76s + heads=heads, 76s + ) 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 76s + self.import_git_commit( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + command, 76s + ^^^^^^^^ 76s + self.git[commit.sha], 76s + ^^^^^^^^^^^^^^^^^^^^^ 76s + commit.phase, 76s + ^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 76s + files, gitlinks, git_renames = self.get_files_changed( 76s + ~~~~~~~~~~~~~~~~~~~~~~^ 76s + commit, detect_renames 76s + ^^^^^^^^^^^^^^^^^^^^^^ 76s + ) 76s + ^ 76s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 76s + oldfile, oldmode, oldsha = change.old 76s + ^^^^^^^^^^^^^^^^^^^^^^^^ 76s + TypeError: cannot unpack non-iterable NoneType object 76s + [1] 76s $ hg -R hgrepo-2 book 76s - beta 4:47d12948785d 76s - gamma 2:ca33a262eb46 76s - master 0:ff7a2f2d8d70 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ hg -R hgrepo-2 id --tags 76s - default/beta tip 76s + abort: repository hgrepo-2 not found 76s + [255] 76s $ git --git-dir hgrepo-2/.hg/git for-each-ref 76s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 76s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 76s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 76s + fatal: not a git repository: 'hgrepo-2/.hg/git' 76s + [128] 76s $ rm -rf hgrepo-2 76s 76s test that cloning a regular mercurial repository does not introduce 76s 76s ERROR: test-clone.t#secret output changed 79s ! 79s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-branch-bookmark-suffix.t 79s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-branch-bookmark-suffix.t#with-path.err 79s @@ -49,31 +49,102 @@ 79s 79s $ hg push ../repo.git 79s pushing to ../repo.git 79s - searching for changes 79s - adding objects 79s - remote: found 0 deltas to reuse 79s - added 2 commits with 2 trees and 2 blobs 79s - adding reference refs/heads/branch1 79s - adding reference refs/heads/branch2 79s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 79s + ** which supports versions 6.9 of Mercurial. 79s + ** Please disable "hggit" and try your action again. 79s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 79s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 79s + ** Mercurial Distributed SCM (version 7.0.1) 79s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 79s + Traceback (most recent call last): 79s + File "/usr/bin/hg", line 51, in 79s + dispatch.run() 79s + ~~~~~~~~~~~~^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 79s + status = dispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 79s + status = _rundispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 79s + ret = _runcatch(req) or 0 79s + ~~~~~~~~~^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 79s + return _callcatch(ui, _runcatchfunc) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 79s + return scmutil.callcatch(ui, func) 79s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 79s + return func() 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 79s + return _dispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 79s + return runcommand( 79s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 79s + ) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 79s + ret = _runcommand(ui, options, cmd, d) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 79s + return cmdfunc() 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 79s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 79s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 79s + return func(*args, **kwargs) 79s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 79s + pushop = exchange.push( 79s + repo, 79s + ...<6 lines>... 79s + opargs=opargs, 79s + ) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 79s + return f(*args, **kwargs) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 79s + pushop.cgresult = repo.githandler.push( 79s + ~~~~~~~~~~~~~~~~~~~~^ 79s + remote.path, revs, bookmarks, force 79s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + ) 79s + ^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 79s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 79s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 79s + all_exportable = self.export_commits() 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 79s + self.export_git_objects() 79s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 79s + packer.pack(synchronous=True) 79s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 79s + _process_batch(self.ui, self.object_store, todo) 79s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 79s + object_store._remove_loose_object(obj.id) 79s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 79s + [1] 79s 79s $ cd .. 79s 79s $ cd repo.git 79s $ git symbolic-ref HEAD refs/heads/branch1 79s $ git branch 79s - * branch1 79s - branch2 79s $ cd .. 79s 79s $ git clone repo.git gitrepo 79s Cloning into 'gitrepo'... 79s + warning: You appear to have cloned an empty repository. 79s done. 79s $ cd gitrepo 79s $ git checkout -q branch1 79s + error: pathspec 'branch1' did not match any file(s) known to git 79s + [1] 79s $ echo g1 >> f1 79s $ git add f1 79s $ fn_git_commit -m "append f1" 79s $ git checkout -q branch2 79s + error: pathspec 'branch2' did not match any file(s) known to git 79s + [1] 79s $ echo g2 >> f2 79s $ git add f2 79s $ fn_git_commit -m "append f2" 79s @@ -83,18 +154,13 @@ 79s $ git add f3 79s $ fn_git_commit -m "append f3" 79s $ git push origin branch1 branch2 branch3 79s - To $TESTTMP/repo.git 79s - bbfe79a..d8aef79 branch1 -> branch1 79s - 288e92b..f8f8de5 branch2 -> branch2 79s - * [new branch] branch3 -> branch3 79s + error: src refspec branch2 does not match any 79s + error: failed to push some refs to '$TESTTMP/repo.git' 79s + [1] 79s make sure the commit doesn't have an HG:rename-source annotation 79s $ git cat-file commit d8aef79 79s - tree b5644d8071b8a5963b8d1fd089fb3fdfb14b1203 79s - parent bbfe79acf62dcd6a97763e2a67424a6de8a96941 79s - author test 1167609612 +0000 79s - committer test 1167609612 +0000 79s - 79s - append f1 79s + fatal: Not a valid object name d8aef79 79s + [128] 79s $ cd .. 79s 79s $ cd hgrepo 79s @@ -102,45 +168,18 @@ 79s default = $TESTTMP/repo.git (with-path !) 79s $ hg pull ../repo.git 79s pulling from ../repo.git 79s - importing 3 git commits 79s - updating bookmark branch1_bookmark 79s - updating bookmark branch2_bookmark 79s - adding bookmark branch3_bookmark 79s - new changesets 8211cade99e4:faf44fc3a4e8 (3 drafts) 79s - (run 'hg heads' to see heads) 79s $ hg log --graph 79s - o changeset: 4:faf44fc3a4e8 79s - | bookmark: branch3_bookmark 79s - | tag: default/branch3 (with-path !) 79s + @ changeset: 1:600de9b6d498 79s + | branch: branch2 79s + | bookmark: branch2_bookmark 79s | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:14 2007 +0000 79s - | summary: append f3 79s - | 79s - o changeset: 3:ae8eb55f7090 79s - | bookmark: branch2_bookmark 79s - | tag: default/branch2 (with-path !) 79s - | parent: 1:600de9b6d498 79s - | user: test 79s - | date: Mon Jan 01 00:00:13 2007 +0000 79s - | summary: append f2 79s - | 79s - | o changeset: 2:8211cade99e4 79s - | | bookmark: branch1_bookmark 79s - | | tag: default/branch1 (with-path !) 79s - | | parent: 0:40a840c1f8ae 79s - | | user: test 79s - | | date: Mon Jan 01 00:00:12 2007 +0000 79s - | | summary: append f1 79s - | | 79s - @ | changeset: 1:600de9b6d498 79s - |/ branch: branch2 79s - | user: test 79s - | date: Mon Jan 01 00:00:11 2007 +0000 79s - | summary: add f2 79s + | user: test 79s + | date: Mon Jan 01 00:00:11 2007 +0000 79s + | summary: add f2 79s | 79s o changeset: 0:40a840c1f8ae 79s branch: branch1 79s + bookmark: branch1_bookmark 79s user: test 79s date: Mon Jan 01 00:00:10 2007 +0000 79s summary: add f1 79s @@ -151,145 +190,8 @@ 79s 79s $ rm -r hgrepo 79s $ hg clone -r branch3 repo.git hgrepo 79s - importing 4 git commits 79s - new changesets 40a840c1f8ae:faf44fc3a4e8 (4 drafts) 79s - updating to bookmark branch3_bookmark 79s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s + abort: unknown revision 'branch3' 79s + [10] 79s $ cd hgrepo 79s + $TESTTMP.sh: 100: cd: can't cd to hgrepo 79s $ hg bookmarks 79s - branch2_bookmark 2:ae8eb55f7090 79s - * branch3_bookmark 3:faf44fc3a4e8 79s - $ hg log --graph 79s - @ changeset: 3:faf44fc3a4e8 79s - | bookmark: branch3_bookmark 79s - | tag: default/branch3 79s - | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:14 2007 +0000 79s - | summary: append f3 79s - | 79s - o changeset: 2:ae8eb55f7090 79s - | bookmark: branch2_bookmark 79s - | tag: default/branch2 79s - | user: test 79s - | date: Mon Jan 01 00:00:13 2007 +0000 79s - | summary: append f2 79s - | 79s - o changeset: 1:600de9b6d498 79s - | branch: branch2 79s - | user: test 79s - | date: Mon Jan 01 00:00:11 2007 +0000 79s - | summary: add f2 79s - | 79s - o changeset: 0:40a840c1f8ae 79s - branch: branch1 79s - user: test 79s - date: Mon Jan 01 00:00:10 2007 +0000 79s - summary: add f1 79s - 79s - $ cd .. 79s - 79s -Try cloning something that's both a bookmark and a branch, and see the 79s -results. They're a bit suprising as the bookmark does get activated, 79s -but the branch get checked out. Although this does seem a bit odd, so 79s -does the scenario. 79s - 79s - $ rm -r hgrepo 79s - $ hg clone -r branch1 repo.git hgrepo 79s - importing 2 git commits 79s - new changesets 40a840c1f8ae:8211cade99e4 (2 drafts) 79s - updating to branch branch1 79s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ cd hgrepo 79s - $ hg bookmarks 79s - * branch1_bookmark 1:8211cade99e4 79s - $ hg log --graph 79s - o changeset: 1:8211cade99e4 79s - | bookmark: branch1_bookmark 79s - | tag: default/branch1 79s - | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:12 2007 +0000 79s - | summary: append f1 79s - | 79s - @ changeset: 0:40a840c1f8ae 79s - branch: branch1 79s - user: test 79s - date: Mon Jan 01 00:00:10 2007 +0000 79s - summary: add f1 79s - 79s - 79s - $ cd .. 79s - 79s -Now try pulling a diverged bookmark: 79s - 79s - $ rm -r hgrepo 79s -#if with-path 79s - $ hg clone -U repo.git hgrepo 79s - importing 5 git commits 79s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 79s -#else 79s - $ hg init hgrepo 79s - $ hg -R hgrepo pull repo.git 79s - pulling from repo.git 79s - importing 5 git commits 79s - adding bookmark branch1_bookmark 79s - adding bookmark branch2_bookmark 79s - adding bookmark branch3_bookmark 79s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 79s - (run 'hg heads' to see heads, 'hg merge' to merge) 79s -#endif 79s - $ cd gitrepo 79s - $ git checkout -q branch1 79s - $ fn_git_rebase branch3 79s - $ git push -f 79s - To $TESTTMP/repo.git 79s - + d8aef79...ce1d1c5 branch1 -> branch1 (forced update) 79s - $ cd ../hgrepo 79s - $ hg pull ../repo.git 79s - pulling from ../repo.git 79s - importing 1 git commits 79s - not updating diverged bookmark branch1_bookmark 79s - new changesets 895d0307f8b7 (1 drafts) 79s - (run 'hg update' to get a working copy) 79s - $ hg log --graph 79s - o changeset: 5:895d0307f8b7 79s - | tag: default/branch1 (with-path !) 79s - | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:12 2007 +0000 79s - | summary: append f1 79s - | 79s - o changeset: 4:faf44fc3a4e8 79s - | bookmark: branch3_bookmark 79s - | tag: default/branch3 (with-path !) 79s - | user: test 79s - | date: Mon Jan 01 00:00:14 2007 +0000 79s - | summary: append f3 79s - | 79s - o changeset: 3:ae8eb55f7090 79s - | bookmark: branch2_bookmark 79s - | tag: default/branch2 (with-path !) 79s - | user: test 79s - | date: Mon Jan 01 00:00:13 2007 +0000 79s - | summary: append f2 79s - | 79s - o changeset: 2:600de9b6d498 79s - | branch: branch2 79s - | parent: 0:40a840c1f8ae 79s - | user: test 79s - | date: Mon Jan 01 00:00:11 2007 +0000 79s - | summary: add f2 79s - | 79s - | o changeset: 1:8211cade99e4 79s - |/ bookmark: branch1_bookmark 79s - | user: test 79s - | date: Mon Jan 01 00:00:12 2007 +0000 79s - | summary: append f1 79s - | 79s - o changeset: 0:40a840c1f8ae 79s - branch: branch1 79s - user: test 79s - date: Mon Jan 01 00:00:10 2007 +0000 79s - summary: add f1 79s - 79s 79s ERROR: test-branch-bookmark-suffix.t#with-path output changed 79s ! 79s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-branch-bookmark-suffix.t 79s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-branch-bookmark-suffix.t#without-path.err 79s @@ -49,31 +49,102 @@ 79s 79s $ hg push ../repo.git 79s pushing to ../repo.git 79s - searching for changes 79s - adding objects 79s - remote: found 0 deltas to reuse 79s - added 2 commits with 2 trees and 2 blobs 79s - adding reference refs/heads/branch1 79s - adding reference refs/heads/branch2 79s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 79s + ** which supports versions 6.9 of Mercurial. 79s + ** Please disable "hggit" and try your action again. 79s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 79s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 79s + ** Mercurial Distributed SCM (version 7.0.1) 79s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 79s + Traceback (most recent call last): 79s + File "/usr/bin/hg", line 51, in 79s + dispatch.run() 79s + ~~~~~~~~~~~~^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 79s + status = dispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 79s + status = _rundispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 79s + ret = _runcatch(req) or 0 79s + ~~~~~~~~~^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 79s + return _callcatch(ui, _runcatchfunc) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 79s + return scmutil.callcatch(ui, func) 79s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 79s + return func() 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 79s + return _dispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 79s + return runcommand( 79s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 79s + ) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 79s + ret = _runcommand(ui, options, cmd, d) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 79s + return cmdfunc() 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 79s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 79s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 79s + return func(*args, **kwargs) 79s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 79s + pushop = exchange.push( 79s + repo, 79s + ...<6 lines>... 79s + opargs=opargs, 79s + ) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 79s + return f(*args, **kwargs) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 79s + pushop.cgresult = repo.githandler.push( 79s + ~~~~~~~~~~~~~~~~~~~~^ 79s + remote.path, revs, bookmarks, force 79s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + ) 79s + ^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 79s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 79s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 79s + all_exportable = self.export_commits() 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 79s + self.export_git_objects() 79s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 79s + packer.pack(synchronous=True) 79s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 79s + _process_batch(self.ui, self.object_store, todo) 79s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 79s + object_store._remove_loose_object(obj.id) 79s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 79s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 79s + [1] 79s 79s $ cd .. 79s 79s $ cd repo.git 79s $ git symbolic-ref HEAD refs/heads/branch1 79s $ git branch 79s - * branch1 79s - branch2 79s $ cd .. 79s 79s $ git clone repo.git gitrepo 79s Cloning into 'gitrepo'... 79s + warning: You appear to have cloned an empty repository. 79s done. 79s $ cd gitrepo 79s $ git checkout -q branch1 79s + error: pathspec 'branch1' did not match any file(s) known to git 79s + [1] 79s $ echo g1 >> f1 79s $ git add f1 79s $ fn_git_commit -m "append f1" 79s $ git checkout -q branch2 79s + error: pathspec 'branch2' did not match any file(s) known to git 79s + [1] 79s $ echo g2 >> f2 79s $ git add f2 79s $ fn_git_commit -m "append f2" 79s @@ -83,18 +154,13 @@ 79s $ git add f3 79s $ fn_git_commit -m "append f3" 79s $ git push origin branch1 branch2 branch3 79s - To $TESTTMP/repo.git 79s - bbfe79a..d8aef79 branch1 -> branch1 79s - 288e92b..f8f8de5 branch2 -> branch2 79s - * [new branch] branch3 -> branch3 79s + error: src refspec branch2 does not match any 79s + error: failed to push some refs to '$TESTTMP/repo.git' 79s + [1] 79s make sure the commit doesn't have an HG:rename-source annotation 79s $ git cat-file commit d8aef79 79s - tree b5644d8071b8a5963b8d1fd089fb3fdfb14b1203 79s - parent bbfe79acf62dcd6a97763e2a67424a6de8a96941 79s - author test 1167609612 +0000 79s - committer test 1167609612 +0000 79s - 79s - append f1 79s + fatal: Not a valid object name d8aef79 79s + [128] 79s $ cd .. 79s 79s $ cd hgrepo 79s @@ -102,194 +168,33 @@ 79s default = $TESTTMP/repo.git (with-path !) 79s $ hg pull ../repo.git 79s pulling from ../repo.git 79s - importing 3 git commits 79s - updating bookmark branch1_bookmark 79s - updating bookmark branch2_bookmark 79s - adding bookmark branch3_bookmark 79s - new changesets 8211cade99e4:faf44fc3a4e8 (3 drafts) 79s - (run 'hg heads' to see heads) 79s $ hg log --graph 79s - o changeset: 4:faf44fc3a4e8 79s - | bookmark: branch3_bookmark 79s + @ changeset: 1:600de9b6d498 79s + | branch: branch2 79s | tag: default/branch3 (with-path !) 79s + | bookmark: branch2_bookmark 79s | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:14 2007 +0000 79s - | summary: append f3 79s - | 79s - o changeset: 3:ae8eb55f7090 79s - | bookmark: branch2_bookmark 79s - | tag: default/branch2 (with-path !) 79s - | parent: 1:600de9b6d498 79s - | user: test 79s - | date: Mon Jan 01 00:00:13 2007 +0000 79s - | summary: append f2 79s - | 79s - | o changeset: 2:8211cade99e4 79s - | | bookmark: branch1_bookmark 79s - | | tag: default/branch1 (with-path !) 79s - | | parent: 0:40a840c1f8ae 79s - | | user: test 79s - | | date: Mon Jan 01 00:00:12 2007 +0000 79s - | | summary: append f1 79s - | | 79s - @ | changeset: 1:600de9b6d498 79s - |/ branch: branch2 79s - | user: test 79s - | date: Mon Jan 01 00:00:11 2007 +0000 79s - | summary: add f2 79s - | 79s - o changeset: 0:40a840c1f8ae 79s - branch: branch1 79s - user: test 79s - date: Mon Jan 01 00:00:10 2007 +0000 79s - summary: add f1 79s - 79s - $ cd .. 79s - 79s -Try cloning a bookmark, and make sure it gets checked out: 79s - 79s - $ rm -r hgrepo 79s - $ hg clone -r branch3 repo.git hgrepo 79s - importing 4 git commits 79s - new changesets 40a840c1f8ae:faf44fc3a4e8 (4 drafts) 79s - updating to bookmark branch3_bookmark 79s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ cd hgrepo 79s - $ hg bookmarks 79s - branch2_bookmark 2:ae8eb55f7090 79s - * branch3_bookmark 3:faf44fc3a4e8 79s - $ hg log --graph 79s - @ changeset: 3:faf44fc3a4e8 79s - | bookmark: branch3_bookmark 79s - | tag: default/branch3 79s - | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:14 2007 +0000 79s - | summary: append f3 79s - | 79s - o changeset: 2:ae8eb55f7090 79s - | bookmark: branch2_bookmark 79s - | tag: default/branch2 79s - | user: test 79s - | date: Mon Jan 01 00:00:13 2007 +0000 79s - | summary: append f2 79s - | 79s - o changeset: 1:600de9b6d498 79s - | branch: branch2 79s | user: test 79s | date: Mon Jan 01 00:00:11 2007 +0000 79s | summary: add f2 79s | 79s o changeset: 0:40a840c1f8ae 79s + | tag: default/branch2 (with-path !) 79s branch: branch1 79s + bookmark: branch1_bookmark 79s user: test 79s date: Mon Jan 01 00:00:10 2007 +0000 79s summary: add f1 79s 79s - $ cd .. 79s - 79s -Try cloning something that's both a bookmark and a branch, and see the 79s -results. They're a bit suprising as the bookmark does get activated, 79s -but the branch get checked out. Although this does seem a bit odd, so 79s -does the scenario. 79s + | | tag: default/branch1 (with-path !) 79s + $ cd .. 79s + 79s +Try cloning a bookmark, and make sure it gets checked out: 79s 79s $ rm -r hgrepo 79s - $ hg clone -r branch1 repo.git hgrepo 79s - importing 2 git commits 79s - new changesets 40a840c1f8ae:8211cade99e4 (2 drafts) 79s - updating to branch branch1 79s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s + $ hg clone -r branch3 repo.git hgrepo 79s + abort: unknown revision 'branch3' 79s + [10] 79s $ cd hgrepo 79s + $TESTTMP.sh: 102: cd: can't cd to hgrepo 79s $ hg bookmarks 79s - * branch1_bookmark 1:8211cade99e4 79s - $ hg log --graph 79s - o changeset: 1:8211cade99e4 79s - | bookmark: branch1_bookmark 79s - | tag: default/branch1 79s - | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:12 2007 +0000 79s - | summary: append f1 79s - | 79s - @ changeset: 0:40a840c1f8ae 79s - branch: branch1 79s - user: test 79s - date: Mon Jan 01 00:00:10 2007 +0000 79s - summary: add f1 79s - 79s - 79s - $ cd .. 79s - 79s -Now try pulling a diverged bookmark: 79s - 79s - $ rm -r hgrepo 79s -#if with-path 79s - $ hg clone -U repo.git hgrepo 79s - importing 5 git commits 79s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 79s -#else 79s - $ hg init hgrepo 79s - $ hg -R hgrepo pull repo.git 79s - pulling from repo.git 79s - importing 5 git commits 79s - adding bookmark branch1_bookmark 79s - adding bookmark branch2_bookmark 79s - adding bookmark branch3_bookmark 79s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 79s - (run 'hg heads' to see heads, 'hg merge' to merge) 79s -#endif 79s - $ cd gitrepo 79s - $ git checkout -q branch1 79s - $ fn_git_rebase branch3 79s - $ git push -f 79s - To $TESTTMP/repo.git 79s - + d8aef79...ce1d1c5 branch1 -> branch1 (forced update) 79s - $ cd ../hgrepo 79s - $ hg pull ../repo.git 79s - pulling from ../repo.git 79s - importing 1 git commits 79s - not updating diverged bookmark branch1_bookmark 79s - new changesets 895d0307f8b7 (1 drafts) 79s - (run 'hg update' to get a working copy) 79s - $ hg log --graph 79s - o changeset: 5:895d0307f8b7 79s - | tag: default/branch1 (with-path !) 79s - | tag: tip 79s - | user: test 79s - | date: Mon Jan 01 00:00:12 2007 +0000 79s - | summary: append f1 79s - | 79s - o changeset: 4:faf44fc3a4e8 79s - | bookmark: branch3_bookmark 79s - | tag: default/branch3 (with-path !) 79s - | user: test 79s - | date: Mon Jan 01 00:00:14 2007 +0000 79s - | summary: append f3 79s - | 79s - o changeset: 3:ae8eb55f7090 79s - | bookmark: branch2_bookmark 79s - | tag: default/branch2 (with-path !) 79s - | user: test 79s - | date: Mon Jan 01 00:00:13 2007 +0000 79s - | summary: append f2 79s - | 79s - o changeset: 2:600de9b6d498 79s - | branch: branch2 79s - | parent: 0:40a840c1f8ae 79s - | user: test 79s - | date: Mon Jan 01 00:00:11 2007 +0000 79s - | summary: add f2 79s - | 79s - | o changeset: 1:8211cade99e4 79s - |/ bookmark: branch1_bookmark 79s - | user: test 79s - | date: Mon Jan 01 00:00:12 2007 +0000 79s - | summary: append f1 79s - | 79s - o changeset: 0:40a840c1f8ae 79s - branch: branch1 79s - user: test 79s - date: Mon Jan 01 00:00:10 2007 +0000 79s - summary: add f1 79s - 79s 79s ERROR: test-branch-bookmark-suffix.t#without-path output changed 79s ! 79s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-bundle.t 79s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-bundle.t.err 79s @@ -37,246 +37,102 @@ 79s 79s $ hg clone gitrepo hgrepo 79s importing 3 git commits 79s - new changesets ff7a2f2d8d70:ca33a262eb46 (3 drafts) 79s - updating to bookmark master 79s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 79s + ** which supports versions 6.9 of Mercurial. 79s + ** Please disable "hggit" and try your action again. 79s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 79s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 79s + ** Mercurial Distributed SCM (version 7.0.1) 79s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 79s + Traceback (most recent call last): 79s + File "/usr/bin/hg", line 51, in 79s + dispatch.run() 79s + ~~~~~~~~~~~~^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 79s + status = dispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 79s + status = _rundispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 79s + ret = _runcatch(req) or 0 79s + ~~~~~~~~~^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 79s + return _callcatch(ui, _runcatchfunc) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 79s + return scmutil.callcatch(ui, func) 79s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 79s + return func() 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 79s + return _dispatch(req) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 79s + return runcommand( 79s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 79s + ) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 79s + ret = _runcommand(ui, options, cmd, d) 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 79s + return cmdfunc() 79s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 79s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 79s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 79s + return func(*args, **kwargs) 79s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 79s + r = hg.clone( 79s + ui, 79s + ...<11 lines>... 79s + depth=opts.get('depth') or None, 79s + ) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 79s + srcpeer, destpeer = orig(*args, **opts) 79s + ~~~~^^^^^^^^^^^^^^^ 79s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 79s + exchange.pull( 79s + ~~~~~~~~~~~~~^ 79s + local, 79s + ^^^^^^ 79s + ...<5 lines>... 79s + depth=depth, 79s + ^^^^^^^^^^^^ 79s + ) 79s + ^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 79s + return f(*args, **kwargs) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 79s + pullop.cgresult = repo.githandler.fetch(remote, heads) 79s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 79s + imported = self.import_git_objects( 79s + b'pull', 79s + ...<2 lines>... 79s + heads=heads, 79s + ) 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 79s + self.import_git_commit( 79s + ~~~~~~~~~~~~~~~~~~~~~~^ 79s + command, 79s + ^^^^^^^^ 79s + self.git[commit.sha], 79s + ^^^^^^^^^^^^^^^^^^^^^ 79s + commit.phase, 79s + ^^^^^^^^^^^^^ 79s + ) 79s + ^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 79s + files, gitlinks, git_renames = self.get_files_changed( 79s + ~~~~~~~~~~~~~~~~~~~~~~^ 79s + commit, detect_renames 79s + ^^^^^^^^^^^^^^^^^^^^^^ 79s + ) 79s + ^ 79s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 79s + oldfile, oldmode, oldsha = change.old 79s + ^^^^^^^^^^^^^^^^^^^^^^^^ 79s + TypeError: cannot unpack non-iterable NoneType object 79s + [1] 79s $ cd hgrepo 79s + $TESTTMP.sh: 45: cd: can't cd to hgrepo 79s 79s Create a bundle with our metadata, and inspect it: 79s 79s $ hg bundle --all ../bundle-w-git.hg 79s - 3 changesets found 79s - $ hg debugbundle --all ../bundle-w-git.hg | grep hg-git 79s - exp-hg-git-map -- {} (mandatory: False) 79s - exp-hg-git-tags -- {} (mandatory: False) 79s - $ hg debugbundle --all ../bundle-w-git.hg > bundle-w-git.out 79s - 79s -Create a bundle without our metadata, and inspect it: 79s - 79s - $ hg bundle --all ../bundle-wo-git.hg --config experimental.hg-git-bundle=no 79s - 3 changesets found 79s - $ hg debugbundle --all ../bundle-wo-git.hg | grep hg-git 79s - [1] 79s - 79s -Verify that those are different: 79s - 79s - $ hg debugbundle --all ../bundle-wo-git.hg > bundle-wo-git.out 79s - $ cmp -s bundle-w-git.out bundle-wo-git.out 79s - [1] 79s - 79s -Now create a bundle without hg-git enabled at all, which should be 79s -exactly similar to what you get when you disable metadata embedding; 79s -this verifies we don't accidentally pollute bundles. 79s - 79s - $ hg bundle --all --config extensions.hggit=! ../bundle-wo-hggit.hg 79s - 3 changesets found 79s - $ hg debugbundle --all ../bundle-wo-hggit.hg > bundle-wo-hggit.out 79s - $ cmp -s bundle-wo-git.hg bundle-wo-hggit.hg 79s - [2] 79s - $ cmp -s bundle-wo-git.out bundle-wo-hggit.out 79s - $ cd .. 79s - $ rm -r hgrepo 79s - 79s -Does unbundling transfer state? 79s - 79s - $ hg init hgrepo 79s - $ hg -R hgrepo unbundle bundle-w-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 3 changesets with 3 changes to 3 files 79s - new changesets * (glob) 79s - (run 'hg update' to get a working copy) 79s - $ hg -R hgrepo log -T git 79s - 2:ca33a262eb46 | d338971a96e2 | tip | 79s - 1:7fe02317c63d | 9497a4ee62e1 | theothertag | 79s - 0:ff7a2f2d8d70 | 7eeab2ea75ec | thetag | 79s - $ hg -R hgrepo pull gitrepo 79s - pulling from gitrepo 79s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 79s - no changes found 79s - adding bookmark master 79s - $ rm -r hgrepo 79s - 79s -Can we unbundle something without git state? 79s - 79s - $ hg init hgrepo 79s - $ hg -R hgrepo unbundle bundle-wo-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 3 changesets with 3 changes to 3 files 79s - new changesets * (glob) 79s - (run 'hg update' to get a working copy) 79s - $ hg -R hgrepo log -T git 79s - 2:ca33a262eb46 | | tip | 79s - 1:7fe02317c63d | | | 79s - 0:ff7a2f2d8d70 | | | 79s - $ hg -R hgrepo pull gitrepo 79s - pulling from gitrepo 79s - importing 3 git commits 79s - adding bookmark master 79s - (run 'hg update' to get a working copy) 79s - $ rm -r hgrepo 79s - 79s -Regular mercurial shouldn't choke on our bundle 79s - 79s - $ hg init hgrepo 79s - $ cat >> hgrepo/.hg/hgrc < [extensions] 79s - > hggit = ! 79s - > EOF 79s - $ hg -R hgrepo unbundle bundle-wo-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 3 changesets with 3 changes to 3 files 79s - new changesets * (glob) 79s - (run 'hg update' to get a working copy) 79s - $ hg -R hgrepo log -T git 79s - 2:ca33a262eb46 | | tip | 79s - 1:7fe02317c63d | | | 79s - 0:ff7a2f2d8d70 | | | 79s - $ hg -R hgrepo pull gitrepo 79s - pulling from gitrepo 79s - abort: repository gitrepo not found!? (re) 79s - [255] 79s - $ rm -r hgrepo 79s - 79s - 79s -What happens if we unbundle twice? 79s - 79s - $ hg init hgrepo 79s - $ hg -R hgrepo unbundle bundle-w-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 3 changesets with 3 changes to 3 files 79s - new changesets * (glob) 79s - (run 'hg update' to get a working copy) 79s - $ hg -R hgrepo unbundle bundle-w-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 0 changesets with 0 changes to 3 files 79s - (run 'hg update' to get a working copy) 79s - $ hg -R hgrepo log -T git 79s - 2:ca33a262eb46 | d338971a96e2 | tip | 79s - 1:7fe02317c63d | 9497a4ee62e1 | theothertag | 79s - 0:ff7a2f2d8d70 | 7eeab2ea75ec | thetag | 79s - $ hg -R hgrepo pull gitrepo 79s - pulling from gitrepo 79s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 79s - no changes found 79s - adding bookmark master 79s - $ rm -r hgrepo 79s - 79s -Alas, cloning a bundle doesn't work yet: 79s - 79s -(Mercurial is apparently quite dumb here, so we won't try to fix this 79s -for now, but this test mostly exists so that we notice if ever starts 79s -working, or breaks entirely.) 79s - 79s - $ hg clone bundle-w-git.hg hgrepo 79s - requesting all changes 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 3 changesets with 3 changes to 3 files 79s - new changesets * (glob) 79s - updating to branch default 79s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ hg -R hgrepo log -T git 79s - 2:ca33a262eb46 | | tip | 79s - 1:7fe02317c63d | | | 79s - 0:ff7a2f2d8d70 | | | 79s - $ rm -r hgrepo 79s - 79s -Now, lets try to be a bit evil. How does pulling partial state work? 79s - 79s -First, more git happenings: 79s - 79s - $ cd gitrepo 79s - $ git checkout -b otherbranch thetag 79s - Switched to a new branch 'otherbranch' 79s - $ echo 42 > baz 79s - $ git add baz 79s - $ fn_git_commit -m 3 79s - $ cd .. 79s - 79s -Pull, 'em, and create a partial bundle: 79s - 79s - $ hg clone gitrepo hgrepo 79s - importing 4 git commits 79s - new changesets ff7a2f2d8d70:d87bf3ef6a53 (4 drafts) 79s - updating to bookmark otherbranch 79s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ hg -R hgrepo bundle --base 'p1(tip)' -r tip bundle-w-git-2.hg 79s - 1 changesets found 79s - $ rm -r hgrepo 79s - 79s -Now, load only that bundle into a repository without any git state 79s - 79s - $ hg clone -r 1 bundle-w-git.hg hgrepo --config extensions.hggit=! 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 2 changesets with 2 changes to 2 files 79s - new changesets * (glob) 79s - updating to branch default 79s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ cd hgrepo 79s - $ hg unbundle ../bundle-w-git-2.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 1 changesets with 1 changes to 1 files (+1 heads) 79s - new changesets * (glob) 79s - (run 'hg heads' to see heads, 'hg merge' to merge) 79s - $ hg pull ../gitrepo 79s - pulling from ../gitrepo 79s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 79s - importing 3 git commits 79s - adding bookmark master 79s - adding bookmark otherbranch 79s - new changesets ca33a262eb46 (1 drafts) 79s - (run 'hg update' to get a working copy) 79s - $ cd .. 79s - $ rm -r hgrepo 79s - 79s -Now, try pushing with only the metadata: 79s - 79s - $ hg init hgrepo 79s - $ cd hgrepo 79s - $ hg unbundle -u ../bundle-w-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 3 changesets with 3 changes to 3 files 79s - new changesets * (glob) 79s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ echo kaflaflibob > bajizmo 79s - $ fn_hg_commit -A -m 4 79s - $ hg book -r tip master 79s - $ hg push ../gitrepo 79s - pushing to ../gitrepo 79s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 79s - abort: cannot push git commit d338971a96e2 as it is not present locally 79s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 79s - [255] 79s - 79s -Try to repopulate the git state from a bundle 79s - 79s - $ hg debug-remove-hggit-state 79s - clearing out the git cache data 79s - $ hg log -qr 'fromgit()' 79s - $ hg unbundle -u ../bundle-w-git.hg 79s - adding changesets 79s - adding manifests 79s - adding file changes 79s - added 0 changesets with 0 changes to 3 files 79s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 79s - $ hg log -qr 'fromgit()' 79s - 0:ff7a2f2d8d70 79s - 1:7fe02317c63d 79s - 2:ca33a262eb46 79s 79s ERROR: test-bundle.t output changed 80s ! 80s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-file-removal.t 80s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-file-removal.t.err 80s @@ -99,191 +99,99 @@ 80s 80s $ hg clone gitrepo hgrepo 80s importing 9 git commits 80s - new changesets ff7a2f2d8d70:0995b8a0a943 (9 drafts) 80s - updating to bookmark master 80s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 80s + ** which supports versions 6.9 of Mercurial. 80s + ** Please disable "hggit" and try your action again. 80s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 80s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 80s + ** Mercurial Distributed SCM (version 7.0.1) 80s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 80s + Traceback (most recent call last): 80s + File "/usr/bin/hg", line 51, in 80s + dispatch.run() 80s + ~~~~~~~~~~~~^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 80s + status = dispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 80s + status = _rundispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 80s + ret = _runcatch(req) or 0 80s + ~~~~~~~~~^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 80s + return _callcatch(ui, _runcatchfunc) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 80s + return scmutil.callcatch(ui, func) 80s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 80s + return func() 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 80s + return _dispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 80s + return runcommand( 80s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 80s + ) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 80s + ret = _runcommand(ui, options, cmd, d) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 80s + return cmdfunc() 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 80s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 80s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 80s + return func(*args, **kwargs) 80s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 80s + r = hg.clone( 80s + ui, 80s + ...<11 lines>... 80s + depth=opts.get('depth') or None, 80s + ) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 80s + srcpeer, destpeer = orig(*args, **opts) 80s + ~~~~^^^^^^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 80s + exchange.pull( 80s + ~~~~~~~~~~~~~^ 80s + local, 80s + ^^^^^^ 80s + ...<5 lines>... 80s + depth=depth, 80s + ^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 80s + return f(*args, **kwargs) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 80s + pullop.cgresult = repo.githandler.fetch(remote, heads) 80s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 80s + imported = self.import_git_objects( 80s + b'pull', 80s + ...<2 lines>... 80s + heads=heads, 80s + ) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 80s + self.import_git_commit( 80s + ~~~~~~~~~~~~~~~~~~~~~~^ 80s + command, 80s + ^^^^^^^^ 80s + self.git[commit.sha], 80s + ^^^^^^^^^^^^^^^^^^^^^ 80s + commit.phase, 80s + ^^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 80s + files, gitlinks, git_renames = self.get_files_changed( 80s + ~~~~~~~~~~~~~~~~~~~~~~^ 80s + commit, detect_renames 80s + ^^^^^^^^^^^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 80s + oldfile, oldmode, oldsha = change.old 80s + ^^^^^^^^^^^^^^^^^^^^^^^^ 80s + TypeError: cannot unpack non-iterable NoneType object 80s + [1] 80s $ cd hgrepo 80s + $TESTTMP.sh: 72: cd: can't cd to hgrepo 80s $ hg log --graph 80s - @ changeset: 8:0995b8a0a943 80s - | bookmark: master 80s - | tag: default/master 80s - | tag: tip 80s - | user: test 80s - | date: Mon Jan 01 00:00:18 2007 +0000 80s - | summary: remove betalink 80s - | 80s - o changeset: 7:a316d3a96c89 80s - | user: test 80s - | date: Mon Jan 01 00:00:17 2007 +0000 80s - | summary: replace file with symlink 80s - | 80s - o changeset: 6:1804acb71f3e 80s - | user: test 80s - | date: Mon Jan 01 00:00:16 2007 +0000 80s - | summary: replace symlink with file 80s - | 80s - o changeset: 5:e19c85becc87 80s - | user: test 80s - | date: Mon Jan 01 00:00:15 2007 +0000 80s - | summary: add symlink to beta 80s - | 80s - o changeset: 4:0d3086c3f8c3 80s - | user: test 80s - | date: Mon Jan 01 00:00:14 2007 +0000 80s - | summary: remove foo/bar 80s - | 80s - o changeset: 3:b2406125ef5c 80s - | user: test 80s - | date: Mon Jan 01 00:00:13 2007 +0000 80s - | summary: remove alpha 80s - | 80s - o changeset: 2:8b3b2f4b4158 80s - | user: test 80s - | date: Mon Jan 01 00:00:12 2007 +0000 80s - | summary: add foo 80s - | 80s - o changeset: 1:7fe02317c63d 80s - | user: test 80s - | date: Mon Jan 01 00:00:11 2007 +0000 80s - | summary: add beta 80s - | 80s - o changeset: 0:ff7a2f2d8d70 80s - user: test 80s - date: Mon Jan 01 00:00:10 2007 +0000 80s - summary: add alpha 80s - 80s - 80s -make sure alpha is not in this manifest 80s - $ hg manifest -r 3 80s - beta 80s - foo/bar 80s - 80s -make sure that only beta is in the manifest 80s - $ hg manifest 80s - beta 80s - 80s - $ hg debug-remove-hggit-state 80s - clearing out the git cache data 80s - $ ls .hg | grep git 80s - [1] 80s - $ hg push ../repo.git 80s - pushing to ../repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 9 commits with 8 trees and 5 blobs 80s - adding reference refs/heads/master 80s - 80s - $ cd .. 80s - $ git --git-dir=repo.git log --pretty=medium 80s - commit 5ee11eeae239d6a99df5a99901ec00ffafbcc46b 80s - Author: test 80s - Date: Mon Jan 1 00:00:18 2007 +0000 80s - 80s - remove betalink 80s - 80s - commit 2c7b324faeccb1acf89c35b7ad38e7956f5705fa 80s - Author: test 80s - Date: Mon Jan 1 00:00:17 2007 +0000 80s - 80s - replace file with symlink 80s - 80s - commit ff0478d2ecc2571d01eb6d406ac29e4e63e5d3d5 80s - Author: test 80s - Date: Mon Jan 1 00:00:16 2007 +0000 80s - 80s - replace symlink with file 80s - 80s - commit 5492e6e410e42df527956be945286cd1ae45acb8 80s - Author: test 80s - Date: Mon Jan 1 00:00:15 2007 +0000 80s - 80s - add symlink to beta 80s - 80s - commit b991de8952c482a7cd51162674ffff8474862218 80s - Author: test 80s - Date: Mon Jan 1 00:00:14 2007 +0000 80s - 80s - remove foo/bar 80s - 80s - commit b0edaf0adac19392cf2867498b983bc5192b41dd 80s - Author: test 80s - Date: Mon Jan 1 00:00:13 2007 +0000 80s - 80s - remove alpha 80s - 80s - commit f2d0d5bfa905e12dee728b509b96cf265bb6ee43 80s - Author: test 80s - Date: Mon Jan 1 00:00:12 2007 +0000 80s - 80s - add foo 80s - 80s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 80s - Author: test 80s - Date: Mon Jan 1 00:00:11 2007 +0000 80s - 80s - add beta 80s - 80s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 80s - Author: test 80s - Date: Mon Jan 1 00:00:10 2007 +0000 80s - 80s - add alpha 80s - 80s -test with rename detection enabled 80s - $ hg --config git.similarity=100 clone gitrepo hgreporenames 80s - importing 9 git commits 80s - new changesets ff7a2f2d8d70:0995b8a0a943 (9 drafts) 80s - updating to bookmark master 80s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s - 80s - $ cd hgreporenames 80s - $ hg log --graph 80s - @ changeset: 8:0995b8a0a943 80s - | bookmark: master 80s - | tag: default/master 80s - | tag: tip 80s - | user: test 80s - | date: Mon Jan 01 00:00:18 2007 +0000 80s - | summary: remove betalink 80s - | 80s - o changeset: 7:a316d3a96c89 80s - | user: test 80s - | date: Mon Jan 01 00:00:17 2007 +0000 80s - | summary: replace file with symlink 80s - | 80s - o changeset: 6:1804acb71f3e 80s - | user: test 80s - | date: Mon Jan 01 00:00:16 2007 +0000 80s - | summary: replace symlink with file 80s - | 80s - o changeset: 5:e19c85becc87 80s - | user: test 80s - | date: Mon Jan 01 00:00:15 2007 +0000 80s - | summary: add symlink to beta 80s - | 80s - o changeset: 4:0d3086c3f8c3 80s - | user: test 80s - | date: Mon Jan 01 00:00:14 2007 +0000 80s - | summary: remove foo/bar 80s - | 80s - o changeset: 3:b2406125ef5c 80s - | user: test 80s - | date: Mon Jan 01 00:00:13 2007 +0000 80s - | summary: remove alpha 80s - | 80s - o changeset: 2:8b3b2f4b4158 80s - | user: test 80s - | date: Mon Jan 01 00:00:12 2007 +0000 80s - | summary: add foo 80s - | 80s - o changeset: 1:7fe02317c63d 80s - | user: test 80s - | date: Mon Jan 01 00:00:11 2007 +0000 80s - | summary: add beta 80s - | 80s - o changeset: 0:ff7a2f2d8d70 80s - user: test 80s - date: Mon Jan 01 00:00:10 2007 +0000 80s - summary: add alpha 80s - 80s 80s ERROR: test-file-removal.t output changed 80s ! 80s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-author.t 80s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-author.t.err 80s @@ -17,255 +17,100 @@ 80s $ cd .. 80s $ hg clone repo.git hgrepo 80s importing 1 git commits 80s - new changesets ff7a2f2d8d70 (1 drafts) 80s - updating to bookmark master 80s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 80s + ** which supports versions 6.9 of Mercurial. 80s + ** Please disable "hggit" and try your action again. 80s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 80s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 80s + ** Mercurial Distributed SCM (version 7.0.1) 80s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 80s + Traceback (most recent call last): 80s + File "/usr/bin/hg", line 51, in 80s + dispatch.run() 80s + ~~~~~~~~~~~~^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 80s + status = dispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 80s + status = _rundispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 80s + ret = _runcatch(req) or 0 80s + ~~~~~~~~~^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 80s + return _callcatch(ui, _runcatchfunc) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 80s + return scmutil.callcatch(ui, func) 80s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 80s + return func() 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 80s + return _dispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 80s + return runcommand( 80s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 80s + ) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 80s + ret = _runcommand(ui, options, cmd, d) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 80s + return cmdfunc() 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 80s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 80s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 80s + return func(*args, **kwargs) 80s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 80s + r = hg.clone( 80s + ui, 80s + ...<11 lines>... 80s + depth=opts.get('depth') or None, 80s + ) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 80s + srcpeer, destpeer = orig(*args, **opts) 80s + ~~~~^^^^^^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 80s + exchange.pull( 80s + ~~~~~~~~~~~~~^ 80s + local, 80s + ^^^^^^ 80s + ...<5 lines>... 80s + depth=depth, 80s + ^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 80s + return f(*args, **kwargs) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 80s + pullop.cgresult = repo.githandler.fetch(remote, heads) 80s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 80s + imported = self.import_git_objects( 80s + b'pull', 80s + ...<2 lines>... 80s + heads=heads, 80s + ) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 80s + self.import_git_commit( 80s + ~~~~~~~~~~~~~~~~~~~~~~^ 80s + command, 80s + ^^^^^^^^ 80s + self.git[commit.sha], 80s + ^^^^^^^^^^^^^^^^^^^^^ 80s + commit.phase, 80s + ^^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 80s + files, gitlinks, git_renames = self.get_files_changed( 80s + ~~~~~~~~~~~~~~~~~~~~~~^ 80s + commit, detect_renames 80s + ^^^^^^^^^^^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 80s + oldfile, oldmode, oldsha = change.old 80s + ^^^^^^^^^^^^^^^^^^^^^^^^ 80s + TypeError: cannot unpack non-iterable NoneType object 80s + [1] 80s 80s $ cd hgrepo 80s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 80s $ hg book master 80s - $ echo beta > beta 80s - $ hg add beta 80s - $ fn_hg_commit -u "test" -m 'add beta' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ echo gamma >> beta 80s - $ fn_hg_commit -u "test (comment)" -m 'modify beta' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ echo gamma > gamma 80s - $ hg add gamma 80s - $ fn_hg_commit -u "" -m 'add gamma' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ echo delta > delta 80s - $ hg add delta 80s - $ fn_hg_commit -u "name" -m 'add delta' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ echo epsilon > epsilon 80s - $ hg add epsilon 80s - $ fn_hg_commit -u "name zeta 80s - $ hg add zeta 80s - $ fn_hg_commit -u " test " -m 'add zeta' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ echo eta > eta 80s - $ hg add eta 80s - $ fn_hg_commit -u "test < test@example.com >" -m 'add eta' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ echo theta > theta 80s - $ hg add theta 80s - $ fn_hg_commit -u "test >test@example.com>" -m 'add theta' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - 80s - $ hg log --graph 80s - @ changeset: 8:c5d1976ab12c 80s - | bookmark: master 80s - | tag: default/master 80s - | tag: tip 80s - | user: test >test@example.com> 80s - | date: Mon Jan 01 00:00:18 2007 +0000 80s - | summary: add theta 80s - | 80s - o changeset: 7:0e2fb4d21667 80s - | user: test < test@example.com > 80s - | date: Mon Jan 01 00:00:17 2007 +0000 80s - | summary: add eta 80s - | 80s - o changeset: 6:faa3aae96199 80s - | user: test 80s - | date: Mon Jan 01 00:00:16 2007 +0000 80s - | summary: add zeta 80s - | 80s - o changeset: 5:2cf6ad5a1afc 80s - | user: name 80s - | date: Mon Jan 01 00:00:14 2007 +0000 80s - | summary: add delta 80s - | 80s - o changeset: 3:6b854d65d0d6 80s - | user: 80s - | date: Mon Jan 01 00:00:13 2007 +0000 80s - | summary: add gamma 80s - | 80s - o changeset: 2:46303c652e79 80s - | user: test (comment) 80s - | date: Mon Jan 01 00:00:12 2007 +0000 80s - | summary: modify beta 80s - | 80s - o changeset: 1:47580592d3d6 80s - | user: test 80s - | date: Mon Jan 01 00:00:11 2007 +0000 80s - | summary: add beta 80s - | 80s - o changeset: 0:ff7a2f2d8d70 80s - user: test 80s - date: Mon Jan 01 00:00:10 2007 +0000 80s - summary: add alpha 80s - 80s - 80s - $ cd .. 80s - $ hg clone repo.git hgrepo2 80s - importing 9 git commits 80s - new changesets ff7a2f2d8d70:1fbf3aa91221 (9 drafts) 80s - updating to bookmark master 80s - 8 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s - $ hg -R hgrepo2 log --graph 80s - @ changeset: 8:1fbf3aa91221 80s - | bookmark: master 80s - | tag: default/master 80s - | tag: tip 80s - | user: test ?test@example.com 80s - | date: Mon Jan 01 00:00:18 2007 +0000 80s - | summary: add theta 80s - | 80s - o changeset: 7:20310508f06d 80s - | user: test 80s - | date: Mon Jan 01 00:00:17 2007 +0000 80s - | summary: add eta 80s - | 80s - o changeset: 6:e3d81af8a8c1 80s - | user: test 80s - | date: Mon Jan 01 00:00:16 2007 +0000 80s - | summary: add zeta 80s - | 80s - o changeset: 5:78f609fd208f 80s - | user: name 80s - | date: Mon Jan 01 00:00:15 2007 +0000 80s - | summary: add epsilon 80s - | 80s - o changeset: 4:42fa61d57718 80s - | user: name 80s - | date: Mon Jan 01 00:00:14 2007 +0000 80s - | summary: add delta 80s - | 80s - o changeset: 3:6b854d65d0d6 80s - | user: 80s - | date: Mon Jan 01 00:00:13 2007 +0000 80s - | summary: add gamma 80s - | 80s - o changeset: 2:46303c652e79 80s - | user: test (comment) 80s - | date: Mon Jan 01 00:00:12 2007 +0000 80s - | summary: modify beta 80s - | 80s - o changeset: 1:47580592d3d6 80s - | user: test 80s - | date: Mon Jan 01 00:00:11 2007 +0000 80s - | summary: add beta 80s - | 80s - o changeset: 0:ff7a2f2d8d70 80s - user: test 80s - date: Mon Jan 01 00:00:10 2007 +0000 80s - summary: add alpha 80s - 80s - $ git --git-dir=repo.git log --pretty=medium master 80s - commit 2fe60ba69727981e6ede78be70354c3a9e30e21d 80s - Author: test ?test@example.com 80s - Date: Mon Jan 1 00:00:18 2007 +0000 80s - 80s - add theta 80s - 80s - commit 9f2f7cafdbf2e467928db98de8275141001d3081 80s - Author: test 80s - Date: Mon Jan 1 00:00:17 2007 +0000 80s - 80s - add eta 80s - 80s - commit 172a6f8d8064d73dff7013e395a9fe3cfc3ff807 80s - Author: test 80s - Date: Mon Jan 1 00:00:16 2007 +0000 80s - 80s - add zeta 80s - 80s - commit 71badb8e343a7da391a9b5d98909fbd2ca7d78f2 80s - Author: name 80s - Date: Mon Jan 1 00:00:15 2007 +0000 80s - 80s - add epsilon 80s - 80s - commit 9a9ae7b7f310d4a1a3e732a747ca26f06934f8d8 80s - Author: name 80s - Date: Mon Jan 1 00:00:14 2007 +0000 80s - 80s - add delta 80s - 80s - commit e4149a32e81e380193f59aa8773349201b8ed7f7 80s - Author: 80s - Date: Mon Jan 1 00:00:13 2007 +0000 80s - 80s - add gamma 80s - 80s - commit fae95aef5889a80103c2fbd5d14ff6eb8c9daf93 80s - Author: test ext:(%20%28comment%29) 80s - Date: Mon Jan 1 00:00:12 2007 +0000 80s - 80s - modify beta 80s - 80s - commit 0f378ab6c2c6b5514bd873d3faf8ac4b8095b001 80s - Author: test 80s - Date: Mon Jan 1 00:00:11 2007 +0000 80s - 80s - add beta 80s - 80s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 80s - Author: test 80s - Date: Mon Jan 1 00:00:10 2007 +0000 80s - 80s - add alpha 80s 80s ERROR: test-hg-author.t output changed 80s ! 80s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos.t 80s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos.t.err 80s @@ -35,164 +35,98 @@ 80s Ensure gitlinks are transformed to .hgsubstate on hg pull from git 80s $ hg clone -u tip repo.git hgrepo 2>&1 | grep -E -v '^(Cloning into|done)' 80s importing 3 git commits 80s - new changesets e532b2bfda10:3c4fd561cbeb (3 drafts) 80s - updating to branch default 80s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 80s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 80s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 80s + ** which supports versions 6.9 of Mercurial. 80s + ** Please disable "hggit" and try your action again. 80s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 80s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 80s + ** Mercurial Distributed SCM (version 7.0.1) 80s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 80s + Traceback (most recent call last): 80s + File "/usr/bin/hg", line 51, in 80s + dispatch.run() 80s + ~~~~~~~~~~~~^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 80s + status = dispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 80s + status = _rundispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 80s + ret = _runcatch(req) or 0 80s + ~~~~~~~~~^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 80s + return _callcatch(ui, _runcatchfunc) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 80s + return scmutil.callcatch(ui, func) 80s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 80s + return func() 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 80s + return _dispatch(req) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 80s + return runcommand( 80s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 80s + ) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 80s + ret = _runcommand(ui, options, cmd, d) 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 80s + return cmdfunc() 80s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 80s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 80s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 80s + return func(*args, **kwargs) 80s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 80s + r = hg.clone( 80s + ui, 80s + ...<11 lines>... 80s + depth=opts.get('depth') or None, 80s + ) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 80s + srcpeer, destpeer = orig(*args, **opts) 80s + ~~~~^^^^^^^^^^^^^^^ 80s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 80s + exchange.pull( 80s + ~~~~~~~~~~~~~^ 80s + local, 80s + ^^^^^^ 80s + ...<5 lines>... 80s + depth=depth, 80s + ^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 80s + return f(*args, **kwargs) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 80s + pullop.cgresult = repo.githandler.fetch(remote, heads) 80s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 80s + imported = self.import_git_objects( 80s + b'pull', 80s + ...<2 lines>... 80s + heads=heads, 80s + ) 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 80s + self.import_git_commit( 80s + ~~~~~~~~~~~~~~~~~~~~~~^ 80s + command, 80s + ^^^^^^^^ 80s + self.git[commit.sha], 80s + ^^^^^^^^^^^^^^^^^^^^^ 80s + commit.phase, 80s + ^^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 80s + files, gitlinks, git_renames = self.get_files_changed( 80s + ~~~~~~~~~~~~~~~~~~~~~~^ 80s + commit, detect_renames 80s + ^^^^^^^^^^^^^^^^^^^^^^ 80s + ) 80s + ^ 80s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 80s + oldfile, oldmode, oldsha = change.old 80s + ^^^^^^^^^^^^^^^^^^^^^^^^ 80s + TypeError: cannot unpack non-iterable NoneType object 80s $ cd hgrepo 80s + $TESTTMP.sh: 42: cd: can't cd to hgrepo 80s $ hg bookmarks -f -r default master 80s -1. Ensure gitlinks are transformed to .hgsubstate on hg <- git pull 80s -.hgsub shall list two [git] subrepos 80s - $ cat .hgsub 80s - subrepo1 = [git]../gitsubrepo 80s - xyz/subrepo2 = [git]../gitsubrepo 80s -.hgsubstate shall list two idenitcal revisions 80s - $ cat .hgsubstate 80s - 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 80s - 56f0304c5250308f14cfbafdc27bd12d40154d17 xyz/subrepo2 80s -hg status shall NOT report .hgsub and .hgsubstate as untracked - either ignored or unmodified 80s - $ hg status --unknown .hgsub .hgsubstate 80s - $ hg status --modified .hgsub .hgsubstate 80s - $ cd .. 80s - 80s -2. Check gitmodules are preserved during hg -> git push 80s - $ cd gitsubrepo 80s - $ echo gamma > gamma 80s - $ git add gamma 80s - $ fn_git_commit -m 'add gamma' 80s - $ cd .. 80s - $ cd hgrepo 80s - $ cd xyz/subrepo2 80s - $ git pull --ff-only | sed 's/files/file/;s/insertions/insertion/;s/, 0 deletions.*//' | sed 's/| */| /' 80s - From $TESTTMP/gitsubrepo 80s - 56f0304..aabf7cd master -> origin/master 80s - Updating 56f0304..aabf7cd 80s - Fast-forward 80s - gamma | 1 + 80s - 1 file changed, 1 insertion(+) 80s - create mode 100644 gamma 80s - $ cd ../.. 80s - $ echo xxx >> alpha 80s - $ fn_hg_commit -m 'Update subrepo2 from hg' | grep -v "committing subrepository" || true 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 2 trees and 1 blobs 80s - updating reference refs/heads/master 80s - $ cd .. 80s - $ cd gitrepo 80s - $ git pull --ff-only 80s - From $TESTTMP/repo 80s - 89c22d7..275b0a5 master -> origin/master 80s - Fetching submodule xyz/subrepo2 80s - From $TESTTMP/gitsubrepo 80s - 56f0304..aabf7cd master -> origin/master 80s - Updating 89c22d7..275b0a5 80s - Fast-forward 80s - alpha | 1 + 80s - xyz/subrepo2 | 2 +- 80s - 2 files changed, 2 insertions(+), 1 deletion(-) 80s -there shall be two gitlink entries, with values matching that in .hgsubstate 80s - $ git ls-tree -r HEAD^{tree} | grep 'commit' 80s - 160000 commit 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 80s - 160000 commit aabf7cd015089aff0b84596e69aa37b24a3d090a xyz/subrepo2 80s -bring working copy to HEAD state (it's not bare repo) 80s - $ git reset --hard 80s - HEAD is now at 275b0a5 Update subrepo2 from hg 80s - $ cd .. 80s - 80s -3. Check .hgsub and .hgsubstate from git repository are merged, not overwritten 80s - $ hg init hgsub 80s - $ cd hgsub 80s - $ echo delta > delta 80s - $ hg add delta 80s - $ fn_hg_commit -m "add delta" 80s - $ hg tip --template '{node} hgsub\n' > ../gitrepo/.hgsubstate 80s - $ cat > ../gitrepo/.hgsub < hgsub = ../hgsub 80s - > EOF 80s - $ cd ../gitrepo 80s - $ git add .hgsubstate .hgsub 80s - $ fn_git_commit -m "Test3. Prepare .hgsub and .hgsubstate sources" 80s - $ git push 80s - To $TESTTMP/repo.git 80s - 275b0a5..e31d576 master -> master 80s - 80s - $ cd ../hgrepo 80s - $ hg pull 80s - pulling from $TESTTMP/repo.git 80s - importing 1 git commits 80s - updating bookmark master 80s - new changesets [0-9a-f]{12,12} \(1 drafts\) (re) 80s - (run 'hg update' to get a working copy) 80s - $ hg checkout -C 80s - updating to active bookmark master 80s - cloning subrepo hgsub from $TESTTMP/hgsub 80s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s - $ cd .. 80s -pull shall bring .hgsub entry which was added to the git repo 80s - $ cat hgrepo/.hgsub 80s - hgsub = ../hgsub 80s - subrepo1 = [git]../gitsubrepo 80s - xyz/subrepo2 = [git]../gitsubrepo 80s -.hgsubstate shall list revision of the subrepo added through git repo 80s - $ cat hgrepo/.hgsubstate 80s - 481ec30d580f333ae3a77f94c973ce37b69d5bda hgsub 80s - 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 80s - aabf7cd015089aff0b84596e69aa37b24a3d090a xyz/subrepo2 80s - 80s -4. Try changing the subrepos from the Mercurial side 80s - 80s - $ cd hgrepo 80s - $ cat >> .hgsub < subrepo2 = [git]../gitsubrepo 80s - > EOF 80s - $ git clone ../gitsubrepo subrepo2 80s - Cloning into 'subrepo2'... 80s - done. 80s - $ fn_hg_commit -m 'some stuff' 80s - $ hg push 80s - pushing to $TESTTMP/repo.git 80s - no changes made to subrepo hgsub since last push to $TESTTMP/hgsub 80s - searching for changes 80s - adding objects 80s - remote: found 0 deltas to reuse 80s - added 1 commits with 1 trees and 1 blobs 80s - updating reference refs/heads/master 80s - $ cd .. 80s - 80s -5. But we actually do something quite weird in this case: If a 80s -.gitmodules file exists in the repository, it always wins! In this 80s -case, we break the bidirectional convention, and modify the repository 80s -data. That's odd, so show it: 80s - 80s - $ hg id hgrepo 80s - 42c46c7eef3a default/master/tip master 80s - $ hg clone -U repo.git hgrepo2 80s - importing 6 git commits 80s - new changesets e532b2bfda10:42c46c7eef3a (6 drafts) 80s - $ hg -R hgrepo2 up :master 80s - Cloning into '$TESTTMP/hgrepo2/subrepo1'... 80s - done. 80s - cloning subrepo hgsub from $TESTTMP/hgsub 80s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 80s - checking out detached HEAD in subrepository "subrepo1" 80s - check out a git branch if you intend to make changes 80s - Cloning into '$TESTTMP/hgrepo2/subrepo2'... 80s - done. 80s - Cloning into '$TESTTMP/hgrepo2/xyz/subrepo2'... 80s - done. 80s - cloning subrepo subrepo2 from $TESTTMP/gitsubrepo 80s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 80s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 80s - 80s -We retained bidirectionality! 80s - 80s - $ git diff --stat hgrepo/.hgsub hgrepo2/.hgsub 80s - $ hg id hgrepo 80s - 42c46c7eef3a default/master/tip master 80s - $ hg id hgrepo2 80s - 42c46c7eef3a default/master/tip master 80s 80s ERROR: test-subrepos.t output changed 81s ! 81s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-extra.t 81s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-extra.t.err 81s @@ -13,189 +13,99 @@ 81s $ cd .. 81s $ hg clone gitrepo hgrepo 81s importing 1 git commits 81s - new changesets aa9eb6424386 (1 drafts) 81s - updating to bookmark not-master 81s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 81s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 81s + ** which supports versions 6.9 of Mercurial. 81s + ** Please disable "hggit" and try your action again. 81s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 81s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 81s + ** Mercurial Distributed SCM (version 7.0.1) 81s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 81s + Traceback (most recent call last): 81s + File "/usr/bin/hg", line 51, in 81s + dispatch.run() 81s + ~~~~~~~~~~~~^^ 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 81s + status = dispatch(req) 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 81s + status = _rundispatch(req) 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 81s + ret = _runcatch(req) or 0 81s + ~~~~~~~~~^^^^^ 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 81s + return _callcatch(ui, _runcatchfunc) 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 81s + return scmutil.callcatch(ui, func) 81s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 81s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 81s + return func() 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 81s + return _dispatch(req) 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 81s + return runcommand( 81s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 81s + ) 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 81s + ret = _runcommand(ui, options, cmd, d) 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 81s + return cmdfunc() 81s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 81s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 81s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 81s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 81s + return func(*args, **kwargs) 81s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 81s + r = hg.clone( 81s + ui, 81s + ...<11 lines>... 81s + depth=opts.get('depth') or None, 81s + ) 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 81s + srcpeer, destpeer = orig(*args, **opts) 81s + ~~~~^^^^^^^^^^^^^^^ 81s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 81s + exchange.pull( 81s + ~~~~~~~~~~~~~^ 81s + local, 81s + ^^^^^^ 81s + ...<5 lines>... 81s + depth=depth, 81s + ^^^^^^^^^^^^ 81s + ) 81s + ^ 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 81s + return f(*args, **kwargs) 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 81s + pullop.cgresult = repo.githandler.fetch(remote, heads) 81s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 81s + imported = self.import_git_objects( 81s + b'pull', 81s + ...<2 lines>... 81s + heads=heads, 81s + ) 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 81s + self.import_git_commit( 81s + ~~~~~~~~~~~~~~~~~~~~~~^ 81s + command, 81s + ^^^^^^^^ 81s + self.git[commit.sha], 81s + ^^^^^^^^^^^^^^^^^^^^^ 81s + commit.phase, 81s + ^^^^^^^^^^^^^ 81s + ) 81s + ^ 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 81s + files, gitlinks, git_renames = self.get_files_changed( 81s + ~~~~~~~~~~~~~~~~~~~~~~^ 81s + commit, detect_renames 81s + ^^^^^^^^^^^^^^^^^^^^^^ 81s + ) 81s + ^ 81s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 81s + oldfile, oldmode, oldsha = change.old 81s + ^^^^^^^^^^^^^^^^^^^^^^^^ 81s + TypeError: cannot unpack non-iterable NoneType object 81s + [1] 81s $ cd hgrepo 81s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 81s $ hg mv a b 81s - $ fn_hg_commit -mb 81s - $ hg up 0 81s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 81s - (leaving bookmark not-master) 81s - $ touch c 81s - $ hg add c 81s - $ fn_hg_commit -mc 81s - 81s -Rebase will add a rebase_source 81s - 81s - $ hg --config extensions.rebase= rebase -s 1 -d 2 81s - rebasing 1:4c7da7adf18b * (glob) 81s - saved backup bundle to $TESTTMP/*.hg (glob) 81s - $ hg up 2 81s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 81s - 81s -Add a commit with multiple extra fields 81s - $ hg bookmark b1 81s - $ touch d 81s - $ hg add d 81s - $ fn_hg_commitextra --field zzzzzzz=datazzz --field aaaaaaa=dataaaa 81s - $ hg log --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 81s - @ 3 f01651cfcc9337fbd9700d5018ca637a2911ed28 81s - | aaaaaaa=dataaaa branch=default zzzzzzz=datazzz 81s - | 81s - o 2 03f4cf3c429050e2204fb2bda3a0f93329bdf4fd b 81s - | branch=default rebase_source=4c7da7adf18b785726a7421ef0d585bb5762990d 81s - | 81s - o 1 a735dc0cd7cc0ccdbc16cfa4326b19c707c360f4 c 81s - | branch=default 81s - | 81s - o 0 aa9eb6424386df2b0638fe6f480c3767fdd0e6fd a 81s - branch=default hg-git-rename-source=git 81s - 81s - 81s - $ hg push -r b1 81s - pushing to $TESTTMP/gitrepo 81s - searching for changes 81s - adding objects 81s - remote: found 0 deltas to reuse 81s - added 3 commits with 3 trees and 0 blobs 81s - adding reference refs/heads/b1 81s - 81s - $ hg bookmark b2 81s - $ hg mv c c2 81s - $ hg mv d d2 81s - $ fn_hg_commitextra --field yyyyyyy=datayyy --field bbbbbbb=databbb 81s - 81s -Test some nutty filenames 81s - $ hg book b3 81s -#if windows 81s - $ hg mv c2 'c2 => c3' 81s - abort: filename contains '>', which is reserved on Windows: "c2 => c3" 81s - [255] 81s - $ hg mv c2 c3 81s - $ fn_hg_commit -m 'dummy commit' 81s - $ hg mv c3 c4 81s - $ fn_hg_commit -m 'dummy commit' 81s -#else 81s - $ hg mv c2 'c2 => c3' 81s - warning: filename contains '>', which is reserved on Windows: 'c2 => c3' 81s - $ fn_hg_commit -m 'test filename with arrow' 81s - $ hg mv 'c2 => c3' 'c3 => c4' 81s - warning: filename contains '>', which is reserved on Windows: 'c3 => c4' 81s - $ fn_hg_commit -m 'test filename with arrow 2' 81s - $ hg log --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" -l 3 --config "experimental.graphstyle.missing=|" 81s - @ 6 bca4ba69a6844c133b069e227dfa043d41e3c197 test filename with arrow 2 81s - | branch=default 81s - | 81s - o 5 864caad1f3493032f8d06f44a89dc9f1c039b09f test filename with arrow 81s - | branch=default 81s - | 81s - o 4 58f855ae26f4930ce857e648d3dd949901cce817 81s - | bbbbbbb=databbb branch=default yyyyyyy=datayyy 81s - | 81s -#endif 81s - $ hg push -r b2 -r b3 81s - pushing to $TESTTMP/gitrepo 81s - searching for changes 81s - adding objects 81s - remote: found 0 deltas to reuse 81s - added 3 commits with 3 trees and 0 blobs 81s - adding reference refs/heads/b2 81s - adding reference refs/heads/b3 81s - 81s - $ cd ../gitrepo 81s - $ git cat-file commit b1 81s - tree 1b773a2eb70f29397356f8069c285394835ff85a 81s - parent 54776dace5849bdf273fb26737a48ef64804909d 81s - author test 1167609613 +0000 81s - committer test 1167609613 +0000 81s - HG:extra aaaaaaa:dataaaa 81s - HG:extra zzzzzzz:datazzz 81s - 81s - 81s - 81s - $ git cat-file commit b2 81s - tree 34ad62c6d6ad9464bfe62db5b3d2fa16aaa9fa9e 81s - parent 15beadd92324c9b88060a4ec4ffb350f988d7075 81s - author test 1167609614 +0000 81s - committer test 1167609614 +0000 81s - HG:rename c:c2 81s - HG:rename d:d2 81s - HG:extra bbbbbbb:databbb 81s - HG:extra yyyyyyy:datayyy 81s - 81s - 81s - 81s -#if no-windows 81s - $ git cat-file commit b3 81s - tree e63df52695f9b06e54b37e7ef60d0c43994de620 81s - parent 5cafe2555a0666fcf661a3943277a9812a694a98 81s - author test 1167609616 +0000 81s - committer test 1167609616 +0000 81s - HG:rename c2%20%3D%3E%20c3:c3%20%3D%3E%20c4 81s - 81s - test filename with arrow 2 81s -#endif 81s - $ cd ../gitrepo 81s - $ git checkout b1 81s - Switched to branch 'b1' 81s - $ commit_sha=$(git rev-parse HEAD) 81s - $ tree_sha=$(git rev-parse HEAD^{tree}) 81s - 81s -There's no way to create a Git repo with extra metadata via the CLI. Dulwich 81s -lets you do that, though. 81s - 81s - >>> from dulwich.objects import Commit 81s - >>> from dulwich.porcelain import open_repo 81s - >>> repo = open_repo('.') 81s - >>> c = Commit() 81s - >>> c.author = b'test ' 81s - >>> c.author_time = 0 81s - >>> c.author_timezone = 0 81s - >>> c.committer = c.author 81s - >>> c.commit_time = 0 81s - >>> c.commit_timezone = 0 81s - >>> c.parents = [b'$commit_sha'] 81s - >>> c.tree = b'$tree_sha' 81s - >>> c.message = b'extra commit\n' 81s - >>> c.extra.extend([(b'zzz:zzz', b'data:zzz'), (b'aaa:aaa', b'data:aaa'), 81s - ... (b'HG:extra', b'hgaaa:dataaaa'), 81s - ... (b'HG:extra', b'hgzzz:datazzz')]) 81s - >>> repo.object_store.add_object(c) 81s - >>> repo.refs.set_if_equals(b'refs/heads/master', None, c.id) 81s - True 81s - 81s - $ git cat-file commit master 81s - tree 1b773a2eb70f29397356f8069c285394835ff85a 81s - parent 15beadd92324c9b88060a4ec4ffb350f988d7075 81s - author test 0 +0000 81s - committer test 0 +0000 81s - zzz:zzz data:zzz 81s - aaa:aaa data:aaa 81s - HG:extra hgaaa:dataaaa 81s - HG:extra hgzzz:datazzz 81s - 81s - extra commit 81s - 81s - $ cd .. 81s - $ hg clone -qU gitrepo hgrepo2 81s - $ cd hgrepo2 81s - $ hg log -G -r :5 -T "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 81s - o 5 58f855ae26f4930ce857e648d3dd949901cce817 81s - | bbbbbbb=databbb branch=default yyyyyyy=datayyy 81s - | 81s - | o 4 90acc8c23fcfaeb0930c03c849923a696fd9013c extra commit 81s - |/ GIT0-zzz%3Azzz=data%3Azzz GIT1-aaa%3Aaaa=data%3Aaaa branch=default hgaaa=dataaaa hgzzz=datazzz 81s - | 81s - o 3 f01651cfcc9337fbd9700d5018ca637a2911ed28 81s - | aaaaaaa=dataaaa branch=default zzzzzzz=datazzz 81s - | 81s - o 2 03f4cf3c429050e2204fb2bda3a0f93329bdf4fd b 81s - | branch=default rebase_source=4c7da7adf18b785726a7421ef0d585bb5762990d 81s - | 81s - o 1 a735dc0cd7cc0ccdbc16cfa4326b19c707c360f4 c 81s - | branch=default 81s - | 81s - o 0 aa9eb6424386df2b0638fe6f480c3767fdd0e6fd a 81s - branch=default hg-git-rename-source=git 81s - 81s 81s ERROR: test-extra.t output changed 82s ! 82s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-bookmark-workflow.t 82s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-bookmark-workflow.t.err 82s @@ -77,149 +77,99 @@ 82s 0 3442585be8a6 "add alpha" bookmarks: [] 82s $ cd .. 82s $ hg clone -q gitremoterepo hggitlocalrepo --config hggit.usephases=True 82s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 82s + ** which supports versions 6.9 of Mercurial. 82s + ** Please disable "hggit" and try your action again. 82s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 82s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 82s + ** Mercurial Distributed SCM (version 7.0.1) 82s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 82s + Traceback (most recent call last): 82s + File "/usr/bin/hg", line 51, in 82s + dispatch.run() 82s + ~~~~~~~~~~~~^^ 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 82s + status = dispatch(req) 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 82s + status = _rundispatch(req) 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 82s + ret = _runcatch(req) or 0 82s + ~~~~~~~~~^^^^^ 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 82s + return _callcatch(ui, _runcatchfunc) 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 82s + return scmutil.callcatch(ui, func) 82s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 82s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 82s + return func() 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 82s + return _dispatch(req) 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 82s + return runcommand( 82s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 82s + ) 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 82s + ret = _runcommand(ui, options, cmd, d) 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 82s + return cmdfunc() 82s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 82s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 82s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 82s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 82s + return func(*args, **kwargs) 82s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 82s + r = hg.clone( 82s + ui, 82s + ...<11 lines>... 82s + depth=opts.get('depth') or None, 82s + ) 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 82s + srcpeer, destpeer = orig(*args, **opts) 82s + ~~~~^^^^^^^^^^^^^^^ 82s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 82s + exchange.pull( 82s + ~~~~~~~~~~~~~^ 82s + local, 82s + ^^^^^^ 82s + ...<5 lines>... 82s + depth=depth, 82s + ^^^^^^^^^^^^ 82s + ) 82s + ^ 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 82s + return f(*args, **kwargs) 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 82s + pullop.cgresult = repo.githandler.fetch(remote, heads) 82s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 82s + imported = self.import_git_objects( 82s + b'pull', 82s + ...<2 lines>... 82s + heads=heads, 82s + ) 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 82s + self.import_git_commit( 82s + ~~~~~~~~~~~~~~~~~~~~~~^ 82s + command, 82s + ^^^^^^^^ 82s + self.git[commit.sha], 82s + ^^^^^^^^^^^^^^^^^^^^^ 82s + commit.phase, 82s + ^^^^^^^^^^^^^ 82s + ) 82s + ^ 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 82s + files, gitlinks, git_renames = self.get_files_changed( 82s + ~~~~~~~~~~~~~~~~~~~~~~^ 82s + commit, detect_renames 82s + ^^^^^^^^^^^^^^^^^^^^^^ 82s + ) 82s + ^ 82s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 82s + oldfile, oldmode, oldsha = change.old 82s + ^^^^^^^^^^^^^^^^^^^^^^^^ 82s + TypeError: cannot unpack non-iterable NoneType object 82s + [1] 82s $ cd hggitlocalrepo 82s + $TESTTMP.sh: 78: cd: can't cd to hggitlocalrepo 82s $ hggitstate 82s - 3 03769a650ded 55b133e1d558 "add delta" bookmarks: [master] 82s - 2 ca33a262eb46 d338971a96e2 "add gamma" bookmarks: [] 82s - 1 7fe02317c63d 9497a4ee62e1 "add beta" bookmarks: [b1] 82s - 0 ff7a2f2d8d70 7eeab2ea75ec "add alpha" bookmarks: [] 82s - 82s -Make sure that master is public 82s - $ hg phase -r master 82s - 3: public 82s - $ cd .. 82s - 82s -No changes 82s - $ cd purehglocalrepo 82s - $ hg incoming -B 82s - comparing with $TESTTMP/hgremoterepo 82s - searching for changed bookmarks 82s - no changed bookmarks found 82s - [1] 82s - $ hg outgoing 82s - comparing with $TESTTMP/hgremoterepo 82s - searching for changes 82s - no changes found 82s - [1] 82s - $ hg outgoing -B 82s - comparing with $TESTTMP/hgremoterepo 82s - searching for changed bookmarks 82s - no changed bookmarks found 82s - [1] 82s - $ hg push 82s - pushing to $TESTTMP/hgremoterepo 82s - searching for changes 82s - no changes found 82s - [1] 82s - $ cd .. 82s - $ cd hggitlocalrepo 82s - $ hg incoming -B 82s - comparing with $TESTTMP/gitremoterepo 82s - searching for changed bookmarks 82s - no changed bookmarks found 82s - [1] 82s - $ hg outgoing 82s - comparing with $TESTTMP/gitremoterepo 82s - searching for changes 82s - no changes found 82s - [1] 82s - $ hg outgoing -B 82s - comparing with $TESTTMP/gitremoterepo 82s - searching for changed bookmarks 82s - no changed bookmarks found 82s - [1] 82s - $ hg push 82s - pushing to $TESTTMP/gitremoterepo 82s - searching for changes 82s - no changes found 82s - [1] 82s - $ cd .. 82s - 82s -Bookmarks on existing revs: 82s -- change b1 on local repo 82s -- introduce b2 on local repo 82s -- introduce b3 on remote repo 82s -Bookmarks on new revs 82s -- introduce b4 on a new rev on the remote 82s - $ cd hgremoterepo 82s - $ hg bookmark -r master b3 82s - $ hg bookmark -r master b4 82s - $ hg update -q b4 82s - $ echo epsilon > epsilon; hg add epsilon; hgcommit -m 'add epsilon' 82s - $ hgstate 82s - 4 d979bb8e0fbb "add epsilon" bookmarks: [b4] 82s - 3 fc2664cac217 "add delta" bookmarks: [b3 master] 82s - 2 d85ced7ae9d6 "add gamma" bookmarks: [] 82s - 1 7bcd915dc873 "add beta" bookmarks: [b1] 82s - 0 3442585be8a6 "add alpha" bookmarks: [] 82s - $ cd .. 82s - $ cd purehglocalrepo 82s - $ hg bookmark -fr 2 b1 82s - $ hg bookmark -r 0 b2 82s - $ hgstate 82s - 3 fc2664cac217 "add delta" bookmarks: [master] 82s - 2 d85ced7ae9d6 "add gamma" bookmarks: [b1] 82s - 1 7bcd915dc873 "add beta" bookmarks: [] 82s - 0 3442585be8a6 "add alpha" bookmarks: [b2] 82s - $ hg incoming -B 82s - comparing with $TESTTMP/hgremoterepo 82s - searching for changed bookmarks 82s - b3 fc2664cac217 82s - b4 d979bb8e0fbb 82s - $ hg outgoing 82s - comparing with $TESTTMP/hgremoterepo 82s - searching for changes 82s - no changes found 82s - [1] 82s -As of 2.3, Mercurial's outgoing -B doesn't actually show changed bookmarks 82s -It only shows "new" bookmarks. Thus, b1 doesn't show up. 82s -This changed in 3.4 to start showing changed and deleted bookmarks again. 82s - $ hg outgoing -B | grep -v -E -w 'b1|b3|b4' 82s - comparing with $TESTTMP/hgremoterepo 82s - searching for changed bookmarks 82s - b2 3442585be8a6 82s - $ cd .. 82s - 82s - $ cd gitremoterepo 82s - $ git branch b3 master 82s - $ git checkout -b b4 master 82s - Switched to a new branch 'b4' 82s - $ echo epsilon > epsilon 82s - $ git add epsilon 82s - $ gitcommit -m 'add epsilon' 82s - $ gitstate 82s - fcfd2c0 "add epsilon" refs: (*b4) (glob) 82s - 55b133e "add delta" refs: (master, b3) 82s - d338971 "add gamma" refs: 82s - 9497a4e "add beta" refs: (b1) 82s - 7eeab2e "add alpha" refs: 82s - $ cd .. 82s - $ cd hggitlocalrepo 82s - $ hg bookmark -fr 2 b1 82s - $ hg bookmark -r 0 b2 82s - $ hgstate 82s - 3 03769a650ded "add delta" bookmarks: [master] 82s - 2 ca33a262eb46 "add gamma" bookmarks: [b1] 82s - 1 7fe02317c63d "add beta" bookmarks: [] 82s - 0 ff7a2f2d8d70 "add alpha" bookmarks: [b2] 82s - $ hg incoming -B 82s - comparing with $TESTTMP/gitremoterepo 82s - searching for changed bookmarks 82s - b3 03769a650ded 82s - b4 fcfd2c0262db 82s - $ hg outgoing 82s - comparing with $TESTTMP/gitremoterepo 82s - searching for changes 82s - no changes found 82s - [1] 82s -As of 2.3, Mercurial's outgoing -B doesn't actually show changed bookmarks 82s -It only shows "new" bookmarks. Thus, b1 doesn't show up. 82s -This changed in 3.4 to start showing changed and deleted bookmarks again. 82s - $ hg outgoing -B 82s - comparing with $TESTTMP/gitremoterepo 82s - searching for changed bookmarks 82s - b1 ca33a262eb46 82s - b2 ff7a2f2d8d70 82s - b3 82s - b4 82s - $ cd .. 82s 82s ERROR: test-bookmark-workflow.t output changed 87s ! 87s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-illegal-contents.t 87s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-illegal-contents.t.err 87s @@ -23,19 +23,132 @@ 87s warning: skipping invalid path '.git/hooks/post-update' 87s warning: skipping invalid path 'bar/.gi\xe2\x80\x8ct/wut' 87s warning: skipping invalid path 'foo/git~100/wat' 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 87s + repo.githandler.export_commits() 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 87s + self.export_git_objects() 87s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 87s + packer.pack(synchronous=True) 87s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 87s + _process_batch(self.ui, self.object_store, todo) 87s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 87s + object_store._remove_loose_object(obj.id) 87s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 87s + [1] 87s $ GIT_DIR=.hg/git git ls-tree -r --name-only master 87s - this/is/safe 87s + fatal: Not a valid object name master 87s + [128] 87s $ hg debug-remove-hggit-state 87s clearing out the git cache data 87s $ hg gexport --config hggit.invalidpaths=keep 87s warning: path '.git/hooks/post-update' contains an invalid path component 87s warning: path 'bar/.gi\xe2\x80\x8ct/wut' contains an invalid path component 87s warning: path 'foo/git~100/wat' contains an invalid path component 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 87s + repo.githandler.export_commits() 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 87s + self.export_git_objects() 87s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 87s + packer.pack(synchronous=True) 87s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 87s + _process_batch(self.ui, self.object_store, todo) 87s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 87s + object_store._remove_loose_object(obj.id) 87s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 87s + [1] 87s $ GIT_DIR=.hg/git git ls-tree -r --name-only master 87s - .git/hooks/post-update 87s - "bar/.gi\342\200\214t/wut" 87s - foo/git~100/wat 87s - this/is/safe 87s + fatal: Not a valid object name master 87s + [128] 87s $ cd .. 87s 87s $ rm -rf hg 87s @@ -53,8 +166,66 @@ 87s $ hg book master 87s $ hg gexport 87s warning: skipping invalid path 'nested/.git/hooks/post-update' 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 87s + repo.githandler.export_commits() 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 87s + self.export_git_objects() 87s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 87s + packer.pack(synchronous=True) 87s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 87s + _process_batch(self.ui, self.object_store, todo) 87s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 87s + object_store._remove_loose_object(obj.id) 87s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 87s + [1] 87s $ git clone .hg/git git 87s Cloning into 'git'... 87s + warning: You appear to have cloned an empty repository. 87s done. 87s $ rm -rf git 87s 87s @@ -70,17 +241,74 @@ 87s 87s $ hg --config hggit.invalidpaths=keep gexport 87s warning: path 'nested/.git/hooks/post-update' contains an invalid path component 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 87s + repo.githandler.export_commits() 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 87s + self.export_git_objects() 87s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 87s + packer.pack(synchronous=True) 87s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 87s + _process_batch(self.ui, self.object_store, todo) 87s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 87s + object_store._remove_loose_object(obj.id) 87s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 87s + [1] 87s $ cd .. 87s $ # different git versions give different return codes 87s $ git clone hg/.hg/git git || true 87s Cloning into 'git'... 87s - done. 87s - error: [Ii]nvalid path 'nested/\.git/hooks/post-update' (re) 87s + warning: You appear to have cloned an empty repository. 87s fatal: unable to checkout working tree (?) 87s warning: Clone succeeded, but checkout failed. (?) 87s You can inspect what was checked out with 'git status' (?) 87s and retry( the checkout)? with '.*' (re) (?) 87s (?) 87s + done. 87s 87s Now check something that case-folds to .git, which might let you own 87s Mac users: 87s @@ -100,6 +328,63 @@ 87s $ hg ci -m "also refuse to export this" 87s $ hg book master 87s $ hg gexport 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 87s + repo.githandler.export_commits() 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 87s + self.export_git_objects() 87s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 87s + packer.pack(synchronous=True) 87s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 87s + _process_batch(self.ui, self.object_store, todo) 87s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 87s + object_store._remove_loose_object(obj.id) 87s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 87s + [1] 87s $ cd .. 87s 87s And the NTFS case: 87s @@ -119,6 +404,63 @@ 87s $ hg book master 87s $ hg gexport 87s warning: skipping invalid path 'GIT~1/hooks/post-checkout' 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 87s + repo.githandler.export_commits() 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 87s + self.export_git_objects() 87s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 87s + packer.pack(synchronous=True) 87s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 87s + _process_batch(self.ui, self.object_store, todo) 87s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 87s + object_store._remove_loose_object(obj.id) 87s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 87s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 87s + [1] 87s $ cd .. 87s 87s Now check a Git repository containing a Mercurial repository, which 87s @@ -134,29 +476,294 @@ 87s $ cd .. 87s $ hg clone --config hggit.invalidpaths=abort git hg 87s importing 1 git commits 87s - abort: invalid path 'nested/.hg/00changelog.i' rejected by configuration 87s - (see 'hg help config.hggit.invalidpaths for details) 87s - [255] 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 87s + r = hg.clone( 87s + ui, 87s + ...<11 lines>... 87s + depth=opts.get('depth') or None, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 87s + srcpeer, destpeer = orig(*args, **opts) 87s + ~~~~^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 87s + exchange.pull( 87s + ~~~~~~~~~~~~~^ 87s + local, 87s + ^^^^^^ 87s + ...<5 lines>... 87s + depth=depth, 87s + ^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 87s + return f(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 87s + pullop.cgresult = repo.githandler.fetch(remote, heads) 87s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 87s + imported = self.import_git_objects( 87s + b'pull', 87s + ...<2 lines>... 87s + heads=heads, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 87s + self.import_git_commit( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + command, 87s + ^^^^^^^^ 87s + self.git[commit.sha], 87s + ^^^^^^^^^^^^^^^^^^^^^ 87s + commit.phase, 87s + ^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 87s + files, gitlinks, git_renames = self.get_files_changed( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + commit, detect_renames 87s + ^^^^^^^^^^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 87s + oldfile, oldmode, oldsha = change.old 87s + ^^^^^^^^^^^^^^^^^^^^^^^^ 87s + TypeError: cannot unpack non-iterable NoneType object 87s + [1] 87s $ rm -rf hg 87s $ hg clone --config hggit.invalidpaths=keep git hg 87s importing 1 git commits 87s - warning: path 'nested/.hg/00changelog.i' contains an invalid path component 87s - warning: path 'nested/.hg/requires' contains an invalid path component 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s warning: path 'nested/.hg/store/requires' contains an invalid path component (?) 87s - new changesets [0-9a-f]{12,12} \(1 drafts\) (re) 87s warning: path 'nested/.hg/store/requires' is within a nested repository, which Mercurial cannot check out. (?) 87s - updating to bookmark master 87s - abort: path 'nested/.hg/00changelog.i' is inside nested repo 'nested' 87s - [10] 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 87s + r = hg.clone( 87s + ui, 87s + ...<11 lines>... 87s + depth=opts.get('depth') or None, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 87s + srcpeer, destpeer = orig(*args, **opts) 87s + ~~~~^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 87s + exchange.pull( 87s + ~~~~~~~~~~~~~^ 87s + local, 87s + ^^^^^^ 87s + ...<5 lines>... 87s + depth=depth, 87s + ^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 87s + return f(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 87s + pullop.cgresult = repo.githandler.fetch(remote, heads) 87s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 87s + imported = self.import_git_objects( 87s + b'pull', 87s + ...<2 lines>... 87s + heads=heads, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 87s + self.import_git_commit( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + command, 87s + ^^^^^^^^ 87s + self.git[commit.sha], 87s + ^^^^^^^^^^^^^^^^^^^^^ 87s + commit.phase, 87s + ^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 87s + files, gitlinks, git_renames = self.get_files_changed( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + commit, detect_renames 87s + ^^^^^^^^^^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 87s + oldfile, oldmode, oldsha = change.old 87s + ^^^^^^^^^^^^^^^^^^^^^^^^ 87s + TypeError: cannot unpack non-iterable NoneType object 87s + [1] 87s $ rm -rf hg 87s $ hg clone git hg 87s importing 1 git commits 87s - warning: skipping invalid path 'nested/.hg/00changelog.i' 87s - warning: skipping invalid path 'nested/.hg/requires' 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s warning: skipping invalid path 'nested/.hg/store/requires' (?) 87s - new changesets 3ea18a67c0e6 (1 drafts) 87s - updating to bookmark master 87s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 87s + r = hg.clone( 87s + ui, 87s + ...<11 lines>... 87s + depth=opts.get('depth') or None, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 87s + srcpeer, destpeer = orig(*args, **opts) 87s + ~~~~^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 87s + exchange.pull( 87s + ~~~~~~~~~~~~~^ 87s + local, 87s + ^^^^^^ 87s + ...<5 lines>... 87s + depth=depth, 87s + ^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 87s + return f(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 87s + pullop.cgresult = repo.githandler.fetch(remote, heads) 87s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 87s + imported = self.import_git_objects( 87s + b'pull', 87s + ...<2 lines>... 87s + heads=heads, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 87s + self.import_git_commit( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + command, 87s + ^^^^^^^^ 87s + self.git[commit.sha], 87s + ^^^^^^^^^^^^^^^^^^^^^ 87s + commit.phase, 87s + ^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 87s + files, gitlinks, git_renames = self.get_files_changed( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + commit, detect_renames 87s + ^^^^^^^^^^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 87s + oldfile, oldmode, oldsha = change.old 87s + ^^^^^^^^^^^^^^^^^^^^^^^^ 87s + TypeError: cannot unpack non-iterable NoneType object 87s + [1] 87s $ cd .. 87s 87s Now check a Git repository containing paths with carriage return and 87s @@ -172,22 +779,288 @@ 87s $ cd .. 87s $ hg clone --config hggit.invalidpaths=abort git hg 87s importing 1 git commits 87s - abort: invalid path 'Icon\r' rejected by configuration 87s - (see 'hg help config.hggit.invalidpaths for details) 87s - [255] 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 87s + r = hg.clone( 87s + ui, 87s + ...<11 lines>... 87s + depth=opts.get('depth') or None, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 87s + srcpeer, destpeer = orig(*args, **opts) 87s + ~~~~^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 87s + exchange.pull( 87s + ~~~~~~~~~~~~~^ 87s + local, 87s + ^^^^^^ 87s + ...<5 lines>... 87s + depth=depth, 87s + ^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 87s + return f(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 87s + pullop.cgresult = repo.githandler.fetch(remote, heads) 87s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 87s + imported = self.import_git_objects( 87s + b'pull', 87s + ...<2 lines>... 87s + heads=heads, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 87s + self.import_git_commit( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + command, 87s + ^^^^^^^^ 87s + self.git[commit.sha], 87s + ^^^^^^^^^^^^^^^^^^^^^ 87s + commit.phase, 87s + ^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 87s + files, gitlinks, git_renames = self.get_files_changed( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + commit, detect_renames 87s + ^^^^^^^^^^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 87s + oldfile, oldmode, oldsha = change.old 87s + ^^^^^^^^^^^^^^^^^^^^^^^^ 87s + TypeError: cannot unpack non-iterable NoneType object 87s + [1] 87s $ hg clone --config hggit.invalidpaths=keep git hg 87s importing 1 git commits 87s - warning: skipping invalid path 'Icon\r' 87s - warning: skipping invalid path 'the\nfile' 87s - new changesets 8354c06a5842 (1 drafts) 87s - updating to bookmark master 87s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 87s + r = hg.clone( 87s + ui, 87s + ...<11 lines>... 87s + depth=opts.get('depth') or None, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 87s + srcpeer, destpeer = orig(*args, **opts) 87s + ~~~~^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 87s + exchange.pull( 87s + ~~~~~~~~~~~~~^ 87s + local, 87s + ^^^^^^ 87s + ...<5 lines>... 87s + depth=depth, 87s + ^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 87s + return f(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 87s + pullop.cgresult = repo.githandler.fetch(remote, heads) 87s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 87s + imported = self.import_git_objects( 87s + b'pull', 87s + ...<2 lines>... 87s + heads=heads, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 87s + self.import_git_commit( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + command, 87s + ^^^^^^^^ 87s + self.git[commit.sha], 87s + ^^^^^^^^^^^^^^^^^^^^^ 87s + commit.phase, 87s + ^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 87s + files, gitlinks, git_renames = self.get_files_changed( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + commit, detect_renames 87s + ^^^^^^^^^^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 87s + oldfile, oldmode, oldsha = change.old 87s + ^^^^^^^^^^^^^^^^^^^^^^^^ 87s + TypeError: cannot unpack non-iterable NoneType object 87s + [1] 87s $ rm -rf hg 87s $ hg clone git hg 87s importing 1 git commits 87s - warning: skipping invalid path 'Icon\r' 87s - warning: skipping invalid path 'the\nfile' 87s - new changesets 8354c06a5842 (1 drafts) 87s - updating to bookmark master 87s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 87s - 87s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 87s + ** which supports versions 6.9 of Mercurial. 87s + ** Please disable "hggit" and try your action again. 87s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 87s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 87s + ** Mercurial Distributed SCM (version 7.0.1) 87s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 87s + Traceback (most recent call last): 87s + File "/usr/bin/hg", line 51, in 87s + dispatch.run() 87s + ~~~~~~~~~~~~^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 87s + status = dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 87s + status = _rundispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 87s + ret = _runcatch(req) or 0 87s + ~~~~~~~~~^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 87s + return _callcatch(ui, _runcatchfunc) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 87s + return scmutil.callcatch(ui, func) 87s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 87s + return func() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 87s + return _dispatch(req) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 87s + return runcommand( 87s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 87s + ) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 87s + ret = _runcommand(ui, options, cmd, d) 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 87s + return cmdfunc() 87s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 87s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 87s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 87s + return func(*args, **kwargs) 87s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 87s + r = hg.clone( 87s + ui, 87s + ...<11 lines>... 87s + depth=opts.get('depth') or None, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 87s + srcpeer, destpeer = orig(*args, **opts) 87s + ~~~~^^^^^^^^^^^^^^^ 87s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 87s + exchange.pull( 87s + ~~~~~~~~~~~~~^ 87s + local, 87s + ^^^^^^ 87s + ...<5 lines>... 87s + depth=depth, 87s + ^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 87s + return f(*args, **kwargs) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 87s + pullop.cgresult = repo.githandler.fetch(remote, heads) 87s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 87s + imported = self.import_git_objects( 87s + b'pull', 87s + ...<2 lines>... 87s + heads=heads, 87s + ) 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 87s + self.import_git_commit( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + command, 87s + ^^^^^^^^ 87s + self.git[commit.sha], 87s + ^^^^^^^^^^^^^^^^^^^^^ 87s + commit.phase, 87s + ^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 87s + files, gitlinks, git_renames = self.get_files_changed( 87s + ~~~~~~~~~~~~~~~~~~~~~~^ 87s + commit, detect_renames 87s + ^^^^^^^^^^^^^^^^^^^^^^ 87s + ) 87s + ^ 87s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 87s + oldfile, oldmode, oldsha = change.old 87s + ^^^^^^^^^^^^^^^^^^^^^^^^ 87s + TypeError: cannot unpack non-iterable NoneType object 87s + [1] 87s + 87s 87s ERROR: test-illegal-contents.t output changed 88s ! 88s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-remote.t 88s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-remote.t.err 88s @@ -27,192 +27,100 @@ 88s 88s $ hg clone --config hggit.usephases=True -U gitrepo hgrepo 88s importing 4 git commits 88s - new changesets ff7a2f2d8d70:25eed24f5e8f (1 drafts) 88s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 88s + ** which supports versions 6.9 of Mercurial. 88s + ** Please disable "hggit" and try your action again. 88s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 88s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 88s + ** Mercurial Distributed SCM (version 7.0.1) 88s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 88s + Traceback (most recent call last): 88s + File "/usr/bin/hg", line 51, in 88s + dispatch.run() 88s + ~~~~~~~~~~~~^^ 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 88s + status = dispatch(req) 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 88s + status = _rundispatch(req) 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 88s + ret = _runcatch(req) or 0 88s + ~~~~~~~~~^^^^^ 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 88s + return _callcatch(ui, _runcatchfunc) 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 88s + return scmutil.callcatch(ui, func) 88s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 88s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 88s + return func() 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 88s + return _dispatch(req) 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 88s + return runcommand( 88s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 88s + ) 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 88s + ret = _runcommand(ui, options, cmd, d) 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 88s + return cmdfunc() 88s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 88s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 88s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 88s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 88s + return func(*args, **kwargs) 88s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 88s + r = hg.clone( 88s + ui, 88s + ...<11 lines>... 88s + depth=opts.get('depth') or None, 88s + ) 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 88s + srcpeer, destpeer = orig(*args, **opts) 88s + ~~~~^^^^^^^^^^^^^^^ 88s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 88s + exchange.pull( 88s + ~~~~~~~~~~~~~^ 88s + local, 88s + ^^^^^^ 88s + ...<5 lines>... 88s + depth=depth, 88s + ^^^^^^^^^^^^ 88s + ) 88s + ^ 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 88s + return f(*args, **kwargs) 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 88s + pullop.cgresult = repo.githandler.fetch(remote, heads) 88s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 88s + imported = self.import_git_objects( 88s + b'pull', 88s + ...<2 lines>... 88s + heads=heads, 88s + ) 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 88s + self.import_git_commit( 88s + ~~~~~~~~~~~~~~~~~~~~~~^ 88s + command, 88s + ^^^^^^^^ 88s + self.git[commit.sha], 88s + ^^^^^^^^^^^^^^^^^^^^^ 88s + commit.phase, 88s + ^^^^^^^^^^^^^ 88s + ) 88s + ^ 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 88s + files, gitlinks, git_renames = self.get_files_changed( 88s + ~~~~~~~~~~~~~~~~~~~~~~^ 88s + commit, detect_renames 88s + ^^^^^^^^^^^^^^^^^^^^^^ 88s + ) 88s + ^ 88s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 88s + oldfile, oldmode, oldsha = change.old 88s + ^^^^^^^^^^^^^^^^^^^^^^^^ 88s + TypeError: cannot unpack non-iterable NoneType object 88s + [1] 88s 88s $ cd hgrepo 88s + $TESTTMP.sh: 48: cd: can't cd to hgrepo 88s $ hg log -G -T '{rev}|{phase}|{bookmarks}|{tags}\n' 88s - o 3|public||thetag tip 88s - | 88s - | o 2|draft|not-master|default/not-master 88s - |/ 88s - | o 1|public|master|default/master 88s - |/ 88s - o 0|public|| 88s - 88s - $ hg phase -r 'all()' | tee $TESTTMP/after-clone 88s - 0: public 88s - 1: public 88s - 2: draft 88s - 3: public 88s - $ cat >> .hg/hgrc < [paths] 88s - > other = $TESTTMP/gitrepo/.git 88s - > other:hg-git.publish = no 88s - > EOF 88s - $ cd .. 88s - 88s -that disables publishing from that remote 88s - 88s - $ cd hgrepo 88s - $ hg phase -fd 'all()' 88s - $ hg pull other 88s - pulling from $TESTTMP/gitrepo/.git 88s - no changes found 88s - $ hg log -qr 'public()' 88s - $ hg pull -v --config hggit.usephases=True other 88s - pulling from $TESTTMP/gitrepo/.git 88s - no changes found 88s - processing commits in batches of 1000 88s - bookmark master is up-to-date 88s - bookmark not-master is up-to-date 88s - $ hg log -qr 'public()' 88s - $ cd .. 88s - 88s -but not default when enable by the global setting 88s - 88s - $ cd hgrepo 88s - $ hg phase -fd 'all()' 88s - no phases changed 88s - $ hg pull -v --config hggit.usephases=True 88s - pulling from $TESTTMP/gitrepo 88s - publishing remote HEAD 88s - publishing tag thetag 88s - no changes found 88s - processing commits in batches of 1000 88s - bookmark master is up-to-date 88s - bookmark not-master is up-to-date 88s - publishing remote HEAD 88s - publishing tag thetag 88s - 3 local changesets published 88s - $ hg phase -r 'all()' > $TESTTMP/after-pull 88s - $ cmp $TESTTMP/after-clone $TESTTMP/after-pull 88s - $ cd .. 88s - 88s -or the path option 88s - 88s - $ cd hgrepo 88s - $ hg phase -fd 'all()' 88s - $ hg pull -v --config paths.default:hg-git.publish=yes 88s - pulling from $TESTTMP/gitrepo 88s - publishing remote HEAD 88s - publishing tag thetag 88s - no changes found 88s - processing commits in batches of 1000 88s - bookmark master is up-to-date 88s - bookmark not-master is up-to-date 88s - publishing remote HEAD 88s - publishing tag thetag 88s - 3 local changesets published 88s - $ hg phase -r 'all()' > $TESTTMP/after-pull 88s - $ cmp $TESTTMP/after-clone $TESTTMP/after-pull 88s - $ cd .. 88s - 88s -but we can specify individual branches 88s - 88s - $ cd hgrepo 88s - $ hg phase -fd 'all()' 88s - $ hg pull -v --config paths.default:hg-git.publish=not-master 88s - pulling from $TESTTMP/gitrepo 88s - publishing branch not-master 88s - no changes found 88s - processing commits in batches of 1000 88s - bookmark master is up-to-date 88s - bookmark not-master is up-to-date 88s - publishing branch not-master 88s - 2 local changesets published 88s - $ hg phase -r master -r not-master -r thetag 88s - 1: draft 88s - 2: public 88s - 3: draft 88s - $ cd .. 88s - 88s -and we can also specify the tag 88s - 88s - $ cd hgrepo 88s - $ hg phase -fd 'all()' 88s - $ hg pull -v --config paths.default:hg-git.publish=thetag 88s - pulling from $TESTTMP/gitrepo 88s - publishing tag thetag 88s - no changes found 88s - processing commits in batches of 1000 88s - bookmark master is up-to-date 88s - bookmark not-master is up-to-date 88s - publishing tag thetag 88s - 2 local changesets published 88s - $ hg phase -r master -r not-master -r thetag 88s - 1: draft 88s - 2: draft 88s - 3: public 88s - $ cd .. 88s - 88s - 88s -Check multiple paths behavior 88s -============================= 88s - 88s - 88s - $ cd hgrepo 88s - $ cat >> .hg/hgrc < [paths] 88s - > multi:multi-urls = yes 88s - > multi = path://other, path://default 88s - > recursive:multi-urls = yes 88s - > recursive = path://multi, default 88s - > EOF 88s - 88s -Using multiple path works fine: 88s - 88s - 88s - $ hg pull multi --config paths.default:hg-git.publish=yes 88s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 88s - [255] 88s - 88s -Recursive multiple path are tricker, but Mercurial don't work with them either. 88s -This test exist to make sure we bail out on our own. 88s - 88s - 88s -`yes` should abort (until we implement it) 88s - 88s - $ hg pull multi --config paths.default:hg-git.publish=yes 88s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 88s - [255] 88s - 88s -`some-value` should abort (until we implement it) 88s - 88s - $ hg pull multi --config paths.default:hg-git.publish=thetag 88s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 88s - [255] 88s - 88s -`no` is fine 88s - 88s - $ hg pull multi --config paths.default:hg-git.publish=no 88s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 88s - [255] 88s - 88s - $ cd .. 88s - 88s -Check conflicting paths behavior 88s -================================ 88s - 88s - $ cd hgrepo 88s - $ cat > .hg/hgrc < [paths] 88s - > default = $TESTTMP/gitrepo 88s - > default:hg-git.publish = yes 88s - > also-default = $TESTTMP/gitrepo 88s - > EOF 88s - $ hg pull also-default 88s - pulling from $TESTTMP/gitrepo 88s - abort: different publishing configurations for the same remote location 88s - (conflicting paths: also-default, default) 88s - [255] 88s - $ hg pull --config paths.also-default:hg-git.publish=no 88s - pulling from $TESTTMP/gitrepo 88s - abort: different publishing configurations for the same remote location 88s - (conflicting paths: also-default, default) 88s - [255] 88s - $ hg pull --config paths.also-default:hg-git.publish=true 88s - pulling from $TESTTMP/gitrepo 88s - no changes found 88s - 1 local changesets published 88s - $ cd .. 88s - 88s 88s ERROR: test-phases-remote.t output changed 90s !. 90s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-octopus.t 90s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-octopus.t.err 90s @@ -63,110 +63,99 @@ 90s 90s $ hg clone gitrepo hgrepo 90s importing 8 git commits 90s - new changesets ff7a2f2d8d70:307506d6ae8a (10 drafts) 90s - updating to bookmark master 90s - 6 files updated, 0 files merged, 0 files removed, 0 files unresolved 90s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 90s + ** which supports versions 6.9 of Mercurial. 90s + ** Please disable "hggit" and try your action again. 90s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 90s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 90s + ** Mercurial Distributed SCM (version 7.0.1) 90s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 90s + Traceback (most recent call last): 90s + File "/usr/bin/hg", line 51, in 90s + dispatch.run() 90s + ~~~~~~~~~~~~^^ 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 90s + status = dispatch(req) 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 90s + status = _rundispatch(req) 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 90s + ret = _runcatch(req) or 0 90s + ~~~~~~~~~^^^^^ 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 90s + return _callcatch(ui, _runcatchfunc) 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 90s + return scmutil.callcatch(ui, func) 90s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 90s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 90s + return func() 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 90s + return _dispatch(req) 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 90s + return runcommand( 90s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 90s + ) 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 90s + ret = _runcommand(ui, options, cmd, d) 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 90s + return cmdfunc() 90s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 90s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 90s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 90s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 90s + return func(*args, **kwargs) 90s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 90s + r = hg.clone( 90s + ui, 90s + ...<11 lines>... 90s + depth=opts.get('depth') or None, 90s + ) 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 90s + srcpeer, destpeer = orig(*args, **opts) 90s + ~~~~^^^^^^^^^^^^^^^ 90s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 90s + exchange.pull( 90s + ~~~~~~~~~~~~~^ 90s + local, 90s + ^^^^^^ 90s + ...<5 lines>... 90s + depth=depth, 90s + ^^^^^^^^^^^^ 90s + ) 90s + ^ 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 90s + return f(*args, **kwargs) 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 90s + pullop.cgresult = repo.githandler.fetch(remote, heads) 90s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 90s + imported = self.import_git_objects( 90s + b'pull', 90s + ...<2 lines>... 90s + heads=heads, 90s + ) 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 90s + self.import_git_commit( 90s + ~~~~~~~~~~~~~~~~~~~~~~^ 90s + command, 90s + ^^^^^^^^ 90s + self.git[commit.sha], 90s + ^^^^^^^^^^^^^^^^^^^^^ 90s + commit.phase, 90s + ^^^^^^^^^^^^^ 90s + ) 90s + ^ 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 90s + files, gitlinks, git_renames = self.get_files_changed( 90s + ~~~~~~~~~~~~~~~~~~~~~~^ 90s + commit, detect_renames 90s + ^^^^^^^^^^^^^^^^^^^^^^ 90s + ) 90s + ^ 90s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 90s + oldfile, oldmode, oldsha = change.old 90s + ^^^^^^^^^^^^^^^^^^^^^^^^ 90s + TypeError: cannot unpack non-iterable NoneType object 90s + [1] 90s $ cd hgrepo 90s + $TESTTMP.sh: 64: cd: can't cd to hgrepo 90s $ hg log --graph --style compact | sed 's/\[.*\]//g' 90s - @ 9:7,8 307506d6ae8a 2007-01-01 00:00 +0000 test 90s - |\ Merge branches 'branch3' and 'branch4' 90s - | | 90s - | o 8:3,4 2b07220e422e 2007-01-01 00:00 +0000 test 90s - | |\ Merge branches 'branch3' and 'branch4' 90s - | | | 90s - o | | 7:5,6 ccf2d65d982c 2007-01-01 00:00 +0000 test 90s - |\ \ \ Merge branches 'branch1' and 'branch2' 90s - | | | | 90s - | o | | 6:1,2 690b40256117 2007-01-01 00:00 +0000 test 90s - | |\ \ \ Merge branches 'branch1' and 'branch2' 90s - | | | | | 90s - o | | | | 5:0 e459c0629ca4 2007-01-01 00:00 +0000 test 90s - | | | | | add delta 90s - | | | | | 90s - +-------o 4:0 e857c9a04474 2007-01-01 00:00 +0000 test 90s - | | | | add zeta 90s - | | | | 90s - +-----o 3:0 0071dec0de0e 2007-01-01 00:00 +0000 test 90s - | | | add epsilon 90s - | | | 90s - +---o 2:0 205a004356ef 2007-01-01 00:00 +0000 test 90s - | | add gamma 90s - | | 90s - | o 1 7fe02317c63d 2007-01-01 00:00 +0000 test 90s - |/ add beta 90s - | 90s - o 0 ff7a2f2d8d70 2007-01-01 00:00 +0000 test 90s - add alpha 90s - 90s - $ hg gverify -r 9 90s - verifying rev 307506d6ae8a against git commit b32ff845df61df998206b630e4370a44f9b36845 90s - $ hg gverify -r 8 90s - abort: no git commit found for rev 2b07220e422e 90s - (if this is an octopus merge, verify against the last rev) 90s - [255] 90s - 90s - $ hg debug-remove-hggit-state 90s - clearing out the git cache data 90s - $ hg push ../repo.git 90s - pushing to ../repo.git 90s - searching for changes 90s - adding objects 90s - remote: found 0 deltas to reuse 90s - added 8 commits with 8 trees and 6 blobs 90s - adding reference refs/heads/branch1 90s - adding reference refs/heads/branch2 90s - adding reference refs/heads/branch3 90s - adding reference refs/heads/branch4 90s - adding reference refs/heads/master 90s - $ cd .. 90s - 90s - $ git --git-dir=repo.git log --pretty=medium | sed s/\\.\\.\\.//g 90s - commit b32ff845df61df998206b630e4370a44f9b36845 90s - Merge: 9ac68f9 7e9cd9f e695849 90s - Author: test 90s - Date: Mon Jan 1 00:00:15 2007 +0000 90s - 90s - Merge branches 'branch3' and 'branch4' 90s - 90s - commit 9ac68f982ae7426d9597ff16c74afb4e6053c582 90s - Merge: d40f375 9497a4e e5023f9 90s - Author: test 90s - Date: Mon Jan 1 00:00:15 2007 +0000 90s - 90s - Merge branches 'branch1' and 'branch2' 90s - 90s - commit d40f375a81b7d033e92cbad89487115fe2dd472f 90s - Author: test 90s - Date: Mon Jan 1 00:00:15 2007 +0000 90s - 90s - add delta 90s - 90s - commit e695849087f6c320c1a447620492b29a82ca41b1 90s - Author: test 90s - Date: Mon Jan 1 00:00:14 2007 +0000 90s - 90s - add zeta 90s - 90s - commit 7e9cd9f90b6d2c60579375eb796ce706d2d8bbe6 90s - Author: test 90s - Date: Mon Jan 1 00:00:13 2007 +0000 90s - 90s - add epsilon 90s - 90s - commit e5023f9e5cb24fdcec7b6c127cec45d8888e35a9 90s - Author: test 90s - Date: Mon Jan 1 00:00:12 2007 +0000 90s - 90s - add gamma 90s - 90s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 90s - Author: test 90s - Date: Mon Jan 1 00:00:11 2007 +0000 90s - 90s - add beta 90s - 90s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 90s - Author: test 90s - Date: Mon Jan 1 00:00:10 2007 +0000 90s - 90s - add alpha 90s 90s ERROR: test-octopus.t output changed 92s ! 92s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hook.t 92s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hook.t.err 92s @@ -41,27 +41,89 @@ 92s | preoutgoing.url=$TESTTMP/repo.git 92s | gitexport.nodes=[b'cc0ffa47c67ebcb08dc50f69afaecb5d622cc777'] 92s | gitexport.git=True 92s - searching for changes 92s - | prechangegroup.source=push 92s - | prechangegroup.git=True 92s - | prechangegroup.url=$TESTTMP/repo.git 92s - | outgoing.source=push 92s - | outgoing.git=True 92s - | outgoing.url=$TESTTMP/repo.git 92s - | outgoing.node=cc0ffa47c67ebcb08dc50f69afaecb5d622cc777 92s - | outgoing.git_node=681fb452693218a33986174228560272a6fad87a 92s - adding objects 92s - remote: found 0 deltas to reuse 92s - added 1 commits with 1 trees and 1 blobs 92s - adding reference refs/heads/master 92s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 92s + ** which supports versions 6.9 of Mercurial. 92s + ** Please disable "hggit" and try your action again. 92s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 92s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 92s + ** Mercurial Distributed SCM (version 7.0.1) 92s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 92s + Traceback (most recent call last): 92s + File "/usr/bin/hg", line 51, in 92s + dispatch.run() 92s + ~~~~~~~~~~~~^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 92s + status = dispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 92s + status = _rundispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 92s + ret = _runcatch(req) or 0 92s + ~~~~~~~~~^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 92s + return _callcatch(ui, _runcatchfunc) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 92s + return scmutil.callcatch(ui, func) 92s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 92s + return func() 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 92s + return _dispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 92s + return runcommand( 92s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 92s + ) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 92s + ret = _runcommand(ui, options, cmd, d) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 92s + return cmdfunc() 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 92s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 92s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 92s + return func(*args, **kwargs) 92s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 92s + pushop = exchange.push( 92s + repo, 92s + ...<6 lines>... 92s + opargs=opargs, 92s + ) 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 92s + return f(*args, **kwargs) 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 92s + pushop.cgresult = repo.githandler.push( 92s + ~~~~~~~~~~~~~~~~~~~~^ 92s + remote.path, revs, bookmarks, force 92s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + ) 92s + ^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 92s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 92s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 92s + all_exportable = self.export_commits() 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 92s + self.export_git_objects() 92s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 92s + packer.pack(synchronous=True) 92s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 92s + _process_batch(self.ui, self.object_store, todo) 92s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 92s + object_store._remove_loose_object(obj.id) 92s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 92s + [1] 92s 92s $ git clone -q ../repo.git ../gitrepo 92s + warning: You appear to have cloned an empty repository. 92s $ cd ../gitrepo 92s $ fn_commit git b 92s $ fn_commit git c 92s $ git push 92s To $TESTTMP/hgrepo/../repo.git 92s - 681fb45..1dab31e master -> master 92s + * [new branch] master -> master 92s $ cd ../hgrepo 92s 92s Hooks on pull? 92s @@ -71,27 +133,93 @@ 92s | gitimport.source=pull 92s | gitimport.git=True 92s | gitimport.names=[b'default'] 92s - | gitimport.refs={b'HEAD': b'1dab31e7bc9691ba42a2fe7b14680694770bc527', b'refs/heads/master': b'1dab31e7bc9691ba42a2fe7b14680694770bc527'} 92s + | gitimport.refs={b'HEAD': b'073d1514b9b792cb98ce11d76b6caa87c4887f5b', b'refs/heads/master': b'073d1514b9b792cb98ce11d76b6caa87c4887f5b'} 92s | gitimport.heads=None 92s importing 2 git commits 92s - : pretxncommit 92s - | incoming.git=True 92s - | incoming.source=pull 92s - | incoming.node=382ad5fa1d7727210384d40fa1539af52ca632c5 92s - | incoming.git_node=92150d1529ccaea34a6b36fe4144993193080499 92s - : pretxncommit 92s - | incoming.git=True 92s - | incoming.source=pull 92s - | incoming.node=892115eea5c32152e09ae4013c9a119d7b534049 92s - | incoming.git_node=1dab31e7bc9691ba42a2fe7b14680694770bc527 92s - updating bookmark master 92s - | changegroup.source=push 92s - | changegroup.git=True 92s - | changegroup.node=382ad5fa1d7727210384d40fa1539af52ca632c5 92s - | changegroup.node_last=892115eea5c32152e09ae4013c9a119d7b534049 92s - new changesets 382ad5fa1d77:892115eea5c3 (2 drafts) 92s - updating to active bookmark master 92s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 92s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 92s + ** which supports versions 6.9 of Mercurial. 92s + ** Please disable "hggit" and try your action again. 92s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 92s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 92s + ** Mercurial Distributed SCM (version 7.0.1) 92s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 92s + Traceback (most recent call last): 92s + File "/usr/bin/hg", line 51, in 92s + dispatch.run() 92s + ~~~~~~~~~~~~^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 92s + status = dispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 92s + status = _rundispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 92s + ret = _runcatch(req) or 0 92s + ~~~~~~~~~^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 92s + return _callcatch(ui, _runcatchfunc) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 92s + return scmutil.callcatch(ui, func) 92s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 92s + return func() 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 92s + return _dispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 92s + return runcommand( 92s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 92s + ) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 92s + ret = _runcommand(ui, options, cmd, d) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 92s + return cmdfunc() 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 92s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 92s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 92s + return func(*args, **kwargs) 92s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 92s + modheads = exchange.pull( 92s + ~~~~~~~~~~~~~^ 92s + repo, 92s + ^^^^^ 92s + ...<6 lines>... 92s + confirm=opts.get('confirm'), 92s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + ).cgresult 92s + ^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 92s + return f(*args, **kwargs) 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 92s + pullop.cgresult = repo.githandler.fetch(remote, heads) 92s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 92s + imported = self.import_git_objects( 92s + b'pull', 92s + ...<2 lines>... 92s + heads=heads, 92s + ) 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 92s + self.import_git_commit( 92s + ~~~~~~~~~~~~~~~~~~~~~~^ 92s + command, 92s + ^^^^^^^^ 92s + self.git[commit.sha], 92s + ^^^^^^^^^^^^^^^^^^^^^ 92s + commit.phase, 92s + ^^^^^^^^^^^^^ 92s + ) 92s + ^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 92s + files, gitlinks, git_renames = self.get_files_changed( 92s + ~~~~~~~~~~~~~~~~~~~~~~^ 92s + commit, detect_renames 92s + ^^^^^^^^^^^^^^^^^^^^^^ 92s + ) 92s + ^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 92s + oldfile, oldmode, oldsha = change.old 92s + ^^^^^^^^^^^^^^^^^^^^^^^^ 92s + TypeError: cannot unpack non-iterable NoneType object 92s + [1] 92s 92s Hooks on push? 92s 92s @@ -102,16 +230,82 @@ 92s | preoutgoing.git=True 92s | preoutgoing.source=push 92s | preoutgoing.url=$TESTTMP/repo.git 92s - | gitexport.nodes=[b'cc6164a17449d58d7811ff3918f33f89c2c83fa5', b'46737f6a4c9d8307b681cbb2e9e2e5419cc87f82'] 92s + | gitexport.nodes=[b'eb13ee910fa61c332b2d3b5eca9f0c08e6c75893', b'450aa114da3b128c1174f32eccdd55539853d173'] 92s | gitexport.git=True 92s - searching for changes 92s - | prechangegroup.source=push 92s - | prechangegroup.git=True 92s - | prechangegroup.url=$TESTTMP/repo.git 92s - adding objects 92s - remote: found 0 deltas to reuse 92s - added 2 commits with 2 trees and 2 blobs 92s - updating reference refs/heads/master 92s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 92s + ** which supports versions 6.9 of Mercurial. 92s + ** Please disable "hggit" and try your action again. 92s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 92s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 92s + ** Mercurial Distributed SCM (version 7.0.1) 92s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 92s + Traceback (most recent call last): 92s + File "/usr/bin/hg", line 51, in 92s + dispatch.run() 92s + ~~~~~~~~~~~~^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 92s + status = dispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 92s + status = _rundispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 92s + ret = _runcatch(req) or 0 92s + ~~~~~~~~~^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 92s + return _callcatch(ui, _runcatchfunc) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 92s + return scmutil.callcatch(ui, func) 92s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 92s + return func() 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 92s + return _dispatch(req) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 92s + return runcommand( 92s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 92s + ) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 92s + ret = _runcommand(ui, options, cmd, d) 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 92s + return cmdfunc() 92s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 92s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 92s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 92s + return func(*args, **kwargs) 92s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 92s + pushop = exchange.push( 92s + repo, 92s + ...<6 lines>... 92s + opargs=opargs, 92s + ) 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 92s + return f(*args, **kwargs) 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 92s + pushop.cgresult = repo.githandler.push( 92s + ~~~~~~~~~~~~~~~~~~~~^ 92s + remote.path, revs, bookmarks, force 92s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + ) 92s + ^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 92s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 92s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 92s + all_exportable = self.export_commits() 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 92s + self.export_git_objects() 92s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 92s + packer.pack(synchronous=True) 92s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 92s + _process_batch(self.ui, self.object_store, todo) 92s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 92s + object_store._remove_loose_object(obj.id) 92s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 92s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 92s + [1] 92s 92s 92s And what does Mercurial do? 92s @@ -133,7 +327,7 @@ 92s adding changesets 92s adding manifests 92s adding file changes 92s - added 5 changesets with 5 changes to 5 files 92s + added 3 changesets with 3 changes to 3 files 92s 92s With more than one head: 92s 92s @@ -154,7 +348,7 @@ 92s adding changesets 92s adding manifests 92s adding file changes 92s - added 7 changesets with 7 changes to 7 files (+1 heads) 92s + added 5 changesets with 5 changes to 5 files (+1 heads) 92s 92s On pull: 92s 92s @@ -171,16 +365,16 @@ 92s adding manifests 92s adding file changes 92s added 1 changesets with 1 changes to 1 files (+1 heads) 92s - new changesets d4097d98a390 92s + new changesets 11a693974ec5 92s | changegroup.txnname=pull 92s file://$TESTTMP/hgrepo-copy 92s | changegroup.source=pull 92s | changegroup.url=file:$TESTTMP/hgrepo-copy 92s - | changegroup.node=d4097d98a3905be88e8a566039b1fdcca06e0d2e 92s - | changegroup.node_last=d4097d98a3905be88e8a566039b1fdcca06e0d2e 92s + | changegroup.node=11a693974ec530e32672629628dde90793335199 92s + | changegroup.node_last=11a693974ec530e32672629628dde90793335199 92s | incoming.txnname=pull 92s file://$TESTTMP/hgrepo-copy 92s | incoming.source=pull 92s | incoming.url=file:$TESTTMP/hgrepo-copy 92s - | incoming.node=d4097d98a3905be88e8a566039b1fdcca06e0d2e 92s + | incoming.node=11a693974ec530e32672629628dde90793335199 92s (run 'hg heads' to see heads) 92s 92s ERROR: test-hook.t output changed 95s ! 95s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-transactions.t 95s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-transactions.t.err 95s @@ -42,7 +42,104 @@ 95s 95s $ hg clone gitrepo hgrepo --config hggit.mapsavefrequency=10 --debug \ 95s > | grep -c saving 95s - 1 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 95s + r = hg.clone( 95s + ui, 95s + ...<11 lines>... 95s + depth=opts.get('depth') or None, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 95s + srcpeer, destpeer = orig(*args, **opts) 95s + ~~~~^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 95s + exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + local, 95s + ^^^^^^ 95s + ...<5 lines>... 95s + depth=depth, 95s + ^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + 0 95s + [1] 95s $ rm -rf hgrepo 95s 95s pull with mapsavefreq set 95s @@ -54,7 +151,95 @@ 95s > EOF 95s $ hg -R hgrepo --config hggit.mapsavefrequency=10 pull --debug \ 95s > | grep -c saving 95s - 10 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 95s + modheads = exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + repo, 95s + ^^^^^ 95s + ...<6 lines>... 95s + confirm=opts.get('confirm'), 95s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 95s + ).cgresult 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + 0 95s + [1] 95s $ rm -rf hgrepo 95s 95s The user experience 95s @@ -77,16 +262,100 @@ 95s $ hg --config hggit.mapsavefrequency=25 pull 95s pulling from $TESTTMP/gitrepo 95s importing 100 git commits 95s - new changesets 1c8407413fa3:abc468b9e51b (25 drafts) 95s - new changesets 217c308baf47:d5d14eeedd08 (25 drafts) 95s - new changesets d9807ef6abcb:4678067bd500 (25 drafts) 95s - adding bookmark master 95s - new changesets c31a154888bb:eda59117ba04 (25 drafts) 95s - (run 'hg update' to get a working copy) 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 95s + modheads = exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + repo, 95s + ^^^^^ 95s + ...<6 lines>... 95s + confirm=opts.get('confirm'), 95s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 95s + ).cgresult 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s 95s Reset the repository 95s 95s $ hg debugstrip --no-backup 'all()' 95s + abort: empty revision set 95s + [255] 95s $ hg debug-remove-hggit-state 95s clearing out the git cache data 95s 95s @@ -96,16 +365,100 @@ 95s $ hg --config hggit.mapsavefrequency=25 --config hggit.usephases=yes pull 95s pulling from $TESTTMP/gitrepo 95s importing 100 git commits 95s - new changesets 1c8407413fa3:abc468b9e51b 95s - new changesets 217c308baf47:d5d14eeedd08 95s - new changesets d9807ef6abcb:4678067bd500 95s - updating bookmark master 95s - new changesets c31a154888bb:eda59117ba04 95s - (run 'hg update' to get a working copy) 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 95s + modheads = exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + repo, 95s + ^^^^^ 95s + ...<6 lines>... 95s + confirm=opts.get('confirm'), 95s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 95s + ).cgresult 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s 95s Reset the repository 95s 95s $ hg debugstrip --no-backup 'all()' 95s + abort: empty revision set 95s + [255] 95s $ hg debug-remove-hggit-state 95s clearing out the git cache data 95s 95s @@ -123,10 +476,94 @@ 95s $ ABORT_AFTER=99 hg pull 95s pulling from $TESTTMP/gitrepo 95s importing 100 git commits 95s - transaction abort! 95s - rollback completed 95s - abort: aborted after 99 commits! 95s - [255] 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 95s + modheads = exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + repo, 95s + ^^^^^ 95s + ...<6 lines>... 95s + confirm=opts.get('confirm'), 95s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 95s + ).cgresult 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s $ hg log -l 10 -T '{rev} {gitnode}\n' 95s 95s Test the user exiting in the first transaction: 95s @@ -134,10 +571,94 @@ 95s $ EXIT_AFTER=5 hg --config hggit.mapsavefrequency=10 pull 95s pulling from $TESTTMP/gitrepo 95s importing 100 git commits 95s - transaction abort! 95s - rollback completed 95s - interrupted! 95s - [255] 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 95s + modheads = exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + repo, 95s + ^^^^^ 95s + ...<6 lines>... 95s + confirm=opts.get('confirm'), 95s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 95s + ).cgresult 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s $ hg log -l 10 -T '{rev} {gitnode}\n' 95s 95s Check that we have no state, but clear it just in case 95s @@ -153,22 +674,95 @@ 95s $ EXIT_AFTER=15 hg --config hggit.mapsavefrequency=10 pull 95s pulling from $TESTTMP/gitrepo 95s importing 100 git commits 95s - new changesets 1c8407413fa3:7c8c534a5fbe (10 drafts) 95s - transaction abort! 95s - rollback completed 95s - interrupted! 95s - [255] 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 95s + modheads = exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + repo, 95s + ^^^^^ 95s + ...<6 lines>... 95s + confirm=opts.get('confirm'), 95s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 95s + ).cgresult 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s $ hg log -l 10 -T '{rev} {gitnode}\n' 95s - 9 7cbb16ec981b308e1e2b181f8e1f22c8f409f44e 95s - 8 42da70ed92bbecf9f348ba59c93646be723d0bf2 95s - 7 17e841146e5744b81af9959634d82c20a5d7df52 95s - 6 c31065bf97bf014815e37cdfbdef2c32c687f314 95s - 5 fcf21b8e0520ec1cced1d7593d13f9ee54721269 95s - 4 46acd02d0352e4b92bd6a099bb0490305d847a18 95s - 3 61eeda444b37b8aa3892d5f04c66c5441d21dd66 95s - 2 e55db11bb0472791c7af3fc636772174cdea4a36 95s - 1 17a2672b3c24c02d568f99d8d55ccae2bf362d5c 95s - 0 4e195b4c6e77604b70a8ad3b01306adbb9b1c7e7 95s $ cd .. 95s $ rm -rf hgrepo 95s 95s @@ -184,10 +778,103 @@ 95s > --cwd hgrepo \ 95s > clone -U $TESTTMP/gitrepo . 95s importing 100 git commits 95s - transaction abort! 95s - rollback completed 95s - interrupted! 95s - [255] 95s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 95s + ** which supports versions unknown of Mercurial. 95s + ** Please disable "breakage" and try your action again. 95s + ** If that fixes the bug please report it to the extension author. 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 95s + r = hg.clone( 95s + ui, 95s + ...<11 lines>... 95s + depth=opts.get('depth') or None, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 95s + srcpeer, destpeer = orig(*args, **opts) 95s + ~~~~^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 95s + exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + local, 95s + ^^^^^^ 95s + ...<5 lines>... 95s + depth=depth, 95s + ^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 95s + return func(*(args + a), **kw) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 95s + return orig(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s the leftover below appeared in Mercurial 5.9+; it is unintentional 95s $ ls -A hgrepo 95s .git 95s 95s ERROR: test-transactions.t output changed 95s ! 95s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-outgoing.t 95s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-outgoing.t.err 95s @@ -15,165 +15,100 @@ 95s $ cd .. 95s $ hg clone gitrepo hgrepo 95s importing 1 git commits 95s - new changesets ff7a2f2d8d70 (1 drafts) 95s - updating to bookmark master 95s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 95s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 95s + ** which supports versions 6.9 of Mercurial. 95s + ** Please disable "hggit" and try your action again. 95s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 95s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 95s + ** Mercurial Distributed SCM (version 7.0.1) 95s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 95s + Traceback (most recent call last): 95s + File "/usr/bin/hg", line 51, in 95s + dispatch.run() 95s + ~~~~~~~~~~~~^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 95s + status = dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 95s + status = _rundispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 95s + ret = _runcatch(req) or 0 95s + ~~~~~~~~~^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 95s + return _callcatch(ui, _runcatchfunc) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 95s + return scmutil.callcatch(ui, func) 95s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 95s + return func() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 95s + return _dispatch(req) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 95s + return runcommand( 95s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 95s + ) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 95s + ret = _runcommand(ui, options, cmd, d) 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 95s + return cmdfunc() 95s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 95s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 95s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 95s + return func(*args, **kwargs) 95s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 95s + r = hg.clone( 95s + ui, 95s + ...<11 lines>... 95s + depth=opts.get('depth') or None, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 95s + srcpeer, destpeer = orig(*args, **opts) 95s + ~~~~^^^^^^^^^^^^^^^ 95s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 95s + exchange.pull( 95s + ~~~~~~~~~~~~~^ 95s + local, 95s + ^^^^^^ 95s + ...<5 lines>... 95s + depth=depth, 95s + ^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 95s + imported = self.import_git_objects( 95s + b'pull', 95s + ...<2 lines>... 95s + heads=heads, 95s + ) 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 95s + self.import_git_commit( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + command, 95s + ^^^^^^^^ 95s + self.git[commit.sha], 95s + ^^^^^^^^^^^^^^^^^^^^^ 95s + commit.phase, 95s + ^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 95s + files, gitlinks, git_renames = self.get_files_changed( 95s + ~~~~~~~~~~~~~~~~~~~~~~^ 95s + commit, detect_renames 95s + ^^^^^^^^^^^^^^^^^^^^^^ 95s + ) 95s + ^ 95s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 95s + oldfile, oldmode, oldsha = change.old 95s + ^^^^^^^^^^^^^^^^^^^^^^^^ 95s + TypeError: cannot unpack non-iterable NoneType object 95s + [1] 95s 95s $ cd hgrepo 95s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 95s $ hg book 95s - alpha 0:ff7a2f2d8d70 95s - * master 0:ff7a2f2d8d70 95s - $ hg update -q master 95s - $ echo beta > beta 95s - $ hg add beta 95s - $ fn_hg_commit -m 'add beta' 95s - 95s - 95s - $ echo gamma > gamma 95s - $ hg add gamma 95s - $ fn_hg_commit -m 'add gamma' 95s - 95s - $ hg book -r 1 beta 95s - 95s - $ hg outgoing | grep -v 'searching for changes' 95s - comparing with $TESTTMP/gitrepo 95s - changeset: 1:47580592d3d6 95s - bookmark: beta 95s - user: test 95s - date: Mon Jan 01 00:00:11 2007 +0000 95s - summary: add beta 95s - 95s - changeset: 2:953796e1cfd8 95s - bookmark: master 95s - tag: tip 95s - user: test 95s - date: Mon Jan 01 00:00:12 2007 +0000 95s - summary: add gamma 95s - 95s - $ hg outgoing -r beta 95s - comparing with $TESTTMP/gitrepo 95s - searching for changes 95s - changeset: 1:47580592d3d6 95s - bookmark: beta 95s - user: test 95s - date: Mon Jan 01 00:00:11 2007 +0000 95s - summary: add beta 95s - 95s - $ hg outgoing -r master 95s - comparing with $TESTTMP/gitrepo 95s - searching for changes 95s - changeset: 1:47580592d3d6 95s - bookmark: beta 95s - user: test 95s - date: Mon Jan 01 00:00:11 2007 +0000 95s - summary: add beta 95s - 95s - changeset: 2:953796e1cfd8 95s - bookmark: master 95s - tag: tip 95s - user: test 95s - date: Mon Jan 01 00:00:12 2007 +0000 95s - summary: add gamma 95s - 95s - 95s - $ cd .. 95s - 95s -some more work on master from git 95s - $ cd gitrepo 95s - 95s -Check state of refs after outgoing 95s - $ git show-ref 95s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 refs/heads/alpha 95s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 refs/heads/master 95s - 95s - $ git checkout master 2>&1 | sed s/\'/\"/g 95s - Already on "master" 95s - $ echo delta > delta 95s - $ git add delta 95s - $ fn_git_commit -m "add delta" 95s - 95s - $ cd .. 95s - 95s - $ cd hgrepo 95s -this will fail # maybe we should try to make it work 95s - $ hg outgoing 95s - comparing with $TESTTMP/gitrepo 95s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 95s - [255] 95s -let's pull and try again 95s - $ hg pull 95s - pulling from */gitrepo (glob) 95s - importing 1 git commits 95s - not updating diverged bookmark master 95s - new changesets 25eed24f5e8f (1 drafts) 95s - (run 'hg heads' to see heads, 'hg merge' to merge) 95s - $ hg log --graph 95s - o changeset: 3:25eed24f5e8f 95s - | tag: default/master 95s - | tag: tip 95s - | parent: 0:ff7a2f2d8d70 95s - | user: test 95s - | date: Mon Jan 01 00:00:13 2007 +0000 95s - | summary: add delta 95s - | 95s - | @ changeset: 2:953796e1cfd8 95s - | | bookmark: master 95s - | | user: test 95s - | | date: Mon Jan 01 00:00:12 2007 +0000 95s - | | summary: add gamma 95s - | | 95s - | o changeset: 1:47580592d3d6 95s - |/ bookmark: beta 95s - | user: test 95s - | date: Mon Jan 01 00:00:11 2007 +0000 95s - | summary: add beta 95s - | 95s - o changeset: 0:ff7a2f2d8d70 95s - bookmark: alpha 95s - tag: default/alpha 95s - user: test 95s - date: Mon Jan 01 00:00:10 2007 +0000 95s - summary: add alpha 95s - 95s - $ hg outgoing 95s - comparing with $TESTTMP/gitrepo 95s - searching for changes 95s - changeset: 1:47580592d3d6 95s - bookmark: beta 95s - user: test 95s - date: Mon Jan 01 00:00:11 2007 +0000 95s - summary: add beta 95s - 95s - changeset: 2:953796e1cfd8 95s - bookmark: master 95s - user: test 95s - date: Mon Jan 01 00:00:12 2007 +0000 95s - summary: add gamma 95s - 95s - $ hg outgoing -r beta 95s - comparing with $TESTTMP/gitrepo 95s - searching for changes 95s - changeset: 1:47580592d3d6 95s - bookmark: beta 95s - user: test 95s - date: Mon Jan 01 00:00:11 2007 +0000 95s - summary: add beta 95s - 95s - $ hg outgoing -r master 95s - comparing with $TESTTMP/gitrepo 95s - searching for changes 95s - changeset: 1:47580592d3d6 95s - bookmark: beta 95s - user: test 95s - date: Mon Jan 01 00:00:11 2007 +0000 95s - summary: add beta 95s - 95s - changeset: 2:953796e1cfd8 95s - bookmark: master 95s - user: test 95s - date: Mon Jan 01 00:00:12 2007 +0000 95s - summary: add gamma 95s - 95s - 95s - 95s - $ cd .. 95s 95s ERROR: test-outgoing.t output changed 96s ! 96s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gc.t 96s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gc.t.err 96s @@ -26,187 +26,99 @@ 96s $ cd .. 96s $ hg clone -U gitrepo hgrepo 96s importing 100 git commits 96s - new changesets 1c8407413fa3:eda59117ba04 (100 drafts) 96s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 96s + ** which supports versions 6.9 of Mercurial. 96s + ** Please disable "hggit" and try your action again. 96s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 96s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 96s + ** Mercurial Distributed SCM (version 7.0.1) 96s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 96s + Traceback (most recent call last): 96s + File "/usr/bin/hg", line 51, in 96s + dispatch.run() 96s + ~~~~~~~~~~~~^^ 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 96s + status = dispatch(req) 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 96s + status = _rundispatch(req) 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 96s + ret = _runcatch(req) or 0 96s + ~~~~~~~~~^^^^^ 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 96s + return _callcatch(ui, _runcatchfunc) 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 96s + return scmutil.callcatch(ui, func) 96s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 96s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 96s + return func() 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 96s + return _dispatch(req) 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 96s + return runcommand( 96s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 96s + ) 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 96s + ret = _runcommand(ui, options, cmd, d) 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 96s + return cmdfunc() 96s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 96s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 96s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 96s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 96s + return func(*args, **kwargs) 96s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 96s + r = hg.clone( 96s + ui, 96s + ...<11 lines>... 96s + depth=opts.get('depth') or None, 96s + ) 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 96s + srcpeer, destpeer = orig(*args, **opts) 96s + ~~~~^^^^^^^^^^^^^^^ 96s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 96s + exchange.pull( 96s + ~~~~~~~~~~~~~^ 96s + local, 96s + ^^^^^^ 96s + ...<5 lines>... 96s + depth=depth, 96s + ^^^^^^^^^^^^ 96s + ) 96s + ^ 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 96s + return f(*args, **kwargs) 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 96s + pullop.cgresult = repo.githandler.fetch(remote, heads) 96s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 96s + imported = self.import_git_objects( 96s + b'pull', 96s + ...<2 lines>... 96s + heads=heads, 96s + ) 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 96s + self.import_git_commit( 96s + ~~~~~~~~~~~~~~~~~~~~~~^ 96s + command, 96s + ^^^^^^^^ 96s + self.git[commit.sha], 96s + ^^^^^^^^^^^^^^^^^^^^^ 96s + commit.phase, 96s + ^^^^^^^^^^^^^ 96s + ) 96s + ^ 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 96s + files, gitlinks, git_renames = self.get_files_changed( 96s + ~~~~~~~~~~~~~~~~~~~~~~^ 96s + commit, detect_renames 96s + ^^^^^^^^^^^^^^^^^^^^^^ 96s + ) 96s + ^ 96s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 96s + oldfile, oldmode, oldsha = change.old 96s + ^^^^^^^^^^^^^^^^^^^^^^^^ 96s + TypeError: cannot unpack non-iterable NoneType object 96s + [1] 96s $ cd hgrepo 96s + $TESTTMP.sh: 24: cd: can't cd to hgrepo 96s $ hg debug-remove-hggit-state 96s - clearing out the git cache data 96s - 96s ------------ 96s - 96s -Test garbage collection of loose objects into packs. We first test 96s -this with two threads, which is closest to the expected usage 96s -scenario, as almost all computers have at least two cores these days. 96s -The main downside is that this makes the output order unreliable, so 96s -we just sort it. 96s - 96s - $ hg gexport --config hggit.mapsavefrequency=33 --config hggit.threads=2 --debug | grep pack | sort 96s - packed 3 loose objects! 96s - packed 75 loose objects! 96s - packed 78 loose objects! 96s - packed 86 loose objects! 96s - packing 3 loose objects... 96s - packing 75 loose objects... 96s - packing 78 loose objects... 96s - packing 86 loose objects... 96s - $ hg debug-remove-hggit-state 96s - clearing out the git cache data 96s - 96s -Test the actual order of operations -- this uses a single thread, 96s -which means that the packing happens synchronously in the main thread, 96s -giving us a reliable output order. 96s - 96s -In addition, the transaction size is set up such that we happen to do 96s -nothing in the final, synchronous packing that happens on every pull. 96s -Lots of other tests have a map save frequency higher than the total 96s -amount of commits pulled, but let's just trigger that other odd 96s -occurence here. 96s - 96s - $ hg gexport --debug \ 96s - > --config hggit.mapsavefrequency=10 --config hggit.threads=1 | \ 96s - > sed 's/^converting revision.*/./' 96s - finding unexported changesets 96s - exporting 100 changesets 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 30 loose objects... 96s - packed 30 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 25 loose objects... 96s - packed 25 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 25 loose objects... 96s - packed 25 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 24 loose objects... 96s - packed 24 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 24 loose objects... 96s - packed 24 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 24 loose objects... 96s - packed 24 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 24 loose objects... 96s - packed 24 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 23 loose objects... 96s - packed 23 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 22 loose objects... 96s - packed 22 loose objects! 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - . 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - packing 21 loose objects... 96s - packed 21 loose objects! 96s - packing 0 loose objects... 96s - packed 0 loose objects! 96s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 96s - $ find .hg/git/objects -type f | grep -Fv .idx | sort 96s - .hg/git/objects/pack/pack-33903607b479000b976a29a349fe0f4dffb0aaac.pack 96s - .hg/git/objects/pack/pack-40d9440e392d9eab62fa38a2ed66cc763d77aca3.pack 96s - .hg/git/objects/pack/pack-4ab2dac268f94e407788d52d6ba087b626c41651.pack 96s - .hg/git/objects/pack/pack-543e3b37bd36218a4dc6611a96d7c218afb78429.pack 96s - .hg/git/objects/pack/pack-5fc80292253ee10d1b86b5c4d9c51b29d2b4ba47.pack 96s - .hg/git/objects/pack/pack-9c636f5f16302fc5fadf0cc4ed42aeb67fc51f6a.pack 96s - .hg/git/objects/pack/pack-ae74b1f0197dfb45cfb13889453860a40103969a.pack 96s - .hg/git/objects/pack/pack-b432e2f477cb765fc0aeaa850d56e04b10392e6c.pack 96s - .hg/git/objects/pack/pack-cf7023660ce10ede2896d1be117f6ba93a261ff9.pack 96s - .hg/git/objects/pack/pack-e601b2af6a91a9cf6817d71f4eb660d2218d4094.pack 96s 96s ERROR: test-gc.t output changed 97s ! 97s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-public.t 97s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-public.t#publish-defaults.err 97s @@ -25,148 +25,100 @@ 97s cloning with hggit.usephases publishes cloned HEAD 97s $ hg --config hggit.usephases=True clone -U gitrepo hgrepo 97s importing 1 git commits 97s - new changesets ff7a2f2d8d70 97s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 97s + ** which supports versions 6.9 of Mercurial. 97s + ** Please disable "hggit" and try your action again. 97s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 97s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 97s + ** Mercurial Distributed SCM (version 7.0.1) 97s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 97s + Traceback (most recent call last): 97s + File "/usr/bin/hg", line 51, in 97s + dispatch.run() 97s + ~~~~~~~~~~~~^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 97s + status = dispatch(req) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 97s + status = _rundispatch(req) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 97s + ret = _runcatch(req) or 0 97s + ~~~~~~~~~^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 97s + return _callcatch(ui, _runcatchfunc) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 97s + return scmutil.callcatch(ui, func) 97s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 97s + return func() 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 97s + return _dispatch(req) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 97s + return runcommand( 97s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 97s + ) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 97s + ret = _runcommand(ui, options, cmd, d) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 97s + return cmdfunc() 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 97s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 97s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 97s + return func(*args, **kwargs) 97s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 97s + r = hg.clone( 97s + ui, 97s + ...<11 lines>... 97s + depth=opts.get('depth') or None, 97s + ) 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 97s + srcpeer, destpeer = orig(*args, **opts) 97s + ~~~~^^^^^^^^^^^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 97s + exchange.pull( 97s + ~~~~~~~~~~~~~^ 97s + local, 97s + ^^^^^^ 97s + ...<5 lines>... 97s + depth=depth, 97s + ^^^^^^^^^^^^ 97s + ) 97s + ^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 97s + return f(*args, **kwargs) 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 97s + pullop.cgresult = repo.githandler.fetch(remote, heads) 97s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 97s + imported = self.import_git_objects( 97s + b'pull', 97s + ...<2 lines>... 97s + heads=heads, 97s + ) 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 97s + self.import_git_commit( 97s + ~~~~~~~~~~~~~~~~~~~~~~^ 97s + command, 97s + ^^^^^^^^ 97s + self.git[commit.sha], 97s + ^^^^^^^^^^^^^^^^^^^^^ 97s + commit.phase, 97s + ^^^^^^^^^^^^^ 97s + ) 97s + ^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 97s + files, gitlinks, git_renames = self.get_files_changed( 97s + ~~~~~~~~~~~~~~~~~~~~~~^ 97s + commit, detect_renames 97s + ^^^^^^^^^^^^^^^^^^^^^^ 97s + ) 97s + ^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 97s + oldfile, oldmode, oldsha = change.old 97s + ^^^^^^^^^^^^^^^^^^^^^^^^ 97s + TypeError: cannot unpack non-iterable NoneType object 97s + [1] 97s 97s $ cd hgrepo 97s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 97s $ hg phase -r master 97s - 0: public 97s - $ cd .. 97s - 97s -pulled changesets are public 97s - $ cd gitrepo 97s - $ git checkout -q master 97s - $ echo beta > beta 97s - $ git add beta 97s - $ fn_git_commit -m 'add beta' 97s - $ git checkout -b not-master 97s - Switched to a new branch 'not-master' 97s - $ echo gamma > gamma 97s - $ git add gamma 97s - $ fn_git_commit -m 'add gamma' 97s - $ git tag thetag 97s - $ echo delta > delta 97s - $ git add delta 97s - $ fn_git_commit -m 'add delta' 97s - $ git checkout master 97s - Switched to branch 'master' 97s - $ cd .. 97s - 97s - $ cd hgrepo 97s - $ cat >>$HGRCPATH < [paths] 97s - > other = $TESTTMP/gitrepo/.git 97s - > [hggit] 97s - > usephases = True 97s - > EOF 97s - 97s - $ hg phase -fd 'all()' 97s - 97s -we can restrict publishing to the remote HEAD and that tag, which 97s -happens to be the same thing here 97s - 97s -#if publish-specific 97s - $ cat >>$HGRCPATH < [git] 97s - > public = default/master, thetag 97s - > EOF 97s -#endif 97s - 97s -pulling publishes the branch 97s - 97s - $ hg phase -r master 97s - 0: draft 97s -#if publish-defaults 97s - $ hg pull -r master other 97s - pulling from $TESTTMP/gitrepo/.git 97s - importing 1 git commits 97s - updating bookmark master 97s - new changesets 7fe02317c63d 97s - 1 local changesets published 97s - (run 'hg update' to get a working copy) 97s -#else 97s - $ hg pull -r master other 97s - pulling from $TESTTMP/gitrepo/.git 97s - importing 1 git commits 97s - updating bookmark master 97s - new changesets 7fe02317c63d (1 drafts) 97s - (run 'hg update' to get a working copy) 97s -#endif 97s - $ hg phase -r master 97s - 1: draft (publish-specific !) 97s - 1: public (publish-defaults !) 97s -#if publish-defaults 97s - $ hg phase -fd master 97s - $ hg pull 97s - pulling from $TESTTMP/gitrepo 97s - importing 2 git commits 97s - adding bookmark not-master 97s - new changesets ca33a262eb46:03769a650ded (1 drafts) 97s - 1 local changesets published 97s - (run 'hg update' to get a working copy) 97s -#else 97s - $ hg pull 97s - pulling from $TESTTMP/gitrepo 97s - importing 2 git commits 97s - adding bookmark not-master 97s - new changesets ca33a262eb46:03769a650ded (1 drafts) 97s - 2 local changesets published 97s - (run 'hg update' to get a working copy) 97s -#endif 97s - $ hg phase -r master -r not-master -r thetag 97s - 1: public 97s - 3: draft 97s - 2: public 97s - 97s -public bookmark not pushed is not published after pull 97s - 97s - $ hg update 0 97s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 97s - $ echo delta > delta 97s - $ hg bookmark not-pushed 97s - $ hg add delta 97s - $ hg commit -m 'add delta' 97s - created new head 97s - $ hg phase -r 'all()' > $TESTTMP/before 97s - $ hg pull --config git.public=master,not-pushed 97s - pulling from $TESTTMP/gitrepo 97s - no changes found 97s - $ hg phase -r 'all()' > $TESTTMP/after 97s - $ cmp -s $TESTTMP/before $TESTTMP/after 97s - $ hg phase -r not-pushed 97s - 4: draft 97s - $ rm $TESTTMP/before $TESTTMP/after 97s - 97s -pushing public bookmark publishes local changesets, but only those 97s -actually pushed 97s - 97s - $ hg update master 97s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 97s - (activating bookmark master) 97s - $ echo epsilon > epsilon 97s - $ hg add epsilon 97s - $ hg commit -m 'add epsilon' 97s - created new head 97s - $ hg phase -r 'all() - master' > $TESTTMP/before 97s - $ hg push -B not-pushed 97s - pushing to $TESTTMP/gitrepo 97s - searching for changes 97s - adding objects 97s - remote: found 0 deltas to reuse 97s - added 1 commits with 1 trees and 1 blobs 97s - adding reference refs/heads/not-pushed 97s - $ hg phase -r 'all() - master' > $TESTTMP/after 97s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 97s - $ hg phase -r not-pushed -r master 97s - 4: draft 97s - 5: draft 97s - $ hg push -B master 97s - pushing to $TESTTMP/gitrepo 97s - searching for changes 97s - adding objects 97s - remote: found 0 deltas to reuse 97s - added 1 commits with 1 trees and 1 blobs 97s - updating reference refs/heads/master 97s - $ hg phase -r 'all() - master' > $TESTTMP/after 97s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 97s - $ hg phase -r master 97s - 5: public 97s 97s ERROR: test-phases-public.t#publish-defaults output changed 97s ! 97s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-public.t 97s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-public.t#publish-specific.err 97s @@ -25,148 +25,100 @@ 97s cloning with hggit.usephases publishes cloned HEAD 97s $ hg --config hggit.usephases=True clone -U gitrepo hgrepo 97s importing 1 git commits 97s - new changesets ff7a2f2d8d70 97s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 97s + ** which supports versions 6.9 of Mercurial. 97s + ** Please disable "hggit" and try your action again. 97s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 97s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 97s + ** Mercurial Distributed SCM (version 7.0.1) 97s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 97s + Traceback (most recent call last): 97s + File "/usr/bin/hg", line 51, in 97s + dispatch.run() 97s + ~~~~~~~~~~~~^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 97s + status = dispatch(req) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 97s + status = _rundispatch(req) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 97s + ret = _runcatch(req) or 0 97s + ~~~~~~~~~^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 97s + return _callcatch(ui, _runcatchfunc) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 97s + return scmutil.callcatch(ui, func) 97s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 97s + return func() 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 97s + return _dispatch(req) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 97s + return runcommand( 97s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 97s + ) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 97s + ret = _runcommand(ui, options, cmd, d) 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 97s + return cmdfunc() 97s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 97s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 97s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 97s + return func(*args, **kwargs) 97s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 97s + r = hg.clone( 97s + ui, 97s + ...<11 lines>... 97s + depth=opts.get('depth') or None, 97s + ) 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 97s + srcpeer, destpeer = orig(*args, **opts) 97s + ~~~~^^^^^^^^^^^^^^^ 97s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 97s + exchange.pull( 97s + ~~~~~~~~~~~~~^ 97s + local, 97s + ^^^^^^ 97s + ...<5 lines>... 97s + depth=depth, 97s + ^^^^^^^^^^^^ 97s + ) 97s + ^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 97s + return f(*args, **kwargs) 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 97s + pullop.cgresult = repo.githandler.fetch(remote, heads) 97s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 97s + imported = self.import_git_objects( 97s + b'pull', 97s + ...<2 lines>... 97s + heads=heads, 97s + ) 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 97s + self.import_git_commit( 97s + ~~~~~~~~~~~~~~~~~~~~~~^ 97s + command, 97s + ^^^^^^^^ 97s + self.git[commit.sha], 97s + ^^^^^^^^^^^^^^^^^^^^^ 97s + commit.phase, 97s + ^^^^^^^^^^^^^ 97s + ) 97s + ^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 97s + files, gitlinks, git_renames = self.get_files_changed( 97s + ~~~~~~~~~~~~~~~~~~~~~~^ 97s + commit, detect_renames 97s + ^^^^^^^^^^^^^^^^^^^^^^ 97s + ) 97s + ^ 97s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 97s + oldfile, oldmode, oldsha = change.old 97s + ^^^^^^^^^^^^^^^^^^^^^^^^ 97s + TypeError: cannot unpack non-iterable NoneType object 97s + [1] 97s 97s $ cd hgrepo 97s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 97s $ hg phase -r master 97s - 0: public 97s - $ cd .. 97s - 97s -pulled changesets are public 97s - $ cd gitrepo 97s - $ git checkout -q master 97s - $ echo beta > beta 97s - $ git add beta 97s - $ fn_git_commit -m 'add beta' 97s - $ git checkout -b not-master 97s - Switched to a new branch 'not-master' 97s - $ echo gamma > gamma 97s - $ git add gamma 97s - $ fn_git_commit -m 'add gamma' 97s - $ git tag thetag 97s - $ echo delta > delta 97s - $ git add delta 97s - $ fn_git_commit -m 'add delta' 97s - $ git checkout master 97s - Switched to branch 'master' 97s - $ cd .. 97s - 97s - $ cd hgrepo 97s - $ cat >>$HGRCPATH < [paths] 97s - > other = $TESTTMP/gitrepo/.git 97s - > [hggit] 97s - > usephases = True 97s - > EOF 97s - 97s - $ hg phase -fd 'all()' 97s - 97s -we can restrict publishing to the remote HEAD and that tag, which 97s -happens to be the same thing here 97s - 97s -#if publish-specific 97s - $ cat >>$HGRCPATH < [git] 97s - > public = default/master, thetag 97s - > EOF 97s -#endif 97s - 97s -pulling publishes the branch 97s - 97s - $ hg phase -r master 97s - 0: draft 97s -#if publish-defaults 97s - $ hg pull -r master other 97s - pulling from $TESTTMP/gitrepo/.git 97s - importing 1 git commits 97s - updating bookmark master 97s - new changesets 7fe02317c63d 97s - 1 local changesets published 97s - (run 'hg update' to get a working copy) 97s -#else 97s - $ hg pull -r master other 97s - pulling from $TESTTMP/gitrepo/.git 97s - importing 1 git commits 97s - updating bookmark master 97s - new changesets 7fe02317c63d (1 drafts) 97s - (run 'hg update' to get a working copy) 97s -#endif 97s - $ hg phase -r master 97s - 1: draft (publish-specific !) 97s - 1: public (publish-defaults !) 97s -#if publish-defaults 97s - $ hg phase -fd master 97s - $ hg pull 97s - pulling from $TESTTMP/gitrepo 97s - importing 2 git commits 97s - adding bookmark not-master 97s - new changesets ca33a262eb46:03769a650ded (1 drafts) 97s - 1 local changesets published 97s - (run 'hg update' to get a working copy) 97s -#else 97s - $ hg pull 97s - pulling from $TESTTMP/gitrepo 97s - importing 2 git commits 97s - adding bookmark not-master 97s - new changesets ca33a262eb46:03769a650ded (1 drafts) 97s - 2 local changesets published 97s - (run 'hg update' to get a working copy) 97s -#endif 97s - $ hg phase -r master -r not-master -r thetag 97s - 1: public 97s - 3: draft 97s - 2: public 97s - 97s -public bookmark not pushed is not published after pull 97s - 97s - $ hg update 0 97s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 97s - $ echo delta > delta 97s - $ hg bookmark not-pushed 97s - $ hg add delta 97s - $ hg commit -m 'add delta' 97s - created new head 97s - $ hg phase -r 'all()' > $TESTTMP/before 97s - $ hg pull --config git.public=master,not-pushed 97s - pulling from $TESTTMP/gitrepo 97s - no changes found 97s - $ hg phase -r 'all()' > $TESTTMP/after 97s - $ cmp -s $TESTTMP/before $TESTTMP/after 97s - $ hg phase -r not-pushed 97s - 4: draft 97s - $ rm $TESTTMP/before $TESTTMP/after 97s - 97s -pushing public bookmark publishes local changesets, but only those 97s -actually pushed 97s - 97s - $ hg update master 97s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 97s - (activating bookmark master) 97s - $ echo epsilon > epsilon 97s - $ hg add epsilon 97s - $ hg commit -m 'add epsilon' 97s - created new head 97s - $ hg phase -r 'all() - master' > $TESTTMP/before 97s - $ hg push -B not-pushed 97s - pushing to $TESTTMP/gitrepo 97s - searching for changes 97s - adding objects 97s - remote: found 0 deltas to reuse 97s - added 1 commits with 1 trees and 1 blobs 97s - adding reference refs/heads/not-pushed 97s - $ hg phase -r 'all() - master' > $TESTTMP/after 97s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 97s - $ hg phase -r not-pushed -r master 97s - 4: draft 97s - 5: draft 97s - $ hg push -B master 97s - pushing to $TESTTMP/gitrepo 97s - searching for changes 97s - adding objects 97s - remote: found 0 deltas to reuse 97s - added 1 commits with 1 trees and 1 blobs 97s - updating reference refs/heads/master 97s - $ hg phase -r 'all() - master' > $TESTTMP/after 97s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 97s - $ hg phase -r master 97s - 5: public 97s 97s ERROR: test-phases-public.t#publish-specific output changed 100s !.s 100s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-workflow.t 100s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-workflow.t.err 100s @@ -39,11 +39,68 @@ 100s $ hg debuggitdir 100s $TESTTMP/gitrepo/.git 100s $ hg gexport 100s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 100s + ** which supports versions 6.9 of Mercurial. 100s + ** Please disable "hggit" and try your action again. 100s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 100s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 100s + ** Mercurial Distributed SCM (version 7.0.1) 100s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 100s + Traceback (most recent call last): 100s + File "/usr/bin/hg", line 51, in 100s + dispatch.run() 100s + ~~~~~~~~~~~~^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 100s + status = dispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 100s + status = _rundispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 100s + ret = _runcatch(req) or 0 100s + ~~~~~~~~~^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 100s + return _callcatch(ui, _runcatchfunc) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 100s + return scmutil.callcatch(ui, func) 100s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 100s + return func() 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 100s + return _dispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 100s + return runcommand( 100s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 100s + ) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 100s + ret = _runcommand(ui, options, cmd, d) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 100s + return cmdfunc() 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 100s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 100s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 100s + return func(*args, **kwargs) 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 100s + repo.githandler.export_commits() 100s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 100s + self.export_git_objects() 100s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 100s + packer.pack(synchronous=True) 100s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 100s + _process_batch(self.ui, self.object_store, todo) 100s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 100s + object_store._remove_loose_object(obj.id) 100s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 100s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 100s + [1] 100s 100s do some work 100s $ git config core.bare false 100s $ git checkout master 2>&1 | sed s/\'/\"/g 100s - Already on "master" 100s + error: pathspec "master" did not match any file(s) known to git 100s $ echo beta > beta 100s $ git add beta 100s $ fn_git_commit -m 'add beta' 100s @@ -51,25 +108,79 @@ 100s get things back to hg 100s $ hg gimport 100s importing 1 git commits 100s - updating bookmark master 100s - new changesets 9f124f3c1fc2 (1 drafts) 100s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 100s + ** which supports versions 6.9 of Mercurial. 100s + ** Please disable "hggit" and try your action again. 100s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 100s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 100s + ** Mercurial Distributed SCM (version 7.0.1) 100s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 100s + Traceback (most recent call last): 100s + File "/usr/bin/hg", line 51, in 100s + dispatch.run() 100s + ~~~~~~~~~~~~^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 100s + status = dispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 100s + status = _rundispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 100s + ret = _runcatch(req) or 0 100s + ~~~~~~~~~^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 100s + return _callcatch(ui, _runcatchfunc) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 100s + return scmutil.callcatch(ui, func) 100s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 100s + return func() 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 100s + return _dispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 100s + return runcommand( 100s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 100s + ) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 100s + ret = _runcommand(ui, options, cmd, d) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 100s + return cmdfunc() 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 100s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 100s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 100s + return func(*args, **kwargs) 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 46, in gimport 100s + repo.githandler.import_commits(remote_name) 100s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 388, in import_commits 100s + self.import_git_objects(b'gimport', remote_names, refs) 100s + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 100s + self.import_git_commit( 100s + ~~~~~~~~~~~~~~~~~~~~~~^ 100s + command, 100s + ^^^^^^^^ 100s + self.git[commit.sha], 100s + ^^^^^^^^^^^^^^^^^^^^^ 100s + commit.phase, 100s + ^^^^^^^^^^^^^ 100s + ) 100s + ^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 100s + files, gitlinks, git_renames = self.get_files_changed( 100s + ~~~~~~~~~~~~~~~~~~~~~~^ 100s + commit, detect_renames 100s + ^^^^^^^^^^^^^^^^^^^^^^ 100s + ) 100s + ^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 100s + oldfile, oldmode, oldsha = change.old 100s + ^^^^^^^^^^^^^^^^^^^^^^^^ 100s + TypeError: cannot unpack non-iterable NoneType object 100s + [1] 100s $ hg log --graph --debug | grep -v phase: 100s - o changeset: 1:9f124f3c1fc29a14f5eb027c24811b0ac9d5ff10 100s - | bookmark: master 100s - | tag: tip 100s - | parent: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2 100s - | parent: -1:0000000000000000000000000000000000000000 100s - | manifest: 1:f0bd6fbafbaebe4bb59c35108428f6fce152431d 100s - | user: test 100s - | date: Mon Jan 01 00:00:11 2007 +0000 100s - | files+: beta 100s - | extra: branch=default 100s - | extra: hg-git-rename-source=git 100s - | description: 100s - | add beta 100s - | 100s - | 100s o changeset: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2 100s + bookmark: master 100s + tag: tip 100s parent: -1:0000000000000000000000000000000000000000 100s parent: -1:0000000000000000000000000000000000000000 100s manifest: 0:8b8a0e87dfd7a0706c0524afa8ba67e20544cbf0 100s @@ -83,7 +194,7 @@ 100s 100s gimport should have updated the bookmarks as well 100s $ hg bookmarks 100s - master 1:9f124f3c1fc2 100s + master 0:0221c246a567 100s 100s gimport support for git.mindate 100s $ cat >> .hg/hgrc << EOF 100s @@ -98,14 +209,9 @@ 100s $ hg gimport 100s no changes found 100s $ hg log --graph 100s - o changeset: 1:9f124f3c1fc2 100s - | bookmark: master 100s - | tag: tip 100s - | user: test 100s - | date: Mon Jan 01 00:00:11 2007 +0000 100s - | summary: add beta 100s - | 100s o changeset: 0:0221c246a567 100s + bookmark: master 100s + tag: tip 100s user: test 100s date: Mon Jan 01 00:00:10 2007 +0000 100s summary: add alpha 100s @@ -117,28 +223,80 @@ 100s > GIT_COMMITTER_DATE="2014-01-02 00:00:00 +0000" \ 100s > git commit -m newcommit > /dev/null || echo "git commit error" 100s $ hg gimport 100s - importing 2 git commits 100s - updating bookmark master 100s - new changesets befdecd14df5:3d10b7289d79 (2 drafts) 100s + importing 3 git commits 100s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 100s + ** which supports versions 6.9 of Mercurial. 100s + ** Please disable "hggit" and try your action again. 100s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 100s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 100s + ** Mercurial Distributed SCM (version 7.0.1) 100s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 100s + Traceback (most recent call last): 100s + File "/usr/bin/hg", line 51, in 100s + dispatch.run() 100s + ~~~~~~~~~~~~^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 100s + status = dispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 100s + status = _rundispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 100s + ret = _runcatch(req) or 0 100s + ~~~~~~~~~^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 100s + return _callcatch(ui, _runcatchfunc) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 100s + return scmutil.callcatch(ui, func) 100s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 100s + return func() 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 100s + return _dispatch(req) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 100s + return runcommand( 100s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 100s + ) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 100s + ret = _runcommand(ui, options, cmd, d) 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 100s + return cmdfunc() 100s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 100s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 100s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 100s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 100s + return func(*args, **kwargs) 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 46, in gimport 100s + repo.githandler.import_commits(remote_name) 100s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 388, in import_commits 100s + self.import_git_objects(b'gimport', remote_names, refs) 100s + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 100s + self.import_git_commit( 100s + ~~~~~~~~~~~~~~~~~~~~~~^ 100s + command, 100s + ^^^^^^^^ 100s + self.git[commit.sha], 100s + ^^^^^^^^^^^^^^^^^^^^^ 100s + commit.phase, 100s + ^^^^^^^^^^^^^ 100s + ) 100s + ^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 100s + files, gitlinks, git_renames = self.get_files_changed( 100s + ~~~~~~~~~~~~~~~~~~~~~~^ 100s + commit, detect_renames 100s + ^^^^^^^^^^^^^^^^^^^^^^ 100s + ) 100s + ^ 100s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 100s + oldfile, oldmode, oldsha = change.old 100s + ^^^^^^^^^^^^^^^^^^^^^^^^ 100s + TypeError: cannot unpack non-iterable NoneType object 100s + [1] 100s $ hg log --graph 100s - o changeset: 3:3d10b7289d79 100s - | bookmark: master 100s - | tag: tip 100s - | user: test 100s - | date: Wed Jan 01 00:00:00 2014 +0000 100s - | summary: newcommit 100s - | 100s - o changeset: 2:befdecd14df5 100s - | user: test 100s - | date: Sat Mar 01 00:00:00 2014 +0000 100s - | summary: oldcommit 100s - | 100s - o changeset: 1:9f124f3c1fc2 100s - | user: test 100s - | date: Mon Jan 01 00:00:11 2007 +0000 100s - | summary: add beta 100s - | 100s o changeset: 0:0221c246a567 100s + bookmark: master 100s + tag: tip 100s user: test 100s date: Mon Jan 01 00:00:10 2007 +0000 100s summary: add alpha 100s 100s ERROR: test-git-workflow.t output changed 101s ! 101s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-invalid-refs.t 101s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-invalid-refs.t.err 101s @@ -13,114 +13,100 @@ 101s $ cd .. 101s $ hg clone -U gitrepo hgrepo 101s importing 1 git commits 101s - new changesets ff7a2f2d8d70 (1 drafts) 101s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 101s + ** which supports versions 6.9 of Mercurial. 101s + ** Please disable "hggit" and try your action again. 101s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 101s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 101s + ** Mercurial Distributed SCM (version 7.0.1) 101s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 101s + Traceback (most recent call last): 101s + File "/usr/bin/hg", line 51, in 101s + dispatch.run() 101s + ~~~~~~~~~~~~^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 101s + status = dispatch(req) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 101s + status = _rundispatch(req) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 101s + ret = _runcatch(req) or 0 101s + ~~~~~~~~~^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 101s + return _callcatch(ui, _runcatchfunc) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 101s + return scmutil.callcatch(ui, func) 101s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 101s + return func() 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 101s + return _dispatch(req) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 101s + return runcommand( 101s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 101s + ) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 101s + ret = _runcommand(ui, options, cmd, d) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 101s + return cmdfunc() 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 101s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 101s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 101s + return func(*args, **kwargs) 101s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 101s + r = hg.clone( 101s + ui, 101s + ...<11 lines>... 101s + depth=opts.get('depth') or None, 101s + ) 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 101s + srcpeer, destpeer = orig(*args, **opts) 101s + ~~~~^^^^^^^^^^^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 101s + exchange.pull( 101s + ~~~~~~~~~~~~~^ 101s + local, 101s + ^^^^^^ 101s + ...<5 lines>... 101s + depth=depth, 101s + ^^^^^^^^^^^^ 101s + ) 101s + ^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 101s + return f(*args, **kwargs) 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 101s + pullop.cgresult = repo.githandler.fetch(remote, heads) 101s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 101s + imported = self.import_git_objects( 101s + b'pull', 101s + ...<2 lines>... 101s + heads=heads, 101s + ) 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 101s + self.import_git_commit( 101s + ~~~~~~~~~~~~~~~~~~~~~~^ 101s + command, 101s + ^^^^^^^^ 101s + self.git[commit.sha], 101s + ^^^^^^^^^^^^^^^^^^^^^ 101s + commit.phase, 101s + ^^^^^^^^^^^^^ 101s + ) 101s + ^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 101s + files, gitlinks, git_renames = self.get_files_changed( 101s + ~~~~~~~~~~~~~~~~~~~~~~^ 101s + commit, detect_renames 101s + ^^^^^^^^^^^^^^^^^^^^^^ 101s + ) 101s + ^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 101s + oldfile, oldmode, oldsha = change.old 101s + ^^^^^^^^^^^^^^^^^^^^^^^^ 101s + TypeError: cannot unpack non-iterable NoneType object 101s + [1] 101s 101s $ cd hgrepo 101s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 101s $ hg up master 101s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 101s - (activating bookmark master) 101s - $ fn_hg_tag alph#a 101s - $ fn_hg_tag bet*a 101s - $ fn_hg_tag 'gamm a' 101s - $ hg book -r . delt#a 101s - $ hg book -r . epsil*on 101s - 101s - $ hg gexport 101s - warning: not exporting tag 'bet*a' due to invalid name 101s - warning: not exporting bookmark 'epsil*on' due to invalid name 101s - 101s - $ hg push 101s - pushing to $TESTTMP/gitrepo 101s - warning: not exporting tag 'bet*a' due to invalid name 101s - warning: not exporting bookmark 'epsil*on' due to invalid name 101s - searching for changes 101s - adding objects 101s - remote: found 0 deltas to reuse 101s - added 3 commits with 3 trees and 3 blobs 101s - adding reference refs/heads/delt#a 101s - updating reference refs/heads/master 101s - adding reference refs/tags/alph#a 101s - adding reference refs/tags/gamm_a 101s - 101s - $ hg log --graph 101s - @ changeset: 3:0950ab44ea23 101s - | bookmark: delt#a 101s - | bookmark: epsil*on 101s - | bookmark: master 101s - | tag: default/delt#a 101s - | tag: default/master 101s - | tag: tip 101s - | user: test 101s - | date: Mon Jan 01 00:00:13 2007 +0000 101s - | summary: Added tag gamm a for changeset 0b27ab2b3df6 101s - | 101s - o changeset: 2:0b27ab2b3df6 101s - | tag: gamm a 101s - | user: test 101s - | date: Mon Jan 01 00:00:12 2007 +0000 101s - | summary: Added tag bet*a for changeset 491ceeb1b0f1 101s - | 101s - o changeset: 1:491ceeb1b0f1 101s - | tag: bet*a 101s - | user: test 101s - | date: Mon Jan 01 00:00:11 2007 +0000 101s - | summary: Added tag alph#a for changeset ff7a2f2d8d70 101s - | 101s - o changeset: 0:ff7a2f2d8d70 101s - bookmark: not-master 101s - tag: alph#a 101s - tag: default/not-master 101s - user: test 101s - date: Mon Jan 01 00:00:10 2007 +0000 101s - summary: add alpha 101s - 101s - 101s - $ cd .. 101s - $ cd gitrepo 101s -git should have only the valid tag alph#a but have full commit log including the missing invalid bet*a tag commit 101s - $ git tag -l 101s - alph#a 101s - gamm_a 101s - 101s - $ cd .. 101s - $ hg clone -U gitrepo hgrepo2 101s - importing 4 git commits 101s - new changesets ff7a2f2d8d70:0950ab44ea23 (4 drafts) 101s - $ hg -R hgrepo2 log --graph 101s - o changeset: 3:0950ab44ea23 101s - | bookmark: delt#a 101s - | bookmark: master 101s - | tag: default/delt#a 101s - | tag: default/master 101s - | tag: tip 101s - | user: test 101s - | date: Mon Jan 01 00:00:13 2007 +0000 101s - | summary: Added tag gamm a for changeset 0b27ab2b3df6 101s - | 101s - o changeset: 2:0b27ab2b3df6 101s - | tag: gamm a 101s - | tag: gamm_a 101s - | user: test 101s - | date: Mon Jan 01 00:00:12 2007 +0000 101s - | summary: Added tag bet*a for changeset 491ceeb1b0f1 101s - | 101s - o changeset: 1:491ceeb1b0f1 101s - | tag: bet*a 101s - | user: test 101s - | date: Mon Jan 01 00:00:11 2007 +0000 101s - | summary: Added tag alph#a for changeset ff7a2f2d8d70 101s - | 101s - o changeset: 0:ff7a2f2d8d70 101s - bookmark: not-master 101s - tag: alph#a 101s - tag: default/not-master 101s - user: test 101s - date: Mon Jan 01 00:00:10 2007 +0000 101s - summary: add alpha 101s - 101s - 101s -the tag should be in .hgtags 101s - $ hg cat -r master hgrepo2/.hgtags 101s - ff7a2f2d8d7099694ae1e8b03838d40575bebb63 alph#a 101s - 491ceeb1b0f10d65d956dfcdd3470ac2bc2c96a8 bet*a 101s - 0b27ab2b3df69c6f7defd7040b93e539136db5be gamm a 101s 101s ERROR: test-invalid-refs.t output changed 101s ! 101s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-serve-hg.t 101s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-serve-hg.t#with-hggit.err 101s @@ -32,10 +32,101 @@ 101s 101s $ hg clone gitrepo hgrepo 101s importing 2 git commits 101s - new changesets f488b65fa424:c61c38c3d614 (2 drafts) 101s - updating to bookmark master 101s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 101s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 101s + ** which supports versions 6.9 of Mercurial. 101s + ** Please disable "hggit" and try your action again. 101s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 101s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 101s + ** Mercurial Distributed SCM (version 7.0.1) 101s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 101s + Traceback (most recent call last): 101s + File "/usr/bin/hg", line 51, in 101s + dispatch.run() 101s + ~~~~~~~~~~~~^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 101s + status = dispatch(req) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 101s + status = _rundispatch(req) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 101s + ret = _runcatch(req) or 0 101s + ~~~~~~~~~^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 101s + return _callcatch(ui, _runcatchfunc) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 101s + return scmutil.callcatch(ui, func) 101s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 101s + return func() 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 101s + return _dispatch(req) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 101s + return runcommand( 101s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 101s + ) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 101s + ret = _runcommand(ui, options, cmd, d) 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 101s + return cmdfunc() 101s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 101s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 101s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 101s + return func(*args, **kwargs) 101s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 101s + r = hg.clone( 101s + ui, 101s + ...<11 lines>... 101s + depth=opts.get('depth') or None, 101s + ) 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 101s + srcpeer, destpeer = orig(*args, **opts) 101s + ~~~~^^^^^^^^^^^^^^^ 101s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 101s + exchange.pull( 101s + ~~~~~~~~~~~~~^ 101s + local, 101s + ^^^^^^ 101s + ...<5 lines>... 101s + depth=depth, 101s + ^^^^^^^^^^^^ 101s + ) 101s + ^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 101s + return f(*args, **kwargs) 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 101s + pullop.cgresult = repo.githandler.fetch(remote, heads) 101s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 101s + imported = self.import_git_objects( 101s + b'pull', 101s + ...<2 lines>... 101s + heads=heads, 101s + ) 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 101s + self.import_git_commit( 101s + ~~~~~~~~~~~~~~~~~~~~~~^ 101s + command, 101s + ^^^^^^^^ 101s + self.git[commit.sha], 101s + ^^^^^^^^^^^^^^^^^^^^^ 101s + commit.phase, 101s + ^^^^^^^^^^^^^ 101s + ) 101s + ^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 101s + files, gitlinks, git_renames = self.get_files_changed( 101s + ~~~~~~~~~~~~~~~~~~~~~~^ 101s + commit, detect_renames 101s + ^^^^^^^^^^^^^^^^^^^^^^ 101s + ) 101s + ^ 101s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 101s + oldfile, oldmode, oldsha = change.old 101s + ^^^^^^^^^^^^^^^^^^^^^^^^ 101s + TypeError: cannot unpack non-iterable NoneType object 101s + [1] 101s $ cd hgrepo 101s + $TESTTMP.sh: 41: cd: can't cd to hgrepo 101s $ cat >> .hg/hgrc < [push] 101s > pushvars.server = true 101s @@ -45,81 +136,3 @@ 101s > [hooks] 101s > pretxnchangegroup = env | grep HG_USERVAR_ || true 101s > EOF 101s - $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log 101s - $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid 101s - 101s -Test server address cannot be reused 101s - 101s -#if windows 101s - $ hg serve -p $HGPORT1 2>&1 101s - abort: cannot start server at '*:$HGPORT1': * (glob) 101s - [255] 101s -#else 101s - $ hg serve -p $HGPORT1 2>&1 101s - abort: cannot start server at '*:$HGPORT1': Address* in use (glob) 101s - [255] 101s -#endif 101s - $ cd .. 101s - $ cat hg1.pid hg2.pid >> $DAEMON_PIDS 101s - 101s -Make sure that clone regular mercurial repos over http doesn't break, 101s -and that we can transfer the hg-git metadata 101s - 101s - $ hg clone http://localhost:$HGPORT/ copy 2>&1 101s - requesting all changes 101s - adding changesets 101s - adding manifests 101s - adding file changes 101s - added 2 changesets with 4 changes to 4 files 101s - new changesets f488b65fa424:c61c38c3d614 (?) 101s - updating to branch default 101s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 101s - 101s -And it shouldn't create a Git repository needlessly: 101s - $ test -e copy/git 101s - [1] 101s - $ cd copy 101s - 101s -#if without-hggit 101s - $ hg tags 101s - tip 1:c61c38c3d614 101s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 101s - 1:c61c38c3d614 | master | | 101s - 0:f488b65fa424 | | | 101s - $ hg pull -u ../gitrepo 101s - pulling from ../gitrepo 101s - importing 2 git commits 101s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 101s -#else 101s - $ hg tags 101s - tip 1:c61c38c3d614 101s - thetag 0:f488b65fa424 101s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 101s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 101s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 101s - $ hg pull -u ../gitrepo 101s - pulling from ../gitrepo 101s - warning: created new git repository at $TESTTMP/copy/.hg/git 101s - no changes found 101s -#endif 101s - 101s - $ hg tags 101s - tip 1:c61c38c3d614 101s - thetag 0:f488b65fa424 101s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 101s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 101s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 101s - 101s -Furthermore, make sure that we pass all arguments when pushing: 101s - 101s - $ echo baz > baz 101s - $ fn_hg_commit -A -m baz 101s - $ hg push --pushvars FOO=BAR 101s - pushing to http://localhost:$HGPORT/ 101s - searching for changes 101s - remote: adding changesets 101s - remote: adding manifests 101s - remote: adding file changes 101s - remote: HG_USERVAR_FOO=BAR 101s - remote: added 1 changesets with 1 changes to 1 files 101s - $ cd .. 101s 101s ERROR: test-serve-hg.t#with-hggit output changed 102s ! 102s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-serve-hg.t 102s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-serve-hg.t#without-hggit.err 102s @@ -32,10 +32,101 @@ 102s 102s $ hg clone gitrepo hgrepo 102s importing 2 git commits 102s - new changesets f488b65fa424:c61c38c3d614 (2 drafts) 102s - updating to bookmark master 102s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 102s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 102s + ** which supports versions 6.9 of Mercurial. 102s + ** Please disable "hggit" and try your action again. 102s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 102s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 102s + ** Mercurial Distributed SCM (version 7.0.1) 102s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 102s + Traceback (most recent call last): 102s + File "/usr/bin/hg", line 51, in 102s + dispatch.run() 102s + ~~~~~~~~~~~~^^ 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 102s + status = dispatch(req) 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 102s + status = _rundispatch(req) 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 102s + ret = _runcatch(req) or 0 102s + ~~~~~~~~~^^^^^ 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 102s + return _callcatch(ui, _runcatchfunc) 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 102s + return scmutil.callcatch(ui, func) 102s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 102s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 102s + return func() 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 102s + return _dispatch(req) 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 102s + return runcommand( 102s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 102s + ) 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 102s + ret = _runcommand(ui, options, cmd, d) 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 102s + return cmdfunc() 102s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 102s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 102s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 102s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 102s + return func(*args, **kwargs) 102s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 102s + r = hg.clone( 102s + ui, 102s + ...<11 lines>... 102s + depth=opts.get('depth') or None, 102s + ) 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 102s + srcpeer, destpeer = orig(*args, **opts) 102s + ~~~~^^^^^^^^^^^^^^^ 102s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 102s + exchange.pull( 102s + ~~~~~~~~~~~~~^ 102s + local, 102s + ^^^^^^ 102s + ...<5 lines>... 102s + depth=depth, 102s + ^^^^^^^^^^^^ 102s + ) 102s + ^ 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 102s + return f(*args, **kwargs) 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 102s + pullop.cgresult = repo.githandler.fetch(remote, heads) 102s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 102s + imported = self.import_git_objects( 102s + b'pull', 102s + ...<2 lines>... 102s + heads=heads, 102s + ) 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 102s + self.import_git_commit( 102s + ~~~~~~~~~~~~~~~~~~~~~~^ 102s + command, 102s + ^^^^^^^^ 102s + self.git[commit.sha], 102s + ^^^^^^^^^^^^^^^^^^^^^ 102s + commit.phase, 102s + ^^^^^^^^^^^^^ 102s + ) 102s + ^ 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 102s + files, gitlinks, git_renames = self.get_files_changed( 102s + ~~~~~~~~~~~~~~~~~~~~~~^ 102s + commit, detect_renames 102s + ^^^^^^^^^^^^^^^^^^^^^^ 102s + ) 102s + ^ 102s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 102s + oldfile, oldmode, oldsha = change.old 102s + ^^^^^^^^^^^^^^^^^^^^^^^^ 102s + TypeError: cannot unpack non-iterable NoneType object 102s + [1] 102s $ cd hgrepo 102s + $TESTTMP.sh: 36: cd: can't cd to hgrepo 102s $ cat >> .hg/hgrc < [push] 102s > pushvars.server = true 102s @@ -45,81 +136,3 @@ 102s > [hooks] 102s > pretxnchangegroup = env | grep HG_USERVAR_ || true 102s > EOF 102s - $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log 102s - $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid 102s - 102s -Test server address cannot be reused 102s - 102s -#if windows 102s - $ hg serve -p $HGPORT1 2>&1 102s - abort: cannot start server at '*:$HGPORT1': * (glob) 102s - [255] 102s -#else 102s - $ hg serve -p $HGPORT1 2>&1 102s - abort: cannot start server at '*:$HGPORT1': Address* in use (glob) 102s - [255] 102s -#endif 102s - $ cd .. 102s - $ cat hg1.pid hg2.pid >> $DAEMON_PIDS 102s - 102s -Make sure that clone regular mercurial repos over http doesn't break, 102s -and that we can transfer the hg-git metadata 102s - 102s - $ hg clone http://localhost:$HGPORT/ copy 2>&1 102s - requesting all changes 102s - adding changesets 102s - adding manifests 102s - adding file changes 102s - added 2 changesets with 4 changes to 4 files 102s - new changesets f488b65fa424:c61c38c3d614 (?) 102s - updating to branch default 102s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 102s - 102s -And it shouldn't create a Git repository needlessly: 102s - $ test -e copy/git 102s - [1] 102s - $ cd copy 102s - 102s -#if without-hggit 102s - $ hg tags 102s - tip 1:c61c38c3d614 102s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 102s - 1:c61c38c3d614 | master | | 102s - 0:f488b65fa424 | | | 102s - $ hg pull -u ../gitrepo 102s - pulling from ../gitrepo 102s - importing 2 git commits 102s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 102s -#else 102s - $ hg tags 102s - tip 1:c61c38c3d614 102s - thetag 0:f488b65fa424 102s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 102s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 102s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 102s - $ hg pull -u ../gitrepo 102s - pulling from ../gitrepo 102s - warning: created new git repository at $TESTTMP/copy/.hg/git 102s - no changes found 102s -#endif 102s - 102s - $ hg tags 102s - tip 1:c61c38c3d614 102s - thetag 0:f488b65fa424 102s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 102s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 102s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 102s - 102s -Furthermore, make sure that we pass all arguments when pushing: 102s - 102s - $ echo baz > baz 102s - $ fn_hg_commit -A -m baz 102s - $ hg push --pushvars FOO=BAR 102s - pushing to http://localhost:$HGPORT/ 102s - searching for changes 102s - remote: adding changesets 102s - remote: adding manifests 102s - remote: adding file changes 102s - remote: HG_USERVAR_FOO=BAR 102s - remote: added 1 changesets with 1 changes to 1 files 102s - $ cd .. 102s 102s ERROR: test-serve-hg.t#without-hggit output changed 105s ! 105s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-authors.t 105s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-authors.t.err 105s @@ -73,11 +73,80 @@ 105s 105s $ hg push 105s pushing to $TESTTMP/repo.git 105s - searching for changes 105s - adding objects 105s - remote: found 0 deltas to reuse 105s - added 6 commits with 6 trees and 1 blobs 105s - adding reference refs/heads/master 105s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 105s + ** which supports versions 6.9 of Mercurial. 105s + ** Please disable "hggit" and try your action again. 105s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 105s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 105s + ** Mercurial Distributed SCM (version 7.0.1) 105s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 105s + Traceback (most recent call last): 105s + File "/usr/bin/hg", line 51, in 105s + dispatch.run() 105s + ~~~~~~~~~~~~^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 105s + status = dispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 105s + status = _rundispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 105s + ret = _runcatch(req) or 0 105s + ~~~~~~~~~^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 105s + return _callcatch(ui, _runcatchfunc) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 105s + return scmutil.callcatch(ui, func) 105s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 105s + return func() 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 105s + return _dispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 105s + return runcommand( 105s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 105s + ) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 105s + ret = _runcommand(ui, options, cmd, d) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 105s + return cmdfunc() 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 105s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 105s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 105s + return func(*args, **kwargs) 105s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 105s + pushop = exchange.push( 105s + repo, 105s + ...<6 lines>... 105s + opargs=opargs, 105s + ) 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 105s + return f(*args, **kwargs) 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 105s + pushop.cgresult = repo.githandler.push( 105s + ~~~~~~~~~~~~~~~~~~~~^ 105s + remote.path, revs, bookmarks, force 105s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 105s + ) 105s + ^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 105s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 105s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 105s + all_exportable = self.export_commits() 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 105s + self.export_git_objects() 105s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 105s + packer.pack(synchronous=True) 105s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 105s + _process_batch(self.ui, self.object_store, todo) 105s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 105s + object_store._remove_loose_object(obj.id) 105s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 105s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 105s + [1] 105s 105s Check the results: 105s 105s @@ -107,28 +176,6 @@ 105s User #3 = user3@example.com 105s user4 = 105s $ git log --pretty='tformat:Commit: %H%nAuthor: %an <%ae>%nCommitter: %cn <%ce>%n---' 105s - Commit: 869e310765d5d7ad92f83bf036e12b0341922a65 105s - Author: test 105s - Committer: test 105s - --- 105s - Commit: b5c0fcb75f876b158ece64859400d36b07570ce9 105s - Author: User #5 105s - Committer: User #5 105s - --- 105s - Commit: 2833824a870810915f7a7a27c05cccad0448bfd7 105s - Author: 105s - Committer: 105s - --- 105s - Commit: fe63bf29ef0bd4af50e85b8aec8d2fbeff255845 105s - Author: user3@example.com 105s - Committer: user3@example.com 105s - --- 105s - Commit: eba936dd13172a2f17936785e3604845aed9170d 105s - Author: user2 105s - Committer: user2 105s - --- 105s - Commit: 796162e5747a7ba57f31fb828b88319caf7b1f7b 105s - Author: User no. 1 105s - Committer: User no. 1 105s - --- 105s + fatal: your current branch 'master' does not have any commits yet 105s + [128] 105s $ cd .. 105s 105s ERROR: test-push-authors.t output changed 105s ! 105s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-verify-fail.t 105s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-verify-fail.t.err 105s @@ -74,6 +74,63 @@ 105s $ hg debug-remove-hggit-state 105s clearing out the git cache data 105s $ hg gexport 105s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 105s + ** which supports versions 6.9 of Mercurial. 105s + ** Please disable "hggit" and try your action again. 105s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 105s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 105s + ** Mercurial Distributed SCM (version 7.0.1) 105s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 105s + Traceback (most recent call last): 105s + File "/usr/bin/hg", line 51, in 105s + dispatch.run() 105s + ~~~~~~~~~~~~^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 105s + status = dispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 105s + status = _rundispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 105s + ret = _runcatch(req) or 0 105s + ~~~~~~~~~^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 105s + return _callcatch(ui, _runcatchfunc) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 105s + return scmutil.callcatch(ui, func) 105s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 105s + return func() 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 105s + return _dispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 105s + return runcommand( 105s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 105s + ) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 105s + ret = _runcommand(ui, options, cmd, d) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 105s + return cmdfunc() 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 105s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 105s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 105s + return func(*args, **kwargs) 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 105s + repo.githandler.export_commits() 105s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 105s + self.export_git_objects() 105s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 105s + packer.pack(synchronous=True) 105s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 105s + _process_batch(self.ui, self.object_store, todo) 105s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 105s + object_store._remove_loose_object(obj.id) 105s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 105s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 105s + [1] 105s $ mv .hg/git/objects/pack $TESTTMP/pack-old 105s $ for packfile in $TESTTMP/pack-old/*.pack 105s > do 105s 105s ERROR: test-verify-fail.t output changed 105s ! 105s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-to-head.t 105s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-to-head.t.err 105s @@ -15,64 +15,99 @@ 105s 105s $ hg clone gitrepo hgrepo 105s importing 1 git commits 105s - new changesets ff7a2f2d8d70 (1 drafts) 105s - updating to bookmark master 105s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 105s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 105s + ** which supports versions 6.9 of Mercurial. 105s + ** Please disable "hggit" and try your action again. 105s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 105s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 105s + ** Mercurial Distributed SCM (version 7.0.1) 105s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 105s + Traceback (most recent call last): 105s + File "/usr/bin/hg", line 51, in 105s + dispatch.run() 105s + ~~~~~~~~~~~~^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 105s + status = dispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 105s + status = _rundispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 105s + ret = _runcatch(req) or 0 105s + ~~~~~~~~~^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 105s + return _callcatch(ui, _runcatchfunc) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 105s + return scmutil.callcatch(ui, func) 105s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 105s + return func() 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 105s + return _dispatch(req) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 105s + return runcommand( 105s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 105s + ) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 105s + ret = _runcommand(ui, options, cmd, d) 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 105s + return cmdfunc() 105s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 105s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 105s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 105s + return func(*args, **kwargs) 105s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 105s + r = hg.clone( 105s + ui, 105s + ...<11 lines>... 105s + depth=opts.get('depth') or None, 105s + ) 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 105s + srcpeer, destpeer = orig(*args, **opts) 105s + ~~~~^^^^^^^^^^^^^^^ 105s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 105s + exchange.pull( 105s + ~~~~~~~~~~~~~^ 105s + local, 105s + ^^^^^^ 105s + ...<5 lines>... 105s + depth=depth, 105s + ^^^^^^^^^^^^ 105s + ) 105s + ^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 105s + return f(*args, **kwargs) 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 105s + pullop.cgresult = repo.githandler.fetch(remote, heads) 105s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 105s + imported = self.import_git_objects( 105s + b'pull', 105s + ...<2 lines>... 105s + heads=heads, 105s + ) 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 105s + self.import_git_commit( 105s + ~~~~~~~~~~~~~~~~~~~~~~^ 105s + command, 105s + ^^^^^^^^ 105s + self.git[commit.sha], 105s + ^^^^^^^^^^^^^^^^^^^^^ 105s + commit.phase, 105s + ^^^^^^^^^^^^^ 105s + ) 105s + ^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 105s + files, gitlinks, git_renames = self.get_files_changed( 105s + ~~~~~~~~~~~~~~~~~~~~~~^ 105s + commit, detect_renames 105s + ^^^^^^^^^^^^^^^^^^^^^^ 105s + ) 105s + ^ 105s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 105s + oldfile, oldmode, oldsha = change.old 105s + ^^^^^^^^^^^^^^^^^^^^^^^^ 105s + TypeError: cannot unpack non-iterable NoneType object 105s + [1] 105s $ cd hgrepo 105s + $TESTTMP.sh: 18: cd: can't cd to hgrepo 105s $ echo beta > beta 105s - $ fn_hg_commit -A -m "add beta" 105s - 105s -The output is confusing, and this even more-so: 105s - 105s - $ hg push 105s - pushing to $TESTTMP/gitrepo 105s - searching for changes 105s - adding objects 105s - remote: found 0 deltas to reuse 105s - remote: error: refusing to update checked out branch: refs/heads/master 105s - remote: error: By default, updating the current branch in a non-bare repository 105s - remote: is denied, because it will make the index and work tree inconsistent 105s - remote: with what you pushed, and will require 'git reset --hard' to match 105s - remote: the work tree to HEAD. 105s - remote: 105s - remote: You can set the 'receive.denyCurrentBranch' configuration variable 105s - remote: to 'ignore' or 'warn' in the remote repository to allow pushing into 105s - remote: its current branch; however, this is not recommended unless you 105s - remote: arranged to update its work tree to match what you pushed in some 105s - remote: other way. 105s - remote: 105s - remote: To squelch this message and still keep the default behaviour, set 105s - remote: 'receive.denyCurrentBranch' configuration variable to 'refuse'. 105s - added 1 commits with 1 trees and 1 blobs 105s - warning: failed to update refs/heads/master; branch is currently checked out 105s - 105s - $ hg push 105s - pushing to $TESTTMP/gitrepo 105s - searching for changes 105s - adding objects 105s - remote: found 0 deltas to reuse 105s - remote: error: refusing to update checked out branch: refs/heads/master 105s - remote: error: By default, updating the current branch in a non-bare repository 105s - remote: is denied, because it will make the index and work tree inconsistent 105s - remote: with what you pushed, and will require 'git reset --hard' to match 105s - remote: the work tree to HEAD. 105s - remote: 105s - remote: You can set the 'receive.denyCurrentBranch' configuration variable 105s - remote: to 'ignore' or 'warn' in the remote repository to allow pushing into 105s - remote: its current branch; however, this is not recommended unless you 105s - remote: arranged to update its work tree to match what you pushed in some 105s - remote: other way. 105s - remote: 105s - remote: To squelch this message and still keep the default behaviour, set 105s - remote: 'receive.denyCurrentBranch' configuration variable to 'refuse'. 105s - added 1 commits with 1 trees and 1 blobs 105s - warning: failed to update refs/heads/master; branch is currently checked out 105s - 105s -Show that it really didn't get pushed: 105s - 105s - $ hg tags 105s - tip 1:47580592d3d6 105s - default/master 0:ff7a2f2d8d70 105s - $ cd ../gitrepo 105s - $ git log --all --oneline --decorate 105s - 7eeab2e (HEAD -> master) add alpha 105s 105s ERROR: test-push-to-head.t output changed 106s ! 106s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-orphan-tags.t 106s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-orphan-tags.t.err 106s @@ -62,16 +62,105 @@ 106s 106s $ hg clone -U repo.git hgrepo 106s importing 4 git commits 106s - new changesets b8e77484829b:387d03400596 (4 drafts) 106s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 106s + ** which supports versions 6.9 of Mercurial. 106s + ** Please disable "hggit" and try your action again. 106s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 106s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 106s + ** Mercurial Distributed SCM (version 7.0.1) 106s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 106s + Traceback (most recent call last): 106s + File "/usr/bin/hg", line 51, in 106s + dispatch.run() 106s + ~~~~~~~~~~~~^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 106s + status = dispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 106s + status = _rundispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 106s + ret = _runcatch(req) or 0 106s + ~~~~~~~~~^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 106s + return _callcatch(ui, _runcatchfunc) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 106s + return scmutil.callcatch(ui, func) 106s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 106s + return func() 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 106s + return _dispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 106s + return runcommand( 106s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 106s + ) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 106s + ret = _runcommand(ui, options, cmd, d) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 106s + return cmdfunc() 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 106s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 106s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 106s + return func(*args, **kwargs) 106s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 106s + r = hg.clone( 106s + ui, 106s + ...<11 lines>... 106s + depth=opts.get('depth') or None, 106s + ) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 106s + srcpeer, destpeer = orig(*args, **opts) 106s + ~~~~^^^^^^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 106s + exchange.pull( 106s + ~~~~~~~~~~~~~^ 106s + local, 106s + ^^^^^^ 106s + ...<5 lines>... 106s + depth=depth, 106s + ^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 106s + return f(*args, **kwargs) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 106s + pullop.cgresult = repo.githandler.fetch(remote, heads) 106s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 106s + imported = self.import_git_objects( 106s + b'pull', 106s + ...<2 lines>... 106s + heads=heads, 106s + ) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 106s + self.import_git_commit( 106s + ~~~~~~~~~~~~~~~~~~~~~~^ 106s + command, 106s + ^^^^^^^^ 106s + self.git[commit.sha], 106s + ^^^^^^^^^^^^^^^^^^^^^ 106s + commit.phase, 106s + ^^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 106s + files, gitlinks, git_renames = self.get_files_changed( 106s + ~~~~~~~~~~~~~~~~~~~~~~^ 106s + commit, detect_renames 106s + ^^^^^^^^^^^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 106s + oldfile, oldmode, oldsha = change.old 106s + ^^^^^^^^^^^^^^^^^^^^^^^^ 106s + TypeError: cannot unpack non-iterable NoneType object 106s + [1] 106s $ hg outgoing -R hgrepo 106s - comparing with $TESTTMP/repo.git 106s - searching for changes 106s - no changes found 106s + abort: repository hgrepo not found 106s + [255] 106s + $ hg push --debug -R hgrepo | grep -e reference -e found 106s + abort: repository hgrepo not found 106s [1] 106s - $ hg push --debug -R hgrepo | grep -e reference -e found 106s - unchanged reference default::refs/heads/master => GIT:996e5084 106s - unchanged reference default::refs/tags/the_tag => GIT:e4338156 106s - no changes found 106s 106s Verify that we can push this tag, and that outgoing doesn't report 106s them (#358) 106s @@ -83,33 +172,5 @@ 106s To $TESTTMP/repo.git 106s - [deleted] the_tag 106s $ cd ../hgrepo 106s + $TESTTMP.sh: 72: cd: can't cd to ../hgrepo 106s $ hg outgoing 106s - comparing with $TESTTMP/repo.git 106s - searching for changes 106s - changeset: 2:7b35eb0afb3f 106s - tag: the_tag 106s - user: test 106s - date: Mon Jan 01 00:00:12 2007 +0000 106s - summary: add foo3 106s - 106s - $ hg push --debug 106s - pushing to $TESTTMP/repo.git 106s - finding unexported changesets 106s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 106s - searching for changes 106s - remote: counting objects: 5, done. 106s - 1 commits found 106s - list of commits: 106s - e12852326ef72772e9696b008ad6546b5266ff13 106s - adding objects 106s - remote: counting objects: 5, done. 106s - remote: found 0 deltas to reuse 106s - added 1 commits with 1 trees and 0 blobs 106s - unchanged reference default::refs/heads/master => GIT:996e5084 106s - adding reference default::refs/tags/the_tag => GIT:e4338156 106s - $ cd ../gitrepo 106s - $ git fetch 106s - From $TESTTMP/repo 106s - * [new tag] the_tag -> the_tag 106s - $ git tag -ln 106s - the_tag Tag message 106s 106s ERROR: test-orphan-tags.t output changed 106s ! 106s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-missing-commit.t 106s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-missing-commit.t.err 106s @@ -23,74 +23,99 @@ 106s 106s $ hg clone -U repo.git hgrepo 106s importing 1 git commits 106s - new changesets fb68c5a534ce (1 drafts) 106s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 106s + ** which supports versions 6.9 of Mercurial. 106s + ** Please disable "hggit" and try your action again. 106s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 106s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 106s + ** Mercurial Distributed SCM (version 7.0.1) 106s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 106s + Traceback (most recent call last): 106s + File "/usr/bin/hg", line 51, in 106s + dispatch.run() 106s + ~~~~~~~~~~~~^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 106s + status = dispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 106s + status = _rundispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 106s + ret = _runcatch(req) or 0 106s + ~~~~~~~~~^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 106s + return _callcatch(ui, _runcatchfunc) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 106s + return scmutil.callcatch(ui, func) 106s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 106s + return func() 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 106s + return _dispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 106s + return runcommand( 106s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 106s + ) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 106s + ret = _runcommand(ui, options, cmd, d) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 106s + return cmdfunc() 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 106s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 106s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 106s + return func(*args, **kwargs) 106s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 106s + r = hg.clone( 106s + ui, 106s + ...<11 lines>... 106s + depth=opts.get('depth') or None, 106s + ) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 106s + srcpeer, destpeer = orig(*args, **opts) 106s + ~~~~^^^^^^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 106s + exchange.pull( 106s + ~~~~~~~~~~~~~^ 106s + local, 106s + ^^^^^^ 106s + ...<5 lines>... 106s + depth=depth, 106s + ^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 106s + return f(*args, **kwargs) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 106s + pullop.cgresult = repo.githandler.fetch(remote, heads) 106s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 106s + imported = self.import_git_objects( 106s + b'pull', 106s + ...<2 lines>... 106s + heads=heads, 106s + ) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 106s + self.import_git_commit( 106s + ~~~~~~~~~~~~~~~~~~~~~~^ 106s + command, 106s + ^^^^^^^^ 106s + self.git[commit.sha], 106s + ^^^^^^^^^^^^^^^^^^^^^ 106s + commit.phase, 106s + ^^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 106s + files, gitlinks, git_renames = self.get_files_changed( 106s + ~~~~~~~~~~~~~~~~~~~~~~^ 106s + commit, detect_renames 106s + ^^^^^^^^^^^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 106s + oldfile, oldmode, oldsha = change.old 106s + ^^^^^^^^^^^^^^^^^^^^^^^^ 106s + TypeError: cannot unpack non-iterable NoneType object 106s + [1] 106s $ cd hgrepo 106s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 106s $ hg up -q master 106s - $ echo other > thefile 106s - $ fn_hg_commit -m 'change thefile' 106s - $ cd .. 106s - 106s -now remove the git commit from the cache repository used internally by 106s -hg-git — actually, changing `git.intree` is equivalent to this, and how 106s -a user noticed it in #376. 106s - 106s - $ rm -rf hgrepo/.hg/git 106s - 106s -what happens when we push it? 106s - 106s - $ hg -R hgrepo push 106s - pushing to $TESTTMP/repo.git 106s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 106s - abort: cannot push git commit 533d4e670a8b as it is not present locally 106s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 106s - [255] 106s - 106s -try to follow the hint: 106s - 106s -(and just to see that the warning is useful, try re-resetting first) 106s - 106s - $ rm -rf hgrepo/.hg/git hgrepo/.git 106s - $ hg -R hgrepo pull 106s - pulling from $TESTTMP/repo.git 106s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 106s - no changes found 106s - not updating diverged bookmark master 106s - $ hg -R hgrepo push 106s - pushing to $TESTTMP/repo.git 106s - searching for changes 106s - adding objects 106s - remote: found 0 deltas to reuse 106s - added 1 commits with 1 trees and 1 blobs 106s - updating reference refs/heads/master 106s - 106s -and as an extra test, what if we want to push a commit that's 106s -converted, but gone? 106s - 106s -simply pushing doesn't suffice: 106s - 106s - $ cd hgrepo 106s - $ rm -rf .hg/git 106s - $ hg push 106s - pushing to $TESTTMP/repo.git 106s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 106s - searching for changes 106s - no changes found 106s - [1] 106s - $ cd .. 106s - 106s -but we can't create another commit building on the git history, export 106s -it, and push: 106s - 106s - $ cd hgrepo 106s - $ echo not that > thefile 106s - $ fn_hg_commit -m 'change thefile again' 106s - $ hg gexport 106s - $ rm -rf .hg/git 106s - $ hg push 106s - pushing to $TESTTMP/repo.git 106s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 106s - searching for changes 106s - abort: cannot push git commit 61619410916a as it is not present locally 106s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 106s - [255] 106s - $ cd .. 106s 106s ERROR: test-push-missing-commit.t output changed 106s ! 106s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-branch.t 106s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-branch.t.err 106s @@ -13,81 +13,100 @@ 106s $ cd .. 106s $ hg clone gitrepo hgrepo 106s importing 1 git commits 106s - new changesets ff7a2f2d8d70 (1 drafts) 106s - updating to bookmark not-master 106s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 106s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 106s + ** which supports versions 6.9 of Mercurial. 106s + ** Please disable "hggit" and try your action again. 106s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 106s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 106s + ** Mercurial Distributed SCM (version 7.0.1) 106s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 106s + Traceback (most recent call last): 106s + File "/usr/bin/hg", line 51, in 106s + dispatch.run() 106s + ~~~~~~~~~~~~^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 106s + status = dispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 106s + status = _rundispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 106s + ret = _runcatch(req) or 0 106s + ~~~~~~~~~^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 106s + return _callcatch(ui, _runcatchfunc) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 106s + return scmutil.callcatch(ui, func) 106s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 106s + return func() 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 106s + return _dispatch(req) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 106s + return runcommand( 106s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 106s + ) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 106s + ret = _runcommand(ui, options, cmd, d) 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 106s + return cmdfunc() 106s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 106s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 106s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 106s + return func(*args, **kwargs) 106s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 106s + r = hg.clone( 106s + ui, 106s + ...<11 lines>... 106s + depth=opts.get('depth') or None, 106s + ) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 106s + srcpeer, destpeer = orig(*args, **opts) 106s + ~~~~^^^^^^^^^^^^^^^ 106s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 106s + exchange.pull( 106s + ~~~~~~~~~~~~~^ 106s + local, 106s + ^^^^^^ 106s + ...<5 lines>... 106s + depth=depth, 106s + ^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 106s + return f(*args, **kwargs) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 106s + pullop.cgresult = repo.githandler.fetch(remote, heads) 106s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 106s + imported = self.import_git_objects( 106s + b'pull', 106s + ...<2 lines>... 106s + heads=heads, 106s + ) 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 106s + self.import_git_commit( 106s + ~~~~~~~~~~~~~~~~~~~~~~^ 106s + command, 106s + ^^^^^^^^ 106s + self.git[commit.sha], 106s + ^^^^^^^^^^^^^^^^^^^^^ 106s + commit.phase, 106s + ^^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 106s + files, gitlinks, git_renames = self.get_files_changed( 106s + ~~~~~~~~~~~~~~~~~~~~~~^ 106s + commit, detect_renames 106s + ^^^^^^^^^^^^^^^^^^^^^^ 106s + ) 106s + ^ 106s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 106s + oldfile, oldmode, oldsha = change.old 106s + ^^^^^^^^^^^^^^^^^^^^^^^^ 106s + TypeError: cannot unpack non-iterable NoneType object 106s + [1] 106s 106s $ cd hgrepo 106s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 106s $ hg co master 106s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 106s - (activating bookmark master) 106s - $ hg mv alpha beta 106s - $ fn_hg_commit -m 'rename alpha to beta' 106s - $ hg push 106s - pushing to $TESTTMP/gitrepo 106s - searching for changes 106s - adding objects 106s - remote: found 0 deltas to reuse 106s - added 1 commits with 1 trees and 0 blobs 106s - updating reference refs/heads/master 106s - 106s - $ hg branch gamma | grep -v 'permanent and global' 106s - marked working directory as branch gamma 106s - $ fn_hg_commit -m 'started branch gamma' 106s - $ hg push 106s - pushing to $TESTTMP/gitrepo 106s - searching for changes 106s - adding objects 106s - remote: found 0 deltas to reuse 106s - added 1 commits with 1 trees and 0 blobs 106s - updating reference refs/heads/master 106s - 106s - $ hg log --graph 106s - @ changeset: 2:400db38f4f64 106s - | branch: gamma 106s - | bookmark: master 106s - | tag: default/master 106s - | tag: tip 106s - | user: test 106s - | date: Mon Jan 01 00:00:12 2007 +0000 106s - | summary: started branch gamma 106s - | 106s - o changeset: 1:3baa67317a4d 106s - | user: test 106s - | date: Mon Jan 01 00:00:11 2007 +0000 106s - | summary: rename alpha to beta 106s - | 106s - o changeset: 0:ff7a2f2d8d70 106s - bookmark: not-master 106s - tag: default/not-master 106s - user: test 106s - date: Mon Jan 01 00:00:10 2007 +0000 106s - summary: add alpha 106s - 106s - 106s - $ cd .. 106s - $ hg clone -U gitrepo hgrepo2 106s - importing 3 git commits 106s - new changesets ff7a2f2d8d70:400db38f4f64 (3 drafts) 106s - $ hg -R hgrepo2 log --graph 106s - o changeset: 2:400db38f4f64 106s - | branch: gamma 106s - | bookmark: master 106s - | tag: default/master 106s - | tag: tip 106s - | user: test 106s - | date: Mon Jan 01 00:00:12 2007 +0000 106s - | summary: started branch gamma 106s - | 106s - o changeset: 1:3baa67317a4d 106s - | user: test 106s - | date: Mon Jan 01 00:00:11 2007 +0000 106s - | summary: rename alpha to beta 106s - | 106s - o changeset: 0:ff7a2f2d8d70 106s - bookmark: not-master 106s - tag: default/not-master 106s - user: test 106s - date: Mon Jan 01 00:00:10 2007 +0000 106s - summary: add alpha 106s - 106s 106s ERROR: test-hg-branch.t output changed 107s ! 107s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull-after-strip.t 107s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull-after-strip.t.err 107s @@ -16,81 +16,99 @@ 107s $ cd .. 107s $ hg clone -U gitrepo hgrepo 107s importing 2 git commits 107s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 107s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 107s + ** which supports versions 6.9 of Mercurial. 107s + ** Please disable "hggit" and try your action again. 107s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 107s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 107s + ** Mercurial Distributed SCM (version 7.0.1) 107s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 107s + Traceback (most recent call last): 107s + File "/usr/bin/hg", line 51, in 107s + dispatch.run() 107s + ~~~~~~~~~~~~^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 107s + status = dispatch(req) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 107s + status = _rundispatch(req) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 107s + ret = _runcatch(req) or 0 107s + ~~~~~~~~~^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 107s + return _callcatch(ui, _runcatchfunc) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 107s + return scmutil.callcatch(ui, func) 107s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 107s + return func() 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 107s + return _dispatch(req) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 107s + return runcommand( 107s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 107s + ) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 107s + ret = _runcommand(ui, options, cmd, d) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 107s + return cmdfunc() 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 107s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 107s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 107s + return func(*args, **kwargs) 107s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 107s + r = hg.clone( 107s + ui, 107s + ...<11 lines>... 107s + depth=opts.get('depth') or None, 107s + ) 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 107s + srcpeer, destpeer = orig(*args, **opts) 107s + ~~~~^^^^^^^^^^^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 107s + exchange.pull( 107s + ~~~~~~~~~~~~~^ 107s + local, 107s + ^^^^^^ 107s + ...<5 lines>... 107s + depth=depth, 107s + ^^^^^^^^^^^^ 107s + ) 107s + ^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 107s + return f(*args, **kwargs) 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 107s + pullop.cgresult = repo.githandler.fetch(remote, heads) 107s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 107s + imported = self.import_git_objects( 107s + b'pull', 107s + ...<2 lines>... 107s + heads=heads, 107s + ) 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 107s + self.import_git_commit( 107s + ~~~~~~~~~~~~~~~~~~~~~~^ 107s + command, 107s + ^^^^^^^^ 107s + self.git[commit.sha], 107s + ^^^^^^^^^^^^^^^^^^^^^ 107s + commit.phase, 107s + ^^^^^^^^^^^^^ 107s + ) 107s + ^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 107s + files, gitlinks, git_renames = self.get_files_changed( 107s + ~~~~~~~~~~~~~~~~~~~~~~^ 107s + commit, detect_renames 107s + ^^^^^^^^^^^^^^^^^^^^^^ 107s + ) 107s + ^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 107s + oldfile, oldmode, oldsha = change.old 107s + ^^^^^^^^^^^^^^^^^^^^^^^^ 107s + TypeError: cannot unpack non-iterable NoneType object 107s + [1] 107s $ cd hgrepo 107s + $TESTTMP.sh: 26: cd: can't cd to hgrepo 107s $ hg up master 107s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 107s - (activating bookmark master) 107s - $ hg log --graph 107s - @ changeset: 1:7fe02317c63d 107s - | bookmark: master 107s - | tag: default/master 107s - | tag: thetag 107s - | tag: tip 107s - | user: test 107s - | date: Mon Jan 01 00:00:11 2007 +0000 107s - | summary: add beta 107s - | 107s - o changeset: 0:ff7a2f2d8d70 107s - user: test 107s - date: Mon Jan 01 00:00:10 2007 +0000 107s - summary: add alpha 107s - 107s - $ cd ../gitrepo 107s - $ echo beta line 2 >> beta 107s - $ git add beta 107s - $ fn_git_commit -m 'add to beta' 107s - 107s - $ cd .. 107s - $ cd hgrepo 107s - $ hg debugstrip --no-backup tip 107s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 107s - $ hg pull 107s - pulling from $TESTTMP/gitrepo 107s - importing 1 git commits 107s - abort: you appear to have run strip - please run hg git-cleanup 107s - [255] 107s - $ hg tags 107s - tip 0:ff7a2f2d8d70 107s - $ hg git-cleanup 107s - git commit map cleaned 107s - 107s -pull works after 'hg git-cleanup' 107s - 107s - $ hg pull 107s - pulling from $TESTTMP/gitrepo 107s - importing 2 git commits 107s - updating bookmark master 107s - new changesets 7fe02317c63d:cc1e605d90db (2 drafts) 107s - (run 'hg update' to get a working copy) 107s - $ hg log --graph 107s - o changeset: 2:cc1e605d90db 107s - | bookmark: master 107s - | tag: default/master 107s - | tag: tip 107s - | user: test 107s - | date: Mon Jan 01 00:00:12 2007 +0000 107s - | summary: add to beta 107s - | 107s - o changeset: 1:7fe02317c63d 107s - | tag: thetag 107s - | user: test 107s - | date: Mon Jan 01 00:00:11 2007 +0000 107s - | summary: add beta 107s - | 107s - @ changeset: 0:ff7a2f2d8d70 107s - user: test 107s - date: Mon Jan 01 00:00:10 2007 +0000 107s - summary: add alpha 107s - 107s - 107s - $ cd .. 107s - 107s -Check that we also remove bad refs: 107s - 107s - $ cd hgrepo 107s - $ echo e93b671cb24bff41779187edff99178e2597c2 > .hg/git/refs/tags/bad-tag 107s - $ hg git-cleanup 107s - git commit map cleaned 107s - $ test -e .hg/git/refs/tags/bad-tag 107s - [1] 107s 107s ERROR: test-pull-after-strip.t output changed 107s ! 107s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-syntax.t 107s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-syntax.t.err 107s @@ -39,53 +39,99 @@ 107s 107s $ hg clone -U repo.git hgrepo 107s importing 3 git commits 107s - new changesets e532b2bfda10:3c4fd561cbeb (3 drafts) 107s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 107s + ** which supports versions 6.9 of Mercurial. 107s + ** Please disable "hggit" and try your action again. 107s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 107s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 107s + ** Mercurial Distributed SCM (version 7.0.1) 107s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 107s + Traceback (most recent call last): 107s + File "/usr/bin/hg", line 51, in 107s + dispatch.run() 107s + ~~~~~~~~~~~~^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 107s + status = dispatch(req) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 107s + status = _rundispatch(req) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 107s + ret = _runcatch(req) or 0 107s + ~~~~~~~~~^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 107s + return _callcatch(ui, _runcatchfunc) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 107s + return scmutil.callcatch(ui, func) 107s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 107s + return func() 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 107s + return _dispatch(req) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 107s + return runcommand( 107s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 107s + ) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 107s + ret = _runcommand(ui, options, cmd, d) 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 107s + return cmdfunc() 107s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 107s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 107s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 107s + return func(*args, **kwargs) 107s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 107s + r = hg.clone( 107s + ui, 107s + ...<11 lines>... 107s + depth=opts.get('depth') or None, 107s + ) 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 107s + srcpeer, destpeer = orig(*args, **opts) 107s + ~~~~^^^^^^^^^^^^^^^ 107s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 107s + exchange.pull( 107s + ~~~~~~~~~~~~~^ 107s + local, 107s + ^^^^^^ 107s + ...<5 lines>... 107s + depth=depth, 107s + ^^^^^^^^^^^^ 107s + ) 107s + ^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 107s + return f(*args, **kwargs) 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 107s + pullop.cgresult = repo.githandler.fetch(remote, heads) 107s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 107s + imported = self.import_git_objects( 107s + b'pull', 107s + ...<2 lines>... 107s + heads=heads, 107s + ) 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 107s + self.import_git_commit( 107s + ~~~~~~~~~~~~~~~~~~~~~~^ 107s + command, 107s + ^^^^^^^^ 107s + self.git[commit.sha], 107s + ^^^^^^^^^^^^^^^^^^^^^ 107s + commit.phase, 107s + ^^^^^^^^^^^^^ 107s + ) 107s + ^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 107s + files, gitlinks, git_renames = self.get_files_changed( 107s + ~~~~~~~~~~~~~~~~~~~~~~^ 107s + commit, detect_renames 107s + ^^^^^^^^^^^^^^^^^^^^^^ 107s + ) 107s + ^ 107s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 107s + oldfile, oldmode, oldsha = change.old 107s + ^^^^^^^^^^^^^^^^^^^^^^^^ 107s + TypeError: cannot unpack non-iterable NoneType object 107s + [1] 107s $ cd hgrepo 107s + $TESTTMP.sh: 42: cd: can't cd to hgrepo 107s $ hg up master 107s - Cloning into '$TESTTMP/hgrepo/subrepo1'... 107s - done. 107s - Cloning into '$TESTTMP/hgrepo/xyz/subrepo2'... 107s - done. 107s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 107s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 107s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 107s - (activating bookmark master) 107s - $ cat >> .hgsub < # this is a comment 107s - > [subpaths] 107s - > flaf = blyf 107s - > EOF 107s - $ fn_hg_commit -m 'add comment & subsection' 107s - $ hg push 107s - pushing to $TESTTMP/repo.git 107s - searching for changes 107s - adding objects 107s - remote: found 0 deltas to reuse 107s - added 1 commits with 1 trees and 0 blobs 107s - updating reference refs/heads/master 107s - $ cd .. 107s - 107s - $ cd gitrepo 107s - $ git pull --ff-only 107s - From $TESTTMP/repo 107s - 89c22d7..106b34e master -> origin/master 107s - Updating 89c22d7..106b34e 107s - Fast-forward 107s - $ cat .gitmodules 107s - [submodule "subrepo1"] 107s - path = subrepo1 107s - url = ../gitsubrepo 107s - [submodule "xyz/subrepo2"] 107s - path = xyz/subrepo2 107s - url = ../gitsubrepo 107s - $ cd .. 107s - 107s -We broke bidirectionality: 107s - 107s - $ hg clone -U repo.git hgrepo2 107s - importing 4 git commits 107s - new changesets e532b2bfda10:cbf584fe001b (4 drafts) 107s - $ hg id -r tip hgrepo 107s - c58a542b18bc default/master/tip master 107s - $ hg id -r tip hgrepo2 107s - cbf584fe001b default/master/tip master 107s 107s ERROR: test-subrepos-syntax.t output changed 109s ! 109s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-multiple-remotes.t 109s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-multiple-remotes.t.err 109s @@ -28,50 +28,175 @@ 109s $ hg pull 109s pulling from $TESTTMP/gitrepo 109s importing 1 git commits 109s - adding bookmark master 109s - adding bookmark not-master 109s - new changesets ff7a2f2d8d70 (1 drafts) 109s - (run 'hg update' to get a working copy) 109s - pulling from $TESTTMP/repo.git 109s - no changes found 109s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 109s + ** which supports versions 6.9 of Mercurial. 109s + ** Please disable "hggit" and try your action again. 109s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 109s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 109s + ** Mercurial Distributed SCM (version 7.0.1) 109s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 109s + Traceback (most recent call last): 109s + File "/usr/bin/hg", line 51, in 109s + dispatch.run() 109s + ~~~~~~~~~~~~^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 109s + status = dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 109s + status = _rundispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 109s + ret = _runcatch(req) or 0 109s + ~~~~~~~~~^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 109s + return _callcatch(ui, _runcatchfunc) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 109s + return scmutil.callcatch(ui, func) 109s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 109s + return func() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 109s + return _dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 109s + return runcommand( 109s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 109s + ) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 109s + ret = _runcommand(ui, options, cmd, d) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 109s + return cmdfunc() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 109s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 109s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 109s + return func(*args, **kwargs) 109s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 109s + modheads = exchange.pull( 109s + ~~~~~~~~~~~~~^ 109s + repo, 109s + ^^^^^ 109s + ...<6 lines>... 109s + confirm=opts.get('confirm'), 109s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + ).cgresult 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 109s + return f(*args, **kwargs) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 109s + pullop.cgresult = repo.githandler.fetch(remote, heads) 109s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 109s + imported = self.import_git_objects( 109s + b'pull', 109s + ...<2 lines>... 109s + heads=heads, 109s + ) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 109s + self.import_git_commit( 109s + ~~~~~~~~~~~~~~~~~~~~~~^ 109s + command, 109s + ^^^^^^^^ 109s + self.git[commit.sha], 109s + ^^^^^^^^^^^^^^^^^^^^^ 109s + commit.phase, 109s + ^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 109s + files, gitlinks, git_renames = self.get_files_changed( 109s + ~~~~~~~~~~~~~~~~~~~~~~^ 109s + commit, detect_renames 109s + ^^^^^^^^^^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 109s + oldfile, oldmode, oldsha = change.old 109s + ^^^^^^^^^^^^^^^^^^^^^^^^ 109s + TypeError: cannot unpack non-iterable NoneType object 109s + [1] 109s $ hg tags 109s - tip 0:ff7a2f2d8d70 109s - git/not-master 0:ff7a2f2d8d70 109s - git/master 0:ff7a2f2d8d70 109s - bare/not-master 0:ff7a2f2d8d70 109s - bare/master 0:ff7a2f2d8d70 109s - also-git/not-master 0:ff7a2f2d8d70 109s - also-git/master 0:ff7a2f2d8d70 109s - also-bare/not-master 0:ff7a2f2d8d70 109s - also-bare/master 0:ff7a2f2d8d70 109s + tip -1:000000000000 109s 109s $ hg up master 109s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - (activating bookmark master) 109s + abort: unknown revision 'master' 109s + [10] 109s $ echo beta > beta 109s $ fn_hg_commit -A -m "add beta" 109s $ hg push 109s pushing to $TESTTMP/gitrepo 109s - searching for changes 109s - adding objects 109s - remote: found 0 deltas to reuse 109s - added 1 commits with 1 trees and 1 blobs 109s - updating reference refs/heads/master 109s - pushing to $TESTTMP/repo.git 109s - searching for changes 109s - adding objects 109s - remote: found 0 deltas to reuse 109s - added 1 commits with 1 trees and 1 blobs 109s - updating reference refs/heads/master 109s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 109s + ** which supports versions 6.9 of Mercurial. 109s + ** Please disable "hggit" and try your action again. 109s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 109s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 109s + ** Mercurial Distributed SCM (version 7.0.1) 109s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 109s + Traceback (most recent call last): 109s + File "/usr/bin/hg", line 51, in 109s + dispatch.run() 109s + ~~~~~~~~~~~~^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 109s + status = dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 109s + status = _rundispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 109s + ret = _runcatch(req) or 0 109s + ~~~~~~~~~^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 109s + return _callcatch(ui, _runcatchfunc) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 109s + return scmutil.callcatch(ui, func) 109s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 109s + return func() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 109s + return _dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 109s + return runcommand( 109s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 109s + ) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 109s + ret = _runcommand(ui, options, cmd, d) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 109s + return cmdfunc() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 109s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 109s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 109s + return func(*args, **kwargs) 109s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 109s + pushop = exchange.push( 109s + repo, 109s + ...<6 lines>... 109s + opargs=opargs, 109s + ) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 109s + return f(*args, **kwargs) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 109s + pushop.cgresult = repo.githandler.push( 109s + ~~~~~~~~~~~~~~~~~~~~^ 109s + remote.path, revs, bookmarks, force 109s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 109s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 109s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 109s + all_exportable = self.export_commits() 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 109s + self.export_git_objects() 109s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 109s + packer.pack(synchronous=True) 109s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 109s + _process_batch(self.ui, self.object_store, todo) 109s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 109s + object_store._remove_loose_object(obj.id) 109s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 109s + [1] 109s 109s $ hg tags 109s - tip 1:47580592d3d6 109s - git/master 1:47580592d3d6 109s - bare/master 1:47580592d3d6 109s - also-git/master 1:47580592d3d6 109s - also-bare/master 1:47580592d3d6 109s - git/not-master 0:ff7a2f2d8d70 109s - bare/not-master 0:ff7a2f2d8d70 109s - also-git/not-master 0:ff7a2f2d8d70 109s - also-bare/not-master 0:ff7a2f2d8d70 109s - 109s + tip 0:59e1f63242de 109s + 109s 109s ERROR: test-multiple-remotes.t output changed 109s ! 109s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gitignore.t 109s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gitignore.t.err 109s @@ -27,6 +27,63 @@ 109s it's gone: 109s 109s $ hg gexport 109s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 109s + ** which supports versions 6.9 of Mercurial. 109s + ** Please disable "hggit" and try your action again. 109s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 109s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 109s + ** Mercurial Distributed SCM (version 7.0.1) 109s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 109s + Traceback (most recent call last): 109s + File "/usr/bin/hg", line 51, in 109s + dispatch.run() 109s + ~~~~~~~~~~~~^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 109s + status = dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 109s + status = _rundispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 109s + ret = _runcatch(req) or 0 109s + ~~~~~~~~~^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 109s + return _callcatch(ui, _runcatchfunc) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 109s + return scmutil.callcatch(ui, func) 109s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 109s + return func() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 109s + return _dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 109s + return runcommand( 109s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 109s + ) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 109s + ret = _runcommand(ui, options, cmd, d) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 109s + return cmdfunc() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 109s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 109s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 109s + return func(*args, **kwargs) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 109s + repo.githandler.export_commits() 109s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 109s + self.export_git_objects() 109s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 109s + packer.pack(synchronous=True) 109s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 109s + _process_batch(self.ui, self.object_store, todo) 109s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 109s + object_store._remove_loose_object(obj.id) 109s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 109s + [1] 109s $ hg status 109s ? .gitignore 109s ? bar 109s 109s ERROR: test-gitignore.t output changed 109s ! 109s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-merge.t 109s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-merge.t.err 109s @@ -31,59 +31,101 @@ 109s 109s $ hg clone gitrepo hgrepo 109s importing 4 git commits 109s - new changesets ff7a2f2d8d70:89ca4a68d6b9 (4 drafts) 109s - updating to bookmark master 109s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 109s + ** which supports versions 6.9 of Mercurial. 109s + ** Please disable "hggit" and try your action again. 109s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 109s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 109s + ** Mercurial Distributed SCM (version 7.0.1) 109s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 109s + Traceback (most recent call last): 109s + File "/usr/bin/hg", line 51, in 109s + dispatch.run() 109s + ~~~~~~~~~~~~^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 109s + status = dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 109s + status = _rundispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 109s + ret = _runcatch(req) or 0 109s + ~~~~~~~~~^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 109s + return _callcatch(ui, _runcatchfunc) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 109s + return scmutil.callcatch(ui, func) 109s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 109s + return func() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 109s + return _dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 109s + return runcommand( 109s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 109s + ) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 109s + ret = _runcommand(ui, options, cmd, d) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 109s + return cmdfunc() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 109s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 109s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 109s + return func(*args, **kwargs) 109s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 109s + r = hg.clone( 109s + ui, 109s + ...<11 lines>... 109s + depth=opts.get('depth') or None, 109s + ) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 109s + srcpeer, destpeer = orig(*args, **opts) 109s + ~~~~^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 109s + exchange.pull( 109s + ~~~~~~~~~~~~~^ 109s + local, 109s + ^^^^^^ 109s + ...<5 lines>... 109s + depth=depth, 109s + ^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 109s + return f(*args, **kwargs) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 109s + pullop.cgresult = repo.githandler.fetch(remote, heads) 109s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 109s + imported = self.import_git_objects( 109s + b'pull', 109s + ...<2 lines>... 109s + heads=heads, 109s + ) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 109s + self.import_git_commit( 109s + ~~~~~~~~~~~~~~~~~~~~~~^ 109s + command, 109s + ^^^^^^^^ 109s + self.git[commit.sha], 109s + ^^^^^^^^^^^^^^^^^^^^^ 109s + commit.phase, 109s + ^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 109s + files, gitlinks, git_renames = self.get_files_changed( 109s + ~~~~~~~~~~~~~~~~~~~~~~^ 109s + commit, detect_renames 109s + ^^^^^^^^^^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 109s + oldfile, oldmode, oldsha = change.old 109s + ^^^^^^^^^^^^^^^^^^^^^^^^ 109s + TypeError: cannot unpack non-iterable NoneType object 109s + [1] 109s $ cd hgrepo 109s + $TESTTMP.sh: 40: cd: can't cd to hgrepo 109s 109s clear the cache to be sure it is regenerated correctly 109s $ hg debug-remove-hggit-state 109s - clearing out the git cache data 109s - $ hg push ../repo.git 109s - pushing to ../repo.git 109s - searching for changes 109s - adding objects 109s - remote: found 0 deltas to reuse 109s - added 4 commits with 4 trees and 3 blobs 109s - adding reference refs/heads/beta 109s - adding reference refs/heads/master 109s - 109s - $ cd .. 109s -git log in repo pushed from hg 109s - $ git --git-dir=repo.git log --pretty=medium master | sed 's/\.\.\.//g' 109s - commit 5806851511aaf3bfe813ae3a86c5027165fa9b96 109s - Merge: e5023f9 9497a4e 109s - Author: test 109s - Date: Mon Jan 1 00:00:12 2007 +0000 109s - 109s - Merge branch 'beta' 109s - 109s - commit e5023f9e5cb24fdcec7b6c127cec45d8888e35a9 109s - Author: test 109s - Date: Mon Jan 1 00:00:12 2007 +0000 109s - 109s - add gamma 109s - 109s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 109s - Author: test 109s - Date: Mon Jan 1 00:00:11 2007 +0000 109s - 109s - add beta 109s - 109s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 109s - Author: test 109s - Date: Mon Jan 1 00:00:10 2007 +0000 109s - 109s - add alpha 109s - $ git --git-dir=repo.git log --pretty=medium beta | sed 's/\.\.\.//g' 109s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 109s - Author: test 109s - Date: Mon Jan 1 00:00:11 2007 +0000 109s - 109s - add beta 109s - 109s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 109s - Author: test 109s - Date: Mon Jan 1 00:00:10 2007 +0000 109s - 109s - add alpha 109s 109s ERROR: test-merge.t output changed 109s ! 109s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-tags.t 109s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-tags.t.err 109s @@ -17,68 +17,100 @@ 109s $ cd .. 109s $ hg clone -U repo.git hgrepo 109s importing 1 git commits 109s - new changesets ff7a2f2d8d70 (1 drafts) 109s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 109s + ** which supports versions 6.9 of Mercurial. 109s + ** Please disable "hggit" and try your action again. 109s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 109s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 109s + ** Mercurial Distributed SCM (version 7.0.1) 109s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 109s + Traceback (most recent call last): 109s + File "/usr/bin/hg", line 51, in 109s + dispatch.run() 109s + ~~~~~~~~~~~~^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 109s + status = dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 109s + status = _rundispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 109s + ret = _runcatch(req) or 0 109s + ~~~~~~~~~^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 109s + return _callcatch(ui, _runcatchfunc) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 109s + return scmutil.callcatch(ui, func) 109s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 109s + return func() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 109s + return _dispatch(req) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 109s + return runcommand( 109s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 109s + ) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 109s + ret = _runcommand(ui, options, cmd, d) 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 109s + return cmdfunc() 109s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 109s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 109s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 109s + return func(*args, **kwargs) 109s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 109s + r = hg.clone( 109s + ui, 109s + ...<11 lines>... 109s + depth=opts.get('depth') or None, 109s + ) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 109s + srcpeer, destpeer = orig(*args, **opts) 109s + ~~~~^^^^^^^^^^^^^^^ 109s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 109s + exchange.pull( 109s + ~~~~~~~~~~~~~^ 109s + local, 109s + ^^^^^^ 109s + ...<5 lines>... 109s + depth=depth, 109s + ^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 109s + return f(*args, **kwargs) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 109s + pullop.cgresult = repo.githandler.fetch(remote, heads) 109s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 109s + imported = self.import_git_objects( 109s + b'pull', 109s + ...<2 lines>... 109s + heads=heads, 109s + ) 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 109s + self.import_git_commit( 109s + ~~~~~~~~~~~~~~~~~~~~~~^ 109s + command, 109s + ^^^^^^^^ 109s + self.git[commit.sha], 109s + ^^^^^^^^^^^^^^^^^^^^^ 109s + commit.phase, 109s + ^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 109s + files, gitlinks, git_renames = self.get_files_changed( 109s + ~~~~~~~~~~~~~~~~~~~~~~^ 109s + commit, detect_renames 109s + ^^^^^^^^^^^^^^^^^^^^^^ 109s + ) 109s + ^ 109s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 109s + oldfile, oldmode, oldsha = change.old 109s + ^^^^^^^^^^^^^^^^^^^^^^^^ 109s + TypeError: cannot unpack non-iterable NoneType object 109s + [1] 109s 109s $ cd hgrepo 109s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 109s $ hg co master 109s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - (activating bookmark master) 109s - $ fn_hg_tag alpha 109s - $ hg push 109s - pushing to $TESTTMP/repo.git 109s - searching for changes 109s - adding objects 109s - remote: found 0 deltas to reuse 109s - added 1 commits with 1 trees and 1 blobs 109s - updating reference refs/heads/master 109s - adding reference refs/tags/alpha 109s - 109s - $ hg log --graph 109s - @ changeset: 1:e8b150f84560 109s - | bookmark: master 109s - | tag: default/master 109s - | tag: tip 109s - | user: test 109s - | date: Mon Jan 01 00:00:11 2007 +0000 109s - | summary: Added tag alpha for changeset ff7a2f2d8d70 109s - | 109s - o changeset: 0:ff7a2f2d8d70 109s - tag: alpha 109s - user: test 109s - date: Mon Jan 01 00:00:10 2007 +0000 109s - summary: add alpha 109s - 109s - 109s - $ cd .. 109s - $ cd gitrepo 109s -git should have the tag alpha 109s - $ git fetch origin 109s - From $TESTTMP/repo 109s - 7eeab2e..bbae830 master -> origin/master 109s - * [new tag] alpha -> alpha 109s - $ cd .. 109s - 109s - $ hg clone repo.git hgrepo2 109s - importing 2 git commits 109s - new changesets ff7a2f2d8d70:e8b150f84560 (2 drafts) 109s - updating to bookmark master 109s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ hg -R hgrepo2 log --graph 109s - @ changeset: 1:e8b150f84560 109s - | bookmark: master 109s - | tag: default/master 109s - | tag: tip 109s - | user: test 109s - | date: Mon Jan 01 00:00:11 2007 +0000 109s - | summary: Added tag alpha for changeset ff7a2f2d8d70 109s - | 109s - o changeset: 0:ff7a2f2d8d70 109s - tag: alpha 109s - user: test 109s - date: Mon Jan 01 00:00:10 2007 +0000 109s - summary: add alpha 109s - 109s - 109s -the tag should be in .hgtags 109s - $ cat hgrepo2/.hgtags 109s - ff7a2f2d8d7099694ae1e8b03838d40575bebb63 alpha 109s 109s ERROR: test-hg-tags.t output changed 110s ! 110s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-clone.t 110s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-hg-clone.t.err 110s @@ -12,87 +12,106 @@ 110s 110s $ hg clone -U gitrepo hgrepo 110s importing 1 git commits 110s - new changesets ff7a2f2d8d70 (1 drafts) 110s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 110s + ** which supports versions 6.9 of Mercurial. 110s + ** Please disable "hggit" and try your action again. 110s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 110s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 110s + ** Mercurial Distributed SCM (version 7.0.1) 110s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 110s + Traceback (most recent call last): 110s + File "/usr/bin/hg", line 51, in 110s + dispatch.run() 110s + ~~~~~~~~~~~~^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 110s + status = dispatch(req) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 110s + status = _rundispatch(req) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 110s + ret = _runcatch(req) or 0 110s + ~~~~~~~~~^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 110s + return _callcatch(ui, _runcatchfunc) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 110s + return scmutil.callcatch(ui, func) 110s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 110s + return func() 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 110s + return _dispatch(req) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 110s + return runcommand( 110s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 110s + ) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 110s + ret = _runcommand(ui, options, cmd, d) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 110s + return cmdfunc() 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 110s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 110s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 110s + return func(*args, **kwargs) 110s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 110s + r = hg.clone( 110s + ui, 110s + ...<11 lines>... 110s + depth=opts.get('depth') or None, 110s + ) 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 110s + srcpeer, destpeer = orig(*args, **opts) 110s + ~~~~^^^^^^^^^^^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 110s + exchange.pull( 110s + ~~~~~~~~~~~~~^ 110s + local, 110s + ^^^^^^ 110s + ...<5 lines>... 110s + depth=depth, 110s + ^^^^^^^^^^^^ 110s + ) 110s + ^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 110s + return f(*args, **kwargs) 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 110s + pullop.cgresult = repo.githandler.fetch(remote, heads) 110s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 110s + imported = self.import_git_objects( 110s + b'pull', 110s + ...<2 lines>... 110s + heads=heads, 110s + ) 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 110s + self.import_git_commit( 110s + ~~~~~~~~~~~~~~~~~~~~~~^ 110s + command, 110s + ^^^^^^^^ 110s + self.git[commit.sha], 110s + ^^^^^^^^^^^^^^^^^^^^^ 110s + commit.phase, 110s + ^^^^^^^^^^^^^ 110s + ) 110s + ^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 110s + files, gitlinks, git_renames = self.get_files_changed( 110s + ~~~~~~~~~~~~~~~~~~~~~~^ 110s + commit, detect_renames 110s + ^^^^^^^^^^^^^^^^^^^^^^ 110s + ) 110s + ^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 110s + oldfile, oldmode, oldsha = change.old 110s + ^^^^^^^^^^^^^^^^^^^^^^^^ 110s + TypeError: cannot unpack non-iterable NoneType object 110s + [1] 110s 110s By default, the Git state isn't preserved across a copying/linking 110s clone 110s 110s $ hg clone -U hgrepo otherhgrepo 110s + abort: repository hgrepo not found 110s + [255] 110s $ cd otherhgrepo 110s + $TESTTMP.sh: 22: cd: can't cd to otherhgrepo 110s $ find .hg -name 'git*' | sort 110s - $ hg tags -v 110s - tip 0:ff7a2f2d8d70 110s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 110s - $ cd .. 110s - $ rm -r otherhgrepo 110s - 110s -Nor using a pull clone 110s - 110s - $ hg clone -U --pull hgrepo otherhgrepo 110s - requesting all changes 110s - adding changesets 110s - adding manifests 110s - adding file changes 110s - added 1 changesets with 1 changes to 1 files 110s - new changesets ff7a2f2d8d70 110s - $ cd otherhgrepo 110s - $ find .hg -name 'git*' | sort 110s - $ hg tags -v 110s - tip 0:ff7a2f2d8d70 110s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 110s - $ cd .. 110s - $ rm -r otherhgrepo 110s - 110s -But we can enable it! 110s - 110s - $ cat >> $HGRCPATH < [experimental] 110s - > hg-git-serve = yes 110s - > EOF 110s - 110s -Check transferring between Mercurial repositories using a 110s -copying/linking clone 110s - 110s - $ hg clone -U hgrepo otherhgrepo 110s - $ cd otherhgrepo 110s - $ find .hg -name 'git*' | sort 110s - $ hg tags -q 110s - tip 110s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 110s - $ cd .. 110s - 110s -Checking using a pull clone 110s - 110s - $ rm -rf otherhgrepo 110s - $ hg clone -U --pull hgrepo otherhgrepo 110s - requesting all changes 110s - adding changesets 110s - adding manifests 110s - adding file changes 110s - added 1 changesets with 1 changes to 1 files 110s - new changesets ff7a2f2d8d70 110s - $ cd otherhgrepo 110s - $ hg tags -q 110s - tip 110s - alpha 110s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 110s - 0:ff7a2f2d8d70 7eeab2ea75ec 110s - $ cd .. 110s - 110s -Can we repopulate the state from a Mercurial repository? 110s - 110s - $ cd otherhgrepo 110s - $ hg debug-remove-hggit-state 110s - clearing out the git cache data 110s - $ hg log -qr 'fromgit()' 110s - $ hg tags 110s - tip 0:ff7a2f2d8d70 110s - $ hg pull 110s - pulling from $TESTTMP/hgrepo 110s - searching for changes 110s - no changes found 110s - $ hg log -qr 'fromgit()' 110s - $ hg tags 110s - tip 0:ff7a2f2d8d70 110s - 110s -Sadly, no. 110s 110s ERROR: test-hg-clone.t output changed 110s ! 110s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-detached.t 110s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-detached.t.err 110s @@ -41,36 +41,99 @@ 110s 110s $ hg clone gitrepo hgrepo 110s importing 1 git commits 110s - new changesets ff7a2f2d8d70 (1 drafts) 110s - updating to bookmark master 110s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 110s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 110s + ** which supports versions 6.9 of Mercurial. 110s + ** Please disable "hggit" and try your action again. 110s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 110s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 110s + ** Mercurial Distributed SCM (version 7.0.1) 110s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 110s + Traceback (most recent call last): 110s + File "/usr/bin/hg", line 51, in 110s + dispatch.run() 110s + ~~~~~~~~~~~~^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 110s + status = dispatch(req) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 110s + status = _rundispatch(req) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 110s + ret = _runcatch(req) or 0 110s + ~~~~~~~~~^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 110s + return _callcatch(ui, _runcatchfunc) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 110s + return scmutil.callcatch(ui, func) 110s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 110s + return func() 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 110s + return _dispatch(req) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 110s + return runcommand( 110s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 110s + ) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 110s + ret = _runcommand(ui, options, cmd, d) 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 110s + return cmdfunc() 110s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 110s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 110s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 110s + return func(*args, **kwargs) 110s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 110s + r = hg.clone( 110s + ui, 110s + ...<11 lines>... 110s + depth=opts.get('depth') or None, 110s + ) 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 110s + srcpeer, destpeer = orig(*args, **opts) 110s + ~~~~^^^^^^^^^^^^^^^ 110s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 110s + exchange.pull( 110s + ~~~~~~~~~~~~~^ 110s + local, 110s + ^^^^^^ 110s + ...<5 lines>... 110s + depth=depth, 110s + ^^^^^^^^^^^^ 110s + ) 110s + ^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 110s + return f(*args, **kwargs) 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 110s + pullop.cgresult = repo.githandler.fetch(remote, heads) 110s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 110s + imported = self.import_git_objects( 110s + b'pull', 110s + ...<2 lines>... 110s + heads=heads, 110s + ) 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 110s + self.import_git_commit( 110s + ~~~~~~~~~~~~~~~~~~~~~~^ 110s + command, 110s + ^^^^^^^^ 110s + self.git[commit.sha], 110s + ^^^^^^^^^^^^^^^^^^^^^ 110s + commit.phase, 110s + ^^^^^^^^^^^^^ 110s + ) 110s + ^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 110s + files, gitlinks, git_renames = self.get_files_changed( 110s + ~~~~~~~~~~~~~~~~~~~~~~^ 110s + commit, detect_renames 110s + ^^^^^^^^^^^^^^^^^^^^^^ 110s + ) 110s + ^ 110s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 110s + oldfile, oldmode, oldsha = change.old 110s + ^^^^^^^^^^^^^^^^^^^^^^^^ 110s + TypeError: cannot unpack non-iterable NoneType object 110s + [1] 110s $ cd hgrepo 110s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 110s $ echo beta > beta 110s - $ hg add beta 110s - $ fn_hg_commit -m "add beta" 110s - 110s -Pushing that changeset, with phases, publishes the detached HEAD. 110s -Whether this should happen is debatable, but it's a side effect from 110s -the fact that pushing to the remote HEAD, with HEAD being the usual 110s -symref, should publish it. 110s - 110s - $ hg push -v --config hggit.usephases=yes 110s - pushing to $TESTTMP/gitrepo 110s - finding unexported changesets 110s - exporting 1 changesets 110s - converting revision 47580592d3d6492421a1e6cebc5c2d701a2e858b 110s - packing 3 loose objects... 110s - searching for changes 110s - remote: counting objects: 5, done. 110s - 1 commits found 110s - adding objects 110s - remote: counting objects: 5, done. 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference default::refs/heads/master => GIT:0f378ab6 110s - publishing remote HEAD 110s - $ hg phase 'all()' 110s - 0: public 110s - 1: draft 110s - $ cd .. 110s - 110s 110s ERROR: test-push-detached.t output changed 111s ! 111s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-serve-git.t 111s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-serve-git.t.err 111s @@ -48,13 +48,104 @@ 111s \r (no-eol) (esc) 111s \r (no-eol) (esc) 111s importing commits 1/2 b23744d34f97 [======> ]\r (no-eol) (esc) 111s - importing commits 2/2 3af9773036a9 [=============>]\r (no-eol) (esc) 111s \r (no-eol) (esc) 111s importing 2 git commits 111s - new changesets c4d188f6e13d:221dd250e933 111s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 111s + ** which supports versions 6.9 of Mercurial. 111s + ** Please disable "hggit" and try your action again. 111s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 111s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 111s + ** Mercurial Distributed SCM (version 7.0.1) 111s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 111s + Traceback (most recent call last): 111s + File "/usr/bin/hg", line 51, in 111s + dispatch.run() 111s + ~~~~~~~~~~~~^^ 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 111s + status = dispatch(req) 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 111s + status = _rundispatch(req) 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 111s + ret = _runcatch(req) or 0 111s + ~~~~~~~~~^^^^^ 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 111s + return _callcatch(ui, _runcatchfunc) 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 111s + return scmutil.callcatch(ui, func) 111s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 111s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 111s + return func() 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 111s + return _dispatch(req) 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 111s + return runcommand( 111s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 111s + ) 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 111s + ret = _runcommand(ui, options, cmd, d) 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 111s + return cmdfunc() 111s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 111s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 111s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 111s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 111s + return func(*args, **kwargs) 111s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 111s + r = hg.clone( 111s + ui, 111s + ...<11 lines>... 111s + depth=opts.get('depth') or None, 111s + ) 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 111s + srcpeer, destpeer = orig(*args, **opts) 111s + ~~~~^^^^^^^^^^^^^^^ 111s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 111s + exchange.pull( 111s + ~~~~~~~~~~~~~^ 111s + local, 111s + ^^^^^^ 111s + ...<5 lines>... 111s + depth=depth, 111s + ^^^^^^^^^^^^ 111s + ) 111s + ^ 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 111s + return f(*args, **kwargs) 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 111s + pullop.cgresult = repo.githandler.fetch(remote, heads) 111s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 111s + imported = self.import_git_objects( 111s + b'pull', 111s + ...<2 lines>... 111s + heads=heads, 111s + ) 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 111s + self.import_git_commit( 111s + ~~~~~~~~~~~~~~~~~~~~~~^ 111s + command, 111s + ^^^^^^^^ 111s + self.git[commit.sha], 111s + ^^^^^^^^^^^^^^^^^^^^^ 111s + commit.phase, 111s + ^^^^^^^^^^^^^ 111s + ) 111s + ^ 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 111s + files, gitlinks, git_renames = self.get_files_changed( 111s + ~~~~~~~~~~~~~~~~~~~~~~^ 111s + commit, detect_renames 111s + ^^^^^^^^^^^^^^^^^^^^^^ 111s + ) 111s + ^ 111s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 111s + oldfile, oldmode, oldsha = change.old 111s + ^^^^^^^^^^^^^^^^^^^^^^^^ 111s + TypeError: cannot unpack non-iterable NoneType object 111s + [1] 111s $ hg log -T 'HG:{node|short} GIT:{gitnode|short}\n' -R copy 111s - HG:221dd250e933 GIT:3af9773036a9 111s - HG:c4d188f6e13d GIT:b23744d34f97 111s + abort: repository copy not found 111s + [255] 111s $ hg tags -v -R copy 111s - tip 1:221dd250e933 111s - default/master 1:221dd250e933 git-remote 111s + abort: repository copy not found 111s + [255] 111s 111s ERROR: test-serve-git.t output changed 113s ! 113s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-convergedmerge.t 113s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-convergedmerge.t.err 113s @@ -49,34 +49,88 @@ 113s $ hg bookmark -r4 master 113s $ hg push -r master ../repo.git 113s pushing to ../repo.git 113s - searching for changes 113s - adding objects 113s - remote: found 0 deltas to reuse 113s - added 5 commits with 3 trees and 3 blobs 113s - adding reference refs/heads/master 113s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 113s + ** which supports versions 6.9 of Mercurial. 113s + ** Please disable "hggit" and try your action again. 113s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 113s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 113s + ** Mercurial Distributed SCM (version 7.0.1) 113s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 113s + Traceback (most recent call last): 113s + File "/usr/bin/hg", line 51, in 113s + dispatch.run() 113s + ~~~~~~~~~~~~^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 113s + status = dispatch(req) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 113s + status = _rundispatch(req) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 113s + ret = _runcatch(req) or 0 113s + ~~~~~~~~~^^^^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 113s + return _callcatch(ui, _runcatchfunc) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 113s + return scmutil.callcatch(ui, func) 113s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 113s + return func() 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 113s + return _dispatch(req) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 113s + return runcommand( 113s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 113s + ) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 113s + ret = _runcommand(ui, options, cmd, d) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 113s + return cmdfunc() 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 113s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 113s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 113s + return func(*args, **kwargs) 113s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 113s + pushop = exchange.push( 113s + repo, 113s + ...<6 lines>... 113s + opargs=opargs, 113s + ) 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 113s + return f(*args, **kwargs) 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 113s + pushop.cgresult = repo.githandler.push( 113s + ~~~~~~~~~~~~~~~~~~~~^ 113s + remote.path, revs, bookmarks, force 113s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + ) 113s + ^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 113s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 113s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 113s + all_exportable = self.export_commits() 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 113s + self.export_git_objects() 113s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 113s + packer.pack(synchronous=True) 113s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 113s + _process_batch(self.ui, self.object_store, todo) 113s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 113s + object_store._remove_loose_object(obj.id) 113s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 113s + [1] 113s $ cd .. 113s 113s $ hg clone repo.git hgrepo2 113s - importing 5 git commits 113s - new changesets 5d1a6b64f9d0:eaa21d002113 (5 drafts) 113s - updating to bookmark master 113s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 113s + updating to branch default 113s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 113s expect the same revision ids as above 113s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 113s - @ 4:1,3 eaa21d002113 1970-01-01 00:00 +0000 test 113s - |\ merge 113s - | | 113s - | o 3 0dbe4ac1a758 1970-01-01 00:00 +0000 test 113s - | | B->C 113s - | | 113s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 113s - | | A->B 113s - | | 113s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 113s - |/ A->C 113s - | 113s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 113s - origin 113s - 113s $ hg -R hgrepo2 gverify 113s - verifying rev eaa21d002113 against git commit fb8c9e2afe5418cfff337eeed79fad5dd58826f0 113s + abort: no git commit found for rev 000000000000 113s + (if this is an octopus merge, verify against the last rev) 113s + [255] 113s 113s ERROR: test-convergedmerge.t output changed 113s ! 113s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-conflict-2.t 113s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-conflict-2.t.err 113s @@ -47,29 +47,84 @@ 113s $ hg bookmark -r tip master 113s $ hg push -r master ../repo.git 113s pushing to ../repo.git 113s - searching for changes 113s - adding objects 113s - remote: found 0 deltas to reuse 113s - added 4 commits with 3 trees and 3 blobs 113s - adding reference refs/heads/master 113s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 113s + ** which supports versions 6.9 of Mercurial. 113s + ** Please disable "hggit" and try your action again. 113s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 113s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 113s + ** Mercurial Distributed SCM (version 7.0.1) 113s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 113s + Traceback (most recent call last): 113s + File "/usr/bin/hg", line 51, in 113s + dispatch.run() 113s + ~~~~~~~~~~~~^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 113s + status = dispatch(req) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 113s + status = _rundispatch(req) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 113s + ret = _runcatch(req) or 0 113s + ~~~~~~~~~^^^^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 113s + return _callcatch(ui, _runcatchfunc) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 113s + return scmutil.callcatch(ui, func) 113s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 113s + return func() 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 113s + return _dispatch(req) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 113s + return runcommand( 113s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 113s + ) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 113s + ret = _runcommand(ui, options, cmd, d) 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 113s + return cmdfunc() 113s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 113s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 113s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 113s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 113s + return func(*args, **kwargs) 113s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 113s + pushop = exchange.push( 113s + repo, 113s + ...<6 lines>... 113s + opargs=opargs, 113s + ) 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 113s + return f(*args, **kwargs) 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 113s + pushop.cgresult = repo.githandler.push( 113s + ~~~~~~~~~~~~~~~~~~~~^ 113s + remote.path, revs, bookmarks, force 113s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + ) 113s + ^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 113s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 113s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 113s + all_exportable = self.export_commits() 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 113s + self.export_git_objects() 113s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 113s + packer.pack(synchronous=True) 113s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 113s + _process_batch(self.ui, self.object_store, todo) 113s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 113s + object_store._remove_loose_object(obj.id) 113s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 113s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 113s + [1] 113s $ cd .. 113s 113s $ hg clone repo.git hgrepo2 113s - importing 4 git commits 113s - new changesets 5d1a6b64f9d0:120385945d08 (4 drafts) 113s - updating to bookmark master 113s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 113s + updating to branch default 113s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 113s expect the same revision ids as above 113s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 113s - @ 3:1,2 120385945d08 1970-01-01 00:00 +0000 test 113s - |\ merge to B 113s - | | 113s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 113s - | | A->B 113s - | | 113s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 113s - |/ A->C 113s - | 113s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 113s - origin 113s - 113s 113s ERROR: test-conflict-2.t output changed 114s ! 114s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-draft.t 114s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-phases-draft.t.err 114s @@ -12,73 +12,100 @@ 114s cloning without hggit.usephases does not publish local changesets 114s $ cd .. 114s $ hg clone gitrepo hgrepo | grep -v '^updating' 114s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 114s + ** which supports versions 6.9 of Mercurial. 114s + ** Please disable "hggit" and try your action again. 114s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 114s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 114s + ** Mercurial Distributed SCM (version 7.0.1) 114s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 114s + Traceback (most recent call last): 114s + File "/usr/bin/hg", line 51, in 114s + dispatch.run() 114s + ~~~~~~~~~~~~^^ 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 114s + status = dispatch(req) 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 114s + status = _rundispatch(req) 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 114s + ret = _runcatch(req) or 0 114s + ~~~~~~~~~^^^^^ 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 114s + return _callcatch(ui, _runcatchfunc) 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 114s + return scmutil.callcatch(ui, func) 114s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 114s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 114s + return func() 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 114s + return _dispatch(req) 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 114s + return runcommand( 114s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 114s + ) 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 114s + ret = _runcommand(ui, options, cmd, d) 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 114s + return cmdfunc() 114s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 114s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 114s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 114s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 114s + return func(*args, **kwargs) 114s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 114s + r = hg.clone( 114s + ui, 114s + ...<11 lines>... 114s + depth=opts.get('depth') or None, 114s + ) 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 114s + srcpeer, destpeer = orig(*args, **opts) 114s + ~~~~^^^^^^^^^^^^^^^ 114s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 114s + exchange.pull( 114s + ~~~~~~~~~~~~~^ 114s + local, 114s + ^^^^^^ 114s + ...<5 lines>... 114s + depth=depth, 114s + ^^^^^^^^^^^^ 114s + ) 114s + ^ 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 114s + return f(*args, **kwargs) 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 114s + pullop.cgresult = repo.githandler.fetch(remote, heads) 114s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 114s + imported = self.import_git_objects( 114s + b'pull', 114s + ...<2 lines>... 114s + heads=heads, 114s + ) 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 114s + self.import_git_commit( 114s + ~~~~~~~~~~~~~~~~~~~~~~^ 114s + command, 114s + ^^^^^^^^ 114s + self.git[commit.sha], 114s + ^^^^^^^^^^^^^^^^^^^^^ 114s + commit.phase, 114s + ^^^^^^^^^^^^^ 114s + ) 114s + ^ 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 114s + files, gitlinks, git_renames = self.get_files_changed( 114s + ~~~~~~~~~~~~~~~~~~~~~~^ 114s + commit, detect_renames 114s + ^^^^^^^^^^^^^^^^^^^^^^ 114s + ) 114s + ^ 114s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 114s + oldfile, oldmode, oldsha = change.old 114s + ^^^^^^^^^^^^^^^^^^^^^^^^ 114s + TypeError: cannot unpack non-iterable NoneType object 114s importing 1 git commits 114s - new changesets ff7a2f2d8d70 (1 drafts) 114s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 114s 114s $ cd hgrepo 114s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 114s $ hg phase -r master 114s - 0: draft 114s - 114s -pulling advances the draft phase, though 114s - 114s - $ hg phase -fs 0 114s - $ hg pull 114s - pulling from $TESTTMP/gitrepo 114s - no changes found 114s - $ hg phase tip 114s - 0: draft 114s - 114s -even if we don't have a name? 114s - 114s - $ hg phase -fs 0 114s - $ mv .hg/hgrc .hg/hgrc.bak 114s - $ hg pull ../gitrepo 114s - pulling from ../gitrepo 114s - no changes found 114s - $ hg phase tip 114s - 0: draft 114s - $ mv .hg/hgrc.bak .hg/hgrc 114s - $ cd .. 114s - 114s - 114s -pulling without hggit.usephases does not publish local changesets 114s - $ cd gitrepo 114s - $ git checkout -q master 114s - $ echo beta > beta 114s - $ git add beta 114s - $ fn_git_commit -m 'add beta' 114s - $ cd .. 114s - 114s - $ cd hgrepo 114s - $ hg pull 114s - pulling from $TESTTMP/gitrepo 114s - importing 1 git commits 114s - updating bookmark master 114s - new changesets 7fe02317c63d (1 drafts) 114s - (run 'hg update' to get a working copy) 114s - $ hg phase -r master 114s - 1: draft 114s - 114s -pulling with git.public does not publish local changesets 114s - $ hg --config git.public=master pull 114s - pulling from $TESTTMP/gitrepo 114s - no changes found 114s - $ hg phase -r master 114s - 1: draft 114s - 114s -pushing without hggit.usephases does not publish local changesets 114s - $ hg update master 114s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 114s - $ echo gamma > gamma 114s - $ hg add gamma 114s - $ hg commit -m 'gamma' 114s - $ hg push 114s - pushing to $TESTTMP/gitrepo 114s - searching for changes 114s - adding objects 114s - remote: found 0 deltas to reuse 114s - added 1 commits with 1 trees and 1 blobs 114s - updating reference refs/heads/master 114s - $ hg phase -r master 114s - 2: draft 114s 114s ERROR: test-phases-draft.t output changed 115s ! 115s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-conflict-1.t 115s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-conflict-1.t.err 115s @@ -47,29 +47,84 @@ 115s $ hg bookmark -r tip master 115s $ hg push -r master ../repo.git 115s pushing to ../repo.git 115s - searching for changes 115s - adding objects 115s - remote: found 0 deltas to reuse 115s - added 4 commits with 3 trees and 3 blobs 115s - adding reference refs/heads/master 115s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 115s + ** which supports versions 6.9 of Mercurial. 115s + ** Please disable "hggit" and try your action again. 115s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 115s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 115s + ** Mercurial Distributed SCM (version 7.0.1) 115s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 115s + Traceback (most recent call last): 115s + File "/usr/bin/hg", line 51, in 115s + dispatch.run() 115s + ~~~~~~~~~~~~^^ 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 115s + status = dispatch(req) 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 115s + status = _rundispatch(req) 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 115s + ret = _runcatch(req) or 0 115s + ~~~~~~~~~^^^^^ 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 115s + return _callcatch(ui, _runcatchfunc) 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 115s + return scmutil.callcatch(ui, func) 115s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 115s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 115s + return func() 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 115s + return _dispatch(req) 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 115s + return runcommand( 115s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 115s + ) 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 115s + ret = _runcommand(ui, options, cmd, d) 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 115s + return cmdfunc() 115s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 115s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 115s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 115s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 115s + return func(*args, **kwargs) 115s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 115s + pushop = exchange.push( 115s + repo, 115s + ...<6 lines>... 115s + opargs=opargs, 115s + ) 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 115s + return f(*args, **kwargs) 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 115s + pushop.cgresult = repo.githandler.push( 115s + ~~~~~~~~~~~~~~~~~~~~^ 115s + remote.path, revs, bookmarks, force 115s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 115s + ) 115s + ^ 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 115s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 115s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 115s + all_exportable = self.export_commits() 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 115s + self.export_git_objects() 115s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 115s + packer.pack(synchronous=True) 115s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 115s + _process_batch(self.ui, self.object_store, todo) 115s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 115s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 115s + object_store._remove_loose_object(obj.id) 115s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 115s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 115s + [1] 115s $ cd .. 115s 115s $ hg clone repo.git hgrepo2 115s - importing 4 git commits 115s - new changesets 5d1a6b64f9d0:6c53bc0f062f (4 drafts) 115s - updating to bookmark master 115s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 115s + updating to branch default 115s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 115s expect the same revision ids as above 115s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 115s - @ 3:1,2 6c53bc0f062f 1970-01-01 00:00 +0000 test 115s - |\ merge to C 115s - | | 115s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 115s - | | A->B 115s - | | 115s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 115s - |/ A->C 115s - | 115s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 115s - origin 115s - 115s 115s ERROR: test-conflict-1.t output changed 116s ! 116s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-push.t 116s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-push.t.err 116s @@ -41,11 +41,80 @@ 116s pushing subrepo hg to $TESTTMP/hgsubrepo 116s searching for changes 116s no changes found 116s - searching for changes 116s - adding objects 116s - remote: found 0 deltas to reuse 116s - added 4 commits with 2 trees and 2 blobs 116s - adding reference refs/heads/master 116s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 116s + ** which supports versions 6.9 of Mercurial. 116s + ** Please disable "hggit" and try your action again. 116s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 116s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 117s + ** Mercurial Distributed SCM (version 7.0.1) 117s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 117s + Traceback (most recent call last): 117s + File "/usr/bin/hg", line 51, in 117s + dispatch.run() 117s + ~~~~~~~~~~~~^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 117s + status = dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 117s + status = _rundispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 117s + ret = _runcatch(req) or 0 117s + ~~~~~~~~~^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 117s + return _callcatch(ui, _runcatchfunc) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 117s + return scmutil.callcatch(ui, func) 117s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 117s + return func() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 117s + return _dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 117s + return runcommand( 117s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 117s + ) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 117s + ret = _runcommand(ui, options, cmd, d) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 117s + return cmdfunc() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 117s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 117s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 117s + return func(*args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 117s + pushop = exchange.push( 117s + repo, 117s + ...<6 lines>... 117s + opargs=opargs, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 117s + return f(*args, **kwargs) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 117s + pushop.cgresult = repo.githandler.push( 117s + ~~~~~~~~~~~~~~~~~~~~^ 117s + remote.path, revs, bookmarks, force 117s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 117s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 117s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 117s + all_exportable = self.export_commits() 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 117s + self.export_git_objects() 117s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 117s + packer.pack(synchronous=True) 117s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 117s + _process_batch(self.ui, self.object_store, todo) 117s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 117s + object_store._remove_loose_object(obj.id) 117s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 117s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 117s + [1] 117s $ cat .hgsub 117s hg = ../hgsubrepo 117s git = [git]../gitsubrepo 117s @@ -58,21 +127,14 @@ 117s 117s $ git clone --recurse-submodules repo.git gitrepo 117s Cloning into 'gitrepo'... 117s + warning: You appear to have cloned an empty repository. 117s done. 117s - Submodule 'git' ($TESTTMP/gitsubrepo) registered for path 'git' 117s - Cloning into '$TESTTMP/gitrepo/git'... 117s - done. 117s - Submodule path 'git': checked out 'aaae5224095dca7403147c0e20cbac1f450b0e95' 117s $ cd gitrepo 117s $ ls -A 117s .git 117s - .gitmodules 117s - alpha 117s - git 117s $ cat .gitmodules 117s - [submodule "git"] 117s - path = git 117s - url = ../gitsubrepo 117s + cat: .gitmodules: No such file or directory (os error 2) 117s + [1] 117s $ ls -A git 117s - .git 117s - thefile 117s + ls: cannot access 'git': No such file or directory 117s + [2] 117s 117s ERROR: test-subrepos-push.t output changed 117s ! 117s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull-after-obsolete.t 117s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-pull-after-obsolete.t.err 117s @@ -21,51 +21,99 @@ 117s $ cd .. 117s $ hg clone -U gitrepo hgrepo 117s importing 2 git commits 117s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 117s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 117s + ** which supports versions 6.9 of Mercurial. 117s + ** Please disable "hggit" and try your action again. 117s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 117s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 117s + ** Mercurial Distributed SCM (version 7.0.1) 117s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 117s + Traceback (most recent call last): 117s + File "/usr/bin/hg", line 51, in 117s + dispatch.run() 117s + ~~~~~~~~~~~~^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 117s + status = dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 117s + status = _rundispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 117s + ret = _runcatch(req) or 0 117s + ~~~~~~~~~^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 117s + return _callcatch(ui, _runcatchfunc) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 117s + return scmutil.callcatch(ui, func) 117s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 117s + return func() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 117s + return _dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 117s + return runcommand( 117s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 117s + ) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 117s + ret = _runcommand(ui, options, cmd, d) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 117s + return cmdfunc() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 117s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 117s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 117s + return func(*args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 117s + r = hg.clone( 117s + ui, 117s + ...<11 lines>... 117s + depth=opts.get('depth') or None, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 117s + srcpeer, destpeer = orig(*args, **opts) 117s + ~~~~^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 117s + exchange.pull( 117s + ~~~~~~~~~~~~~^ 117s + local, 117s + ^^^^^^ 117s + ...<5 lines>... 117s + depth=depth, 117s + ^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 117s + return f(*args, **kwargs) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 117s + pullop.cgresult = repo.githandler.fetch(remote, heads) 117s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 117s + imported = self.import_git_objects( 117s + b'pull', 117s + ...<2 lines>... 117s + heads=heads, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 117s + self.import_git_commit( 117s + ~~~~~~~~~~~~~~~~~~~~~~^ 117s + command, 117s + ^^^^^^^^ 117s + self.git[commit.sha], 117s + ^^^^^^^^^^^^^^^^^^^^^ 117s + commit.phase, 117s + ^^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 117s + files, gitlinks, git_renames = self.get_files_changed( 117s + ~~~~~~~~~~~~~~~~~~~~~~^ 117s + commit, detect_renames 117s + ^^^^^^^^^^^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 117s + oldfile, oldmode, oldsha = change.old 117s + ^^^^^^^^^^^^^^^^^^^^^^^^ 117s + TypeError: cannot unpack non-iterable NoneType object 117s + [1] 117s $ cd hgrepo 117s + $TESTTMP.sh: 31: cd: can't cd to hgrepo 117s $ hg up master 117s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 117s - (activating bookmark master) 117s - $ hg log --graph 117s - @ changeset: 1:7fe02317c63d 117s - | bookmark: master 117s - | tag: default/master 117s - | tag: thetag 117s - | tag: tip 117s - | user: test 117s - | date: Mon Jan 01 00:00:11 2007 +0000 117s - | summary: add beta 117s - | 117s - o changeset: 0:ff7a2f2d8d70 117s - user: test 117s - date: Mon Jan 01 00:00:10 2007 +0000 117s - summary: add alpha 117s - 117s - $ cd ../gitrepo 117s - $ echo beta line 2 >> beta 117s - $ git add beta 117s - $ fn_git_commit -m 'add to beta' 117s - 117s -Create a commit, obsolete it, and pull, to ensure that we can pull if 117s -the tipmost commit is hidden. 117s - 117s - $ cd ../hgrepo 117s - $ hg bookmark --inactive 117s - $ echo gamma > gamma 117s - $ hg add gamma 117s - $ fn_hg_commit -m 'add gamma' 117s - $ hg up master 117s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 117s - (activating bookmark master) 117s - $ hg log -T '{rev}:{node} {desc}\n' -r tip 117s - 2:4090a1266584bc1a47ce562e9349b1e0f1b44611 add gamma 117s - $ hg debugobsolete 4090a1266584bc1a47ce562e9349b1e0f1b44611 117s - 1 new obsolescence markers 117s - obsoleted 1 changesets 117s - 117s - $ hg pull 117s - pulling from $TESTTMP/gitrepo 117s - importing 1 git commits 117s - updating bookmark master 117s - new changesets cc1e605d90db (1 drafts) 117s - (run 'hg update' to get a working copy) 117s 117s ERROR: test-pull-after-obsolete.t output changed 117s ! 117s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-clone.t 117s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-clone.t.err 117s @@ -15,29 +15,110 @@ 117s 117s $ hg clone gitrepo hgrepo 117s importing 2 git commits 117s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 117s - updating to bookmark master 117s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 117s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 117s + ** which supports versions 6.9 of Mercurial. 117s + ** Please disable "hggit" and try your action again. 117s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 117s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 117s + ** Mercurial Distributed SCM (version 7.0.1) 117s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 117s + Traceback (most recent call last): 117s + File "/usr/bin/hg", line 51, in 117s + dispatch.run() 117s + ~~~~~~~~~~~~^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 117s + status = dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 117s + status = _rundispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 117s + ret = _runcatch(req) or 0 117s + ~~~~~~~~~^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 117s + return _callcatch(ui, _runcatchfunc) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 117s + return scmutil.callcatch(ui, func) 117s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 117s + return func() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 117s + return _dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 117s + return runcommand( 117s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 117s + ) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 117s + ret = _runcommand(ui, options, cmd, d) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 117s + return cmdfunc() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 117s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 117s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 117s + return func(*args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 117s + r = hg.clone( 117s + ui, 117s + ...<11 lines>... 117s + depth=opts.get('depth') or None, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 117s + srcpeer, destpeer = orig(*args, **opts) 117s + ~~~~^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 117s + exchange.pull( 117s + ~~~~~~~~~~~~~^ 117s + local, 117s + ^^^^^^ 117s + ...<5 lines>... 117s + depth=depth, 117s + ^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 117s + return f(*args, **kwargs) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 117s + pullop.cgresult = repo.githandler.fetch(remote, heads) 117s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 117s + imported = self.import_git_objects( 117s + b'pull', 117s + ...<2 lines>... 117s + heads=heads, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 117s + self.import_git_commit( 117s + ~~~~~~~~~~~~~~~~~~~~~~^ 117s + command, 117s + ^^^^^^^^ 117s + self.git[commit.sha], 117s + ^^^^^^^^^^^^^^^^^^^^^ 117s + commit.phase, 117s + ^^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 117s + files, gitlinks, git_renames = self.get_files_changed( 117s + ~~~~~~~~~~~~~~~~~~~~~~^ 117s + commit, detect_renames 117s + ^^^^^^^^^^^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 117s + oldfile, oldmode, oldsha = change.old 117s + ^^^^^^^^^^^^^^^^^^^^^^^^ 117s + TypeError: cannot unpack non-iterable NoneType object 117s + [1] 117s $ hg -R hgrepo log --graph 117s - @ changeset: 1:7fe02317c63d 117s - | bookmark: master 117s - | tag: default/master 117s - | tag: tip 117s - | user: test 117s - | date: Mon Jan 01 00:00:11 2007 +0000 117s - | summary: add beta 117s - | 117s - o changeset: 0:ff7a2f2d8d70 117s - user: test 117s - date: Mon Jan 01 00:00:10 2007 +0000 117s - summary: add alpha 117s - 117s + abort: repository hgrepo not found 117s + [255] 117s 117s we should have some bookmarks 117s $ hg -R hgrepo book 117s - * master 1:7fe02317c63d 117s + abort: repository hgrepo not found 117s + [255] 117s $ hg -R hgrepo gverify 117s - verifying rev 7fe02317c63d against git commit 9497a4ee62e16ee641860d7677cdb2589ea15554 117s + abort: repository hgrepo not found 117s + [255] 117s 117s test for ssh vulnerability 117s 117s @@ -53,10 +134,180 @@ 117s abort: potentially unsafe hostname: '-oProxyCommand=rm${IFS}nonexistent' 117s [255] 117s $ hg clone -q 'git+ssh://fakehost|rm${IFS}nonexistent/path' 117s - ssh: * fakehost%7?rm%24%7????%7?nonexistent* (glob) 117s - abort: git remote error: The remote server unexpectedly closed the connection. 117s - [255] 117s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 117s + ** which supports versions 6.9 of Mercurial. 117s + ** Please disable "hggit" and try your action again. 117s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 117s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 117s + ** Mercurial Distributed SCM (version 7.0.1) 117s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 117s + Traceback (most recent call last): 117s + File "/usr/bin/hg", line 51, in 117s + dispatch.run() 117s + ~~~~~~~~~~~~^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 117s + status = dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 117s + status = _rundispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 117s + ret = _runcatch(req) or 0 117s + ~~~~~~~~~^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 117s + return _callcatch(ui, _runcatchfunc) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 117s + return scmutil.callcatch(ui, func) 117s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 117s + return func() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 117s + return _dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 117s + return runcommand( 117s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 117s + ) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 117s + ret = _runcommand(ui, options, cmd, d) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 117s + return cmdfunc() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 117s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 117s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 117s + return func(*args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 117s + r = hg.clone( 117s + ui, 117s + ...<11 lines>... 117s + depth=opts.get('depth') or None, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 117s + srcpeer, destpeer = orig(*args, **opts) 117s + ~~~~^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 117s + exchange.pull( 117s + ~~~~~~~~~~~~~^ 117s + local, 117s + ^^^^^^ 117s + ...<5 lines>... 117s + depth=depth, 117s + ^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 117s + return f(*args, **kwargs) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 117s + pullop.cgresult = repo.githandler.fetch(remote, heads) 117s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 391, in fetch 117s + result = self.fetch_pack(remote.path, heads) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1644, in fetch_pack 117s + ret = self._call_client( 117s + remote, 117s + ...<4 lines>... 117s + progress.progress, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1680, in _call_client 117s + ret = func(path, *args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 117s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 117s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 117s + con = self.ssh_vendor.run_command( 117s + self.host, 117s + ...<4 lines>... 117s + **kwargs, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/_ssh.py", line 23, in run_command 117s + assert isinstance(command, str) 117s + ~~~~~~~~~~^^^^^^^^^^^^^^ 117s + AssertionError 117s + [1] 117s $ hg clone -q 'git+ssh://fakehost%7Crm${IFS}nonexistent/path' 117s - ssh: * fakehost%7?rm%24%7????%7?nonexistent* (glob) 117s - abort: git remote error: The remote server unexpectedly closed the connection. 117s - [255] 117s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 117s + ** which supports versions 6.9 of Mercurial. 117s + ** Please disable "hggit" and try your action again. 117s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 117s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 117s + ** Mercurial Distributed SCM (version 7.0.1) 117s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 117s + Traceback (most recent call last): 117s + File "/usr/bin/hg", line 51, in 117s + dispatch.run() 117s + ~~~~~~~~~~~~^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 117s + status = dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 117s + status = _rundispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 117s + ret = _runcatch(req) or 0 117s + ~~~~~~~~~^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 117s + return _callcatch(ui, _runcatchfunc) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 117s + return scmutil.callcatch(ui, func) 117s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 117s + return func() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 117s + return _dispatch(req) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 117s + return runcommand( 117s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 117s + ) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 117s + ret = _runcommand(ui, options, cmd, d) 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 117s + return cmdfunc() 117s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 117s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 117s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 117s + return func(*args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 117s + r = hg.clone( 117s + ui, 117s + ...<11 lines>... 117s + depth=opts.get('depth') or None, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 117s + srcpeer, destpeer = orig(*args, **opts) 117s + ~~~~^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 117s + exchange.pull( 117s + ~~~~~~~~~~~~~^ 117s + local, 117s + ^^^^^^ 117s + ...<5 lines>... 117s + depth=depth, 117s + ^^^^^^^^^^^^ 117s + ) 117s + ^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 117s + return f(*args, **kwargs) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 117s + pullop.cgresult = repo.githandler.fetch(remote, heads) 117s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 391, in fetch 117s + result = self.fetch_pack(remote.path, heads) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1644, in fetch_pack 117s + ret = self._call_client( 117s + remote, 117s + ...<4 lines>... 117s + progress.progress, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1680, in _call_client 117s + ret = func(path, *args, **kwargs) 117s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 117s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 117s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 117s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 117s + con = self.ssh_vendor.run_command( 117s + self.host, 117s + ...<4 lines>... 117s + **kwargs, 117s + ) 117s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/_ssh.py", line 23, in run_command 117s + assert isinstance(command, str) 117s + ~~~~~~~~~~^^^^^^^^^^^^^^ 117s + AssertionError 117s + [1] 117s 117s ERROR: test-git-clone.t output changed 118s ! 118s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-gpg.t 118s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-git-gpg.t.err 118s @@ -56,22 +56,100 @@ 118s 118s $ hg clone gitrepo hgrepo 118s importing 2 git commits 118s - new changesets ab60c5e55bd6:[0-9a-f]{12,12} \(2 drafts\) (re) 118s - updating to bookmark signed 118s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 118s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 118s + ** which supports versions 6.9 of Mercurial. 118s + ** Please disable "hggit" and try your action again. 118s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 118s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 118s + ** Mercurial Distributed SCM (version 7.0.1) 118s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 118s + Traceback (most recent call last): 118s + File "/usr/bin/hg", line 51, in 118s + dispatch.run() 118s + ~~~~~~~~~~~~^^ 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 118s + status = dispatch(req) 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 118s + status = _rundispatch(req) 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 118s + ret = _runcatch(req) or 0 118s + ~~~~~~~~~^^^^^ 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 118s + return _callcatch(ui, _runcatchfunc) 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 118s + return scmutil.callcatch(ui, func) 118s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 118s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 118s + return func() 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 118s + return _dispatch(req) 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 118s + return runcommand( 118s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 118s + ) 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 118s + ret = _runcommand(ui, options, cmd, d) 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 118s + return cmdfunc() 118s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 118s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 118s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 118s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 118s + return func(*args, **kwargs) 118s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 118s + r = hg.clone( 118s + ui, 118s + ...<11 lines>... 118s + depth=opts.get('depth') or None, 118s + ) 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 118s + srcpeer, destpeer = orig(*args, **opts) 118s + ~~~~^^^^^^^^^^^^^^^ 118s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 118s + exchange.pull( 118s + ~~~~~~~~~~~~~^ 118s + local, 118s + ^^^^^^ 118s + ...<5 lines>... 118s + depth=depth, 118s + ^^^^^^^^^^^^ 118s + ) 118s + ^ 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 118s + return f(*args, **kwargs) 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 118s + pullop.cgresult = repo.githandler.fetch(remote, heads) 118s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 118s + imported = self.import_git_objects( 118s + b'pull', 118s + ...<2 lines>... 118s + heads=heads, 118s + ) 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 118s + self.import_git_commit( 118s + ~~~~~~~~~~~~~~~~~~~~~~^ 118s + command, 118s + ^^^^^^^^ 118s + self.git[commit.sha], 118s + ^^^^^^^^^^^^^^^^^^^^^ 118s + commit.phase, 118s + ^^^^^^^^^^^^^ 118s + ) 118s + ^ 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 118s + files, gitlinks, git_renames = self.get_files_changed( 118s + ~~~~~~~~~~~~~~~~~~~~~~^ 118s + commit, detect_renames 118s + ^^^^^^^^^^^^^^^^^^^^^^ 118s + ) 118s + ^ 118s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 118s + oldfile, oldmode, oldsha = change.old 118s + ^^^^^^^^^^^^^^^^^^^^^^^^ 118s + TypeError: cannot unpack non-iterable NoneType object 118s + [1] 118s 118s $ cd hgrepo 118s + $TESTTMP.sh: 46: cd: can't cd to hgrepo 118s $ hg push ../gitrepo2 -B signed 118s - pushing to ../gitrepo2 118s - searching for changes 118s - adding objects 118s - remote: found 0 deltas to reuse 118s - added 1 commits with 1 trees and 0 blobs 118s - adding reference refs/heads/signed 118s - $ cd .. 118s - 118s -Verify the commit 118s - 118s - $ cd gitrepo2 118s - $ git show --show-signature signed | grep "Good signature from" 118s - gpg: Good signature from "hgtest" [ultimate] 118s 118s ERROR: test-git-gpg.t output changed 120s ! 120s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-annotate.t 120s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-annotate.t.err 120s @@ -46,6 +46,63 @@ 120s 0* a 120s 120s $ hg gexport 120s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 120s + ** which supports versions 6.9 of Mercurial. 120s + ** Please disable "hggit" and try your action again. 120s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 120s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 120s + ** Mercurial Distributed SCM (version 7.0.1) 120s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 120s + Traceback (most recent call last): 120s + File "/usr/bin/hg", line 51, in 120s + dispatch.run() 120s + ~~~~~~~~~~~~^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 120s + status = dispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 120s + status = _rundispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 120s + ret = _runcatch(req) or 0 120s + ~~~~~~~~~^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 120s + return _callcatch(ui, _runcatchfunc) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 120s + return scmutil.callcatch(ui, func) 120s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 120s + return func() 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 120s + return _dispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 120s + return runcommand( 120s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 120s + ) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 120s + ret = _runcommand(ui, options, cmd, d) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 120s + return cmdfunc() 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 120s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 120s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 120s + return func(*args, **kwargs) 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 120s + repo.githandler.export_commits() 120s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 120s + self.export_git_objects() 120s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 120s + packer.pack(synchronous=True) 120s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 120s + _process_batch(self.ui, self.object_store, todo) 120s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 120s + object_store._remove_loose_object(obj.id) 120s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 120s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 120s + [1] 120s $ hg log -T '{rev}:{node} {gitnode}\n' 120s 2:beb139b96eec386addc02d48db524b7646ef1605 19388575d02e71e917e7013aa854d4a21c509819 120s 1:a9a255d66663f9216bdcf8dda69211d7280f7278 debec50a14cc4830584dd4fa1507c51cce1c098f 120s 120s ERROR: test-annotate.t output changed 120s ! 120s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-phases.t 120s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-phases.t.err 120s @@ -26,12 +26,80 @@ 120s $ hg book -r . secret 120s $ hg push 120s pushing to $TESTTMP/repo.git 120s - warning: not exporting secret bookmark 'secret' 120s - searching for changes 120s - adding objects 120s - remote: found 0 deltas to reuse 120s - added 1 commits with 1 trees and 1 blobs 120s - adding reference refs/heads/master 120s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 120s + ** which supports versions 6.9 of Mercurial. 120s + ** Please disable "hggit" and try your action again. 120s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 120s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 120s + ** Mercurial Distributed SCM (version 7.0.1) 120s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 120s + Traceback (most recent call last): 120s + File "/usr/bin/hg", line 51, in 120s + dispatch.run() 120s + ~~~~~~~~~~~~^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 120s + status = dispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 120s + status = _rundispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 120s + ret = _runcatch(req) or 0 120s + ~~~~~~~~~^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 120s + return _callcatch(ui, _runcatchfunc) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 120s + return scmutil.callcatch(ui, func) 120s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 120s + return func() 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 120s + return _dispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 120s + return runcommand( 120s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 120s + ) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 120s + ret = _runcommand(ui, options, cmd, d) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 120s + return cmdfunc() 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 120s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 120s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 120s + return func(*args, **kwargs) 120s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 120s + pushop = exchange.push( 120s + repo, 120s + ...<6 lines>... 120s + opargs=opargs, 120s + ) 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 120s + return f(*args, **kwargs) 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 120s + pushop.cgresult = repo.githandler.push( 120s + ~~~~~~~~~~~~~~~~~~~~^ 120s + remote.path, revs, bookmarks, force 120s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 120s + ) 120s + ^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 120s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 120s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 120s + all_exportable = self.export_commits() 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 120s + self.export_git_objects() 120s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 120s + packer.pack(synchronous=True) 120s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 120s + _process_batch(self.ui, self.object_store, todo) 120s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 120s + object_store._remove_loose_object(obj.id) 120s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 120s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 120s + [1] 120s $ cd .. 120s $ hg -R hgrepo log --graph --template phases 120s @ changeset: 1:62966756ea96 120s @@ -44,8 +112,7 @@ 120s | 120s o changeset: 0:d4b83afc35d1 120s bookmark: master 120s - tag: default/master 120s - phase: public 120s + phase: draft 120s user: test 120s date: Mon Jan 01 00:00:10 2007 +0000 120s summary: alpha 120s @@ -63,14 +130,9 @@ 120s Only one changeset was pushed: 120s 120s $ GIT_DIR=repo.git git log --graph --all --decorate=short 120s - * commit 2cc4e3d19551e459a0dd606f4cf890de571c7d33 (HEAD -> master) 120s - Author: test 120s - Date: Mon Jan 1 00:00:10 2007 +0000 120s - 120s - alpha 120s 120s And this published the remote head: 120s 120s $ hg -R hgrepo phase 'all()' 120s - 0: public 120s + 0: draft 120s 1: secret 120s 120s ERROR: test-push-phases.t output changed 120s ! 120s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-keywords.t 120s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-keywords.t.err 120s @@ -22,28 +22,99 @@ 120s 120s $ hg clone gitrepo hgrepo 120s importing 3 git commits 120s - new changesets ff7a2f2d8d70:8e3f0ecc9aef (3 drafts) 120s - updating to bookmark master 120s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 120s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 120s + ** which supports versions 6.9 of Mercurial. 120s + ** Please disable "hggit" and try your action again. 120s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 120s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 120s + ** Mercurial Distributed SCM (version 7.0.1) 120s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 120s + Traceback (most recent call last): 120s + File "/usr/bin/hg", line 51, in 120s + dispatch.run() 120s + ~~~~~~~~~~~~^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 120s + status = dispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 120s + status = _rundispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 120s + ret = _runcatch(req) or 0 120s + ~~~~~~~~~^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 120s + return _callcatch(ui, _runcatchfunc) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 120s + return scmutil.callcatch(ui, func) 120s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 120s + return func() 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 120s + return _dispatch(req) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 120s + return runcommand( 120s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 120s + ) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 120s + ret = _runcommand(ui, options, cmd, d) 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 120s + return cmdfunc() 120s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 120s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 120s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 120s + return func(*args, **kwargs) 120s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 120s + r = hg.clone( 120s + ui, 120s + ...<11 lines>... 120s + depth=opts.get('depth') or None, 120s + ) 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 120s + srcpeer, destpeer = orig(*args, **opts) 120s + ~~~~^^^^^^^^^^^^^^^ 120s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 120s + exchange.pull( 120s + ~~~~~~~~~~~~~^ 120s + local, 120s + ^^^^^^ 120s + ...<5 lines>... 120s + depth=depth, 120s + ^^^^^^^^^^^^ 120s + ) 120s + ^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 120s + return f(*args, **kwargs) 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 120s + pullop.cgresult = repo.githandler.fetch(remote, heads) 120s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 120s + imported = self.import_git_objects( 120s + b'pull', 120s + ...<2 lines>... 120s + heads=heads, 120s + ) 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 120s + self.import_git_commit( 120s + ~~~~~~~~~~~~~~~~~~~~~~^ 120s + command, 120s + ^^^^^^^^ 120s + self.git[commit.sha], 120s + ^^^^^^^^^^^^^^^^^^^^^ 120s + commit.phase, 120s + ^^^^^^^^^^^^^ 120s + ) 120s + ^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 120s + files, gitlinks, git_renames = self.get_files_changed( 120s + ~~~~~~~~~~~~~~~~~~~~~~^ 120s + commit, detect_renames 120s + ^^^^^^^^^^^^^^^^^^^^^^ 120s + ) 120s + ^ 120s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 120s + oldfile, oldmode, oldsha = change.old 120s + ^^^^^^^^^^^^^^^^^^^^^^^^ 120s + TypeError: cannot unpack non-iterable NoneType object 120s + [1] 120s $ cd hgrepo 120s + $TESTTMP.sh: 30: cd: can't cd to hgrepo 120s $ echo gamma > gamma 120s - $ hg add gamma 120s - $ hg commit -m 'add gamma' 120s - 120s - $ hg log --template "{rev} {node} {node|short} {gitnode} {gitnode|short}\n" 120s - 3 965bf7d08d3ac847dd8eb9e72ee0bf547d1a65d9 965bf7d08d3a 120s - 2 8e3f0ecc9aefd4ea2fdf8e2d5299cac548762a1c 8e3f0ecc9aef 7e2a5465ff4e3b992c429bb87a392620a0ac97b7 7e2a5465ff4e 120s - 1 7fe02317c63d9ee324d4b5df7c9296085162da1b 7fe02317c63d 9497a4ee62e16ee641860d7677cdb2589ea15554 9497a4ee62e1 120s - 0 ff7a2f2d8d7099694ae1e8b03838d40575bebb63 ff7a2f2d8d70 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 7eeab2ea75ec 120s - $ hg log --template "fromgit {rev}\n" --rev "fromgit()" 120s - fromgit 0 120s - fromgit 1 120s - fromgit 2 120s - $ hg log --template "gitnode_existsA {rev}\n" --rev "gitnode(9497a4ee62e16ee641860d7677cdb2589ea15554)" 120s - gitnode_existsA 1 120s - $ hg log --template "gitnode_existsB {rev}\n" --rev "gitnode(7eeab)" 120s - gitnode_existsB 0 120s - $ hg log --rev "gitnode(7e)" 120s - abort: git-mapfile@7e: ambiguous identifier!? (re) 120s - [50] 120s - $ hg log --template "gitnode_notexists {rev}\n" --rev "gitnode(1234567890ab)" 120s 120s ERROR: test-keywords.t output changed 121s ! 121s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-delete.t 121s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-delete.t.err 121s @@ -53,21 +53,99 @@ 121s 121s $ hg clone -U repo.git hgrepo 121s importing 3 git commits 121s - new changesets e532b2bfda10:cc611d35fb62 (3 drafts) 121s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 121s + ** which supports versions 6.9 of Mercurial. 121s + ** Please disable "hggit" and try your action again. 121s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 121s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 121s + ** Mercurial Distributed SCM (version 7.0.1) 121s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 121s + Traceback (most recent call last): 121s + File "/usr/bin/hg", line 51, in 121s + dispatch.run() 121s + ~~~~~~~~~~~~^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 121s + status = dispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 121s + status = _rundispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 121s + ret = _runcatch(req) or 0 121s + ~~~~~~~~~^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 121s + return _callcatch(ui, _runcatchfunc) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 121s + return scmutil.callcatch(ui, func) 121s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 121s + return func() 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 121s + return _dispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 121s + return runcommand( 121s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 121s + ) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 121s + ret = _runcommand(ui, options, cmd, d) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 121s + return cmdfunc() 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 121s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 121s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 121s + return func(*args, **kwargs) 121s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 121s + r = hg.clone( 121s + ui, 121s + ...<11 lines>... 121s + depth=opts.get('depth') or None, 121s + ) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 121s + srcpeer, destpeer = orig(*args, **opts) 121s + ~~~~^^^^^^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 121s + exchange.pull( 121s + ~~~~~~~~~~~~~^ 121s + local, 121s + ^^^^^^ 121s + ...<5 lines>... 121s + depth=depth, 121s + ^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 121s + return f(*args, **kwargs) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 121s + pullop.cgresult = repo.githandler.fetch(remote, heads) 121s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 121s + imported = self.import_git_objects( 121s + b'pull', 121s + ...<2 lines>... 121s + heads=heads, 121s + ) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 121s + self.import_git_commit( 121s + ~~~~~~~~~~~~~~~~~~~~~~^ 121s + command, 121s + ^^^^^^^^ 121s + self.git[commit.sha], 121s + ^^^^^^^^^^^^^^^^^^^^^ 121s + commit.phase, 121s + ^^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 121s + files, gitlinks, git_renames = self.get_files_changed( 121s + ~~~~~~~~~~~~~~~~~~~~~~^ 121s + commit, detect_renames 121s + ^^^^^^^^^^^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 121s + oldfile, oldmode, oldsha = change.old 121s + ^^^^^^^^^^^^^^^^^^^^^^^^ 121s + TypeError: cannot unpack non-iterable NoneType object 121s + [1] 121s $ cd hgrepo 121s + $TESTTMP.sh: 50: cd: can't cd to hgrepo 121s $ hg log --graph --template info 121s - o 121s - | commit: 2:cc611d35fb62 delete subrepo 121s - | added: 121s - | removed: .hgsub .hgsubstate 121s - o 121s - | commit: 1:8d549bcc5179 add subrepo 121s - | added: .hgsub .hgsubstate 121s - | removed: 121s - o 121s - commit: 0:e532b2bfda10 add alpha 121s - added: alpha 121s - removed: 121s - $ hg manifest -r tip 121s - alpha 121s - $ cd .. 121s 121s ERROR: test-subrepos-delete.t output changed 121s ! 121s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-tree-decomposition.t 121s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-tree-decomposition.t.err 121s @@ -25,44 +25,99 @@ 121s 121s $ hg clone gitrepo hgrepo 121s importing 3 git commits 121s - new changesets d4d3d2417141:541f27994b81 (3 drafts) 121s - updating to bookmark master 121s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 121s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 121s + ** which supports versions 6.9 of Mercurial. 121s + ** Please disable "hggit" and try your action again. 121s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 121s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 121s + ** Mercurial Distributed SCM (version 7.0.1) 121s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 121s + Traceback (most recent call last): 121s + File "/usr/bin/hg", line 51, in 121s + dispatch.run() 121s + ~~~~~~~~~~~~^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 121s + status = dispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 121s + status = _rundispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 121s + ret = _runcatch(req) or 0 121s + ~~~~~~~~~^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 121s + return _callcatch(ui, _runcatchfunc) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 121s + return scmutil.callcatch(ui, func) 121s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 121s + return func() 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 121s + return _dispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 121s + return runcommand( 121s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 121s + ) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 121s + ret = _runcommand(ui, options, cmd, d) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 121s + return cmdfunc() 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 121s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 121s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 121s + return func(*args, **kwargs) 121s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 121s + r = hg.clone( 121s + ui, 121s + ...<11 lines>... 121s + depth=opts.get('depth') or None, 121s + ) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 121s + srcpeer, destpeer = orig(*args, **opts) 121s + ~~~~^^^^^^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 121s + exchange.pull( 121s + ~~~~~~~~~~~~~^ 121s + local, 121s + ^^^^^^ 121s + ...<5 lines>... 121s + depth=depth, 121s + ^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 121s + return f(*args, **kwargs) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 121s + pullop.cgresult = repo.githandler.fetch(remote, heads) 121s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 121s + imported = self.import_git_objects( 121s + b'pull', 121s + ...<2 lines>... 121s + heads=heads, 121s + ) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 121s + self.import_git_commit( 121s + ~~~~~~~~~~~~~~~~~~~~~~^ 121s + command, 121s + ^^^^^^^^ 121s + self.git[commit.sha], 121s + ^^^^^^^^^^^^^^^^^^^^^ 121s + commit.phase, 121s + ^^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 121s + files, gitlinks, git_renames = self.get_files_changed( 121s + ~~~~~~~~~~~~~~~~~~~~~~^ 121s + commit, detect_renames 121s + ^^^^^^^^^^^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 121s + oldfile, oldmode, oldsha = change.old 121s + ^^^^^^^^^^^^^^^^^^^^^^^^ 121s + TypeError: cannot unpack non-iterable NoneType object 121s + [1] 121s $ cd hgrepo 121s + $TESTTMP.sh: 38: cd: can't cd to hgrepo 121s $ hg log --template 'adds: {file_adds}\ndels: {file_dels}\n' 121s - adds: d1 121s - dels: d1/f1 121s - adds: d2/f2 121s - dels: d1/f2 121s - adds: d1/f1 d1/f2 121s - dels: 121s - 121s - $ hg debug-remove-hggit-state 121s - clearing out the git cache data 121s - $ hg push ../repo.git 121s - pushing to ../repo.git 121s - searching for changes 121s - adding objects 121s - remote: found 0 deltas to reuse 121s - added 3 commits with 6 trees and 3 blobs 121s - adding reference refs/heads/master 121s - $ cd .. 121s - 121s - $ git --git-dir=repo.git log --pretty=medium 121s - commit 6e0dbd8cd92ed4823c69cb48d8a2b81f904e6e69 121s - Author: test 121s - Date: Mon Jan 1 00:00:12 2007 +0000 121s - 121s - replace a dir with a file 121s - 121s - commit a1874d5cd0b1549ed729e36f0da4a93ed36259ee 121s - Author: test 121s - Date: Mon Jan 1 00:00:11 2007 +0000 121s - 121s - rename 121s - 121s - commit 102c17a5deda49db3f10ec5573f9378867098b7c 121s - Author: test 121s - Date: Mon Jan 1 00:00:10 2007 +0000 121s - 121s - initial 121s 121s ERROR: test-tree-decomposition.t output changed 121s ! 121s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-anonymous.t 121s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-push-anonymous.t.err 121s @@ -26,27 +26,99 @@ 121s 121s $ hg clone -U gitrepo hgrepo 121s importing 1 git commits 121s - new changesets ff7a2f2d8d70 (1 drafts) 121s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 121s + ** which supports versions 6.9 of Mercurial. 121s + ** Please disable "hggit" and try your action again. 121s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 121s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 121s + ** Mercurial Distributed SCM (version 7.0.1) 121s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 121s + Traceback (most recent call last): 121s + File "/usr/bin/hg", line 51, in 121s + dispatch.run() 121s + ~~~~~~~~~~~~^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 121s + status = dispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 121s + status = _rundispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 121s + ret = _runcatch(req) or 0 121s + ~~~~~~~~~^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 121s + return _callcatch(ui, _runcatchfunc) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 121s + return scmutil.callcatch(ui, func) 121s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 121s + return func() 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 121s + return _dispatch(req) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 121s + return runcommand( 121s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 121s + ) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 121s + ret = _runcommand(ui, options, cmd, d) 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 121s + return cmdfunc() 121s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 121s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 121s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 121s + return func(*args, **kwargs) 121s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 121s + r = hg.clone( 121s + ui, 121s + ...<11 lines>... 121s + depth=opts.get('depth') or None, 121s + ) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 121s + srcpeer, destpeer = orig(*args, **opts) 121s + ~~~~^^^^^^^^^^^^^^^ 121s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 121s + exchange.pull( 121s + ~~~~~~~~~~~~~^ 121s + local, 121s + ^^^^^^ 121s + ...<5 lines>... 121s + depth=depth, 121s + ^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 121s + return f(*args, **kwargs) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 121s + pullop.cgresult = repo.githandler.fetch(remote, heads) 121s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 121s + imported = self.import_git_objects( 121s + b'pull', 121s + ...<2 lines>... 121s + heads=heads, 121s + ) 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 121s + self.import_git_commit( 121s + ~~~~~~~~~~~~~~~~~~~~~~^ 121s + command, 121s + ^^^^^^^^ 121s + self.git[commit.sha], 121s + ^^^^^^^^^^^^^^^^^^^^^ 121s + commit.phase, 121s + ^^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 121s + files, gitlinks, git_renames = self.get_files_changed( 121s + ~~~~~~~~~~~~~~~~~~~~~~^ 121s + commit, detect_renames 121s + ^^^^^^^^^^^^^^^^^^^^^^ 121s + ) 121s + ^ 121s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 121s + oldfile, oldmode, oldsha = change.old 121s + ^^^^^^^^^^^^^^^^^^^^^^^^ 121s + TypeError: cannot unpack non-iterable NoneType object 121s + [1] 121s $ cd hgrepo 121s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 121s $ hg up tip 121s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 121s - $ echo beta > beta 121s - $ hg add beta 121s - $ fn_hg_commit -m "add beta" 121s - 121s -Pushing that changeset should print a helpful message: 121s - 121s - $ hg push 121s - pushing to $TESTTMP/gitrepo 121s - searching for changes 121s - no changes found (ignoring 1 changesets without bookmarks or tags) 121s - [1] 121s - 121s -But what about untagged, but secret changesets? 121s - 121s - $ hg phase -fs tip 121s - $ hg push 121s - pushing to $TESTTMP/gitrepo 121s - searching for changes 121s - no changes found 121s - [1] 121s 121s ERROR: test-push-anonymous.t output changed 122s ! 122s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-drop.t 122s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-subrepos-drop.t.err 122s @@ -37,11 +37,80 @@ 122s $ hg -R hgrepo push 122s pushing to $TESTTMP/repo.git 122s warning: ignoring modifications to '.gitmodules' file; please use '.hgsub' instead 122s - searching for changes 122s - adding objects 122s - remote: found 0 deltas to reuse 122s - added 2 commits with 1 trees and 1 blobs 122s - adding reference refs/heads/master 122s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 122s + ** which supports versions 6.9 of Mercurial. 122s + ** Please disable "hggit" and try your action again. 122s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 122s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 122s + ** Mercurial Distributed SCM (version 7.0.1) 122s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 122s + Traceback (most recent call last): 122s + File "/usr/bin/hg", line 51, in 122s + dispatch.run() 122s + ~~~~~~~~~~~~^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 122s + status = dispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 122s + status = _rundispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 122s + ret = _runcatch(req) or 0 122s + ~~~~~~~~~^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 122s + return _callcatch(ui, _runcatchfunc) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 122s + return scmutil.callcatch(ui, func) 122s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 122s + return func() 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 122s + return _dispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 122s + return runcommand( 122s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 122s + ) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 122s + ret = _runcommand(ui, options, cmd, d) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 122s + return cmdfunc() 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 122s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 122s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 122s + return func(*args, **kwargs) 122s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 122s + pushop = exchange.push( 122s + repo, 122s + ...<6 lines>... 122s + opargs=opargs, 122s + ) 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 122s + return f(*args, **kwargs) 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 122s + pushop.cgresult = repo.githandler.push( 122s + ~~~~~~~~~~~~~~~~~~~~^ 122s + remote.path, revs, bookmarks, force 122s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + ) 122s + ^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 122s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 122s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 122s + all_exportable = self.export_commits() 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 122s + self.export_git_objects() 122s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 122s + packer.pack(synchronous=True) 122s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 122s + _process_batch(self.ui, self.object_store, todo) 122s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 122s + object_store._remove_loose_object(obj.id) 122s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 122s + [1] 122s 122s But we don't get a warning if we don't touch .gitmodules: 122s 122s @@ -50,19 +119,87 @@ 122s $ fn_hg_commit -A -m 'add that' 122s $ hg push 122s pushing to $TESTTMP/repo.git 122s - searching for changes 122s - adding objects 122s - remote: found 0 deltas to reuse 122s - added 1 commits with 1 trees and 0 blobs 122s - updating reference refs/heads/master 122s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 122s + ** which supports versions 6.9 of Mercurial. 122s + ** Please disable "hggit" and try your action again. 122s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 122s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 122s + ** Mercurial Distributed SCM (version 7.0.1) 122s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 122s + Traceback (most recent call last): 122s + File "/usr/bin/hg", line 51, in 122s + dispatch.run() 122s + ~~~~~~~~~~~~^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 122s + status = dispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 122s + status = _rundispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 122s + ret = _runcatch(req) or 0 122s + ~~~~~~~~~^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 122s + return _callcatch(ui, _runcatchfunc) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 122s + return scmutil.callcatch(ui, func) 122s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 122s + return func() 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 122s + return _dispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 122s + return runcommand( 122s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 122s + ) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 122s + ret = _runcommand(ui, options, cmd, d) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 122s + return cmdfunc() 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 122s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 122s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 122s + return func(*args, **kwargs) 122s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 122s + pushop = exchange.push( 122s + repo, 122s + ...<6 lines>... 122s + opargs=opargs, 122s + ) 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 122s + return f(*args, **kwargs) 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 122s + pushop.cgresult = repo.githandler.push( 122s + ~~~~~~~~~~~~~~~~~~~~^ 122s + remote.path, revs, bookmarks, force 122s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + ) 122s + ^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 122s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 122s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 122s + all_exportable = self.export_commits() 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 122s + self.export_git_objects() 122s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 122s + packer.pack(synchronous=True) 122s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 122s + _process_batch(self.ui, self.object_store, todo) 122s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 122s + object_store._remove_loose_object(obj.id) 122s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 122s + [1] 122s $ cd .. 122s 122s Check that it didn't silenty come through, or something: 122s 122s $ git clone repo.git gitrepo 122s Cloning into 'gitrepo'... 122s + warning: You appear to have cloned an empty repository. 122s done. 122s $ ls -A gitrepo 122s .git 122s - that 122s - this 122s 122s ERROR: test-subrepos-drop.t output changed 122s ! 122s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-empty-working-tree.t 122s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-empty-working-tree.t.err 122s @@ -24,15 +24,81 @@ 122s clearing out the git cache data 122s $ hg push ../repo.git 122s pushing to ../repo.git 122s - searching for changes 122s - adding objects 122s - remote: found 0 deltas to reuse 122s - added 1 commits with 1 trees and 0 blobs 122s - adding reference refs/heads/master 122s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 122s + ** which supports versions 6.9 of Mercurial. 122s + ** Please disable "hggit" and try your action again. 122s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 122s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 122s + ** Mercurial Distributed SCM (version 7.0.1) 122s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 122s + Traceback (most recent call last): 122s + File "/usr/bin/hg", line 51, in 122s + dispatch.run() 122s + ~~~~~~~~~~~~^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 122s + status = dispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 122s + status = _rundispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 122s + ret = _runcatch(req) or 0 122s + ~~~~~~~~~^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 122s + return _callcatch(ui, _runcatchfunc) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 122s + return scmutil.callcatch(ui, func) 122s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 122s + return func() 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 122s + return _dispatch(req) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 122s + return runcommand( 122s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 122s + ) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 122s + ret = _runcommand(ui, options, cmd, d) 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 122s + return cmdfunc() 122s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 122s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 122s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 122s + return func(*args, **kwargs) 122s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 122s + pushop = exchange.push( 122s + repo, 122s + ...<6 lines>... 122s + opargs=opargs, 122s + ) 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 122s + return f(*args, **kwargs) 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 122s + pushop.cgresult = repo.githandler.push( 122s + ~~~~~~~~~~~~~~~~~~~~^ 122s + remote.path, revs, bookmarks, force 122s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + ) 122s + ^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 122s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 122s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 122s + all_exportable = self.export_commits() 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 122s + self.export_git_objects() 122s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 122s + packer.pack(synchronous=True) 122s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 122s + _process_batch(self.ui, self.object_store, todo) 122s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 122s + object_store._remove_loose_object(obj.id) 122s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 122s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 122s + [1] 122s $ cd .. 122s $ git --git-dir=repo.git log --pretty=medium 122s - commit 678256865a8c85ae925bf834369264193c88f8de 122s - Author: test 122s - Date: Mon Jan 1 00:00:00 2007 +0000 122s - 122s - empty 122s + fatal: your current branch 'master' does not have any commits yet 122s + [128] 122s 122s ERROR: test-empty-working-tree.t output changed 124s ! 124s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gitignore-permissions.t 124s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gitignore-permissions.t.err 124s @@ -18,6 +18,63 @@ 124s $ hg add thefile 124s $ hg ci -A -m commit 124s $ hg gexport 124s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 124s + ** which supports versions 6.9 of Mercurial. 124s + ** Please disable "hggit" and try your action again. 124s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 124s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 124s + ** Mercurial Distributed SCM (version 7.0.1) 124s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 124s + Traceback (most recent call last): 124s + File "/usr/bin/hg", line 51, in 124s + dispatch.run() 124s + ~~~~~~~~~~~~^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 124s + status = dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 124s + status = _rundispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 124s + ret = _runcatch(req) or 0 124s + ~~~~~~~~~^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 124s + return _callcatch(ui, _runcatchfunc) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 124s + return scmutil.callcatch(ui, func) 124s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 124s + return func() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 124s + return _dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 124s + return runcommand( 124s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 124s + ) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 124s + ret = _runcommand(ui, options, cmd, d) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 124s + return cmdfunc() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 124s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 124s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 124s + return func(*args, **kwargs) 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 124s + repo.githandler.export_commits() 124s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 124s + self.export_git_objects() 124s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 124s + packer.pack(synchronous=True) 124s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 124s + _process_batch(self.ui, self.object_store, todo) 124s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 124s + object_store._remove_loose_object(obj.id) 124s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 124s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 124s + [1] 124s 124s Create a file that we can ignore 124s 124s 124s ERROR: test-gitignore-permissions.t output changed 124s ! 124s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gitignore-share.t 124s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-gitignore-share.t.err 124s @@ -20,11 +20,80 @@ 124s $ hg book master 124s $ hg push 124s pushing to $TESTTMP/repo.git 124s - searching for changes 124s - adding objects 124s - remote: found 0 deltas to reuse 124s - added 1 commits with 1 trees and 1 blobs 124s - adding reference refs/heads/master 124s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 124s + ** which supports versions 6.9 of Mercurial. 124s + ** Please disable "hggit" and try your action again. 124s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 124s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 124s + ** Mercurial Distributed SCM (version 7.0.1) 124s + ** Extensions loaded: hggit unknown (dulwich 0.24.10), share 124s + Traceback (most recent call last): 124s + File "/usr/bin/hg", line 51, in 124s + dispatch.run() 124s + ~~~~~~~~~~~~^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 124s + status = dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 124s + status = _rundispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 124s + ret = _runcatch(req) or 0 124s + ~~~~~~~~~^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 124s + return _callcatch(ui, _runcatchfunc) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 124s + return scmutil.callcatch(ui, func) 124s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 124s + return func() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 124s + return _dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 124s + return runcommand( 124s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 124s + ) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 124s + ret = _runcommand(ui, options, cmd, d) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 124s + return cmdfunc() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 124s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 124s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 124s + return func(*args, **kwargs) 124s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 124s + pushop = exchange.push( 124s + repo, 124s + ...<6 lines>... 124s + opargs=opargs, 124s + ) 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 124s + return f(*args, **kwargs) 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 232, in exchangepush 124s + pushop.cgresult = repo.githandler.push( 124s + ~~~~~~~~~~~~~~~~~~~~^ 124s + remote.path, revs, bookmarks, force 124s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 124s + ) 124s + ^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 520, in push 124s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 124s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1421, in upload_pack 124s + all_exportable = self.export_commits() 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 124s + self.export_git_objects() 124s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 124s + packer.pack(synchronous=True) 124s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 124s + _process_batch(self.ui, self.object_store, todo) 124s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 124s + object_store._remove_loose_object(obj.id) 124s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 124s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 124s + [1] 124s $ cd .. 124s 124s We should also ignore the file in a shared repository: 124s 124s ERROR: test-gitignore-share.t output changed 124s ! 124s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-ambiguousprefix.t 124s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-ambiguousprefix.t.err 124s @@ -22,12 +22,101 @@ 124s 124s $ hg clone gitrepo hgrepo 124s importing 3 git commits 124s - new changesets ff7a2f2d8d70:8e3f0ecc9aef (3 drafts) 124s - updating to bookmark master 124s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 124s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 124s + ** which supports versions 6.9 of Mercurial. 124s + ** Please disable "hggit" and try your action again. 124s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 124s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 124s + ** Mercurial Distributed SCM (version 7.0.1) 124s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 124s + Traceback (most recent call last): 124s + File "/usr/bin/hg", line 51, in 124s + dispatch.run() 124s + ~~~~~~~~~~~~^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 124s + status = dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 124s + status = _rundispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 124s + ret = _runcatch(req) or 0 124s + ~~~~~~~~~^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 124s + return _callcatch(ui, _runcatchfunc) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 124s + return scmutil.callcatch(ui, func) 124s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 124s + return func() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 124s + return _dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 124s + return runcommand( 124s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 124s + ) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 124s + ret = _runcommand(ui, options, cmd, d) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 124s + return cmdfunc() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 124s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 124s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 124s + return func(*args, **kwargs) 124s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 124s + r = hg.clone( 124s + ui, 124s + ...<11 lines>... 124s + depth=opts.get('depth') or None, 124s + ) 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/schemes.py", line 116, in clone 124s + srcpeer, destpeer = orig(*args, **opts) 124s + ~~~~^^^^^^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 124s + exchange.pull( 124s + ~~~~~~~~~~~~~^ 124s + local, 124s + ^^^^^^ 124s + ...<5 lines>... 124s + depth=depth, 124s + ^^^^^^^^^^^^ 124s + ) 124s + ^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/util.py", line 98, in inner 124s + return f(*args, **kwargs) 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gitrepo.py", line 195, in exchangepull 124s + pullop.cgresult = repo.githandler.fetch(remote, heads) 124s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 397, in fetch 124s + imported = self.import_git_objects( 124s + b'pull', 124s + ...<2 lines>... 124s + heads=heads, 124s + ) 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1085, in import_git_objects 124s + self.import_git_commit( 124s + ~~~~~~~~~~~~~~~~~~~~~~^ 124s + command, 124s + ^^^^^^^^ 124s + self.git[commit.sha], 124s + ^^^^^^^^^^^^^^^^^^^^^ 124s + commit.phase, 124s + ^^^^^^^^^^^^^ 124s + ) 124s + ^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 1145, in import_git_commit 124s + files, gitlinks, git_renames = self.get_files_changed( 124s + ~~~~~~~~~~~~~~~~~~~~~~^ 124s + commit, detect_renames 124s + ^^^^^^^^^^^^^^^^^^^^^^ 124s + ) 124s + ^ 124s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 2130, in get_files_changed 124s + oldfile, oldmode, oldsha = change.old 124s + ^^^^^^^^^^^^^^^^^^^^^^^^ 124s + TypeError: cannot unpack non-iterable NoneType object 124s + [1] 124s 124s $ cd hgrepo 124s + $TESTTMP.sh: 30: cd: can't cd to hgrepo 124s 124s $ hg log -r 'gitnode(7e)' 124s - abort: git-mapfile@7e: ambiguous identifier!? (re) 124s - [50] 124s 124s ERROR: test-ambiguousprefix.t output changed 125s ! 125s --- /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-timezone.t 125s +++ /tmp/autopkgtest.5x2CBK/build.aD5/src/tests/test-timezone.t.err 125s @@ -30,3 +30,60 @@ 125s $ hg import patch2 125s applying patch2 125s $ hg gexport 125s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 125s + ** which supports versions 6.9 of Mercurial. 125s + ** Please disable "hggit" and try your action again. 125s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 125s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 125s + ** Mercurial Distributed SCM (version 7.0.1) 125s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 125s + Traceback (most recent call last): 125s + File "/usr/bin/hg", line 51, in 125s + dispatch.run() 125s + ~~~~~~~~~~~~^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 125s + status = dispatch(req) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 125s + status = _rundispatch(req) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 125s + ret = _runcatch(req) or 0 125s + ~~~~~~~~~^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 125s + return _callcatch(ui, _runcatchfunc) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 125s + return scmutil.callcatch(ui, func) 125s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 125s + return func() 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 125s + return _dispatch(req) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 125s + return runcommand( 125s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 125s + ) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 125s + ret = _runcommand(ui, options, cmd, d) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 125s + return cmdfunc() 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 125s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 125s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 125s + return func(*args, **kwargs) 125s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/commands.py", line 64, in gexport 125s + repo.githandler.export_commits() 125s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 125s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 465, in export_commits 125s + self.export_git_objects() 125s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 125s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/git_handler.py", line 715, in export_git_objects 125s + packer.pack(synchronous=True) 125s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 125s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 121, in pack 125s + _process_batch(self.ui, self.object_store, todo) 125s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 125s + File "/tmp/autopkgtest.5x2CBK/build.aD5/src/hggit/gc.py", line 59, in _process_batch 125s + object_store._remove_loose_object(obj.id) 125s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 125s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 125s + [1] 125s 125s ERROR: test-timezone.t output changed 127s !.s... 127s Skipped test-check-black.t: missing feature: the black formatter for python (>= 22.3) 127s Skipped test-check-commit.t: missing feature: running tests from repository 127s Skipped test-check-pyflakes.t: missing feature: Pyflakes python linter 127s Skipped test-check-pylint.t: missing feature: Pylint python linter 127s Skipped test-encoding.t: blacklisted 127s Skipped test-gitignore-windows.t: missing feature: Windows 127s Skipped test-incoming.t: blacklisted 127s Skipped test-serve-ci.t: skipped 127s Skipped test-serve-dulwich.t: blacklisted 127s Failed test-ambiguousprefix.t: output changed and returned error code 1 127s Failed test-annotate.t: output changed 127s Failed test-bookmark-workflow.t: output changed and returned error code 1 127s Failed test-branch-bookmark-suffix.t#with-path: output changed and returned error code 1 127s Failed test-branch-bookmark-suffix.t#without-path: output changed and returned error code 1 127s Failed test-bundle.t: output changed and returned error code 1 127s Failed test-clone.t#draft: output changed 127s Failed test-clone.t#secret: output changed 127s Failed test-conflict-1.t: output changed 127s Failed test-conflict-2.t: output changed 127s Failed test-convergedmerge.t: output changed 127s Failed test-empty-working-tree.t: output changed 127s Failed test-extra.t: output changed and returned error code 1 127s Failed test-file-removal.t: output changed and returned error code 1 127s Failed test-gc.t: output changed and returned error code 1 127s Failed test-git-clone.t: output changed 127s Failed test-git-gpg.t: output changed and returned error code 1 127s Failed test-git-submodules.t: output changed and returned error code 1 127s Failed test-git-tags.t#draft: output changed and returned error code 1 127s Failed test-git-tags.t#secret: output changed and returned error code 1 127s Failed test-git-workflow.t: output changed 127s Failed test-gitignore-permissions.t: output changed 127s Failed test-gitignore-share.t: output changed 127s Failed test-gitignore.t: output changed 127s Failed test-hg-author.t: output changed and returned error code 1 127s Failed test-hg-branch.t: output changed and returned error code 1 127s Failed test-hg-clone.t: output changed and returned error code 1 127s Failed test-hg-tags.t: output changed and returned error code 1 127s Failed test-hook.t: output changed 127s Failed test-illegal-contents.t: output changed 127s Failed test-invalid-refs.t: output changed and returned error code 1 127s Failed test-keywords.t: output changed and returned error code 1 127s Failed test-merge.t: output changed and returned error code 1 127s Failed test-multiple-remotes.t: output changed 127s Failed test-octopus.t: output changed and returned error code 1 127s Failed test-orphan-tags.t: output changed and returned error code 1 127s Failed test-outgoing.t: output changed and returned error code 1 127s Failed test-phases-draft.t: output changed and returned error code 1 127s Failed test-phases-public.t#publish-defaults: output changed and returned error code 1 127s Failed test-phases-public.t#publish-specific: output changed and returned error code 1 127s Failed test-phases-remote.t: output changed and returned error code 1 127s Failed test-pull-after-obsolete.t: output changed and returned error code 1 127s Failed test-pull-after-rebase.t: output changed and returned error code 1 127s Failed test-pull-after-strip.t: output changed and returned error code 1 127s Failed test-pull.t#draft: output changed 127s Failed test-pull.t#secret: output changed 127s Failed test-push-anonymous.t: output changed and returned error code 1 127s Failed test-push-authors.t: output changed 127s Failed test-push-detached.t: output changed and returned error code 1 127s Failed test-push-missing-commit.t: output changed and returned error code 1 127s Failed test-push-phases.t: output changed 127s Failed test-push-to-head.t: output changed and returned error code 1 127s Failed test-push.t: output changed and returned error code 1 127s Failed test-renames.t: output changed and returned error code 1 127s Failed test-serve-git.t: output changed 127s Failed test-serve-hg.t#with-hggit: output changed and returned error code 1 127s Failed test-serve-hg.t#without-hggit: output changed and returned error code 1 127s Failed test-subrepos-delete.t: output changed and returned error code 1 127s Failed test-subrepos-drop.t: output changed 127s Failed test-subrepos-push.t: output changed 127s Failed test-subrepos-syntax.t: output changed and returned error code 1 127s Failed test-subrepos.t: output changed and returned error code 1 127s Failed test-timezone.t: output changed 127s Failed test-transactions.t: output changed 127s Failed test-tree-decomposition.t: output changed and returned error code 1 127s Failed test-verify-fail.t: output changed 127s # Ran 73 tests, 9 skipped, 66 failed. 127s python hash seed: 2025211504 127s make: *** [Makefile:15: tests] Error 1 127s autopkgtest [16:30:38]: test testsuite: -----------------------] 128s autopkgtest [16:30:39]: test testsuite: - - - - - - - - - - results - - - - - - - - - - 128s testsuite FAIL non-zero exit status 2 129s autopkgtest [16:30:40]: test mercurial-git: preparing testbed 138s Creating nova instance adt-resolute-amd64-hg-git-20251117-162830-juju-7f2275-prod-proposed-migration-environment-2-18868380-ccee-4ebc-b9a1-912b947e5b3c from image adt/ubuntu-resolute-amd64-server-20251117.img (UUID 9762b0cc-7c5b-4854-acd5-cc74ad0de8c6)... 178s autopkgtest [16:31:29]: testbed dpkg architecture: amd64 178s autopkgtest [16:31:29]: testbed apt version: 3.1.11 179s autopkgtest [16:31:30]: @@@@@@@@@@@@@@@@@@@@ test bed setup 179s autopkgtest [16:31:30]: testbed release detected to be: resolute 180s autopkgtest [16:31:31]: updating testbed package index (apt update) 180s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 180s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 180s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 180s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 180s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [839 kB] 180s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 180s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9848 B] 180s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [81.5 kB] 180s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main i386 Packages [118 kB] 180s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 Packages [159 kB] 180s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 c-n-f Metadata [3236 B] 180s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/restricted i386 Packages [3744 B] 180s Get:13 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 Packages [64.6 kB] 180s Get:14 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 c-n-f Metadata [336 B] 180s Get:15 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 Packages [585 kB] 181s Get:16 http://ftpmaster.internal/ubuntu resolute-proposed/universe i386 Packages [271 kB] 181s Get:17 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 c-n-f Metadata [20.1 kB] 181s Get:18 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 Packages [13.4 kB] 181s Get:19 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse i386 Packages [6516 B] 181s Get:20 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 c-n-f Metadata [680 B] 182s Fetched 2286 kB in 1s (2407 kB/s) 183s Reading package lists... 183s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 183s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 183s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 183s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 184s Reading package lists... 184s Reading package lists... 184s Building dependency tree... 184s Reading state information... 184s Calculating upgrade... 184s The following packages will be upgraded: 184s usbutils 184s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 184s Need to get 83.9 kB of archives. 184s After this operation, 0 B of additional disk space will be used. 184s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 usbutils amd64 1:019-1 [83.9 kB] 184s dpkg-preconfigure: unable to re-open stdin: No such file or directory 184s Fetched 83.9 kB in 0s (0 B/s) 185s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 83372 files and directories currently installed.) 185s Preparing to unpack .../usbutils_1%3a019-1_amd64.deb ... 185s Unpacking usbutils (1:019-1) over (1:018-2) ... 185s Setting up usbutils (1:019-1) ... 185s Processing triggers for man-db (2.13.1-1) ... 185s autopkgtest [16:31:36]: upgrading testbed (apt dist-upgrade and autopurge) 185s Reading package lists... 186s Building dependency tree... 186s Reading state information... 186s Calculating upgrade... 186s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 186s Reading package lists... 186s Building dependency tree... 186s Reading state information... 186s Solving dependencies... 186s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 188s Reading package lists... 189s Building dependency tree... 189s Reading state information... 189s Solving dependencies... 189s The following NEW packages will be installed: 189s git git-man liberror-perl mercurial mercurial-common mercurial-git 189s python3-dulwich 189s 0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded. 189s Need to get 9272 kB of archives. 189s After this operation, 48.3 MB of additional disk space will be used. 189s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 liberror-perl all 0.17030-1 [23.5 kB] 189s Get:2 http://ftpmaster.internal/ubuntu resolute/main amd64 git-man all 1:2.51.0-1ubuntu1 [1179 kB] 189s Get:3 http://ftpmaster.internal/ubuntu resolute/main amd64 git amd64 1:2.51.0-1ubuntu1 [4414 kB] 190s Get:4 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-common all 7.0.1-2 [2783 kB] 190s Get:5 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial amd64 7.0.1-2 [428 kB] 190s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 python3-dulwich amd64 0.24.10-1 [383 kB] 190s Get:7 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-git all 1.2.0-1 [60.9 kB] 190s Fetched 9272 kB in 1s (7161 kB/s) 190s Selecting previously unselected package liberror-perl. 190s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 83372 files and directories currently installed.) 190s Preparing to unpack .../0-liberror-perl_0.17030-1_all.deb ... 190s Unpacking liberror-perl (0.17030-1) ... 190s Selecting previously unselected package git-man. 190s Preparing to unpack .../1-git-man_1%3a2.51.0-1ubuntu1_all.deb ... 190s Unpacking git-man (1:2.51.0-1ubuntu1) ... 190s Selecting previously unselected package git. 190s Preparing to unpack .../2-git_1%3a2.51.0-1ubuntu1_amd64.deb ... 190s Unpacking git (1:2.51.0-1ubuntu1) ... 190s Selecting previously unselected package mercurial-common. 190s Preparing to unpack .../3-mercurial-common_7.0.1-2_all.deb ... 190s Unpacking mercurial-common (7.0.1-2) ... 190s Selecting previously unselected package mercurial. 190s Preparing to unpack .../4-mercurial_7.0.1-2_amd64.deb ... 190s Unpacking mercurial (7.0.1-2) ... 190s Selecting previously unselected package python3-dulwich. 190s Preparing to unpack .../5-python3-dulwich_0.24.10-1_amd64.deb ... 190s Unpacking python3-dulwich (0.24.10-1) ... 190s Selecting previously unselected package mercurial-git. 190s Preparing to unpack .../6-mercurial-git_1.2.0-1_all.deb ... 190s Unpacking mercurial-git (1.2.0-1) ... 190s Setting up mercurial-common (7.0.1-2) ... 191s Setting up liberror-perl (0.17030-1) ... 191s Setting up python3-dulwich (0.24.10-1) ... 192s Setting up git-man (1:2.51.0-1ubuntu1) ... 192s Setting up mercurial (7.0.1-2) ... 192s Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version 192s Setting up mercurial-git (1.2.0-1) ... 192s mercurial-git extension is disabled by default. 192s You can follow the instructions in /usr/share/doc/mercurial-git/README.Debian to enable it. 192s Setting up git (1:2.51.0-1ubuntu1) ... 192s Processing triggers for man-db (2.13.1-1) ... 194s autopkgtest [16:31:45]: test mercurial-git: [----------------------- 194s Initialized empty Git repository in /tmp/autopkgtest.5x2CBK/build.aD5/src/git_server/ 194s Cloning into 'git_clone'... 194s warning: You appear to have cloned an empty repository. 194s done. 194s [master (root-commit) 202ae56] a 194s 1 file changed, 1 insertion(+) 194s create mode 100644 a 194s To /tmp/autopkgtest.5x2CBK/build.aD5/src/git_server 194s * [new branch] master -> master 194s importing 1 git commits 194s ** Unknown exception encountered with possibly-broken third-party extension "hggit" 1.2.0 (dulwich 0.24.10) 194s ** which supports versions 6.9 of Mercurial. 194s ** Please disable "hggit" and try your action again. 194s ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 194s ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 194s ** Mercurial Distributed SCM (version 7.0.1) 194s ** Extensions loaded: hggit 1.2.0 (dulwich 0.24.10) 195s Traceback (most recent call last): 195s File "/usr/bin/hg", line 51, in 195s dispatch.run() 195s ~~~~~~~~~~~~^^ 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 195s status = dispatch(req) 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 195s status = _rundispatch(req) 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 195s ret = _runcatch(req) or 0 195s ~~~~~~~~~^^^^^ 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 195s return _callcatch(ui, _runcatchfunc) 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 195s return scmutil.callcatch(ui, func) 195s ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 195s File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 195s return func() 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 195s return _dispatch(req) 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 195s return runcommand( 195s lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 195s ) 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 195s ret = _runcommand(ui, options, cmd, d) 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 195s return cmdfunc() 195s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 195s d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 195s ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 195s File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 195s return func(*args, **kwargs) 195s File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 195s r = hg.clone( 195s ui, 195s ...<11 lines>... 195s depth=opts.get('depth') or None, 195s ) 195s File "/usr/lib/python3/dist-packages/hggit/schemes.py", line 116, in clone 195s srcpeer, destpeer = orig(*args, **opts) 195s ~~~~^^^^^^^^^^^^^^^ 195s File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 195s exchange.pull( 195s ~~~~~~~~~~~~~^ 195s local, 195s ^^^^^^ 195s ...<5 lines>... 195s depth=depth, 195s ^^^^^^^^^^^^ 195s ) 195s ^ 195s File "/usr/lib/python3/dist-packages/hggit/util.py", line 98, in inner 195s return f(*args, **kwargs) 195s File "/usr/lib/python3/dist-packages/hggit/gitrepo.py", line 195, in exchangepull 195s pullop.cgresult = repo.githandler.fetch(remote, heads) 195s ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 195s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 397, in fetch 195s imported = self.import_git_objects( 195s b'pull', 195s ...<2 lines>... 195s heads=heads, 195s ) 195s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1085, in import_git_objects 195s self.import_git_commit( 195s ~~~~~~~~~~~~~~~~~~~~~~^ 195s command, 195s ^^^^^^^^ 195s self.git[commit.sha], 195s ^^^^^^^^^^^^^^^^^^^^^ 195s commit.phase, 195s ^^^^^^^^^^^^^ 195s ) 195s ^ 195s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1145, in import_git_commit 195s files, gitlinks, git_renames = self.get_files_changed( 195s ~~~~~~~~~~~~~~~~~~~~~~^ 195s commit, detect_renames 195s ^^^^^^^^^^^^^^^^^^^^^^ 195s ) 195s ^ 195s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 2130, in get_files_changed 195s oldfile, oldmode, oldsha = change.old 195s ^^^^^^^^^^^^^^^^^^^^^^^^ 195s TypeError: cannot unpack non-iterable NoneType object 195s autopkgtest [16:31:46]: test mercurial-git: -----------------------] 195s autopkgtest [16:31:46]: test mercurial-git: - - - - - - - - - - results - - - - - - - - - - 195s mercurial-git FAIL non-zero exit status 1 196s autopkgtest [16:31:47]: test mercurial-git: - - - - - - - - - - stderr - - - - - - - - - - 196s ** Unknown exception encountered with possibly-broken third-party extension "hggit" 1.2.0 (dulwich 0.24.10) 196s ** which supports versions 6.9 of Mercurial. 196s ** Please disable "hggit" and try your action again. 196s ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 196s ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 196s ** Mercurial Distributed SCM (version 7.0.1) 196s ** Extensions loaded: hggit 1.2.0 (dulwich 0.24.10) 196s Traceback (most recent call last): 196s File "/usr/bin/hg", line 51, in 196s dispatch.run() 196s ~~~~~~~~~~~~^^ 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 196s status = dispatch(req) 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 196s status = _rundispatch(req) 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 196s ret = _runcatch(req) or 0 196s ~~~~~~~~~^^^^^ 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 196s return _callcatch(ui, _runcatchfunc) 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 196s return scmutil.callcatch(ui, func) 196s ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 196s File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 196s return func() 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 196s return _dispatch(req) 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 196s return runcommand( 196s lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 196s ) 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 196s ret = _runcommand(ui, options, cmd, d) 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 196s return cmdfunc() 196s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 196s d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 196s ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 196s File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 196s return func(*args, **kwargs) 196s File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 196s r = hg.clone( 196s ui, 196s ...<11 lines>... 196s depth=opts.get('depth') or None, 196s ) 196s File "/usr/lib/python3/dist-packages/hggit/schemes.py", line 116, in clone 196s srcpeer, destpeer = orig(*args, **opts) 196s ~~~~^^^^^^^^^^^^^^^ 196s File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 196s exchange.pull( 196s ~~~~~~~~~~~~~^ 196s local, 196s ^^^^^^ 196s ...<5 lines>... 196s depth=depth, 196s ^^^^^^^^^^^^ 196s ) 196s ^ 196s File "/usr/lib/python3/dist-packages/hggit/util.py", line 98, in inner 196s return f(*args, **kwargs) 196s File "/usr/lib/python3/dist-packages/hggit/gitrepo.py", line 195, in exchangepull 196s pullop.cgresult = repo.githandler.fetch(remote, heads) 196s ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 196s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 397, in fetch 196s imported = self.import_git_objects( 196s b'pull', 196s ...<2 lines>... 196s heads=heads, 196s ) 196s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1085, in import_git_objects 196s self.import_git_commit( 196s ~~~~~~~~~~~~~~~~~~~~~~^ 196s command, 196s ^^^^^^^^ 196s self.git[commit.sha], 196s ^^^^^^^^^^^^^^^^^^^^^ 196s commit.phase, 196s ^^^^^^^^^^^^^ 196s ) 196s ^ 196s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1145, in import_git_commit 196s files, gitlinks, git_renames = self.get_files_changed( 196s ~~~~~~~~~~~~~~~~~~~~~~^ 196s commit, detect_renames 196s ^^^^^^^^^^^^^^^^^^^^^^ 196s ) 196s ^ 196s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 2130, in get_files_changed 196s oldfile, oldmode, oldsha = change.old 196s ^^^^^^^^^^^^^^^^^^^^^^^^ 196s TypeError: cannot unpack non-iterable NoneType object 196s autopkgtest [16:31:47]: @@@@@@@@@@@@@@@@@@@@ summary 196s testsuite FAIL non-zero exit status 2 196s mercurial-git FAIL non-zero exit status 1