0s autopkgtest [16:25:48]: starting date and time: 2025-11-17 16:25:48+0000 0s autopkgtest [16:25:48]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [16:25:48]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.yl7jy5yb/out --timeout-copy=6000 -a i386 --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-2.secgroup --name adt-resolute-i386-hg-git-20251117-162548-juju-7f2275-prod-proposed-migration-environment-2-feac5d8f-b873-4ae4-bc3b-eced421ee487 --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-i386-hg-git-20251117-162548-juju-7f2275-prod-proposed-migration-environment-2-feac5d8f-b873-4ae4-bc3b-eced421ee487 from image adt/ubuntu-resolute-amd64-server-20251117.img (UUID 9762b0cc-7c5b-4854-acd5-cc74ad0de8c6)... 52s autopkgtest [16:26:40]: testbed dpkg architecture: amd64 52s autopkgtest [16:26:40]: testbed apt version: 3.1.11 52s autopkgtest [16:26:40]: @@@@@@@@@@@@@@@@@@@@ test bed setup 53s autopkgtest [16:26:41]: testbed release detected to be: None 53s autopkgtest [16:26:41]: updating testbed package index (apt update) 54s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 54s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 54s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 54s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 54s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9848 B] 54s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [81.5 kB] 54s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [839 kB] 54s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 54s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main i386 Packages [118 kB] 54s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 Packages [159 kB] 54s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 c-n-f Metadata [3236 B] 54s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 Packages [64.6 kB] 54s Get:13 http://ftpmaster.internal/ubuntu resolute-proposed/restricted i386 Packages [3744 B] 54s Get:14 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 c-n-f Metadata [336 B] 54s Get:15 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 Packages [585 kB] 54s Get:16 http://ftpmaster.internal/ubuntu resolute-proposed/universe i386 Packages [271 kB] 54s Get:17 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 c-n-f Metadata [20.1 kB] 54s Get:18 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 Packages [13.4 kB] 55s Get:19 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse i386 Packages [6516 B] 55s Get:20 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 c-n-f Metadata [680 B] 57s Fetched 2286 kB in 1s (2112 kB/s) 58s Reading package lists... 59s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 59s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 59s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 59s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 60s Reading package lists... 60s Reading package lists... 60s Building dependency tree... 60s Reading state information... 60s Calculating upgrade... 60s The following packages will be upgraded: 60s usbutils 60s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 60s Need to get 83.9 kB of archives. 60s After this operation, 0 B of additional disk space will be used. 60s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 usbutils amd64 1:019-1 [83.9 kB] 61s dpkg-preconfigure: unable to re-open stdin: No such file or directory 61s Fetched 83.9 kB in 0s (7768 kB/s) 61s (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.) 61s Preparing to unpack .../usbutils_1%3a019-1_amd64.deb ... 61s Unpacking usbutils (1:019-1) over (1:018-2) ... 61s Setting up usbutils (1:019-1) ... 61s Processing triggers for man-db (2.13.1-1) ... 62s autopkgtest [16:26:50]: upgrading testbed (apt dist-upgrade and autopurge) 62s Reading package lists... 63s Building dependency tree... 63s Reading state information... 63s Calculating upgrade... 63s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 63s Reading package lists... 63s Building dependency tree... 63s Reading state information... 63s Solving dependencies... 64s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 67s autopkgtest [16:26:55]: testbed running kernel: Linux 6.17.0-5-generic #5-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 10:00:33 UTC 2025 67s autopkgtest [16:26:55]: @@@@@@@@@@@@@@@@@@@@ apt-source hg-git 68s Get:1 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (dsc) [2142 B] 68s Get:2 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (tar) [222 kB] 68s Get:3 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (diff) [6816 B] 68s gpgv: Signature made Sun Feb 16 14:22:41 2025 UTC 68s gpgv: using RSA key 8F6DE104377F3B11E741748731F3144544A1741A 68s gpgv: issuer "tchet@debian.org" 68s gpgv: Can't check signature: No public key 68s dpkg-source: warning: cannot verify inline signature for ./hg-git_1.2.0-1.dsc: no acceptable signature found 68s autopkgtest [16:26:56]: testing package hg-git version 1.2.0-1 68s autopkgtest [16:26:56]: build not needed 69s autopkgtest [16:26:57]: test testsuite: preparing testbed 69s Reading package lists... 69s Building dependency tree... 69s Reading state information... 69s Solving dependencies... 69s The following NEW packages will be installed: 69s git git-man liberror-perl mercurial mercurial-common mercurial-git 69s python3-dulwich unzip 69s 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded. 69s Need to get 9453 kB of archives. 69s After this operation, 48.7 MB of additional disk space will be used. 69s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 liberror-perl all 0.17030-1 [23.5 kB] 70s Get:2 http://ftpmaster.internal/ubuntu resolute/main amd64 git-man all 1:2.51.0-1ubuntu1 [1179 kB] 70s Get:3 http://ftpmaster.internal/ubuntu resolute/main amd64 git amd64 1:2.51.0-1ubuntu1 [4414 kB] 71s Get:4 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-common all 7.0.1-2 [2783 kB] 71s Get:5 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial amd64 7.0.1-2 [428 kB] 71s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 python3-dulwich amd64 0.24.10-1 [383 kB] 71s Get:7 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-git all 1.2.0-1 [60.9 kB] 71s Get:8 http://ftpmaster.internal/ubuntu resolute/main amd64 unzip amd64 6.0-28ubuntu7 [180 kB] 71s Fetched 9453 kB in 2s (6043 kB/s) 71s Selecting previously unselected package liberror-perl. 71s (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.) 71s Preparing to unpack .../0-liberror-perl_0.17030-1_all.deb ... 71s Unpacking liberror-perl (0.17030-1) ... 71s Selecting previously unselected package git-man. 71s Preparing to unpack .../1-git-man_1%3a2.51.0-1ubuntu1_all.deb ... 71s Unpacking git-man (1:2.51.0-1ubuntu1) ... 71s Selecting previously unselected package git. 71s Preparing to unpack .../2-git_1%3a2.51.0-1ubuntu1_amd64.deb ... 71s Unpacking git (1:2.51.0-1ubuntu1) ... 72s Selecting previously unselected package mercurial-common. 72s Preparing to unpack .../3-mercurial-common_7.0.1-2_all.deb ... 72s Unpacking mercurial-common (7.0.1-2) ... 72s Selecting previously unselected package mercurial. 72s Preparing to unpack .../4-mercurial_7.0.1-2_amd64.deb ... 72s Unpacking mercurial (7.0.1-2) ... 72s Selecting previously unselected package python3-dulwich. 72s Preparing to unpack .../5-python3-dulwich_0.24.10-1_amd64.deb ... 72s Unpacking python3-dulwich (0.24.10-1) ... 72s Selecting previously unselected package mercurial-git. 72s Preparing to unpack .../6-mercurial-git_1.2.0-1_all.deb ... 72s Unpacking mercurial-git (1.2.0-1) ... 72s Selecting previously unselected package unzip. 72s Preparing to unpack .../7-unzip_6.0-28ubuntu7_amd64.deb ... 72s Unpacking unzip (6.0-28ubuntu7) ... 72s Setting up mercurial-common (7.0.1-2) ... 74s Setting up unzip (6.0-28ubuntu7) ... 74s Setting up liberror-perl (0.17030-1) ... 74s Setting up python3-dulwich (0.24.10-1) ... 74s Setting up git-man (1:2.51.0-1ubuntu1) ... 74s Setting up mercurial (7.0.1-2) ... 74s Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version 74s Setting up mercurial-git (1.2.0-1) ... 74s mercurial-git extension is disabled by default. 74s You can follow the instructions in /usr/share/doc/mercurial-git/README.Debian to enable it. 74s Setting up git (1:2.51.0-1ubuntu1) ... 74s Processing triggers for man-db (2.13.1-1) ... 76s autopkgtest [16:27:04]: test environment configured for cross building 76s autopkgtest [16:27:04]: test testsuite: [----------------------- 77s no username found, using 'ubuntu@autopkgtest.local' instead 77s cd tests && /usr/bin/python3 run-tests.py --with-hg=/usr/bin/hg --blacklist=/tmp/autopkgtest.rkAkJU/build.lKB/src/debian/hg-git.test_blacklist 77s running 82 tests using 2 parallel processes 91s ssssss 91s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull.t 91s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull.t#draft.err 91s @@ -39,17 +39,92 @@ 91s $ hg pull ../gitrepo 91s pulling from ../gitrepo 91s importing 3 git commits 91s - adding bookmark beta 91s - adding bookmark delta 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ git --git-dir .hg/git for-each-ref 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 91s $ hg log -Tp 91s - 2|draft|delta|tip 91s - 1|draft|beta| 91s - 0|draft|master|t_alpha 91s $ cd .. 91s $ rm -rf hgrepo 91s 91s @@ -61,20 +136,92 @@ 91s $ hg pull ../gitrepo 91s pulling from ../gitrepo 91s importing 3 git commits 91s - adding bookmark beta 91s - adding bookmark delta 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ git --git-dir .hg/git for-each-ref 91s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 91s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 91s $ hg log -Tp 91s - 2|draft|delta|default/delta tip 91s - 1|draft|beta|default/beta 91s - 0|draft|master|default/master t_alpha 91s $ cd .. 91s $ rm -rf hgrepo 91s 91s @@ -86,20 +233,92 @@ 91s $ hg pull 91s pulling from $TESTTMP/gitrepo 91s importing 3 git commits 91s - adding bookmark beta 91s - adding bookmark delta 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ git --git-dir .hg/git for-each-ref 91s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 91s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 91s $ hg log -Tp 91s - 2|draft|delta|default/delta tip 91s - 1|draft|beta|default/beta 91s - 0|draft|master|default/master t_alpha 91s $ cd .. 91s $ rm -rf hgrepo 91s 91s @@ -110,18 +329,183 @@ 91s $ hg -R hgrepo pull -r t_alpha 91s pulling from $TESTTMP/gitrepo 91s importing 1 git commits 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70 (1 drafts) 91s - (run 'hg update' to get a working copy) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo update t_alpha 91s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 91s + abort: unknown revision 't_alpha' 91s + [10] 91s $ hg log -Tp -R hgrepo 91s - 0|draft|master|default/master t_alpha tip 91s 91s no-op pull 91s $ hg -R hgrepo pull -r t_alpha 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s + importing 1 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s 91s no-op pull with added bookmark 91s $ cd gitrepo 91s @@ -129,8 +513,91 @@ 91s $ cd .. 91s $ hg -R hgrepo pull -r epsilon 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s - adding bookmark epsilon 91s + importing 1 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s 91s pull something that doesn't exist 91s $ hg -R hgrepo pull -r kaflaflibob 91s @@ -149,39 +616,187 @@ 91s pull a branch 91s $ hg -R hgrepo pull -r beta 91s pulling from $TESTTMP/gitrepo 91s - importing 1 git commits 91s - adding bookmark beta 91s - new changesets 7fe02317c63d (1 drafts) 91s - (run 'hg update' to get a working copy) 91s + importing 2 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo log --graph --template=phases 91s - o changeset: 1:7fe02317c63d 91s - | bookmark: beta 91s - | tag: default/beta 91s - | tag: tip 91s - | phase: draft 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - bookmark: master 91s - tag: default/epsilon 91s - tag: default/master 91s - tag: t_alpha 91s - phase: draft 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s 91s no-op pull should affect phases 91s $ hg -R hgrepo phase -fs beta 91s + abort: unknown revision 'beta' 91s + [10] 91s $ hg -R hgrepo pull -r beta 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s + importing 2 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo phase beta 91s - 1: draft 91s + abort: unknown revision 'beta' 91s + [10] 91s 91s 91s add another commit and tag to the git repo 91s @@ -197,49 +812,92 @@ 91s pull everything else 91s $ hg -R hgrepo pull 91s pulling from $TESTTMP/gitrepo 91s - importing 2 git commits 91s - adding bookmark delta 91s - updating bookmark master 91s - new changesets 678ebee93e38:6f898ad1f3e1 (2 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + importing 4 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo log --graph --template=phases 91s - o changeset: 3:6f898ad1f3e1 91s - | bookmark: master 91s - | tag: default/master 91s - | tag: tip 91s - | phase: draft 91s - | parent: 0:ff7a2f2d8d70 91s - | user: test 91s - | date: Mon Jan 01 00:00:13 2007 +0000 91s - | summary: add gamma 91s - | 91s - | o changeset: 2:678ebee93e38 91s - |/ bookmark: delta 91s - | tag: default/delta 91s - | phase: draft 91s - | parent: 0:ff7a2f2d8d70 91s - | user: test 91s - | date: Mon Jan 01 00:00:12 2007 +0000 91s - | summary: add delta 91s - | 91s - | o changeset: 1:7fe02317c63d 91s - |/ bookmark: beta 91s - | tag: default/beta 91s - | tag: t_beta 91s - | phase: draft 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - tag: default/epsilon 91s - tag: t_alpha 91s - phase: draft 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s add a merge to the git repo, and delete the branch 91s $ cd gitrepo 91s $ git merge -q -m "Merge branch 'beta'" beta 91s @@ -252,60 +910,186 @@ 91s 91s pull the merge 91s $ hg -R hgrepo tags | grep default/beta 91s - default/beta 1:7fe02317c63d 91s + [1] 91s $ hg -R hgrepo pull --config git.pull-prune-remote-branches=false 91s pulling from $TESTTMP/gitrepo 91s - importing 1 git commits 91s - updating bookmark master 91s - deleting bookmark beta 91s - new changesets a02330f767a4 (1 drafts) 91s - (run 'hg update' to get a working copy) 91s + importing 5 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo tags | grep default/beta 91s - default/beta 1:7fe02317c63d 91s + [1] 91s $ hg -R hgrepo pull 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s + importing 5 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo tags | grep default/beta 91s [1] 91s $ hg -R hgrepo log --graph 91s - o changeset: 4:a02330f767a4 91s - |\ bookmark: master 91s - | | tag: default/master 91s - | | tag: tip 91s - | | parent: 3:6f898ad1f3e1 91s - | | parent: 1:7fe02317c63d 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: Merge branch 'beta' 91s - | | 91s - | o changeset: 3:6f898ad1f3e1 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: add gamma 91s - | | 91s - | | o changeset: 2:678ebee93e38 91s - | |/ bookmark: delta 91s - | | tag: default/delta 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:12 2007 +0000 91s - | | summary: add delta 91s - | | 91s - o | changeset: 1:7fe02317c63d 91s - |/ tag: t_beta 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - tag: default/epsilon 91s - tag: t_alpha 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s pull with wildcards 91s $ cd gitrepo 91s $ git checkout -qb releases/v1 master 91s @@ -325,65 +1109,92 @@ 91s $ cd .. 91s $ hg -R hgrepo pull -r 'releases/*' 91s pulling from $TESTTMP/gitrepo 91s - importing 2 git commits 91s - adding bookmark releases/v1 91s - adding bookmark releases/v2 91s - new changesets 218b2d0660d3:a3f95e150b0a (2 drafts) 91s - (run 'hg heads .' to see heads, 'hg merge' to merge) 91s + importing 6 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo log --graph 91s - o changeset: 6:a3f95e150b0a 91s - | bookmark: releases/v2 91s - | tag: default/releases/v2 91s - | tag: tip 91s - | parent: 4:a02330f767a4 91s - | user: test 91s - | date: Mon Jan 01 00:00:15 2007 +0000 91s - | summary: add eta 91s - | 91s - | o changeset: 5:218b2d0660d3 91s - |/ bookmark: releases/v1 91s - | tag: default/releases/v1 91s - | user: test 91s - | date: Mon Jan 01 00:00:14 2007 +0000 91s - | summary: add zeta 91s - | 91s - o changeset: 4:a02330f767a4 91s - |\ bookmark: master 91s - | | tag: default/master 91s - | | parent: 3:6f898ad1f3e1 91s - | | parent: 1:7fe02317c63d 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: Merge branch 'beta' 91s - | | 91s - | o changeset: 3:6f898ad1f3e1 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: add gamma 91s - | | 91s - | | o changeset: 2:678ebee93e38 91s - | |/ bookmark: delta 91s - | | tag: default/delta 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:12 2007 +0000 91s - | | summary: add delta 91s - | | 91s - o | changeset: 1:7fe02317c63d 91s - |/ tag: t_beta 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - tag: default/epsilon 91s - tag: t_alpha 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s 91s add old and new commits to the git repo -- make sure we're using the commit date 91s and not the author date 91s @@ -418,15 +1229,8 @@ 91s pulling from $TESTTMP/gitrepo 91s no changes found 91s $ hg -R hgrepo log -r master 91s - changeset: 4:a02330f767a4 91s - bookmark: master 91s - tag: default/master 91s - parent: 3:6f898ad1f3e1 91s - parent: 1:7fe02317c63d 91s - user: test 91s - date: Mon Jan 01 00:00:13 2007 +0000 91s - summary: Merge branch 'beta' 91s - 91s + abort: unknown revision 'master' 91s + [10] 91s 91s $ cd gitrepo 91s $ git checkout -q master 91s @@ -441,50 +1245,93 @@ 91s $ cd .. 91s $ hg -R hgrepo pull 91s pulling from $TESTTMP/gitrepo 91s - importing 3 git commits 91s - updating bookmark master 91s - new changesets 49713da8f665:e103a73f33be (3 drafts) 91s - (run 'hg heads .' to see heads, 'hg merge' to merge) 91s + importing 7 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo heads 91s - changeset: 9:e103a73f33be 91s - bookmark: master 91s - tag: default/master 91s - tag: tip 91s - user: test 91s - date: Wed Jan 01 00:00:00 2014 +0000 91s - summary: newcommit 91s - 91s - changeset: 7:49713da8f665 91s - tag: newtag 91s - tag: oldtag 91s - parent: 4:a02330f767a4 91s - user: test 91s - date: Sat Mar 01 00:00:00 2014 +0000 91s - summary: oldtag 91s - 91s - changeset: 6:a3f95e150b0a 91s - bookmark: releases/v2 91s - tag: default/releases/v2 91s - parent: 4:a02330f767a4 91s - user: test 91s - date: Mon Jan 01 00:00:15 2007 +0000 91s - summary: add eta 91s - 91s - changeset: 5:218b2d0660d3 91s - bookmark: releases/v1 91s - tag: default/releases/v1 91s - user: test 91s - date: Mon Jan 01 00:00:14 2007 +0000 91s - summary: add zeta 91s - 91s - changeset: 2:678ebee93e38 91s - bookmark: delta 91s - tag: default/delta 91s - parent: 0:ff7a2f2d8d70 91s - user: test 91s - date: Mon Jan 01 00:00:12 2007 +0000 91s - summary: add delta 91s - 91s + [1] 91s 91s test for ssh vulnerability 91s 91s @@ -502,10 +1349,162 @@ 91s abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 91s [255] 91s $ hg pull -q 'git+ssh://fakehost|shellcommand/path' 91s - ssh: * fakehost%7?shellcommand* (glob) 91s - abort: git remote error: The remote server unexpectedly closed the connection. 91s - [255] 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 391, in fetch 91s + result = self.fetch_pack(remote.path, heads) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1644, in fetch_pack 91s + ret = self._call_client( 91s + remote, 91s + ...<4 lines>... 91s + progress.progress, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1680, in _call_client 91s + ret = func(path, *args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 91s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 91s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 91s + con = self.ssh_vendor.run_command( 91s + self.host, 91s + ...<4 lines>... 91s + **kwargs, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/_ssh.py", line 23, in run_command 91s + assert isinstance(command, str) 91s + ~~~~~~~~~~^^^^^^^^^^^^^^ 91s + AssertionError 91s + [1] 91s $ hg pull -q 'git+ssh://fakehost%7Cshellcommand/path' 91s - ssh: * fakehost%7?shellcommand* (glob) 91s - abort: git remote error: The remote server unexpectedly closed the connection. 91s - [255] 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 391, in fetch 91s + result = self.fetch_pack(remote.path, heads) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1644, in fetch_pack 91s + ret = self._call_client( 91s + remote, 91s + ...<4 lines>... 91s + progress.progress, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1680, in _call_client 91s + ret = func(path, *args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 91s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 91s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 91s + con = self.ssh_vendor.run_command( 91s + self.host, 91s + ...<4 lines>... 91s + **kwargs, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/_ssh.py", line 23, in run_command 91s + assert isinstance(command, str) 91s + ~~~~~~~~~~^^^^^^^^^^^^^^ 91s + AssertionError 91s + [1] 91s 91s ERROR: test-pull.t#draft output changed 91s ! 91s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull.t 91s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull.t#secret.err 91s @@ -39,17 +39,92 @@ 91s $ hg pull ../gitrepo 91s pulling from ../gitrepo 91s importing 3 git commits 91s - adding bookmark beta 91s - adding bookmark delta 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ git --git-dir .hg/git for-each-ref 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 91s $ hg log -Tp 91s - 2|draft|delta|tip 91s - 1|draft|beta| 91s - 0|draft|master|t_alpha 91s $ cd .. 91s $ rm -rf hgrepo 91s 91s @@ -61,20 +136,92 @@ 91s $ hg pull ../gitrepo 91s pulling from ../gitrepo 91s importing 3 git commits 91s - adding bookmark beta 91s - adding bookmark delta 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ git --git-dir .hg/git for-each-ref 91s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 91s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 91s $ hg log -Tp 91s - 2|draft|delta|default/delta tip 91s - 1|draft|beta|default/beta 91s - 0|draft|master|default/master t_alpha 91s $ cd .. 91s $ rm -rf hgrepo 91s 91s @@ -86,20 +233,92 @@ 91s $ hg pull 91s pulling from $TESTTMP/gitrepo 91s importing 3 git commits 91s - adding bookmark beta 91s - adding bookmark delta 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ git --git-dir .hg/git for-each-ref 91s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 91s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 91s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 91s $ hg log -Tp 91s - 2|draft|delta|default/delta tip 91s - 1|draft|beta|default/beta 91s - 0|draft|master|default/master t_alpha 91s $ cd .. 91s $ rm -rf hgrepo 91s 91s @@ -110,18 +329,183 @@ 91s $ hg -R hgrepo pull -r t_alpha 91s pulling from $TESTTMP/gitrepo 91s importing 1 git commits 91s - adding bookmark master 91s - new changesets ff7a2f2d8d70 (1 drafts) 91s - (run 'hg update' to get a working copy) 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo update t_alpha 91s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 91s + abort: unknown revision 't_alpha' 91s + [10] 91s $ hg log -Tp -R hgrepo 91s - 0|draft|master|default/master t_alpha tip 91s 91s no-op pull 91s $ hg -R hgrepo pull -r t_alpha 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s + importing 1 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s 91s no-op pull with added bookmark 91s $ cd gitrepo 91s @@ -129,8 +513,91 @@ 91s $ cd .. 91s $ hg -R hgrepo pull -r epsilon 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s - adding bookmark epsilon 91s + importing 1 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s 91s pull something that doesn't exist 91s $ hg -R hgrepo pull -r kaflaflibob 91s @@ -149,39 +616,187 @@ 91s pull a branch 91s $ hg -R hgrepo pull -r beta 91s pulling from $TESTTMP/gitrepo 91s - importing 1 git commits 91s - adding bookmark beta 91s - new changesets 7fe02317c63d (1 drafts) 91s - (run 'hg update' to get a working copy) 91s + importing 2 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo log --graph --template=phases 91s - o changeset: 1:7fe02317c63d 91s - | bookmark: beta 91s - | tag: default/beta 91s - | tag: tip 91s - | phase: draft 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - bookmark: master 91s - tag: default/epsilon 91s - tag: default/master 91s - tag: t_alpha 91s - phase: draft 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s 91s no-op pull should affect phases 91s $ hg -R hgrepo phase -fs beta 91s + abort: unknown revision 'beta' 91s + [10] 91s $ hg -R hgrepo pull -r beta 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s + importing 2 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo phase beta 91s - 1: draft 91s + abort: unknown revision 'beta' 91s + [10] 91s 91s 91s add another commit and tag to the git repo 91s @@ -197,49 +812,92 @@ 91s pull everything else 91s $ hg -R hgrepo pull 91s pulling from $TESTTMP/gitrepo 91s - importing 2 git commits 91s - adding bookmark delta 91s - updating bookmark master 91s - new changesets 678ebee93e38:6f898ad1f3e1 (2 drafts) 91s - (run 'hg heads' to see heads, 'hg merge' to merge) 91s + importing 4 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo log --graph --template=phases 91s - o changeset: 3:6f898ad1f3e1 91s - | bookmark: master 91s - | tag: default/master 91s - | tag: tip 91s - | phase: draft 91s - | parent: 0:ff7a2f2d8d70 91s - | user: test 91s - | date: Mon Jan 01 00:00:13 2007 +0000 91s - | summary: add gamma 91s - | 91s - | o changeset: 2:678ebee93e38 91s - |/ bookmark: delta 91s - | tag: default/delta 91s - | phase: draft 91s - | parent: 0:ff7a2f2d8d70 91s - | user: test 91s - | date: Mon Jan 01 00:00:12 2007 +0000 91s - | summary: add delta 91s - | 91s - | o changeset: 1:7fe02317c63d 91s - |/ bookmark: beta 91s - | tag: default/beta 91s - | tag: t_beta 91s - | phase: draft 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - tag: default/epsilon 91s - tag: t_alpha 91s - phase: draft 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s add a merge to the git repo, and delete the branch 91s $ cd gitrepo 91s $ git merge -q -m "Merge branch 'beta'" beta 91s @@ -252,60 +910,186 @@ 91s 91s pull the merge 91s $ hg -R hgrepo tags | grep default/beta 91s - default/beta 1:7fe02317c63d 91s + [1] 91s $ hg -R hgrepo pull --config git.pull-prune-remote-branches=false 91s pulling from $TESTTMP/gitrepo 91s - importing 1 git commits 91s - updating bookmark master 91s - deleting bookmark beta 91s - new changesets a02330f767a4 (1 drafts) 91s - (run 'hg update' to get a working copy) 91s + importing 5 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo tags | grep default/beta 91s - default/beta 1:7fe02317c63d 91s + [1] 91s $ hg -R hgrepo pull 91s pulling from $TESTTMP/gitrepo 91s - no changes found 91s + importing 5 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo tags | grep default/beta 91s [1] 91s $ hg -R hgrepo log --graph 91s - o changeset: 4:a02330f767a4 91s - |\ bookmark: master 91s - | | tag: default/master 91s - | | tag: tip 91s - | | parent: 3:6f898ad1f3e1 91s - | | parent: 1:7fe02317c63d 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: Merge branch 'beta' 91s - | | 91s - | o changeset: 3:6f898ad1f3e1 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: add gamma 91s - | | 91s - | | o changeset: 2:678ebee93e38 91s - | |/ bookmark: delta 91s - | | tag: default/delta 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:12 2007 +0000 91s - | | summary: add delta 91s - | | 91s - o | changeset: 1:7fe02317c63d 91s - |/ tag: t_beta 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - tag: default/epsilon 91s - tag: t_alpha 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s pull with wildcards 91s $ cd gitrepo 91s $ git checkout -qb releases/v1 master 91s @@ -325,65 +1109,92 @@ 91s $ cd .. 91s $ hg -R hgrepo pull -r 'releases/*' 91s pulling from $TESTTMP/gitrepo 91s - importing 2 git commits 91s - adding bookmark releases/v1 91s - adding bookmark releases/v2 91s - new changesets 218b2d0660d3:a3f95e150b0a (2 drafts) 91s - (run 'hg heads .' to see heads, 'hg merge' to merge) 91s + importing 6 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo log --graph 91s - o changeset: 6:a3f95e150b0a 91s - | bookmark: releases/v2 91s - | tag: default/releases/v2 91s - | tag: tip 91s - | parent: 4:a02330f767a4 91s - | user: test 91s - | date: Mon Jan 01 00:00:15 2007 +0000 91s - | summary: add eta 91s - | 91s - | o changeset: 5:218b2d0660d3 91s - |/ bookmark: releases/v1 91s - | tag: default/releases/v1 91s - | user: test 91s - | date: Mon Jan 01 00:00:14 2007 +0000 91s - | summary: add zeta 91s - | 91s - o changeset: 4:a02330f767a4 91s - |\ bookmark: master 91s - | | tag: default/master 91s - | | parent: 3:6f898ad1f3e1 91s - | | parent: 1:7fe02317c63d 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: Merge branch 'beta' 91s - | | 91s - | o changeset: 3:6f898ad1f3e1 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:13 2007 +0000 91s - | | summary: add gamma 91s - | | 91s - | | o changeset: 2:678ebee93e38 91s - | |/ bookmark: delta 91s - | | tag: default/delta 91s - | | parent: 0:ff7a2f2d8d70 91s - | | user: test 91s - | | date: Mon Jan 01 00:00:12 2007 +0000 91s - | | summary: add delta 91s - | | 91s - o | changeset: 1:7fe02317c63d 91s - |/ tag: t_beta 91s - | user: test 91s - | date: Mon Jan 01 00:00:11 2007 +0000 91s - | summary: add beta 91s - | 91s - @ changeset: 0:ff7a2f2d8d70 91s - bookmark: epsilon 91s - tag: default/epsilon 91s - tag: t_alpha 91s - user: test 91s - date: Mon Jan 01 00:00:10 2007 +0000 91s - summary: add alpha 91s - 91s 91s add old and new commits to the git repo -- make sure we're using the commit date 91s and not the author date 91s @@ -418,15 +1229,8 @@ 91s pulling from $TESTTMP/gitrepo 91s no changes found 91s $ hg -R hgrepo log -r master 91s - changeset: 4:a02330f767a4 91s - bookmark: master 91s - tag: default/master 91s - parent: 3:6f898ad1f3e1 91s - parent: 1:7fe02317c63d 91s - user: test 91s - date: Mon Jan 01 00:00:13 2007 +0000 91s - summary: Merge branch 'beta' 91s - 91s + abort: unknown revision 'master' 91s + [10] 91s 91s $ cd gitrepo 91s $ git checkout -q master 91s @@ -441,50 +1245,93 @@ 91s $ cd .. 91s $ hg -R hgrepo pull 91s pulling from $TESTTMP/gitrepo 91s - importing 3 git commits 91s - updating bookmark master 91s - new changesets 49713da8f665:e103a73f33be (3 drafts) 91s - (run 'hg heads .' to see heads, 'hg merge' to merge) 91s + importing 7 git commits 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 91s + imported = self.import_git_objects( 91s + b'pull', 91s + ...<2 lines>... 91s + heads=heads, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 91s + self.import_git_commit( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + command, 91s + ^^^^^^^^ 91s + self.git[commit.sha], 91s + ^^^^^^^^^^^^^^^^^^^^^ 91s + commit.phase, 91s + ^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 91s + files, gitlinks, git_renames = self.get_files_changed( 91s + ~~~~~~~~~~~~~~~~~~~~~~^ 91s + commit, detect_renames 91s + ^^^^^^^^^^^^^^^^^^^^^^ 91s + ) 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 91s + oldfile, oldmode, oldsha = change.old 91s + ^^^^^^^^^^^^^^^^^^^^^^^^ 91s + TypeError: cannot unpack non-iterable NoneType object 91s + [1] 91s $ hg -R hgrepo heads 91s - changeset: 9:e103a73f33be 91s - bookmark: master 91s - tag: default/master 91s - tag: tip 91s - user: test 91s - date: Wed Jan 01 00:00:00 2014 +0000 91s - summary: newcommit 91s - 91s - changeset: 7:49713da8f665 91s - tag: newtag 91s - tag: oldtag 91s - parent: 4:a02330f767a4 91s - user: test 91s - date: Sat Mar 01 00:00:00 2014 +0000 91s - summary: oldtag 91s - 91s - changeset: 6:a3f95e150b0a 91s - bookmark: releases/v2 91s - tag: default/releases/v2 91s - parent: 4:a02330f767a4 91s - user: test 91s - date: Mon Jan 01 00:00:15 2007 +0000 91s - summary: add eta 91s - 91s - changeset: 5:218b2d0660d3 91s - bookmark: releases/v1 91s - tag: default/releases/v1 91s - user: test 91s - date: Mon Jan 01 00:00:14 2007 +0000 91s - summary: add zeta 91s - 91s - changeset: 2:678ebee93e38 91s - bookmark: delta 91s - tag: default/delta 91s - parent: 0:ff7a2f2d8d70 91s - user: test 91s - date: Mon Jan 01 00:00:12 2007 +0000 91s - summary: add delta 91s - 91s + [1] 91s 91s test for ssh vulnerability 91s 91s @@ -502,10 +1349,162 @@ 91s abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 91s [255] 91s $ hg pull -q 'git+ssh://fakehost|shellcommand/path' 91s - ssh: * fakehost%7?shellcommand* (glob) 91s - abort: git remote error: The remote server unexpectedly closed the connection. 91s - [255] 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 391, in fetch 91s + result = self.fetch_pack(remote.path, heads) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1644, in fetch_pack 91s + ret = self._call_client( 91s + remote, 91s + ...<4 lines>... 91s + progress.progress, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1680, in _call_client 91s + ret = func(path, *args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 91s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 91s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 91s + con = self.ssh_vendor.run_command( 91s + self.host, 91s + ...<4 lines>... 91s + **kwargs, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/_ssh.py", line 23, in run_command 91s + assert isinstance(command, str) 91s + ~~~~~~~~~~^^^^^^^^^^^^^^ 91s + AssertionError 91s + [1] 91s $ hg pull -q 'git+ssh://fakehost%7Cshellcommand/path' 91s - ssh: * fakehost%7?shellcommand* (glob) 91s - abort: git remote error: The remote server unexpectedly closed the connection. 91s - [255] 91s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 91s + ** which supports versions 6.9 of Mercurial. 91s + ** Please disable "hggit" and try your action again. 91s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 91s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 91s + ** Mercurial Distributed SCM (version 7.0.1) 91s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 91s + Traceback (most recent call last): 91s + File "/usr/bin/hg", line 51, in 91s + dispatch.run() 91s + ~~~~~~~~~~~~^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 91s + status = dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 91s + status = _rundispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 91s + ret = _runcatch(req) or 0 91s + ~~~~~~~~~^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 91s + return _callcatch(ui, _runcatchfunc) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 91s + return scmutil.callcatch(ui, func) 91s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 91s + return func() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 91s + return _dispatch(req) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 91s + return runcommand( 91s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 91s + ) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 91s + ret = _runcommand(ui, options, cmd, d) 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 91s + return cmdfunc() 91s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 91s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 91s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 91s + return func(*args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 91s + modheads = exchange.pull( 91s + ~~~~~~~~~~~~~^ 91s + repo, 91s + ^^^^^ 91s + ...<6 lines>... 91s + confirm=opts.get('confirm'), 91s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + ).cgresult 91s + ^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 91s + return f(*args, **kwargs) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 91s + pullop.cgresult = repo.githandler.fetch(remote, heads) 91s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 391, in fetch 91s + result = self.fetch_pack(remote.path, heads) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1644, in fetch_pack 91s + ret = self._call_client( 91s + remote, 91s + ...<4 lines>... 91s + progress.progress, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1680, in _call_client 91s + ret = func(path, *args, **kwargs) 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 91s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 91s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 91s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 91s + con = self.ssh_vendor.run_command( 91s + self.host, 91s + ...<4 lines>... 91s + **kwargs, 91s + ) 91s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/_ssh.py", line 23, in run_command 91s + assert isinstance(command, str) 91s + ~~~~~~~~~~^^^^^^^^^^^^^^ 91s + AssertionError 91s + [1] 91s 91s ERROR: test-pull.t#secret output changed 92s ! 92s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-submodules.t 92s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-submodules.t.err 92s @@ -189,260 +189,99 @@ 92s 92s $ hg clone gitrepo2 hgrepo 92s importing 10 git commits 92s - new changesets ff7a2f2d8d70:0ad944b2c4d8 (10 drafts) 92s - updating to 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 2046, in clone 92s + r = hg.clone( 92s + ui, 92s + ...<11 lines>... 92s + depth=opts.get('depth') or None, 92s + ) 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 92s + srcpeer, destpeer = orig(*args, **opts) 92s + ~~~~^^^^^^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 92s + exchange.pull( 92s + ~~~~~~~~~~~~~^ 92s + local, 92s + ^^^^^^ 92s + ...<5 lines>... 92s + depth=depth, 92s + ^^^^^^^^^^^^ 92s + ) 92s + ^ 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 92s + return f(*args, **kwargs) 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 92s + pullop.cgresult = repo.githandler.fetch(remote, heads) 92s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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 $ cd hgrepo 92s + $TESTTMP.sh: 133: cd: can't cd to hgrepo 92s $ hg log --graph 92s - @ changeset: 9:0ad944b2c4d8 92s - | bookmark: master 92s - | tag: default/master 92s - | tag: tip 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: remove all subrepos 92s - | 92s - o changeset: 8:33da452ef22f 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace subrepo with symlink 92s - | 92s - o changeset: 7:acebec53c0fc 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace symlink with subrepo 92s - | 92s - o changeset: 6:78c2ea52db4b 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: add symlink 92s - | 92s - o changeset: 5:c0d52ffc59b8 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace file with subrepo 92s - | 92s - o changeset: 4:73e078a178a0 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace subrepo with file 92s - | 92s - o changeset: 3:29e236ba4c06 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: add another subrepo 92s - | 92s - o changeset: 2:a6075a162f62 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: change subrepo commit 92s - | 92s - o changeset: 1:a4036e758995 92s - | user: test 92s - | date: Mon Jan 01 00:00:11 2007 +0000 92s - | summary: add subrepo 92s - | 92s - o changeset: 0:ff7a2f2d8d70 92s - user: test 92s - date: Mon Jan 01 00:00:10 2007 +0000 92s - summary: add alpha 92s - 92s - $ hg book 92s - * master 9:0ad944b2c4d8 92s - 92s -(add subrepo) 92s - $ hg cat -r 1 .hgsubstate 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo 92s - $ hg cat -r 1 .hgsub 92s - subrepo = [git]../gitsubrepo 92s - $ hg gverify -r 1 92s - verifying rev a4036e758995 against git commit e42b08b3cb7069b4594a4ee1d9cb641ee47b2355 92s - 92s -(change subrepo commit) 92s - $ hg cat -r 2 .hgsubstate 92s - aa2ead20c29b5cc6256408e1d9ef704870033afb subrepo 92s - $ hg cat -r 2 .hgsub 92s - subrepo = [git]../gitsubrepo 92s - $ hg gverify -r 2 92s - verifying rev a6075a162f62 against git commit a000567ceefbd9a2ce364e0dea6e298010b02b6d 92s - 92s -(add another subrepo) 92s - $ hg cat -r 3 .hgsubstate 92s - aa2ead20c29b5cc6256408e1d9ef704870033afb subrepo 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 92s - $ hg cat -r 3 .hgsub 92s - subrepo = [git]../gitsubrepo 92s - subrepo2 = [git]../gitsubrepo 92s - $ hg gverify -r 3 92s - verifying rev 29e236ba4c06 against git commit 6e219527869fa40eb6ffbdd013cd86d576b26b01 92s - 92s -(replace subrepo with file) 92s - $ hg cat -r 4 .hgsubstate 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 92s - $ hg cat -r 4 .hgsub 92s - subrepo2 = [git]../gitsubrepo 92s - $ hg manifest -r 4 92s - .hgsub 92s - .hgsubstate 92s - alpha 92s - subrepo 92s - $ hg gverify -r 4 92s - verifying rev 73e078a178a0 against git commit f6436a472da00f581d8d257e9bbaf3c358a5e88c 92s - 92s -(replace file with subrepo) 92s - $ hg cat -r 5 .hgsubstate 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 92s - $ hg cat -r 5 .hgsub 92s - subrepo2 = [git]../gitsubrepo 92s - alpha = [git]../gitsubrepo 92s - $ hg manifest -r 5 92s - .hgsub 92s - .hgsubstate 92s - subrepo 92s - $ hg gverify -r 5 92s - verifying rev c0d52ffc59b8 against git commit 88171163bf4795b5570924e51d5f8ede33f8bc28 92s - 92s -(replace symlink with subrepo) 92s - $ hg cat -r 7 .hgsub 92s - subrepo2 = [git]../gitsubrepo 92s - alpha = [git]../gitsubrepo 92s - foolink = [git]../gitsubrepo 92s - $ hg cat -r 7 .hgsubstate 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba foolink 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 92s - $ hg gverify -r 7 92s - verifying rev acebec53c0fc against git commit e3288fa737d429a60637b3b6782cb25b8298bc00 92s - 92s -(replace subrepo with symlink) 92s - $ hg cat -r 8 .hgsub .hgsubstate 92s - subrepo2 = [git]../gitsubrepo 92s - alpha = [git]../gitsubrepo 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 92s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 92s - 92s - $ hg gverify -r 8 92s - verifying rev 33da452ef22f against git commit d28364013fe1a0fde56c0e1921e49ecdeee8571d 92s - 92s -(remove all subrepos) 92s - $ hg cat -r 9 .hgsub .hgsubstate 92s - .hgsub: no such file in rev 0ad944b2c4d8 92s - .hgsubstate: no such file in rev 0ad944b2c4d8 92s - [1] 92s - $ hg gverify -r 9 92s - verifying rev 0ad944b2c4d8 against git commit 15ba94929481c654814178aac1dbca06ae688718 92s - 92s - $ hg debug-remove-hggit-state 92s - clearing out the git cache data 92s - $ hg gexport 92s - $ cd .hg/git 92s - $ git log --pretty=oneline 92s - 73c15b74fb81fa0cc60e9c59c73787a9f26c778b remove all subrepos 92s - d28364013fe1a0fde56c0e1921e49ecdeee8571d replace subrepo with symlink 92s - e3288fa737d429a60637b3b6782cb25b8298bc00 replace symlink with subrepo 92s - 2d1c135447d11df4dfe96dd5d4f37926dc5c821d add symlink 92s - 88171163bf4795b5570924e51d5f8ede33f8bc28 replace file with subrepo 92s - f6436a472da00f581d8d257e9bbaf3c358a5e88c replace subrepo with file 92s - 6e219527869fa40eb6ffbdd013cd86d576b26b01 add another subrepo 92s - a000567ceefbd9a2ce364e0dea6e298010b02b6d change subrepo commit 92s - e42b08b3cb7069b4594a4ee1d9cb641ee47b2355 add subrepo 92s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 add alpha 92s - 92s -test with rename detection enabled -- simply checking that the Mercurial hashes 92s -are the same is enough 92s - $ cd ../../.. 92s - $ hg --config git.similarity=100 clone gitrepo2 hgreporenames 92s - importing 10 git commits 92s - new changesets ff7a2f2d8d70:0ad944b2c4d8 (10 drafts) 92s - updating to bookmark master 92s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 92s - $ cd hgreporenames 92s - $ hg log --graph 92s - @ changeset: 9:0ad944b2c4d8 92s - | bookmark: master 92s - | tag: default/master 92s - | tag: tip 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: remove all subrepos 92s - | 92s - o changeset: 8:33da452ef22f 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace subrepo with symlink 92s - | 92s - o changeset: 7:acebec53c0fc 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace symlink with subrepo 92s - | 92s - o changeset: 6:78c2ea52db4b 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: add symlink 92s - | 92s - o changeset: 5:c0d52ffc59b8 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace file with subrepo 92s - | 92s - o changeset: 4:73e078a178a0 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: replace subrepo with file 92s - | 92s - o changeset: 3:29e236ba4c06 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: add another subrepo 92s - | 92s - o changeset: 2:a6075a162f62 92s - | user: test 92s - | date: Mon Jan 01 00:00:12 2007 +0000 92s - | summary: change subrepo commit 92s - | 92s - o changeset: 1:a4036e758995 92s - | user: test 92s - | date: Mon Jan 01 00:00:11 2007 +0000 92s - | summary: add subrepo 92s - | 92s - o changeset: 0:ff7a2f2d8d70 92s - user: test 92s - date: Mon Jan 01 00:00:10 2007 +0000 92s - summary: add alpha 92s - 92s - $ cd .. 92s - 92s -test handling of an invalid .gitmodules file (#380) 92s - 92s - $ git init --quiet gitrepo-issue380 92s - $ cd gitrepo-issue380 92s - $ git submodule add ../gitsubrepo 92s - Cloning into '$TESTTMP/gitrepo-issue380/gitsubrepo'... 92s - done. 92s - $ fn_git_commit -m 'add a submodule' 92s - $ cat >> .gitmodules < <<<<<<< HEAD 92s - > EOF 92s - $ fn_git_commit -a -m 'b0rken .gitmodules' 92s - $ git status 92s - fatal: bad config line 4 in file $TESTTMP/gitrepo-issue380/.gitmodules 92s - [128] 92s - $ sed -i.orig /HEAD/d .gitmodules 92s - $ fn_git_commit -a -m 'fix .gitmodules' 92s - $ git status 92s - On branch master 92s - Untracked files: 92s - (use "git add ..." to include in what will be committed) 92s - .gitmodules.orig 92s - 92s - nothing added to commit but untracked files present (use "git add" to track) 92s - $ cd .. 92s - $ git clone gitrepo-issue380 gitrepo-issue380~ 92s - Cloning into 'gitrepo-issue380~'... 92s - done. 92s - $ hg clone -U gitrepo-issue380 hgrepo-issue380 92s - importing 3 git commits 92s - warning: failed to parse .gitmodules in 2e4ec4293822 92s - new changesets ed60e5fbc192:9dfc0cdf1787 (3 drafts) 92s 92s ERROR: test-git-submodules.t output changed 92s !s 92s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-renames.t 92s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-renames.t.err 92s @@ -95,494 +95,99 @@ 92s 92s $ cd .. 92s $ hg clone -q repo.git hgrepo 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 2046, in clone 92s + r = hg.clone( 92s + ui, 92s + ...<11 lines>... 92s + depth=opts.get('depth') or None, 92s + ) 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 92s + srcpeer, destpeer = orig(*args, **opts) 92s + ~~~~^^^^^^^^^^^^^^^ 92s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 92s + exchange.pull( 92s + ~~~~~~~~~~~~~^ 92s + local, 92s + ^^^^^^ 92s + ...<5 lines>... 92s + depth=depth, 92s + ^^^^^^^^^^^^ 92s + ) 92s + ^ 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 92s + return f(*args, **kwargs) 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 92s + pullop.cgresult = repo.githandler.fetch(remote, heads) 92s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 92s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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 $ cd hgrepo 92s + $TESTTMP.sh: 115: cd: can't cd to hgrepo 92s $ hg book master -q 92s - $ hg log -p --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 92s - @ 8 497105ddbe119aa40af691eb2b1a029c29bf5247 remove submodule and rename back 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/.hgsub b/.hgsub 92s - | --- a/.hgsub 92s - | +++ b/.hgsub 92s - | @@ -1,2 +1,1 @@ 92s - | gitsubmodule2 = [git]../gitsubmodule 92s - | -gamma = [git]../gitsubmodule 92s - | diff --git a/.hgsubstate b/.hgsubstate 92s - | --- a/.hgsubstate 92s - | +++ b/.hgsubstate 92s - | @@ -1,2 +1,1 @@ 92s - | -5944b31ff85b415573d1a43eb942e2dea30ab8be gamma 92s - | 5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 92s - | diff --git a/gamma-new b/gamma 92s - | rename from gamma-new 92s - | rename to gamma 92s - | 92s - o 7 adfc1ce8461d3174dcf8425e112e2fa848de3913 rename and add submodule 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/.hgsub b/.hgsub 92s - | --- a/.hgsub 92s - | +++ b/.hgsub 92s - | @@ -1,1 +1,2 @@ 92s - | gitsubmodule2 = [git]../gitsubmodule 92s - | +gamma = [git]../gitsubmodule 92s - | diff --git a/.hgsubstate b/.hgsubstate 92s - | --- a/.hgsubstate 92s - | +++ b/.hgsubstate 92s - | @@ -1,1 +1,2 @@ 92s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gamma 92s - | 5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 92s - | diff --git a/gamma b/gamma-new 92s - | rename from gamma 92s - | rename to gamma-new 92s - | 92s - o 6 62c1a4b07240b53a71be1b1a46e94e99132c5391 beta renamed back 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/beta b/beta 92s - | old mode 120000 92s - | new mode 100644 92s - | --- a/beta 92s - | +++ b/beta 92s - | @@ -1,1 +1,12 @@ 92s - | -beta-new 92s - | \ No newline at end of file 92s - | +1 92s - | +2 92s - | +3 92s - | +4 92s - | +5 92s - | +6 92s - | +7 92s - | +8 92s - | +9 92s - | +10 92s - | +11 92s - | +12 92s - | diff --git a/beta-new b/beta-new 92s - | deleted file mode 100644 92s - | --- a/beta-new 92s - | +++ /dev/null 92s - | @@ -1,12 +0,0 @@ 92s - | -1 92s - | -2 92s - | -3 92s - | -4 92s - | -5 92s - | -6 92s - | -7 92s - | -8 92s - | -9 92s - | -10 92s - | -11 92s - | -12 92s - | 92s - o 5 f93fefed957cff2220d3f0d11182398350b5fa9a beta renamed 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/beta b/beta 92s - | old mode 100644 92s - | new mode 120000 92s - | --- a/beta 92s - | +++ b/beta 92s - | @@ -1,12 +1,1 @@ 92s - | -1 92s - | -2 92s - | -3 92s - | -4 92s - | -5 92s - | -6 92s - | -7 92s - | -8 92s - | -9 92s - | -10 92s - | -11 92s - | -12 92s - | +beta-new 92s - | \ No newline at end of file 92s - | diff --git a/beta b/beta-new 92s - | copy from beta 92s - | copy to beta-new 92s - | 92s - o 4 b9e63d96abc2783afc59246e798a6936cf05a35e move submodule 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/.hgsub b/.hgsub 92s - | --- a/.hgsub 92s - | +++ b/.hgsub 92s - | @@ -1,1 +1,1 @@ 92s - | -gitsubmodule = [git]../gitsubmodule 92s - | +gitsubmodule2 = [git]../gitsubmodule 92s - | diff --git a/.hgsubstate b/.hgsubstate 92s - | --- a/.hgsubstate 92s - | +++ b/.hgsubstate 92s - | @@ -1,1 +1,1 @@ 92s - | -5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule 92s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 92s - | 92s - o 3 55537ea256c28be1b5637f4f93a601fdde8a9a7f add submodule 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/.hgsub b/.hgsub 92s - | new file mode 100644 92s - | --- /dev/null 92s - | +++ b/.hgsub 92s - | @@ -0,0 +1,1 @@ 92s - | +gitsubmodule = [git]../gitsubmodule 92s - | diff --git a/.hgsubstate b/.hgsubstate 92s - | new file mode 100644 92s - | --- /dev/null 92s - | +++ b/.hgsubstate 92s - | @@ -0,0 +1,1 @@ 92s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule 92s - | 92s - o 2 20f9e56b6d006d0403f853245e483d0892b8ac48 gamma 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/beta b/beta 92s - | --- a/beta 92s - | +++ b/beta 92s - | @@ -9,3 +9,4 @@ 92s - | 9 92s - | 10 92s - | 11 92s - | +12 92s - | diff --git a/beta b/gamma 92s - | copy from beta 92s - | copy to gamma 92s - | --- a/beta 92s - | +++ b/gamma 92s - | @@ -9,3 +9,4 @@ 92s - | 9 92s - | 10 92s - | 11 92s - | +13 92s - | 92s - o 1 9f7744e68def81da3b394f11352f602ca9c8ab68 beta 92s - | branch=default hg-git-rename-source=git 92s - | 92s - | diff --git a/alpha b/beta 92s - | rename from alpha 92s - | rename to beta 92s - | --- a/alpha 92s - | +++ b/beta 92s - | @@ -8,3 +8,4 @@ 92s - | 8 92s - | 9 92s - | 10 92s - | +11 92s - | 92s - o 0 7bc844166f76e49562f81eacd54ea954d01a9e42 alpha 92s - branch=default hg-git-rename-source=git 92s - 92s - diff --git a/alpha b/alpha 92s - new file mode 100644 92s - --- /dev/null 92s - +++ b/alpha 92s - @@ -0,0 +1,10 @@ 92s - +1 92s - +2 92s - +3 92s - +4 92s - +5 92s - +6 92s - +7 92s - +8 92s - +9 92s - +10 92s - 92s - 92s -Make a new ordinary commit in Mercurial (no extra metadata) 92s - $ echo 14 >> gamma 92s - $ hg ci -m "gamma2" 92s - 92s -Make a new commit with a copy and a rename in Mercurial 92s - $ hg cp gamma delta 92s - $ echo 15 >> delta 92s - $ hg mv beta epsilon 92s - $ echo 16 >> epsilon 92s - $ hg ci -m "delta/epsilon" 92s - $ hg export . 92s - # HG changeset patch 92s - # User test 92s - # Date 0 0 92s - # Thu Jan 01 00:00:00 1970 +0000 92s - # Node ID ea6414fab78622fd53679e0593eddad96ff4178d 92s - # Parent ee9ec792d5866c313a4cb7a2f8772f2cffa90df4 92s - delta/epsilon 92s - 92s - diff --git a/gamma b/delta 92s - copy from gamma 92s - copy to delta 92s - --- a/gamma 92s - +++ b/delta 92s - @@ -11,3 +11,4 @@ 92s - 11 92s - 13 92s - 14 92s - +15 92s - diff --git a/beta b/epsilon 92s - rename from beta 92s - rename to epsilon 92s - --- a/beta 92s - +++ b/epsilon 92s - @@ -10,3 +10,4 @@ 92s - 10 92s - 11 92s - 12 92s - +16 92s - $ hg push 92s - pushing to $TESTTMP/repo.git 92s - searching for changes 92s - adding objects 92s - remote: found 0 deltas to reuse 92s - added 2 commits with 2 trees and 3 blobs 92s - updating reference refs/heads/master 92s - 92s - $ cd ../repo.git 92s - $ git log master --pretty=oneline 92s - 5f2948d029693346043f320620af99a615930dc4 delta/epsilon 92s - bbd2ec050f7fbc64f772009844f7d58a556ec036 gamma2 92s - 50d116676a308b7c22935137d944e725d2296f2a remove submodule and rename back 92s - 59fb8e82ea18f79eab99196f588e8948089c134f rename and add submodule 92s - f95497455dfa891b4cd9b524007eb9514c3ab654 beta renamed back 92s - 055f482277da6cd3dd37c7093d06983bad68f782 beta renamed 92s - d7f31298f27df8a9226eddb1e4feb96922c46fa5 move submodule 92s - c610256cb6959852d9e70d01902a06726317affc add submodule 92s - e1348449e0c3a417b086ed60fc13f068d4aa8b26 gamma 92s - cc83241f39927232f690d370894960b0d1943a0e beta 92s - 938bb65bb322eb4a3558bec4cdc8a680c4d1794c alpha 92s - 92s -Make sure the right metadata is stored 92s - $ git cat-file commit master^ 92s - tree 0adbde18545845f3b42ad1a18939ed60a9dec7a8 92s - parent 50d116676a308b7c22935137d944e725d2296f2a 92s - author test 0 +0000 92s - committer test 0 +0000 92s - HG:rename-source hg 92s - 92s - gamma2 92s - $ git cat-file commit master 92s - tree f8f32f4e20b56a5a74582c6a5952c175bf9ec155 92s - parent bbd2ec050f7fbc64f772009844f7d58a556ec036 92s - author test 0 +0000 92s - committer test 0 +0000 92s - HG:rename gamma:delta 92s - HG:rename beta:epsilon 92s - 92s - delta/epsilon 92s - 92s -Now make another clone and compare the hashes 92s - 92s - $ cd .. 92s - $ hg clone -q repo.git hgrepo2 92s - $ cd hgrepo2 92s - $ hg book master -qf 92s - $ hg export master 92s - # HG changeset patch 92s - # User test 92s - # Date 0 0 92s - # Thu Jan 01 00:00:00 1970 +0000 92s - # Node ID ea6414fab78622fd53679e0593eddad96ff4178d 92s - # Parent ee9ec792d5866c313a4cb7a2f8772f2cffa90df4 92s - delta/epsilon 92s - 92s - diff --git a/gamma b/delta 92s - copy from gamma 92s - copy to delta 92s - --- a/gamma 92s - +++ b/delta 92s - @@ -11,3 +11,4 @@ 92s - 11 92s - 13 92s - 14 92s - +15 92s - diff --git a/beta b/epsilon 92s - rename from beta 92s - rename to epsilon 92s - --- a/beta 92s - +++ b/epsilon 92s - @@ -10,3 +10,4 @@ 92s - 10 92s - 11 92s - 12 92s - +16 92s - 92s -Regenerate the Git metadata and compare the hashes 92s - $ hg debug-remove-hggit-state 92s - clearing out the git cache data 92s - $ hg gexport 92s - $ cd .hg/git 92s - $ git log master --pretty=oneline 92s - f3f6592447685566af9447c03ae262aa5432511d delta/epsilon (dulwich-rust !) 92s - c51ce14ec367c5ea72bf428dee3f8576f2fe1bb0 gamma2 (dulwich-rust !) 92s - df749cae534e3c7a0ad664cd0f214dd36e0ac259 remove submodule and rename back (dulwich-rust !) 92s - 8f9ec605ad0cc2532202f73cef8e35d3241797ee rename and add submodule (dulwich-rust !) 92s - 8a00d0fb75377c51c9a46e92ff154c919007f0e2 delta/epsilon (no-dulwich-rust !) 92s - dd7d4f1adb942a8d349dce585019f6949184bc64 gamma2 (no-dulwich-rust !) 92s - 3f1cdaf8b603816fcda02bd29e75198ae4cb13db remove submodule and rename back (no-dulwich-rust !) 92s - 2a4abf1178a999e2054158ceb0c7768079665d03 rename and add submodule (no-dulwich-rust !) 92s - 88c416e8d5e0e9dd1187d45ebafaa46111764196 beta renamed back 92s - 027d2a6e050705bf6f7e226e7e97f02ce5ae3200 beta renamed 92s - dc70e620634887e70ac5dd108bcc7ebd99c60ec3 move submodule 92s - c610256cb6959852d9e70d01902a06726317affc add submodule 92s - e1348449e0c3a417b086ed60fc13f068d4aa8b26 gamma 92s - cc83241f39927232f690d370894960b0d1943a0e beta 92s - 938bb65bb322eb4a3558bec4cdc8a680c4d1794c alpha 92s - 92s -Test findcopiesharder 92s - 92s - $ cd $TESTTMP 92s - $ git init -q gitcopyharder 92s - $ cd gitcopyharder 92s - $ cat >> file0 << EOF 92s - > 1 92s - > 2 92s - > 3 92s - > 4 92s - > 5 92s - > EOF 92s - $ git add file0 92s - $ fn_git_commit -m file0 92s - $ cp file0 file1 92s - $ git add file1 92s - $ fn_git_commit -m file1 92s - $ cp file0 file2 92s - $ echo 6 >> file2 92s - $ git add file2 92s - $ fn_git_commit -m file2 92s - 92s - $ cd .. 92s - 92s -Clone without findcopiesharder does not find copies from unmodified files 92s - 92s - $ hg clone gitcopyharder hgnocopyharder 92s - importing 3 git commits 92s - new changesets b45d023c6842:ec77ccdbefe0 (3 drafts) 92s - updating to bookmark master 92s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 92s - $ hg -R hgnocopyharder export 1::2 92s - # HG changeset patch 92s - # User test 92s - # Date 1167609621 0 92s - # Mon Jan 01 00:00:21 2007 +0000 92s - # Node ID 555831c93e2a250e5ba42efad45bf7ba71da13e4 92s - # Parent b45d023c6842337ffe694663a44aa672d311081c 92s - file1 92s - 92s - diff --git a/file1 b/file1 92s - new file mode 100644 92s - --- /dev/null 92s - +++ b/file1 92s - @@ -0,0 +1,5 @@ 92s - +1 92s - +2 92s - +3 92s - +4 92s - +5 92s - # HG changeset patch 92s - # User test 92s - # Date 1167609622 0 92s - # Mon Jan 01 00:00:22 2007 +0000 92s - # Node ID ec77ccdbefe023eb9898b0399f84f670c8c0f5fc 92s - # Parent 555831c93e2a250e5ba42efad45bf7ba71da13e4 92s - file2 92s - 92s - diff --git a/file2 b/file2 92s - new file mode 100644 92s - --- /dev/null 92s - +++ b/file2 92s - @@ -0,0 +1,6 @@ 92s - +1 92s - +2 92s - +3 92s - +4 92s - +5 92s - +6 92s - 92s -findcopiesharder finds copies from unmodified files if similarity is met 92s - 92s - $ hg --config git.findcopiesharder=true clone gitcopyharder hgcopyharder0 92s - importing 3 git commits 92s - new changesets b45d023c6842:9b3099834272 (3 drafts) 92s - updating to bookmark master 92s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 92s - $ hg -R hgcopyharder0 export 1::2 92s - # HG changeset patch 92s - # User test 92s - # Date 1167609621 0 92s - # Mon Jan 01 00:00:21 2007 +0000 92s - # Node ID cd05a87103eed9d270fc05b62b00f48e174ab960 92s - # Parent b45d023c6842337ffe694663a44aa672d311081c 92s - file1 92s - 92s - diff --git a/file0 b/file1 92s - copy from file0 92s - copy to file1 92s - # HG changeset patch 92s - # User test 92s - # Date 1167609622 0 92s - # Mon Jan 01 00:00:22 2007 +0000 92s - # Node ID 9b30998342729c7357d418bebed7399986cfe643 92s - # Parent cd05a87103eed9d270fc05b62b00f48e174ab960 92s - file2 92s - 92s - diff --git a/file0 b/file2 92s - copy from file0 92s - copy to file2 92s - --- a/file0 92s - +++ b/file2 92s - @@ -3,3 +3,4 @@ 92s - 3 92s - 4 92s - 5 92s - +6 92s - 92s - $ hg --config git.findcopiesharder=true --config git.similarity=95 clone gitcopyharder hgcopyharder1 92s - importing 3 git commits 92s - new changesets b45d023c6842:d9d2e8cbf050 (3 drafts) 92s - updating to bookmark master 92s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 92s - $ hg -R hgcopyharder1 export 1::2 92s - # HG changeset patch 92s - # User test 92s - # Date 1167609621 0 92s - # Mon Jan 01 00:00:21 2007 +0000 92s - # Node ID cd05a87103eed9d270fc05b62b00f48e174ab960 92s - # Parent b45d023c6842337ffe694663a44aa672d311081c 92s - file1 92s - 92s - diff --git a/file0 b/file1 92s - copy from file0 92s - copy to file1 92s - # HG changeset patch 92s - # User test 92s - # Date 1167609622 0 92s - # Mon Jan 01 00:00:22 2007 +0000 92s - # Node ID d9d2e8cbf050772be31dccf78851f71dc547d139 92s - # Parent cd05a87103eed9d270fc05b62b00f48e174ab960 92s - file2 92s - 92s - diff --git a/file2 b/file2 92s - new file mode 100644 92s - --- /dev/null 92s - +++ b/file2 92s - @@ -0,0 +1,6 @@ 92s - +1 92s - +2 92s - +3 92s - +4 92s - +5 92s - +6 92s - 92s -Config values out of range 92s - $ hg --config git.similarity=999 clone gitcopyharder hgcopyharder2 92s - importing 3 git commits 92s - abort: git.similarity must be between 0 and 100 92s - [255] 92s -Left-over on Windows with some pack files 92s - $ rm -rf hgcopyharder2 92s - $ hg --config git.renamelimit=-5 clone gitcopyharder hgcopyharder2 92s - importing 3 git commits 92s - abort: git.renamelimit must be non-negative 92s - [255] 92s 92s ERROR: test-renames.t output changed 93s ! 93s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-tags.t 93s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-tags.t#draft.err 93s @@ -42,336 +42,103 @@ 93s 93s $ hg clone repo.git hgrepo 93s importing 2 git commits 93s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 93s - updating to bookmark master 93s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 93s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 93s + ** which supports versions 6.9 of Mercurial. 93s + ** Please disable "hggit" and try your action again. 93s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 93s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 93s + ** Mercurial Distributed SCM (version 7.0.1) 93s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 93s + Traceback (most recent call last): 93s + File "/usr/bin/hg", line 51, in 93s + dispatch.run() 93s + ~~~~~~~~~~~~^^ 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 93s + status = dispatch(req) 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 93s + status = _rundispatch(req) 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 93s + ret = _runcatch(req) or 0 93s + ~~~~~~~~~^^^^^ 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 93s + return _callcatch(ui, _runcatchfunc) 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 93s + return scmutil.callcatch(ui, func) 93s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 93s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 93s + return func() 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 93s + return _dispatch(req) 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 93s + return runcommand( 93s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 93s + ) 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 93s + ret = _runcommand(ui, options, cmd, d) 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 93s + return cmdfunc() 93s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 93s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 93s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 93s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 93s + return func(*args, **kwargs) 93s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 93s + r = hg.clone( 93s + ui, 93s + ...<11 lines>... 93s + depth=opts.get('depth') or None, 93s + ) 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 93s + srcpeer, destpeer = orig(*args, **opts) 93s + ~~~~^^^^^^^^^^^^^^^ 93s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 93s + exchange.pull( 93s + ~~~~~~~~~~~~~^ 93s + local, 93s + ^^^^^^ 93s + ...<5 lines>... 93s + depth=depth, 93s + ^^^^^^^^^^^^ 93s + ) 93s + ^ 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 93s + return f(*args, **kwargs) 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 93s + pullop.cgresult = repo.githandler.fetch(remote, heads) 93s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 93s + imported = self.import_git_objects( 93s + b'pull', 93s + ...<2 lines>... 93s + heads=heads, 93s + ) 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 93s + self.import_git_commit( 93s + ~~~~~~~~~~~~~~~~~~~~~~^ 93s + command, 93s + ^^^^^^^^ 93s + self.git[commit.sha], 93s + ^^^^^^^^^^^^^^^^^^^^^ 93s + commit.phase, 93s + ^^^^^^^^^^^^^ 93s + ) 93s + ^ 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 93s + files, gitlinks, git_renames = self.get_files_changed( 93s + ~~~~~~~~~~~~~~~~~~~~~~^ 93s + commit, detect_renames 93s + ^^^^^^^^^^^^^^^^^^^^^^ 93s + ) 93s + ^ 93s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 93s + oldfile, oldmode, oldsha = change.old 93s + ^^^^^^^^^^^^^^^^^^^^^^^^ 93s + TypeError: cannot unpack non-iterable NoneType object 93s + [1] 93s 93s $ cd hgrepo 93s + $TESTTMP.sh: 39: cd: can't cd to hgrepo 93s 93s Verify that annotated tags are unaffected by reexports: 93s 93s $ GIT_DIR=.hg/git git tag -ln 93s - beta added tag beta 93s - $ hg gexport 93s - $ GIT_DIR=.hg/git git tag -ln 93s - beta added tag beta 93s - 93s -Error checking on tag creation 93s - 93s - $ hg tag --git beta --remove 93s - abort: cannot remove git tags 93s - (the git documentation heavily discourages editing tags) 93s - [255] 93s - $ hg tag --git beta -r null 93s - abort: cannot remove git tags 93s - (the git documentation heavily discourages editing tags) 93s - [255] 93s - $ hg tag --git beta --remove -r 0 93s - abort: cannot specify both --rev and --remove 93s - [10] 93s - $ hg tag --git alpha 93s - abort: git tags require an explicit revision 93s - (please specify -r/--rev) 93s - [255] 93s - $ hg tag --git alpha alpha -r 0 93s - abort: tag names must be unique 93s - [255] 93s - $ hg tag --git alpha -r 0 -e 93s - abort: cannot specify both --git and --edit 93s - [10] 93s - $ hg tag --git alpha -r 0 -m 42 93s - abort: cannot specify both --git and --message 93s - [10] 93s - $ hg tag --git alpha -r 0 -d 42 93s - abort: cannot specify both --git and --date 93s - [10] 93s - $ hg tag --git alpha -r 0 -u user@example.com 93s - abort: cannot specify both --git and --user 93s - [10] 93s - $ hg tag --git 'with space' -r 0 93s - abort: the name 'with space' is not a valid git tag 93s - [255] 93s - $ hg tag --git ' beta' -r 0 93s - abort: the name 'beta' already exists 93s - [255] 93s - $ hg tag --git master -r 0 93s - abort: the name 'master' already exists 93s - [255] 93s - $ hg tag --git tip -r 0 93s - abort: the name 'tip' is reserved 93s - [10] 93s - 93s -Create a git tag from hg 93s - 93s - $ hg tag --git alpha --debug -r 0 93s - finding unexported changesets 93s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 93s - adding git tag alpha 93s - $ hg log --graph 93s - @ changeset: 1:7fe02317c63d 93s - | bookmark: master 93s - | tag: beta 93s - | tag: default/master 93s - | tag: tip 93s - | user: test 93s - | date: Mon Jan 01 00:00:11 2007 +0000 93s - | summary: add beta 93s - | 93s - o changeset: 0:ff7a2f2d8d70 93s - tag: alpha 93s - user: test 93s - date: Mon Jan 01 00:00:10 2007 +0000 93s - summary: add alpha 93s - 93s - $ echo beta-fix >> beta 93s - $ fn_hg_commit -m 'fix for beta' 93s -#if secret 93s - $ hg phase -d 93s -#endif 93s - $ hg push 93s - pushing to $TESTTMP/repo.git 93s - searching for changes 93s - adding objects 93s - remote: found 0 deltas to reuse 93s - added 1 commits with 1 trees and 1 blobs 93s - updating reference refs/heads/master 93s - adding reference refs/tags/alpha 93s - 93s -Verify that amending commits known to remotes doesn't break anything 93s - 93s - $ cat >> $HGRCPATH << EOF 93s - > [experimental] 93s - > evolution = createmarkers 93s - > evolution.createmarkers = yes 93s - > EOF 93s - $ hg tags 93s - tip 2:61175962e488 93s - default/master 2:61175962e488 93s - beta 1:7fe02317c63d 93s - alpha 0:ff7a2f2d8d70 93s - $ echo beta-fix-again >> beta 93s - $ fn_hg_commit --amend 93s - $ hg log -T shorttags 93s - 3:3094b9e8da41 draft tip 93s - 2:61175962e488 draft default/master X 93s - 1:7fe02317c63d draft beta 93s - 0:ff7a2f2d8d70 draft alpha 93s - $ hg tags 93s - tip 3:3094b9e8da41 93s - default/master 2:61175962e488 93s - beta 1:7fe02317c63d 93s - alpha 0:ff7a2f2d8d70 93s - $ hg push 93s - pushing to $TESTTMP/repo.git 93s - searching for changes 93s - abort: pushing refs/heads/master overwrites 3094b9e8da41 93s - [255] 93s - $ hg push -f 93s - pushing to $TESTTMP/repo.git 93s - searching for changes 93s - adding objects 93s - remote: found 0 deltas to reuse 93s - added 1 commits with 1 trees and 1 blobs 93s - updating reference refs/heads/master 93s - 93s -Now create a tag for the old, obsolete master 93s - 93s - $ cd ../repo.git 93s - $ git tag detached $(hg log -R ../hgrepo --hidden -r 2 -T '{gitnode}\n') 93s - $ git tag 93s - alpha 93s - beta 93s - detached 93s - $ cd ../hgrepo 93s - $ hg pull 93s - pulling from $TESTTMP/repo.git 93s - no changes found 93s - $ hg log -T shorttags 93s - 3:3094b9e8da41 draft default/master tip 93s - 2:61175962e488 draft detached X 93s - 1:7fe02317c63d draft beta 93s - 0:ff7a2f2d8d70 draft alpha 93s - $ hg tags 93s - tip 3:3094b9e8da41 93s - default/master 3:3094b9e8da41 93s - detached 2:61175962e488 93s - beta 1:7fe02317c63d 93s - alpha 0:ff7a2f2d8d70 93s - $ hg push 93s - pushing to $TESTTMP/repo.git 93s - searching for changes 93s - no changes found 93s - [1] 93s - 93s - $ cd .. 93s - 93s -Verify that revsets can point out git tags; for that we need an 93s -untagged commit. 93s - 93s - $ cd hgrepo 93s - $ touch gamma 93s - $ fn_hg_commit -A -m 'add gamma' 93s -#if secret 93s - $ hg phase -d 93s -#endif 93s - $ hg log -T shorttags -r 'gittag()' 93s - 0:ff7a2f2d8d70 draft alpha 93s - 1:7fe02317c63d draft beta 93s - 2:61175962e488 draft detached X 93s - $ hg log -T shorttags -r 'gittag(detached)' 93s - 2:61175962e488 draft detached X 93s - $ hg log -T shorttags -r 'gittag("re:a$")' 93s - 0:ff7a2f2d8d70 draft alpha 93s - 1:7fe02317c63d draft beta 93s - 93s -Create a git tag from hg, but pointing to a new commit: 93s - 93s - $ hg tag --git gamma --debug -r tip 93s - invalid branch cache (visible): tip differs (?) 93s - finding unexported changesets 93s - exporting 1 changesets 93s - converting revision 0eb1ab0073a885a498d4ae3dc5cf0c26e750fa3d 93s - packing 3 loose objects... 93s - packed 3 loose objects! 93s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 93s - adding git tag gamma 93s - $ hg push 93s - pushing to $TESTTMP/repo.git 93s - searching for changes 93s - adding objects 93s - remote: found 0 deltas to reuse 93s - added 1 commits with 1 trees and 1 blobs 93s - updating reference refs/heads/master 93s - adding reference refs/tags/gamma 93s - $ cd ../gitrepo 93s - $ git fetch --quiet --tags 93s - $ git tag 93s - alpha 93s - beta 93s - detached 93s - gamma 93s - $ cd .. 93s - 93s -Try to overwrite an annotated tag: 93s - 93s - $ cd hgrepo 93s - $ hg tags -v 93s - tip 4:0eb1ab0073a8 93s - gamma 4:0eb1ab0073a8 git 93s - default/master 4:0eb1ab0073a8 git-remote 93s - detached 2:61175962e488 git 93s - beta 1:7fe02317c63d git 93s - alpha 0:ff7a2f2d8d70 git 93s - $ hg book not-master 93s - $ hg tag beta 93s - abort: tag 'beta' already exists (use -f to force) 93s - [10] 93s - $ hg tag -f beta 93s -#if secret 93s - $ hg phase -d 93s -#endif 93s - $ hg push 93s - pushing to $TESTTMP/repo.git 93s - warning: not overwriting annotated tag 'beta' 93s - searching for changes 93s - adding objects 93s - remote: found 0 deltas to reuse 93s - added 1 commits with 1 trees and 1 blobs 93s - adding reference refs/heads/not-master 93s - $ hg tags 93s - tip 5:c49682c7cba4 93s - default/not-master 5:c49682c7cba4 93s - gamma 4:0eb1ab0073a8 93s - default/master 4:0eb1ab0073a8 93s - beta 4:0eb1ab0073a8 93s - detached 2:61175962e488 93s - alpha 0:ff7a2f2d8d70 93s - $ cd .. 93s - 93s -Check whether `gimport` handles tags 93s - 93s - $ cd hgrepo 93s - $ rm .hg/git-tags .hg/git-mapfile 93s - $ hg gimport 93s - importing 6 git commits 93s - $ hg tags -q 93s - tip 93s - default/not-master 93s - gamma 93s - default/master 93s - beta 93s - detached 93s - alpha 93s - $ cd .. 93s - 93s -Test how pulling an explicit branch with an annotated tag: 93s - 93s - $ hg clone -r master repo.git hgrepo-2 93s - importing 4 git commits 93s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 93s - updating to branch default 93s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 93s - $ hg log -r 'ancestors(master) and tagged()' -T shorttags -R hgrepo-2 93s - 0:ff7a2f2d8d70 draft alpha 93s - 1:7fe02317c63d draft beta 93s - 3:0eb1ab0073a8 draft default/master gamma tip 93s - $ hg tags -v -R hgrepo-2 93s - tip 3:0eb1ab0073a8 93s - gamma 3:0eb1ab0073a8 git 93s - default/master 3:0eb1ab0073a8 git-remote 93s - beta 1:7fe02317c63d git 93s - alpha 0:ff7a2f2d8d70 git 93s - $ GIT_DIR=hgrepo-2/.hg/git git fetch --quiet repo.git 93s - $ rm -rf hgrepo-2 93s - 93s - $ hg clone -r master repo.git hgrepo-2 93s - importing 4 git commits 93s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 93s - updating to branch default 93s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 93s - $ hg log -r 'tagged()' -T shorttags -R hgrepo-2 93s - 0:ff7a2f2d8d70 draft alpha 93s - 1:7fe02317c63d draft beta 93s - 3:0eb1ab0073a8 draft default/master gamma tip 93s -This used to die: 93s - $ hg -R hgrepo-2 gexport 93s -This used to fail, since we didn't actually pull the annotated tag: 93s - $ hg -R hgrepo-2 push 93s - pushing to $TESTTMP/repo.git 93s - searching for changes 93s - no changes found 93s - [1] 93s - $ rm -rf hgrepo-2 93s - 93s -Check that pulling will update phases only: 93s - 93s - $ cd hgrepo 93s - $ hg phase -fs gamma detached 93s - $ hg pull 93s - pulling from $TESTTMP/repo.git 93s - no changes found 93s - $ hg log -T shorttags -r gamma -r detached 93s - 4:0eb1ab0073a8 draft beta default/master gamma 93s - 2:61175962e488 draft detached X 93s - $ cd .. 93s - 93s -Check that we pull new tags to existing commits: 93s - $ cd gitrepo 93s - $ git tag 93s - alpha 93s - beta 93s - detached 93s - gamma 93s - $ fn_git_tag extra-simple-tag 93s - $ fn_git_tag -m annotated extra-annotated-tag 93s - $ git push --tags 93s - To $TESTTMP/repo.git 93s - * [new tag] extra-annotated-tag -> extra-annotated-tag 93s - * [new tag] extra-simple-tag -> extra-simple-tag 93s - $ cd ../hgrepo 93s - $ hg pull -r master 93s - pulling from $TESTTMP/repo.git 93s - no changes found 93s - $ hg tags -v | grep extra 93s - extra-simple-tag 1:7fe02317c63d git 93s - extra-annotated-tag 1:7fe02317c63d git 93s 93s ERROR: test-git-tags.t#draft output changed 94s !. 94s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-tags.t 94s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-tags.t#secret.err 94s @@ -42,336 +42,103 @@ 94s 94s $ hg clone repo.git hgrepo 94s importing 2 git commits 94s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 94s - updating to bookmark master 94s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 94s + ** which supports versions 6.9 of Mercurial. 94s + ** Please disable "hggit" and try your action again. 94s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 94s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 94s + ** Mercurial Distributed SCM (version 7.0.1) 94s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 94s + Traceback (most recent call last): 94s + File "/usr/bin/hg", line 51, in 94s + dispatch.run() 94s + ~~~~~~~~~~~~^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 94s + status = dispatch(req) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 94s + status = _rundispatch(req) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 94s + ret = _runcatch(req) or 0 94s + ~~~~~~~~~^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 94s + return _callcatch(ui, _runcatchfunc) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 94s + return scmutil.callcatch(ui, func) 94s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 94s + return func() 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 94s + return _dispatch(req) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 94s + return runcommand( 94s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 94s + ) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 94s + ret = _runcommand(ui, options, cmd, d) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 94s + return cmdfunc() 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 94s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 94s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 94s + return func(*args, **kwargs) 94s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 94s + r = hg.clone( 94s + ui, 94s + ...<11 lines>... 94s + depth=opts.get('depth') or None, 94s + ) 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 94s + srcpeer, destpeer = orig(*args, **opts) 94s + ~~~~^^^^^^^^^^^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 94s + exchange.pull( 94s + ~~~~~~~~~~~~~^ 94s + local, 94s + ^^^^^^ 94s + ...<5 lines>... 94s + depth=depth, 94s + ^^^^^^^^^^^^ 94s + ) 94s + ^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 94s + return f(*args, **kwargs) 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 94s + pullop.cgresult = repo.githandler.fetch(remote, heads) 94s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 94s + imported = self.import_git_objects( 94s + b'pull', 94s + ...<2 lines>... 94s + heads=heads, 94s + ) 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 94s + self.import_git_commit( 94s + ~~~~~~~~~~~~~~~~~~~~~~^ 94s + command, 94s + ^^^^^^^^ 94s + self.git[commit.sha], 94s + ^^^^^^^^^^^^^^^^^^^^^ 94s + commit.phase, 94s + ^^^^^^^^^^^^^ 94s + ) 94s + ^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 94s + files, gitlinks, git_renames = self.get_files_changed( 94s + ~~~~~~~~~~~~~~~~~~~~~~^ 94s + commit, detect_renames 94s + ^^^^^^^^^^^^^^^^^^^^^^ 94s + ) 94s + ^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 94s + oldfile, oldmode, oldsha = change.old 94s + ^^^^^^^^^^^^^^^^^^^^^^^^ 94s + TypeError: cannot unpack non-iterable NoneType object 94s + [1] 94s 94s $ cd hgrepo 94s + $TESTTMP.sh: 44: cd: can't cd to hgrepo 94s 94s Verify that annotated tags are unaffected by reexports: 94s 94s $ GIT_DIR=.hg/git git tag -ln 94s - beta added tag beta 94s - $ hg gexport 94s - $ GIT_DIR=.hg/git git tag -ln 94s - beta added tag beta 94s - 94s -Error checking on tag creation 94s - 94s - $ hg tag --git beta --remove 94s - abort: cannot remove git tags 94s - (the git documentation heavily discourages editing tags) 94s - [255] 94s - $ hg tag --git beta -r null 94s - abort: cannot remove git tags 94s - (the git documentation heavily discourages editing tags) 94s - [255] 94s - $ hg tag --git beta --remove -r 0 94s - abort: cannot specify both --rev and --remove 94s - [10] 94s - $ hg tag --git alpha 94s - abort: git tags require an explicit revision 94s - (please specify -r/--rev) 94s - [255] 94s - $ hg tag --git alpha alpha -r 0 94s - abort: tag names must be unique 94s - [255] 94s - $ hg tag --git alpha -r 0 -e 94s - abort: cannot specify both --git and --edit 94s - [10] 94s - $ hg tag --git alpha -r 0 -m 42 94s - abort: cannot specify both --git and --message 94s - [10] 94s - $ hg tag --git alpha -r 0 -d 42 94s - abort: cannot specify both --git and --date 94s - [10] 94s - $ hg tag --git alpha -r 0 -u user@example.com 94s - abort: cannot specify both --git and --user 94s - [10] 94s - $ hg tag --git 'with space' -r 0 94s - abort: the name 'with space' is not a valid git tag 94s - [255] 94s - $ hg tag --git ' beta' -r 0 94s - abort: the name 'beta' already exists 94s - [255] 94s - $ hg tag --git master -r 0 94s - abort: the name 'master' already exists 94s - [255] 94s - $ hg tag --git tip -r 0 94s - abort: the name 'tip' is reserved 94s - [10] 94s - 94s -Create a git tag from hg 94s - 94s - $ hg tag --git alpha --debug -r 0 94s - finding unexported changesets 94s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 94s - adding git tag alpha 94s - $ hg log --graph 94s - @ changeset: 1:7fe02317c63d 94s - | bookmark: master 94s - | tag: beta 94s - | tag: default/master 94s - | tag: tip 94s - | user: test 94s - | date: Mon Jan 01 00:00:11 2007 +0000 94s - | summary: add beta 94s - | 94s - o changeset: 0:ff7a2f2d8d70 94s - tag: alpha 94s - user: test 94s - date: Mon Jan 01 00:00:10 2007 +0000 94s - summary: add alpha 94s - 94s - $ echo beta-fix >> beta 94s - $ fn_hg_commit -m 'fix for beta' 94s -#if secret 94s - $ hg phase -d 94s -#endif 94s - $ hg push 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - adding objects 94s - remote: found 0 deltas to reuse 94s - added 1 commits with 1 trees and 1 blobs 94s - updating reference refs/heads/master 94s - adding reference refs/tags/alpha 94s - 94s -Verify that amending commits known to remotes doesn't break anything 94s - 94s - $ cat >> $HGRCPATH << EOF 94s - > [experimental] 94s - > evolution = createmarkers 94s - > evolution.createmarkers = yes 94s - > EOF 94s - $ hg tags 94s - tip 2:61175962e488 94s - default/master 2:61175962e488 94s - beta 1:7fe02317c63d 94s - alpha 0:ff7a2f2d8d70 94s - $ echo beta-fix-again >> beta 94s - $ fn_hg_commit --amend 94s - $ hg log -T shorttags 94s - 3:3094b9e8da41 draft tip 94s - 2:61175962e488 draft default/master X 94s - 1:7fe02317c63d draft beta 94s - 0:ff7a2f2d8d70 draft alpha 94s - $ hg tags 94s - tip 3:3094b9e8da41 94s - default/master 2:61175962e488 94s - beta 1:7fe02317c63d 94s - alpha 0:ff7a2f2d8d70 94s - $ hg push 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - abort: pushing refs/heads/master overwrites 3094b9e8da41 94s - [255] 94s - $ hg push -f 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - adding objects 94s - remote: found 0 deltas to reuse 94s - added 1 commits with 1 trees and 1 blobs 94s - updating reference refs/heads/master 94s - 94s -Now create a tag for the old, obsolete master 94s - 94s - $ cd ../repo.git 94s - $ git tag detached $(hg log -R ../hgrepo --hidden -r 2 -T '{gitnode}\n') 94s - $ git tag 94s - alpha 94s - beta 94s - detached 94s - $ cd ../hgrepo 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - $ hg log -T shorttags 94s - 3:3094b9e8da41 draft default/master tip 94s - 2:61175962e488 draft detached X 94s - 1:7fe02317c63d draft beta 94s - 0:ff7a2f2d8d70 draft alpha 94s - $ hg tags 94s - tip 3:3094b9e8da41 94s - default/master 3:3094b9e8da41 94s - detached 2:61175962e488 94s - beta 1:7fe02317c63d 94s - alpha 0:ff7a2f2d8d70 94s - $ hg push 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - no changes found 94s - [1] 94s - 94s - $ cd .. 94s - 94s -Verify that revsets can point out git tags; for that we need an 94s -untagged commit. 94s - 94s - $ cd hgrepo 94s - $ touch gamma 94s - $ fn_hg_commit -A -m 'add gamma' 94s -#if secret 94s - $ hg phase -d 94s -#endif 94s - $ hg log -T shorttags -r 'gittag()' 94s - 0:ff7a2f2d8d70 draft alpha 94s - 1:7fe02317c63d draft beta 94s - 2:61175962e488 draft detached X 94s - $ hg log -T shorttags -r 'gittag(detached)' 94s - 2:61175962e488 draft detached X 94s - $ hg log -T shorttags -r 'gittag("re:a$")' 94s - 0:ff7a2f2d8d70 draft alpha 94s - 1:7fe02317c63d draft beta 94s - 94s -Create a git tag from hg, but pointing to a new commit: 94s - 94s - $ hg tag --git gamma --debug -r tip 94s - invalid branch cache (visible): tip differs (?) 94s - finding unexported changesets 94s - exporting 1 changesets 94s - converting revision 0eb1ab0073a885a498d4ae3dc5cf0c26e750fa3d 94s - packing 3 loose objects... 94s - packed 3 loose objects! 94s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 94s - adding git tag gamma 94s - $ hg push 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - adding objects 94s - remote: found 0 deltas to reuse 94s - added 1 commits with 1 trees and 1 blobs 94s - updating reference refs/heads/master 94s - adding reference refs/tags/gamma 94s - $ cd ../gitrepo 94s - $ git fetch --quiet --tags 94s - $ git tag 94s - alpha 94s - beta 94s - detached 94s - gamma 94s - $ cd .. 94s - 94s -Try to overwrite an annotated tag: 94s - 94s - $ cd hgrepo 94s - $ hg tags -v 94s - tip 4:0eb1ab0073a8 94s - gamma 4:0eb1ab0073a8 git 94s - default/master 4:0eb1ab0073a8 git-remote 94s - detached 2:61175962e488 git 94s - beta 1:7fe02317c63d git 94s - alpha 0:ff7a2f2d8d70 git 94s - $ hg book not-master 94s - $ hg tag beta 94s - abort: tag 'beta' already exists (use -f to force) 94s - [10] 94s - $ hg tag -f beta 94s -#if secret 94s - $ hg phase -d 94s -#endif 94s - $ hg push 94s - pushing to $TESTTMP/repo.git 94s - warning: not overwriting annotated tag 'beta' 94s - searching for changes 94s - adding objects 94s - remote: found 0 deltas to reuse 94s - added 1 commits with 1 trees and 1 blobs 94s - adding reference refs/heads/not-master 94s - $ hg tags 94s - tip 5:c49682c7cba4 94s - default/not-master 5:c49682c7cba4 94s - gamma 4:0eb1ab0073a8 94s - default/master 4:0eb1ab0073a8 94s - beta 4:0eb1ab0073a8 94s - detached 2:61175962e488 94s - alpha 0:ff7a2f2d8d70 94s - $ cd .. 94s - 94s -Check whether `gimport` handles tags 94s - 94s - $ cd hgrepo 94s - $ rm .hg/git-tags .hg/git-mapfile 94s - $ hg gimport 94s - importing 6 git commits 94s - $ hg tags -q 94s - tip 94s - default/not-master 94s - gamma 94s - default/master 94s - beta 94s - detached 94s - alpha 94s - $ cd .. 94s - 94s -Test how pulling an explicit branch with an annotated tag: 94s - 94s - $ hg clone -r master repo.git hgrepo-2 94s - importing 4 git commits 94s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 94s - updating to branch default 94s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s - $ hg log -r 'ancestors(master) and tagged()' -T shorttags -R hgrepo-2 94s - 0:ff7a2f2d8d70 draft alpha 94s - 1:7fe02317c63d draft beta 94s - 3:0eb1ab0073a8 draft default/master gamma tip 94s - $ hg tags -v -R hgrepo-2 94s - tip 3:0eb1ab0073a8 94s - gamma 3:0eb1ab0073a8 git 94s - default/master 3:0eb1ab0073a8 git-remote 94s - beta 1:7fe02317c63d git 94s - alpha 0:ff7a2f2d8d70 git 94s - $ GIT_DIR=hgrepo-2/.hg/git git fetch --quiet repo.git 94s - $ rm -rf hgrepo-2 94s - 94s - $ hg clone -r master repo.git hgrepo-2 94s - importing 4 git commits 94s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 94s - updating to branch default 94s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s - $ hg log -r 'tagged()' -T shorttags -R hgrepo-2 94s - 0:ff7a2f2d8d70 draft alpha 94s - 1:7fe02317c63d draft beta 94s - 3:0eb1ab0073a8 draft default/master gamma tip 94s -This used to die: 94s - $ hg -R hgrepo-2 gexport 94s -This used to fail, since we didn't actually pull the annotated tag: 94s - $ hg -R hgrepo-2 push 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - no changes found 94s - [1] 94s - $ rm -rf hgrepo-2 94s - 94s -Check that pulling will update phases only: 94s - 94s - $ cd hgrepo 94s - $ hg phase -fs gamma detached 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - $ hg log -T shorttags -r gamma -r detached 94s - 4:0eb1ab0073a8 draft beta default/master gamma 94s - 2:61175962e488 draft detached X 94s - $ cd .. 94s - 94s -Check that we pull new tags to existing commits: 94s - $ cd gitrepo 94s - $ git tag 94s - alpha 94s - beta 94s - detached 94s - gamma 94s - $ fn_git_tag extra-simple-tag 94s - $ fn_git_tag -m annotated extra-annotated-tag 94s - $ git push --tags 94s - To $TESTTMP/repo.git 94s - * [new tag] extra-annotated-tag -> extra-annotated-tag 94s - * [new tag] extra-simple-tag -> extra-simple-tag 94s - $ cd ../hgrepo 94s - $ hg pull -r master 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - $ hg tags -v | grep extra 94s - extra-simple-tag 1:7fe02317c63d git 94s - extra-annotated-tag 1:7fe02317c63d git 94s 94s ERROR: test-git-tags.t#secret output changed 94s ! 94s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull-after-rebase.t 94s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull-after-rebase.t.err 94s @@ -39,274 +39,99 @@ 94s 94s $ hg clone -U repo.git hgrepo 94s importing 3 git commits 94s - new changesets ff7a2f2d8d70:205a004356ef (3 drafts) 94s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 94s + ** which supports versions 6.9 of Mercurial. 94s + ** Please disable "hggit" and try your action again. 94s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 94s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 94s + ** Mercurial Distributed SCM (version 7.0.1) 94s + ** Extensions loaded: hggit unknown (dulwich 0.24.10), rebase 94s + Traceback (most recent call last): 94s + File "/usr/bin/hg", line 51, in 94s + dispatch.run() 94s + ~~~~~~~~~~~~^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 94s + status = dispatch(req) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 94s + status = _rundispatch(req) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 94s + ret = _runcatch(req) or 0 94s + ~~~~~~~~~^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 94s + return _callcatch(ui, _runcatchfunc) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 94s + return scmutil.callcatch(ui, func) 94s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 94s + return func() 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 94s + return _dispatch(req) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 94s + return runcommand( 94s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 94s + ) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 94s + ret = _runcommand(ui, options, cmd, d) 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 94s + return cmdfunc() 94s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 94s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 94s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 94s + return func(*args, **kwargs) 94s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 94s + r = hg.clone( 94s + ui, 94s + ...<11 lines>... 94s + depth=opts.get('depth') or None, 94s + ) 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 94s + srcpeer, destpeer = orig(*args, **opts) 94s + ~~~~^^^^^^^^^^^^^^^ 94s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 94s + exchange.pull( 94s + ~~~~~~~~~~~~~^ 94s + local, 94s + ^^^^^^ 94s + ...<5 lines>... 94s + depth=depth, 94s + ^^^^^^^^^^^^ 94s + ) 94s + ^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 94s + return f(*args, **kwargs) 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 94s + pullop.cgresult = repo.githandler.fetch(remote, heads) 94s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 94s + imported = self.import_git_objects( 94s + b'pull', 94s + ...<2 lines>... 94s + heads=heads, 94s + ) 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 94s + self.import_git_commit( 94s + ~~~~~~~~~~~~~~~~~~~~~~^ 94s + command, 94s + ^^^^^^^^ 94s + self.git[commit.sha], 94s + ^^^^^^^^^^^^^^^^^^^^^ 94s + commit.phase, 94s + ^^^^^^^^^^^^^ 94s + ) 94s + ^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 94s + files, gitlinks, git_renames = self.get_files_changed( 94s + ~~~~~~~~~~~~~~~~~~~~~~^ 94s + commit, detect_renames 94s + ^^^^^^^^^^^^^^^^^^^^^^ 94s + ) 94s + ^ 94s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 94s + oldfile, oldmode, oldsha = change.old 94s + ^^^^^^^^^^^^^^^^^^^^^^^^ 94s + TypeError: cannot unpack non-iterable NoneType object 94s + [1] 94s $ cd hgrepo 94s + $TESTTMP.sh: 48: cd: can't cd to hgrepo 94s $ hg state 94s - o branch default/branch tip 2:205a004356ef32b8da782afb89d9179d12ca31e9 94s - | add gamma 94s - | o master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 94s - |/ add beta 94s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 94s - add alpha 94s - $ hg up branch 94s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s - (activating bookmark branch) 94s - $ hg rebase --quiet -d master 94s - $ hg state 94s - @ branch tip 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 94s - | add gamma 94s - | x default/branch 2:205a004356ef32b8da782afb89d9179d12ca31e9 94s - | | add gamma 94s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 94s - |/ add beta 94s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 94s - add alpha 94s - 94s - $ hg push -fr tip 94s - pushing to $TESTTMP/repo.git 94s - searching for changes 94s - adding objects 94s - remote: found 0 deltas to reuse 94s - added 1 commits with 1 trees and 1 blobs 94s - updating reference refs/heads/branch 94s - $ cd .. 94s - 94s -Now switch back to git and create a new commit based on what we just rebased 94s - 94s - $ cd gitrepo 94s - $ git checkout --quiet -b otherbranch branch 94s - $ git log --oneline --graph --all --decorate 94s - * e5023f9 (HEAD -> otherbranch, origin/branch, branch) add gamma 94s - | * 9497a4e (origin/master, master) add beta 94s - |/ 94s - * 7eeab2e add alpha 94s - $ echo delta > delta 94s - $ git add delta 94s - $ fn_git_commit -m 'add delta' 94s - $ git push --quiet --set-upstream origin otherbranch 94s - Branch 'otherbranch' set up to track remote branch 'otherbranch' from 'origin'. (?) 94s - $ git log --oneline --graph --all --decorate 94s - * bba0011 (HEAD -> otherbranch, origin/otherbranch) add delta 94s - * e5023f9 (origin/branch, branch) add gamma 94s - | * 9497a4e (origin/master, master) add beta 94s - |/ 94s - * 7eeab2e add alpha 94s - $ cd .. 94s - 94s -Pull that 94s - 94s - $ cd hgrepo 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - importing 1 git commits 94s - adding bookmark otherbranch 94s - 1 new orphan changesets 94s - new changesets 075302705298 (1 drafts) 94s - (run 'hg heads' to see heads, 'hg merge' to merge) 94s - $ hg state 94s - * otherbranch default/otherbranch tip 4:0753027052980aef9c9c37adb7d76d5719e8d818 94s - | add delta 94s - | @ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 94s - | | add gamma 94s - x | 2:205a004356ef32b8da782afb89d9179d12ca31e9 94s - | | add gamma 94s - | o master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 94s - |/ add beta 94s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 94s - add alpha 94s - 94s - $ cd .. 94s - 94s -To reproduce bug #386, do like github and save the old commit in a 94s -ref, and create a clone containing just the converted git commits: 94s - 94s - $ cd repo.git 94s - $ git update-ref refs/pr/1 otherbranch 94s - $ cd .. 94s - $ hg clone -U repo.git hgrepo-issue386 94s - importing 5 git commits 94s - new changesets ff7a2f2d8d70:075302705298 (5 drafts) 94s - 94s -Now try rebasing that branch, from the Git side of things 94s - 94s - $ cd gitrepo 94s - $ git checkout -q otherbranch 94s - $ git log --oneline --graph --all --decorate 94s - * bba0011 (HEAD -> otherbranch, origin/otherbranch) add delta 94s - * e5023f9 (origin/branch, branch) add gamma 94s - | * 9497a4e (origin/master, master) add beta 94s - |/ 94s - * 7eeab2e add alpha 94s - $ fn_git_rebase --onto master branch otherbranch 94s - $ git log --oneline --graph --all --decorate 94s - * 9c58139 (HEAD -> otherbranch) add delta 94s - * 9497a4e (origin/master, master) add beta 94s - | * bba0011 (origin/otherbranch) add delta 94s - | * e5023f9 (origin/branch, branch) add gamma 94s - |/ 94s - * 7eeab2e add alpha 94s - $ git push -f 94s - To $TESTTMP/repo.git 94s - + bba0011...9c58139 otherbranch -> otherbranch (forced update) 94s - $ git log --oneline --graph --all --decorate 94s - * 9c58139 (HEAD -> otherbranch, origin/otherbranch) add delta 94s - * 9497a4e (origin/master, master) add beta 94s - | * e5023f9 (origin/branch, branch) add gamma 94s - |/ 94s - * 7eeab2e add alpha 94s - $ cd .. 94s - 94s -Now strip the old commit 94s - 94s - $ cd hgrepo-issue386 94s - $ hg up null 94s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s - $ hg id -qr otherbranch 94s - 075302705298 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - importing 1 git commits 94s - not updating diverged bookmark otherbranch 94s - new changesets d64bf0521af6 (1 drafts) 94s - (run 'hg heads .' to see heads, 'hg merge' to merge) 94s - $ hg debugstrip --hidden --no-backup otherbranch 94s - $ hg book -d otherbranch 94s - $ hg git-cleanup 94s - git commit map cleaned 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - adding bookmark otherbranch 94s - $ cd .. 94s - 94s -And check that pulling something else doesn't delete that branch. 94s - 94s - $ cd hgrepo 94s - $ hg pull -r master 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - $ cd .. 94s - 94s -A special case, is that we can pull into a repository, where a commit 94s -corresponding to the new branch exists, but that commit is obsolete. 94s -In order to avoid “pinning” the obsolete commit, and thereby making it 94s -visible, we first pull from Git as an unnamed remote. 94s - 94s - $ hg clone --config phases.publish=no hgrepo hgrepo-clone 94s - updating to branch default 94s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s - $ cd hgrepo-clone 94s - $ hg pull ../repo.git 94s - pulling from ../repo.git 94s - importing 4 git commits 94s - not updating diverged bookmark otherbranch 94s - new changesets d64bf0521af6 (1 drafts) 94s - (run 'hg heads .' to see heads, 'hg merge' to merge) 94s - $ hg debugobsolete d64bf0521af68fe2160791a1b4ab9baf282a3879 94s - 1 new obsolescence markers 94s - obsoleted 1 changesets 94s - $ cp ../hgrepo/.hg/hgrc .hg 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - not updating diverged bookmark otherbranch 94s - $ cd .. 94s - $ rm -rf hgrepo-clone 94s - 94s -Another special case, is that we should update commits over obsolete boundaries: 94s - 94s - $ hg clone --config phases.publish=no hgrepo hgrepo-clone 94s - updating to branch default 94s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 94s - $ cd hgrepo-clone 94s - $ hg pull ../repo.git 94s - pulling from ../repo.git 94s - importing 4 git commits 94s - not updating diverged bookmark otherbranch 94s - new changesets d64bf0521af6 (1 drafts) 94s - (run 'hg heads .' to see heads, 'hg merge' to merge) 94s - $ hg debugobsolete 0753027052980aef9c9c37adb7d76d5719e8d818 d64bf0521af68fe2160791a1b4ab9baf282a3879 94s - 1 new obsolescence markers 94s - obsoleted 1 changesets 94s - $ hg book -r 075302705298 otherbranch 94s - $ cp ../hgrepo/.hg/hgrc .hg 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - updating bookmark otherbranch 94s - $ cd .. 94s - $ rm -rf hgrepo-clone 94s - 94s -Now just pull it: 94s - 94s - $ cd hgrepo 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - importing 1 git commits 94s - not updating diverged bookmark otherbranch 94s - new changesets d64bf0521af6 (1 drafts) 94s - (run 'hg heads .' to see heads, 'hg merge' to merge) 94s - $ hg state 94s - o default/otherbranch tip 5:d64bf0521af68fe2160791a1b4ab9baf282a3879 94s - | add delta 94s - | * otherbranch 4:0753027052980aef9c9c37adb7d76d5719e8d818 94s - | | add delta 94s - +---@ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 94s - | | add gamma 94s - | x 2:205a004356ef32b8da782afb89d9179d12ca31e9 94s - | | add gamma 94s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 94s - |/ add beta 94s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 94s - add alpha 94s - $ cd .. 94s - 94s -And finally, delete it: 94s - 94s - $ cd gitrepo 94s - $ git push origin :otherbranch 94s - To $TESTTMP/repo.git 94s - - [deleted] otherbranch 94s - $ cd .. 94s - 94s -And pull that: 94s - 94s - $ cd hgrepo 94s - $ hg pull 94s - pulling from $TESTTMP/repo.git 94s - no changes found 94s - not deleting diverged bookmark otherbranch 94s - $ hg state 94s - o tip 5:d64bf0521af68fe2160791a1b4ab9baf282a3879 94s - | add delta 94s - | * otherbranch 4:0753027052980aef9c9c37adb7d76d5719e8d818 95s - | | add delta 95s - +---@ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 95s - | | add gamma 95s - | x 2:205a004356ef32b8da782afb89d9179d12ca31e9 95s - | | add gamma 95s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 95s - |/ add beta 95s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 95s - add alpha 95s - $ cd .. 95s - 95s -We only get that message once: 95s - 95s - $ hg -R hgrepo pull 95s - pulling from $TESTTMP/repo.git 95s - no changes found 95s - 95s -Now try deleting one already gone locally, which shouldn't output 95s -anything: 95s - 95s - $ cd gitrepo 95s - $ git push origin :branch 95s - To $TESTTMP/repo.git 95s - - [deleted] branch 95s - $ cd ../hgrepo 95s - $ hg book -d branch 95s - $ hg pull 95s - pulling from $TESTTMP/repo.git 95s - no changes found 95s - $ cd .. 95s 95s ERROR: test-pull-after-rebase.t output changed 95s ! 95s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push.t 95s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push.t.err 95s @@ -13,286 +13,100 @@ 95s $ cd .. 95s $ hg clone -u tip gitrepo hgrepo 95s importing 1 git commits 95s - new changesets ff7a2f2d8d70 (1 drafts) 95s - updating to branch default 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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 95s + return f(*args, **kwargs) 95s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 95s + pullop.cgresult = repo.githandler.fetch(remote, heads) 95s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 95s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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: 20: cd: can't cd to hgrepo 95s $ hg bookmark -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 - $ hg push -r beta 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - adding objects 95s - remote: found 0 deltas to reuse 95s - added 1 commits with 1 trees and 1 blobs 95s - adding reference refs/heads/beta 95s - 95s - $ cd .. 95s - 95s -should have two different branches 95s - $ cd gitrepo 95s - $ git branch -v 95s - beta 0f378ab add beta 95s - master 7eeab2e add alpha 95s - * not-master 7eeab2e add alpha 95s - 95s -some more work on master from git 95s - $ git checkout master 2>&1 | sed s/\'/\"/g 95s - Switched to branch "master" 95s - $ echo delta > delta 95s - $ git add delta 95s - $ fn_git_commit -m "add delta" 95s - $ git checkout not-master 2>&1 | sed s/\'/\"/g 95s - Switched to branch "not-master" 95s - 95s - $ cd .. 95s - 95s - $ cd hgrepo 95s -this should fail 95s - $ hg push -r master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 95s - [255] 95s - 95s -... even with -f 95s - $ hg push -fr master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 95s - [255] 95s - 95s - $ hg pull 2>&1 | grep -v 'divergent bookmark' 95s - pulling from $TESTTMP/gitrepo 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 -TODO shouldn't need to do this since we're (in theory) pushing master explicitly, 95s -which should not implicitly also push the not-master ref. 95s - $ hg book not-master -r default/not-master --force 95s -master and default/master should be diferent 95s - $ hg log -r master 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 log -r default/master 95s - 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 - 95s -this should also fail 95s - $ hg push -r master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - abort: pushing refs/heads/master overwrites 953796e1cfd8 95s - [255] 95s - 95s -... but succeed with -f 95s - $ hg push -fr master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - adding objects 95s - remote: found 0 deltas to reuse 95s - added 1 commits with 1 trees and 1 blobs 95s - updating reference refs/heads/master 95s - 95s -this should fail, no changes to push 95s - $ hg push -r master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - no changes found 95s - [1] 95s - 95s -hg-git issue103 -- directories can lose information at hg-git export time 95s - 95s - $ hg up master 95s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 95s - $ mkdir dir1 95s - $ echo alpha > dir1/alpha 95s - $ hg add dir1/alpha 95s - $ fn_hg_commit -m 'add dir1/alpha' 95s - $ hg push -r master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - adding objects 95s - remote: found 0 deltas to reuse 95s - added 1 commits with 2 trees and 0 blobs 95s - updating reference refs/heads/master 95s - 95s - $ echo beta > dir1/beta 95s - $ hg add dir1/beta 95s - $ fn_hg_commit -m 'add dir1/beta' 95s - $ hg push -r master 95s - pushing to $TESTTMP/gitrepo 95s - searching for changes 95s - adding objects 95s - remote: found 0 deltas to reuse 95s - added 1 commits with 2 trees and 0 blobs 95s - updating reference refs/heads/master 95s - $ hg log -r master 95s - changeset: 5:ba0476ff1899 95s - bookmark: master 95s - tag: default/master 95s - tag: tip 95s - user: test 95s - date: Mon Jan 01 00:00:15 2007 +0000 95s - summary: add dir1/beta 95s - 95s - 95s - $ cat >> .hg/hgrc << EOF 95s - > [paths] 95s - > default:pushurl = file:///$TESTTMP/gitrepo 95s - > EOF 95s -NB: the triple slashes are intentional, due to windows 95s - $ hg push -r master 95s - pushing to file:///$TESTTMP/gitrepo 95s - searching for changes 95s - no changes found 95s - [1] 95s - 95s - $ cd .. 95s - 95s - $ hg clone -u tip gitrepo hgrepo-test 95s - importing 5 git commits 95s - new changesets ff7a2f2d8d70:ba0476ff1899 (5 drafts) 95s - updating to branch default 95s - 5 files updated, 0 files merged, 0 files removed, 0 files unresolved 95s - $ hg -R hgrepo-test log -r master 95s - changeset: 4:ba0476ff1899 95s - bookmark: master 95s - tag: default/master 95s - tag: tip 95s - user: test 95s - date: Mon Jan 01 00:00:15 2007 +0000 95s - summary: add dir1/beta 95s - 95s - $ hg tags -R hgrepo-test | grep ^default/ 95s - default/master 4:ba0476ff1899 95s - default/beta 1:47580592d3d6 95s - default/not-master 0:ff7a2f2d8d70 95s - 95s -Push a fast-forward to a currently checked out branch, which sometimes 95s -fails: 95s - 95s - $ cd hgrepo 95s - $ hg book -r master not-master 95s - moving bookmark 'not-master' forward from ff7a2f2d8d70 95s - $ hg push 95s - pushing to file:///$TESTTMP/gitrepo 95s - searching for changes 95s - warning: failed to update HEAD; unable to set b'HEAD' to b'7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03' (?) 95s - updating reference refs/heads/not-master 95s -That should have updated the tag: 95s - $ hg tags | grep ^default/ 95s - default/not-master 5:ba0476ff1899 95s - default/master 5:ba0476ff1899 95s - default/beta 1:47580592d3d6 95s - $ cd .. 95s - 95s -We can push only one of two bookmarks on the same revision: 95s - 95s - $ cd hgrepo 95s - $ hg book -r 0 also-not-master really-not-master 95s - $ hg push -B also-not-master 95s - pushing to file:///$TESTTMP/gitrepo 95s - searching for changes 95s - adding reference refs/heads/also-not-master 95s - 95s -We can also push another bookmark to a path with another revision 95s -specified: 95s - 95s - $ hg book -r 3 also-not-master 95s - moving bookmark 'also-not-master' forward from ff7a2f2d8d70 95s - $ hg push -B also-not-master "file:///$TESTTMP/gitrepo#master" 95s - pushing to file:///$TESTTMP/gitrepo 95s - searching for changes 95s - adding objects 95s - remote: found 0 deltas to reuse 95s - added 1 commits with 1 trees and 1 blobs 95s - updating reference refs/heads/also-not-master 95s - 95s -And we can delete them again afterwards: 95s - 95s - $ hg book -d also-not-master really-not-master 95s - $ hg push -B also-not-master -B really-not-master 95s - pushing to file:///$TESTTMP/gitrepo 95s - searching for changes 95s - warning: unable to delete 'refs/heads/really-not-master' as it does not exist on the remote repository 95s - deleting reference refs/heads/also-not-master 95s - 95s -Push empty Hg repo to empty Git repo (issue #58) 95s - $ hg init hgrepo2 95s - $ git init -q --bare repo.git 95s - $ hg -R hgrepo2 push repo.git 95s - pushing to repo.git 95s - searching for changes 95s - abort: no bookmarks or tags to push to git 95s - (see "hg help bookmarks" for details on creating them) 95s - [255] 95s - 95s -The remote repo is empty and the local one doesn't have any bookmarks/tags 95s - $ cd hgrepo2 95s - $ echo init >> test.txt 95s - $ hg addremove 95s - adding test.txt 95s - $ fn_hg_commit -m init 95s - $ hg update null 95s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 95s - $ hg push ../repo.git 95s - pushing to ../repo.git 95s - searching for changes 95s - abort: no bookmarks or tags to push to git 95s - (see "hg help bookmarks" for details on creating them) 95s - [255] 95s - $ hg summary 95s - parent: -1:000000000000 (no revision checked out) 95s - branch: default 95s - commit: (clean) 95s - update: 1 new changesets (update) 95s - phases: 1 draft 95s -That should not create any bookmarks 95s - $ hg bookmarks 95s - no bookmarks set 95s -And no tags for the remotes either: 95s - $ hg tags 95s - tip 0:8aded40be5af 95s - 95s -test for ssh vulnerability 95s - 95s - $ cat >> $HGRCPATH << EOF 95s - > [ui] 95s - > ssh = ssh -o ConnectTimeout=1 95s - > EOF 95s - $ hg push -q 'git+ssh://-oProxyCommand=rm${IFS}nonexistent/path' 95s - abort: potentially unsafe hostname: '-oProxyCommand=rm${IFS}nonexistent' 95s - [255] 95s - $ hg push -q 'git+ssh://-oProxyCommand=rm%20nonexistent/path' 95s - abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 95s - [255] 95s - $ hg push -q 'git+ssh://fakehost|rm%20nonexistent/path' 95s - ssh: * fakehost%7?rm%20nonexistent* (glob) 95s - abort: git remote error: The remote server unexpectedly closed the connection. 95s - [255] 95s - $ hg push -q 'git+ssh://fakehost%7Crm%20nonexistent/path' 95s - ssh: * fakehost%7?rm%20nonexistent* (glob) 95s - abort: git remote error: The remote server unexpectedly closed the connection. 95s - [255] 95s 95s ERROR: test-push.t output changed 103s ! 103s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-clone.t 103s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-clone.t#draft.err 103s @@ -39,59 +39,218 @@ 103s 103s $ hg clone -r alpha gitrepo hgrepo-a 103s importing 1 git commits 103s - new changesets ff7a2f2d8d70 (1 drafts) 103s - updating to branch default 103s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-a bookmarks 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-a not found 103s + [255] 103s $ hg -R hgrepo-a log --graph --template=phases 103s - @ changeset: 0:ff7a2f2d8d70 103s - bookmark: master 103s - tag: alpha 103s - tag: default/master 103s - tag: tip 103s - phase: draft 103s - user: test 103s - date: Mon Jan 01 00:00:10 2007 +0000 103s - summary: add alpha 103s - 103s + abort: repository hgrepo-a not found 103s + [255] 103s $ git --git-dir hgrepo-a/.hg/git for-each-ref 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-a/.hg/git' 103s + [128] 103s Make sure this is still draft since we didn't pull remote's HEAD 103s $ hg -R hgrepo-a phase -r alpha 103s - 0: draft 103s + abort: repository hgrepo-a not found 103s + [255] 103s 103s clone a branch 103s $ hg clone -r beta gitrepo hgrepo-b 103s importing 2 git commits 103s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 103s - updating to branch default 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-b bookmarks 103s - * beta 1:7fe02317c63d 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-b not found 103s + [255] 103s $ hg -R hgrepo-b log --graph 103s - @ changeset: 1:7fe02317c63d 103s - | bookmark: beta 103s - | tag: default/beta 103s - | tag: tip 103s - | user: test 103s - | date: Mon Jan 01 00:00:11 2007 +0000 103s - | summary: add beta 103s - | 103s - o changeset: 0:ff7a2f2d8d70 103s - bookmark: master 103s - tag: alpha 103s - tag: default/master 103s - user: test 103s - date: Mon Jan 01 00:00:10 2007 +0000 103s - summary: add alpha 103s - 103s + abort: repository hgrepo-b not found 103s + [255] 103s $ git --git-dir hgrepo-b/.hg/git for-each-ref 103s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-b/.hg/git' 103s + [128] 103s 103s Make sure that a deleted .hgsubstate does not confuse hg-git 103s 103s @@ -105,47 +264,224 @@ 103s 103s $ hg clone -r beta gitrepo hgrepo-c 103s importing 4 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (4 drafts) 103s - updating to branch default 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-c bookmarks 103s - * beta 3:47d12948785d 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-c not found 103s + [255] 103s $ hg --cwd hgrepo-c status 103s + abort: No such file or directory: 'hgrepo-c' 103s + [255] 103s $ git --git-dir hgrepo-c/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-c/.hg/git' 103s + [128] 103s 103s test shared repositories 103s 103s $ hg clone gitrepo hgrepo-base 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - updating to bookmark beta 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-base bookmarks 103s - * beta 4:47d12948785d 103s - gamma 2:ca33a262eb46 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-base not found 103s + [255] 103s $ hg --config extensions.share= share hgrepo-base hgrepo-shared 103s - updating working directory 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + abort: repository hgrepo-base not found 103s + [255] 103s $ hg -R hgrepo-shared pull gitrepo 103s - pulling from gitrepo 103s - no changes found 103s - adding bookmark beta 103s - adding bookmark gamma 103s - adding bookmark master 103s + abort: repository hgrepo-shared not found 103s + [255] 103s $ hg -R hgrepo-shared push gitrepo 103s - pushing to gitrepo 103s - searching for changes 103s - no changes found 103s - [1] 103s + abort: repository hgrepo-shared not found 103s + [255] 103s $ ls hgrepo-shared/.hg | grep git 103s + ls: cannot access 'hgrepo-shared/.hg': No such file or directory 103s [1] 103s $ hg -R hgrepo-shared git-cleanup 103s - git commit map cleaned 103s + abort: repository hgrepo-shared not found 103s + [255] 103s $ rm -rf hgrepo-base hgrepo-shared 103s 103s test cloning HEAD 103s @@ -155,14 +491,102 @@ 103s $ cd .. 103s $ hg clone gitrepo hgrepo-2 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - updating to bookmark master 103s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ git --git-dir hgrepo-2/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-2/.hg/git' 103s + [128] 103s $ rm -rf hgrepo-2 103s 103s clone empty repo 103s @@ -181,24 +605,108 @@ 103s $ cd .. 103s $ hg clone gitrepo hgrepo-2 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - updating to bookmark master 103s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-2 book 103s - beta 4:47d12948785d 103s - gamma 2:ca33a262eb46 103s - * master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ hg -R hgrepo-2 tags -v 103s - tip 4:47d12948785d 103s - default/beta 4:47d12948785d git-remote 103s - default/gamma 2:ca33a262eb46 git-remote 103s - default/master 0:ff7a2f2d8d70 git-remote 103s - alpha 0:ff7a2f2d8d70 git 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ git --git-dir hgrepo-2/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-2/.hg/git' 103s + [128] 103s $ rm -rf hgrepo-2 103s 103s test cloning fully detached HEAD; we don't convert the 103s @@ -213,22 +721,108 @@ 103s $ cd .. 103s $ hg clone gitrepo hgrepo-2 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - warning: the git source repository has a detached head 103s - (you may want to update to a bookmark) 103s - updating to branch default 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-2 book 103s - beta 4:47d12948785d 103s - gamma 2:ca33a262eb46 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ hg -R hgrepo-2 id --tags 103s - default/beta tip 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ git --git-dir hgrepo-2/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-2/.hg/git' 103s + [128] 103s $ rm -rf hgrepo-2 103s 103s test that cloning a regular mercurial repository does not introduce 103s 103s ERROR: test-clone.t#draft output changed 103s ! 103s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-clone.t 103s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-clone.t#secret.err 103s @@ -39,59 +39,218 @@ 103s 103s $ hg clone -r alpha gitrepo hgrepo-a 103s importing 1 git commits 103s - new changesets ff7a2f2d8d70 (1 drafts) 103s - updating to branch default 103s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-a bookmarks 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-a not found 103s + [255] 103s $ hg -R hgrepo-a log --graph --template=phases 103s - @ changeset: 0:ff7a2f2d8d70 103s - bookmark: master 103s - tag: alpha 103s - tag: default/master 103s - tag: tip 103s - phase: draft 103s - user: test 103s - date: Mon Jan 01 00:00:10 2007 +0000 103s - summary: add alpha 103s - 103s + abort: repository hgrepo-a not found 103s + [255] 103s $ git --git-dir hgrepo-a/.hg/git for-each-ref 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-a/.hg/git' 103s + [128] 103s Make sure this is still draft since we didn't pull remote's HEAD 103s $ hg -R hgrepo-a phase -r alpha 103s - 0: draft 103s + abort: repository hgrepo-a not found 103s + [255] 103s 103s clone a branch 103s $ hg clone -r beta gitrepo hgrepo-b 103s importing 2 git commits 103s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 103s - updating to branch default 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-b bookmarks 103s - * beta 1:7fe02317c63d 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-b not found 103s + [255] 103s $ hg -R hgrepo-b log --graph 103s - @ changeset: 1:7fe02317c63d 103s - | bookmark: beta 103s - | tag: default/beta 103s - | tag: tip 103s - | user: test 103s - | date: Mon Jan 01 00:00:11 2007 +0000 103s - | summary: add beta 103s - | 103s - o changeset: 0:ff7a2f2d8d70 103s - bookmark: master 103s - tag: alpha 103s - tag: default/master 103s - user: test 103s - date: Mon Jan 01 00:00:10 2007 +0000 103s - summary: add alpha 103s - 103s + abort: repository hgrepo-b not found 103s + [255] 103s $ git --git-dir hgrepo-b/.hg/git for-each-ref 103s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-b/.hg/git' 103s + [128] 103s 103s Make sure that a deleted .hgsubstate does not confuse hg-git 103s 103s @@ -105,47 +264,224 @@ 103s 103s $ hg clone -r beta gitrepo hgrepo-c 103s importing 4 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (4 drafts) 103s - updating to branch default 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-c bookmarks 103s - * beta 3:47d12948785d 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-c not found 103s + [255] 103s $ hg --cwd hgrepo-c status 103s + abort: No such file or directory: 'hgrepo-c' 103s + [255] 103s $ git --git-dir hgrepo-c/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-c/.hg/git' 103s + [128] 103s 103s test shared repositories 103s 103s $ hg clone gitrepo hgrepo-base 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - updating to bookmark beta 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-base bookmarks 103s - * beta 4:47d12948785d 103s - gamma 2:ca33a262eb46 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-base not found 103s + [255] 103s $ hg --config extensions.share= share hgrepo-base hgrepo-shared 103s - updating working directory 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + abort: repository hgrepo-base not found 103s + [255] 103s $ hg -R hgrepo-shared pull gitrepo 103s - pulling from gitrepo 103s - no changes found 103s - adding bookmark beta 103s - adding bookmark gamma 103s - adding bookmark master 103s + abort: repository hgrepo-shared not found 103s + [255] 103s $ hg -R hgrepo-shared push gitrepo 103s - pushing to gitrepo 103s - searching for changes 103s - no changes found 103s - [1] 103s + abort: repository hgrepo-shared not found 103s + [255] 103s $ ls hgrepo-shared/.hg | grep git 103s + ls: cannot access 'hgrepo-shared/.hg': No such file or directory 103s [1] 103s $ hg -R hgrepo-shared git-cleanup 103s - git commit map cleaned 103s + abort: repository hgrepo-shared not found 103s + [255] 103s $ rm -rf hgrepo-base hgrepo-shared 103s 103s test cloning HEAD 103s @@ -155,14 +491,102 @@ 103s $ cd .. 103s $ hg clone gitrepo hgrepo-2 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - updating to bookmark master 103s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ git --git-dir hgrepo-2/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-2/.hg/git' 103s + [128] 103s $ rm -rf hgrepo-2 103s 103s clone empty repo 103s @@ -181,24 +605,108 @@ 103s $ cd .. 103s $ hg clone gitrepo hgrepo-2 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - updating to bookmark master 103s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-2 book 103s - beta 4:47d12948785d 103s - gamma 2:ca33a262eb46 103s - * master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ hg -R hgrepo-2 tags -v 103s - tip 4:47d12948785d 103s - default/beta 4:47d12948785d git-remote 103s - default/gamma 2:ca33a262eb46 git-remote 103s - default/master 0:ff7a2f2d8d70 git-remote 103s - alpha 0:ff7a2f2d8d70 git 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ git --git-dir hgrepo-2/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-2/.hg/git' 103s + [128] 103s $ rm -rf hgrepo-2 103s 103s test cloning fully detached HEAD; we don't convert the 103s @@ -213,22 +721,108 @@ 103s $ cd .. 103s $ hg clone gitrepo hgrepo-2 103s importing 5 git commits 103s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 103s - warning: the git source repository has a detached head 103s - (you may want to update to a bookmark) 103s - updating to branch default 103s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 103s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 103s + ** which supports versions 6.9 of Mercurial. 103s + ** Please disable "hggit" and try your action again. 103s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 103s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 103s + ** Mercurial Distributed SCM (version 7.0.1) 103s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 103s + Traceback (most recent call last): 103s + File "/usr/bin/hg", line 51, in 103s + dispatch.run() 103s + ~~~~~~~~~~~~^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 103s + status = dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 103s + status = _rundispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 103s + ret = _runcatch(req) or 0 103s + ~~~~~~~~~^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 103s + return _callcatch(ui, _runcatchfunc) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 103s + return scmutil.callcatch(ui, func) 103s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 103s + return func() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 103s + return _dispatch(req) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 103s + return runcommand( 103s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 103s + ) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 103s + ret = _runcommand(ui, options, cmd, d) 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 103s + return cmdfunc() 103s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 103s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 103s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 103s + return func(*args, **kwargs) 103s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 103s + r = hg.clone( 103s + ui, 103s + ...<11 lines>... 103s + depth=opts.get('depth') or None, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 103s + srcpeer, destpeer = orig(*args, **opts) 103s + ~~~~^^^^^^^^^^^^^^^ 103s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 103s + exchange.pull( 103s + ~~~~~~~~~~~~~^ 103s + local, 103s + ^^^^^^ 103s + ...<5 lines>... 103s + depth=depth, 103s + ^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 103s + return f(*args, **kwargs) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 103s + pullop.cgresult = repo.githandler.fetch(remote, heads) 103s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 103s + imported = self.import_git_objects( 103s + b'pull', 103s + ...<2 lines>... 103s + heads=heads, 103s + ) 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 103s + self.import_git_commit( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + command, 103s + ^^^^^^^^ 103s + self.git[commit.sha], 103s + ^^^^^^^^^^^^^^^^^^^^^ 103s + commit.phase, 103s + ^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 103s + files, gitlinks, git_renames = self.get_files_changed( 103s + ~~~~~~~~~~~~~~~~~~~~~~^ 103s + commit, detect_renames 103s + ^^^^^^^^^^^^^^^^^^^^^^ 103s + ) 103s + ^ 103s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 103s + oldfile, oldmode, oldsha = change.old 103s + ^^^^^^^^^^^^^^^^^^^^^^^^ 103s + TypeError: cannot unpack non-iterable NoneType object 103s + [1] 103s $ hg -R hgrepo-2 book 103s - beta 4:47d12948785d 103s - gamma 2:ca33a262eb46 103s - master 0:ff7a2f2d8d70 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ hg -R hgrepo-2 id --tags 103s - default/beta tip 103s + abort: repository hgrepo-2 not found 103s + [255] 103s $ git --git-dir hgrepo-2/.hg/git for-each-ref 103s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 103s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 103s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 103s + fatal: not a git repository: 'hgrepo-2/.hg/git' 103s + [128] 103s $ rm -rf hgrepo-2 103s 103s test that cloning a regular mercurial repository does not introduce 103s 103s ERROR: test-clone.t#secret output changed 108s ! 108s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-branch-bookmark-suffix.t 108s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-branch-bookmark-suffix.t#with-path.err 108s @@ -49,31 +49,102 @@ 108s 108s $ hg push ../repo.git 108s pushing to ../repo.git 108s - searching for changes 108s - adding objects 108s - remote: found 0 deltas to reuse 108s - added 2 commits with 2 trees and 2 blobs 108s - adding reference refs/heads/branch1 108s - adding reference refs/heads/branch2 108s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 108s + ** which supports versions 6.9 of Mercurial. 108s + ** Please disable "hggit" and try your action again. 108s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 108s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 108s + ** Mercurial Distributed SCM (version 7.0.1) 108s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 108s + Traceback (most recent call last): 108s + File "/usr/bin/hg", line 51, in 108s + dispatch.run() 108s + ~~~~~~~~~~~~^^ 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 108s + status = dispatch(req) 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 108s + status = _rundispatch(req) 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 108s + ret = _runcatch(req) or 0 108s + ~~~~~~~~~^^^^^ 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 108s + return _callcatch(ui, _runcatchfunc) 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 108s + return scmutil.callcatch(ui, func) 108s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 108s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 108s + return func() 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 108s + return _dispatch(req) 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 108s + return runcommand( 108s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 108s + ) 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 108s + ret = _runcommand(ui, options, cmd, d) 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 108s + return cmdfunc() 108s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 108s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 108s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 108s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 108s + return func(*args, **kwargs) 108s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 108s + pushop = exchange.push( 108s + repo, 108s + ...<6 lines>... 108s + opargs=opargs, 108s + ) 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 108s + return f(*args, **kwargs) 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 108s + pushop.cgresult = repo.githandler.push( 108s + ~~~~~~~~~~~~~~~~~~~~^ 108s + remote.path, revs, bookmarks, force 108s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 108s + ) 108s + ^ 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 108s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 108s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 108s + all_exportable = self.export_commits() 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 108s + self.export_git_objects() 108s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 108s + packer.pack(synchronous=True) 108s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 108s + _process_batch(self.ui, self.object_store, todo) 108s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 108s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 108s + object_store._remove_loose_object(obj.id) 108s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 108s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 108s + [1] 108s 108s $ cd .. 108s 108s $ cd repo.git 108s $ git symbolic-ref HEAD refs/heads/branch1 108s $ git branch 108s - * branch1 108s - branch2 108s $ cd .. 108s 108s $ git clone repo.git gitrepo 108s Cloning into 'gitrepo'... 108s + warning: You appear to have cloned an empty repository. 108s done. 108s $ cd gitrepo 108s $ git checkout -q branch1 108s + error: pathspec 'branch1' did not match any file(s) known to git 108s + [1] 108s $ echo g1 >> f1 108s $ git add f1 108s $ fn_git_commit -m "append f1" 108s $ git checkout -q branch2 108s + error: pathspec 'branch2' did not match any file(s) known to git 108s + [1] 108s $ echo g2 >> f2 108s $ git add f2 108s $ fn_git_commit -m "append f2" 108s @@ -83,18 +154,13 @@ 108s $ git add f3 108s $ fn_git_commit -m "append f3" 108s $ git push origin branch1 branch2 branch3 108s - To $TESTTMP/repo.git 108s - bbfe79a..d8aef79 branch1 -> branch1 108s - 288e92b..f8f8de5 branch2 -> branch2 108s - * [new branch] branch3 -> branch3 108s + error: src refspec branch2 does not match any 108s + error: failed to push some refs to '$TESTTMP/repo.git' 108s + [1] 108s make sure the commit doesn't have an HG:rename-source annotation 108s $ git cat-file commit d8aef79 108s - tree b5644d8071b8a5963b8d1fd089fb3fdfb14b1203 108s - parent bbfe79acf62dcd6a97763e2a67424a6de8a96941 108s - author test 1167609612 +0000 108s - committer test 1167609612 +0000 108s - 108s - append f1 108s + fatal: Not a valid object name d8aef79 108s + [128] 108s $ cd .. 108s 108s $ cd hgrepo 108s @@ -102,45 +168,18 @@ 108s default = $TESTTMP/repo.git (with-path !) 108s $ hg pull ../repo.git 108s pulling from ../repo.git 108s - importing 3 git commits 108s - updating bookmark branch1_bookmark 108s - updating bookmark branch2_bookmark 108s - adding bookmark branch3_bookmark 108s - new changesets 8211cade99e4:faf44fc3a4e8 (3 drafts) 108s - (run 'hg heads' to see heads) 108s $ hg log --graph 108s - o changeset: 4:faf44fc3a4e8 108s - | bookmark: branch3_bookmark 108s - | tag: default/branch3 (with-path !) 108s + @ changeset: 1:600de9b6d498 108s + | branch: branch2 108s + | bookmark: branch2_bookmark 108s | tag: tip 108s - | user: test 108s - | date: Mon Jan 01 00:00:14 2007 +0000 108s - | summary: append f3 108s - | 108s - o changeset: 3:ae8eb55f7090 108s - | bookmark: branch2_bookmark 108s - | tag: default/branch2 (with-path !) 108s - | parent: 1:600de9b6d498 108s - | user: test 108s - | date: Mon Jan 01 00:00:13 2007 +0000 108s - | summary: append f2 108s - | 108s - | o changeset: 2:8211cade99e4 108s - | | bookmark: branch1_bookmark 108s - | | tag: default/branch1 (with-path !) 108s - | | parent: 0:40a840c1f8ae 108s - | | user: test 108s - | | date: Mon Jan 01 00:00:12 2007 +0000 108s - | | summary: append f1 108s - | | 108s - @ | changeset: 1:600de9b6d498 108s - |/ branch: branch2 108s - | user: test 108s - | date: Mon Jan 01 00:00:11 2007 +0000 108s - | summary: add f2 108s + | user: test 108s + | date: Mon Jan 01 00:00:11 2007 +0000 108s + | summary: add f2 108s | 108s o changeset: 0:40a840c1f8ae 108s branch: branch1 108s + bookmark: branch1_bookmark 108s user: test 108s date: Mon Jan 01 00:00:10 2007 +0000 108s summary: add f1 108s @@ -151,145 +190,8 @@ 108s 108s $ rm -r hgrepo 108s $ hg clone -r branch3 repo.git hgrepo 108s - importing 4 git commits 108s - new changesets 40a840c1f8ae:faf44fc3a4e8 (4 drafts) 108s - updating to bookmark branch3_bookmark 108s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 108s + abort: unknown revision 'branch3' 108s + [10] 108s $ cd hgrepo 108s + $TESTTMP.sh: 100: cd: can't cd to hgrepo 108s $ hg bookmarks 108s - branch2_bookmark 2:ae8eb55f7090 108s - * branch3_bookmark 3:faf44fc3a4e8 108s - $ hg log --graph 108s - @ changeset: 3:faf44fc3a4e8 108s - | bookmark: branch3_bookmark 108s - | tag: default/branch3 108s - | tag: tip 108s - | user: test 108s - | date: Mon Jan 01 00:00:14 2007 +0000 108s - | summary: append f3 108s - | 108s - o changeset: 2:ae8eb55f7090 108s - | bookmark: branch2_bookmark 108s - | tag: default/branch2 108s - | user: test 108s - | date: Mon Jan 01 00:00:13 2007 +0000 108s - | summary: append f2 108s - | 108s - o changeset: 1:600de9b6d498 108s - | branch: branch2 108s - | user: test 108s - | date: Mon Jan 01 00:00:11 2007 +0000 108s - | summary: add f2 108s - | 108s - o changeset: 0:40a840c1f8ae 108s - branch: branch1 108s - user: test 108s - date: Mon Jan 01 00:00:10 2007 +0000 108s - summary: add f1 108s - 108s - $ cd .. 108s - 108s -Try cloning something that's both a bookmark and a branch, and see the 108s -results. They're a bit suprising as the bookmark does get activated, 108s -but the branch get checked out. Although this does seem a bit odd, so 108s -does the scenario. 108s - 108s - $ rm -r hgrepo 108s - $ hg clone -r branch1 repo.git hgrepo 108s - importing 2 git commits 108s - new changesets 40a840c1f8ae:8211cade99e4 (2 drafts) 108s - updating to branch branch1 108s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 108s - $ cd hgrepo 108s - $ hg bookmarks 108s - * branch1_bookmark 1:8211cade99e4 108s - $ hg log --graph 108s - o changeset: 1:8211cade99e4 108s - | bookmark: branch1_bookmark 108s - | tag: default/branch1 108s - | tag: tip 108s - | user: test 108s - | date: Mon Jan 01 00:00:12 2007 +0000 108s - | summary: append f1 108s - | 108s - @ changeset: 0:40a840c1f8ae 108s - branch: branch1 108s - user: test 108s - date: Mon Jan 01 00:00:10 2007 +0000 108s - summary: add f1 108s - 108s - 108s - $ cd .. 108s - 108s -Now try pulling a diverged bookmark: 108s - 108s - $ rm -r hgrepo 108s -#if with-path 108s - $ hg clone -U repo.git hgrepo 108s - importing 5 git commits 108s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 108s -#else 108s - $ hg init hgrepo 108s - $ hg -R hgrepo pull repo.git 108s - pulling from repo.git 108s - importing 5 git commits 108s - adding bookmark branch1_bookmark 108s - adding bookmark branch2_bookmark 108s - adding bookmark branch3_bookmark 108s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 108s - (run 'hg heads' to see heads, 'hg merge' to merge) 108s -#endif 108s - $ cd gitrepo 108s - $ git checkout -q branch1 108s - $ fn_git_rebase branch3 108s - $ git push -f 108s - To $TESTTMP/repo.git 108s - + d8aef79...ce1d1c5 branch1 -> branch1 (forced update) 108s - $ cd ../hgrepo 108s - $ hg pull ../repo.git 108s - pulling from ../repo.git 108s - importing 1 git commits 108s - not updating diverged bookmark branch1_bookmark 108s - new changesets 895d0307f8b7 (1 drafts) 108s - (run 'hg update' to get a working copy) 108s - $ hg log --graph 108s - o changeset: 5:895d0307f8b7 108s - | tag: default/branch1 (with-path !) 108s - | tag: tip 108s - | user: test 108s - | date: Mon Jan 01 00:00:12 2007 +0000 108s - | summary: append f1 108s - | 108s - o changeset: 4:faf44fc3a4e8 108s - | bookmark: branch3_bookmark 108s - | tag: default/branch3 (with-path !) 108s - | user: test 108s - | date: Mon Jan 01 00:00:14 2007 +0000 108s - | summary: append f3 108s - | 108s - o changeset: 3:ae8eb55f7090 108s - | bookmark: branch2_bookmark 108s - | tag: default/branch2 (with-path !) 108s - | user: test 108s - | date: Mon Jan 01 00:00:13 2007 +0000 108s - | summary: append f2 108s - | 108s - o changeset: 2:600de9b6d498 108s - | branch: branch2 108s - | parent: 0:40a840c1f8ae 108s - | user: test 108s - | date: Mon Jan 01 00:00:11 2007 +0000 108s - | summary: add f2 108s - | 108s - | o changeset: 1:8211cade99e4 108s - |/ bookmark: branch1_bookmark 108s - | user: test 108s - | date: Mon Jan 01 00:00:12 2007 +0000 108s - | summary: append f1 108s - | 108s - o changeset: 0:40a840c1f8ae 108s - branch: branch1 108s - user: test 108s - date: Mon Jan 01 00:00:10 2007 +0000 108s - summary: add f1 108s - 108s 108s ERROR: test-branch-bookmark-suffix.t#with-path output changed 109s ! 109s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-branch-bookmark-suffix.t 109s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-branch-bookmark-suffix.t#without-path.err 109s @@ -49,31 +49,102 @@ 109s 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 2 commits with 2 trees and 2 blobs 109s - adding reference refs/heads/branch1 109s - adding reference refs/heads/branch2 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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 109s + return f(*args, **kwargs) 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 109s + all_exportable = self.export_commits() 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 109s + self.export_git_objects() 109s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 109s + packer.pack(synchronous=True) 109s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 109s + _process_batch(self.ui, self.object_store, todo) 109s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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 $ cd .. 109s 109s $ cd repo.git 109s $ git symbolic-ref HEAD refs/heads/branch1 109s $ git branch 109s - * branch1 109s - branch2 109s $ cd .. 109s 109s $ git clone repo.git gitrepo 109s Cloning into 'gitrepo'... 109s + warning: You appear to have cloned an empty repository. 109s done. 109s $ cd gitrepo 109s $ git checkout -q branch1 109s + error: pathspec 'branch1' did not match any file(s) known to git 109s + [1] 109s $ echo g1 >> f1 109s $ git add f1 109s $ fn_git_commit -m "append f1" 109s $ git checkout -q branch2 109s + error: pathspec 'branch2' did not match any file(s) known to git 109s + [1] 109s $ echo g2 >> f2 109s $ git add f2 109s $ fn_git_commit -m "append f2" 109s @@ -83,18 +154,13 @@ 109s $ git add f3 109s $ fn_git_commit -m "append f3" 109s $ git push origin branch1 branch2 branch3 109s - To $TESTTMP/repo.git 109s - bbfe79a..d8aef79 branch1 -> branch1 109s - 288e92b..f8f8de5 branch2 -> branch2 109s - * [new branch] branch3 -> branch3 109s + error: src refspec branch2 does not match any 109s + error: failed to push some refs to '$TESTTMP/repo.git' 109s + [1] 109s make sure the commit doesn't have an HG:rename-source annotation 109s $ git cat-file commit d8aef79 109s - tree b5644d8071b8a5963b8d1fd089fb3fdfb14b1203 109s - parent bbfe79acf62dcd6a97763e2a67424a6de8a96941 109s - author test 1167609612 +0000 109s - committer test 1167609612 +0000 109s - 109s - append f1 109s + fatal: Not a valid object name d8aef79 109s + [128] 109s $ cd .. 109s 109s $ cd hgrepo 109s @@ -102,194 +168,33 @@ 109s default = $TESTTMP/repo.git (with-path !) 109s $ hg pull ../repo.git 109s pulling from ../repo.git 109s - importing 3 git commits 109s - updating bookmark branch1_bookmark 109s - updating bookmark branch2_bookmark 109s - adding bookmark branch3_bookmark 109s - new changesets 8211cade99e4:faf44fc3a4e8 (3 drafts) 109s - (run 'hg heads' to see heads) 109s $ hg log --graph 109s - o changeset: 4:faf44fc3a4e8 109s - | bookmark: branch3_bookmark 109s + @ changeset: 1:600de9b6d498 109s + | branch: branch2 109s | tag: default/branch3 (with-path !) 109s + | bookmark: branch2_bookmark 109s | tag: tip 109s - | user: test 109s - | date: Mon Jan 01 00:00:14 2007 +0000 109s - | summary: append f3 109s - | 109s - o changeset: 3:ae8eb55f7090 109s - | bookmark: branch2_bookmark 109s - | tag: default/branch2 (with-path !) 109s - | parent: 1:600de9b6d498 109s - | user: test 109s - | date: Mon Jan 01 00:00:13 2007 +0000 109s - | summary: append f2 109s - | 109s - | o changeset: 2:8211cade99e4 109s - | | bookmark: branch1_bookmark 109s - | | tag: default/branch1 (with-path !) 109s - | | parent: 0:40a840c1f8ae 109s - | | user: test 109s - | | date: Mon Jan 01 00:00:12 2007 +0000 109s - | | summary: append f1 109s - | | 109s - @ | changeset: 1:600de9b6d498 109s - |/ branch: branch2 109s - | user: test 109s - | date: Mon Jan 01 00:00:11 2007 +0000 109s - | summary: add f2 109s - | 109s - o changeset: 0:40a840c1f8ae 109s - branch: branch1 109s - user: test 109s - date: Mon Jan 01 00:00:10 2007 +0000 109s - summary: add f1 109s - 109s - $ cd .. 109s - 109s -Try cloning a bookmark, and make sure it gets checked out: 109s - 109s - $ rm -r hgrepo 109s - $ hg clone -r branch3 repo.git hgrepo 109s - importing 4 git commits 109s - new changesets 40a840c1f8ae:faf44fc3a4e8 (4 drafts) 109s - updating to bookmark branch3_bookmark 109s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ cd hgrepo 109s - $ hg bookmarks 109s - branch2_bookmark 2:ae8eb55f7090 109s - * branch3_bookmark 3:faf44fc3a4e8 109s - $ hg log --graph 109s - @ changeset: 3:faf44fc3a4e8 109s - | bookmark: branch3_bookmark 109s - | tag: default/branch3 109s - | tag: tip 109s - | user: test 109s - | date: Mon Jan 01 00:00:14 2007 +0000 109s - | summary: append f3 109s - | 109s - o changeset: 2:ae8eb55f7090 109s - | bookmark: branch2_bookmark 109s - | tag: default/branch2 109s - | user: test 109s - | date: Mon Jan 01 00:00:13 2007 +0000 109s - | summary: append f2 109s - | 109s - o changeset: 1:600de9b6d498 109s - | branch: branch2 109s | user: test 109s | date: Mon Jan 01 00:00:11 2007 +0000 109s | summary: add f2 109s | 109s o changeset: 0:40a840c1f8ae 109s + | tag: default/branch2 (with-path !) 109s branch: branch1 109s + bookmark: branch1_bookmark 109s user: test 109s date: Mon Jan 01 00:00:10 2007 +0000 109s summary: add f1 109s 109s - $ cd .. 109s - 109s -Try cloning something that's both a bookmark and a branch, and see the 109s -results. They're a bit suprising as the bookmark does get activated, 109s -but the branch get checked out. Although this does seem a bit odd, so 109s -does the scenario. 109s + | | tag: default/branch1 (with-path !) 109s + $ cd .. 109s + 109s +Try cloning a bookmark, and make sure it gets checked out: 109s 109s $ rm -r hgrepo 109s - $ hg clone -r branch1 repo.git hgrepo 109s - importing 2 git commits 109s - new changesets 40a840c1f8ae:8211cade99e4 (2 drafts) 109s - updating to branch branch1 109s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s + $ hg clone -r branch3 repo.git hgrepo 109s + abort: unknown revision 'branch3' 109s + [10] 109s $ cd hgrepo 109s + $TESTTMP.sh: 102: cd: can't cd to hgrepo 109s $ hg bookmarks 109s - * branch1_bookmark 1:8211cade99e4 109s - $ hg log --graph 109s - o changeset: 1:8211cade99e4 109s - | bookmark: branch1_bookmark 109s - | tag: default/branch1 109s - | tag: tip 109s - | user: test 109s - | date: Mon Jan 01 00:00:12 2007 +0000 109s - | summary: append f1 109s - | 109s - @ changeset: 0:40a840c1f8ae 109s - branch: branch1 109s - user: test 109s - date: Mon Jan 01 00:00:10 2007 +0000 109s - summary: add f1 109s - 109s - 109s - $ cd .. 109s - 109s -Now try pulling a diverged bookmark: 109s - 109s - $ rm -r hgrepo 109s -#if with-path 109s - $ hg clone -U repo.git hgrepo 109s - importing 5 git commits 109s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 109s -#else 109s - $ hg init hgrepo 109s - $ hg -R hgrepo pull repo.git 109s - pulling from repo.git 109s - importing 5 git commits 109s - adding bookmark branch1_bookmark 109s - adding bookmark branch2_bookmark 109s - adding bookmark branch3_bookmark 109s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 109s - (run 'hg heads' to see heads, 'hg merge' to merge) 109s -#endif 109s - $ cd gitrepo 109s - $ git checkout -q branch1 109s - $ fn_git_rebase branch3 109s - $ git push -f 109s - To $TESTTMP/repo.git 109s - + d8aef79...ce1d1c5 branch1 -> branch1 (forced update) 109s - $ cd ../hgrepo 109s - $ hg pull ../repo.git 109s - pulling from ../repo.git 109s - importing 1 git commits 109s - not updating diverged bookmark branch1_bookmark 109s - new changesets 895d0307f8b7 (1 drafts) 109s - (run 'hg update' to get a working copy) 109s - $ hg log --graph 109s - o changeset: 5:895d0307f8b7 109s - | tag: default/branch1 (with-path !) 109s - | tag: tip 109s - | user: test 109s - | date: Mon Jan 01 00:00:12 2007 +0000 109s - | summary: append f1 109s - | 109s - o changeset: 4:faf44fc3a4e8 109s - | bookmark: branch3_bookmark 109s - | tag: default/branch3 (with-path !) 109s - | user: test 109s - | date: Mon Jan 01 00:00:14 2007 +0000 109s - | summary: append f3 109s - | 109s - o changeset: 3:ae8eb55f7090 109s - | bookmark: branch2_bookmark 109s - | tag: default/branch2 (with-path !) 109s - | user: test 109s - | date: Mon Jan 01 00:00:13 2007 +0000 109s - | summary: append f2 109s - | 109s - o changeset: 2:600de9b6d498 109s - | branch: branch2 109s - | parent: 0:40a840c1f8ae 109s - | user: test 109s - | date: Mon Jan 01 00:00:11 2007 +0000 109s - | summary: add f2 109s - | 109s - | o changeset: 1:8211cade99e4 109s - |/ bookmark: branch1_bookmark 109s - | user: test 109s - | date: Mon Jan 01 00:00:12 2007 +0000 109s - | summary: append f1 109s - | 109s - o changeset: 0:40a840c1f8ae 109s - branch: branch1 109s - user: test 109s - date: Mon Jan 01 00:00:10 2007 +0000 109s - summary: add f1 109s - 109s 109s ERROR: test-branch-bookmark-suffix.t#without-path output changed 109s ! 109s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-bundle.t 109s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-bundle.t.err 109s @@ -37,246 +37,102 @@ 109s 109s $ hg clone gitrepo hgrepo 109s importing 3 git commits 109s - new changesets ff7a2f2d8d70:ca33a262eb46 (3 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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 109s + return f(*args, **kwargs) 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 109s + pullop.cgresult = repo.githandler.fetch(remote, heads) 109s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 109s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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: 45: cd: can't cd to hgrepo 109s 109s Create a bundle with our metadata, and inspect it: 109s 109s $ hg bundle --all ../bundle-w-git.hg 109s - 3 changesets found 109s - $ hg debugbundle --all ../bundle-w-git.hg | grep hg-git 109s - exp-hg-git-map -- {} (mandatory: False) 109s - exp-hg-git-tags -- {} (mandatory: False) 109s - $ hg debugbundle --all ../bundle-w-git.hg > bundle-w-git.out 109s - 109s -Create a bundle without our metadata, and inspect it: 109s - 109s - $ hg bundle --all ../bundle-wo-git.hg --config experimental.hg-git-bundle=no 109s - 3 changesets found 109s - $ hg debugbundle --all ../bundle-wo-git.hg | grep hg-git 109s - [1] 109s - 109s -Verify that those are different: 109s - 109s - $ hg debugbundle --all ../bundle-wo-git.hg > bundle-wo-git.out 109s - $ cmp -s bundle-w-git.out bundle-wo-git.out 109s - [1] 109s - 109s -Now create a bundle without hg-git enabled at all, which should be 109s -exactly similar to what you get when you disable metadata embedding; 109s -this verifies we don't accidentally pollute bundles. 109s - 109s - $ hg bundle --all --config extensions.hggit=! ../bundle-wo-hggit.hg 109s - 3 changesets found 109s - $ hg debugbundle --all ../bundle-wo-hggit.hg > bundle-wo-hggit.out 109s - $ cmp -s bundle-wo-git.hg bundle-wo-hggit.hg 109s - [2] 109s - $ cmp -s bundle-wo-git.out bundle-wo-hggit.out 109s - $ cd .. 109s - $ rm -r hgrepo 109s - 109s -Does unbundling transfer state? 109s - 109s - $ hg init hgrepo 109s - $ hg -R hgrepo unbundle bundle-w-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 3 changesets with 3 changes to 3 files 109s - new changesets * (glob) 109s - (run 'hg update' to get a working copy) 109s - $ hg -R hgrepo log -T git 109s - 2:ca33a262eb46 | d338971a96e2 | tip | 109s - 1:7fe02317c63d | 9497a4ee62e1 | theothertag | 109s - 0:ff7a2f2d8d70 | 7eeab2ea75ec | thetag | 109s - $ hg -R hgrepo pull gitrepo 109s - pulling from gitrepo 109s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 109s - no changes found 109s - adding bookmark master 109s - $ rm -r hgrepo 109s - 109s -Can we unbundle something without git state? 109s - 109s - $ hg init hgrepo 109s - $ hg -R hgrepo unbundle bundle-wo-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 3 changesets with 3 changes to 3 files 109s - new changesets * (glob) 109s - (run 'hg update' to get a working copy) 109s - $ hg -R hgrepo log -T git 109s - 2:ca33a262eb46 | | tip | 109s - 1:7fe02317c63d | | | 109s - 0:ff7a2f2d8d70 | | | 109s - $ hg -R hgrepo pull gitrepo 109s - pulling from gitrepo 109s - importing 3 git commits 109s - adding bookmark master 109s - (run 'hg update' to get a working copy) 109s - $ rm -r hgrepo 109s - 109s -Regular mercurial shouldn't choke on our bundle 109s - 109s - $ hg init hgrepo 109s - $ cat >> hgrepo/.hg/hgrc < [extensions] 109s - > hggit = ! 109s - > EOF 109s - $ hg -R hgrepo unbundle bundle-wo-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 3 changesets with 3 changes to 3 files 109s - new changesets * (glob) 109s - (run 'hg update' to get a working copy) 109s - $ hg -R hgrepo log -T git 109s - 2:ca33a262eb46 | | tip | 109s - 1:7fe02317c63d | | | 109s - 0:ff7a2f2d8d70 | | | 109s - $ hg -R hgrepo pull gitrepo 109s - pulling from gitrepo 109s - abort: repository gitrepo not found!? (re) 109s - [255] 109s - $ rm -r hgrepo 109s - 109s - 109s -What happens if we unbundle twice? 109s - 109s - $ hg init hgrepo 109s - $ hg -R hgrepo unbundle bundle-w-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 3 changesets with 3 changes to 3 files 109s - new changesets * (glob) 109s - (run 'hg update' to get a working copy) 109s - $ hg -R hgrepo unbundle bundle-w-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 0 changesets with 0 changes to 3 files 109s - (run 'hg update' to get a working copy) 109s - $ hg -R hgrepo log -T git 109s - 2:ca33a262eb46 | d338971a96e2 | tip | 109s - 1:7fe02317c63d | 9497a4ee62e1 | theothertag | 109s - 0:ff7a2f2d8d70 | 7eeab2ea75ec | thetag | 109s - $ hg -R hgrepo pull gitrepo 109s - pulling from gitrepo 109s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 109s - no changes found 109s - adding bookmark master 109s - $ rm -r hgrepo 109s - 109s -Alas, cloning a bundle doesn't work yet: 109s - 109s -(Mercurial is apparently quite dumb here, so we won't try to fix this 109s -for now, but this test mostly exists so that we notice if ever starts 109s -working, or breaks entirely.) 109s - 109s - $ hg clone bundle-w-git.hg hgrepo 109s - requesting all changes 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 3 changesets with 3 changes to 3 files 109s - new changesets * (glob) 109s - updating to branch default 109s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ hg -R hgrepo log -T git 109s - 2:ca33a262eb46 | | tip | 109s - 1:7fe02317c63d | | | 109s - 0:ff7a2f2d8d70 | | | 109s - $ rm -r hgrepo 109s - 109s -Now, lets try to be a bit evil. How does pulling partial state work? 109s - 109s -First, more git happenings: 109s - 109s - $ cd gitrepo 109s - $ git checkout -b otherbranch thetag 109s - Switched to a new branch 'otherbranch' 109s - $ echo 42 > baz 109s - $ git add baz 109s - $ fn_git_commit -m 3 109s - $ cd .. 109s - 109s -Pull, 'em, and create a partial bundle: 109s - 109s - $ hg clone gitrepo hgrepo 109s - importing 4 git commits 109s - new changesets ff7a2f2d8d70:d87bf3ef6a53 (4 drafts) 109s - updating to bookmark otherbranch 109s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ hg -R hgrepo bundle --base 'p1(tip)' -r tip bundle-w-git-2.hg 109s - 1 changesets found 109s - $ rm -r hgrepo 109s - 109s -Now, load only that bundle into a repository without any git state 109s - 109s - $ hg clone -r 1 bundle-w-git.hg hgrepo --config extensions.hggit=! 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 2 changesets with 2 changes to 2 files 109s - new changesets * (glob) 109s - updating to branch default 109s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ cd hgrepo 109s - $ hg unbundle ../bundle-w-git-2.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 1 changesets with 1 changes to 1 files (+1 heads) 109s - new changesets * (glob) 109s - (run 'hg heads' to see heads, 'hg merge' to merge) 109s - $ hg pull ../gitrepo 109s - pulling from ../gitrepo 109s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 109s - importing 3 git commits 109s - adding bookmark master 109s - adding bookmark otherbranch 109s - new changesets ca33a262eb46 (1 drafts) 109s - (run 'hg update' to get a working copy) 109s - $ cd .. 109s - $ rm -r hgrepo 109s - 109s -Now, try pushing with only the metadata: 109s - 109s - $ hg init hgrepo 109s - $ cd hgrepo 109s - $ hg unbundle -u ../bundle-w-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 3 changesets with 3 changes to 3 files 109s - new changesets * (glob) 109s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ echo kaflaflibob > bajizmo 109s - $ fn_hg_commit -A -m 4 109s - $ hg book -r tip master 109s - $ hg push ../gitrepo 109s - pushing to ../gitrepo 109s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 109s - abort: cannot push git commit d338971a96e2 as it is not present locally 109s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 109s - [255] 109s - 109s -Try to repopulate the git state from a bundle 109s - 109s - $ hg debug-remove-hggit-state 109s - clearing out the git cache data 109s - $ hg log -qr 'fromgit()' 109s - $ hg unbundle -u ../bundle-w-git.hg 109s - adding changesets 109s - adding manifests 109s - adding file changes 109s - added 0 changesets with 0 changes to 3 files 109s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 109s - $ hg log -qr 'fromgit()' 109s - 0:ff7a2f2d8d70 109s - 1:7fe02317c63d 109s - 2:ca33a262eb46 109s 109s ERROR: test-bundle.t output changed 110s ! 110s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-file-removal.t 110s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-file-removal.t.err 110s @@ -99,191 +99,99 @@ 110s 110s $ hg clone gitrepo hgrepo 110s importing 9 git commits 110s - new changesets ff7a2f2d8d70:0995b8a0a943 (9 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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 110s + return f(*args, **kwargs) 110s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 110s + pullop.cgresult = repo.githandler.fetch(remote, heads) 110s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 110s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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: 72: cd: can't cd to hgrepo 110s $ hg log --graph 110s - @ changeset: 8:0995b8a0a943 110s - | bookmark: master 110s - | tag: default/master 110s - | tag: tip 110s - | user: test 110s - | date: Mon Jan 01 00:00:18 2007 +0000 110s - | summary: remove betalink 110s - | 110s - o changeset: 7:a316d3a96c89 110s - | user: test 110s - | date: Mon Jan 01 00:00:17 2007 +0000 110s - | summary: replace file with symlink 110s - | 110s - o changeset: 6:1804acb71f3e 110s - | user: test 110s - | date: Mon Jan 01 00:00:16 2007 +0000 110s - | summary: replace symlink with file 110s - | 110s - o changeset: 5:e19c85becc87 110s - | user: test 110s - | date: Mon Jan 01 00:00:15 2007 +0000 110s - | summary: add symlink to beta 110s - | 110s - o changeset: 4:0d3086c3f8c3 110s - | user: test 110s - | date: Mon Jan 01 00:00:14 2007 +0000 110s - | summary: remove foo/bar 110s - | 110s - o changeset: 3:b2406125ef5c 110s - | user: test 110s - | date: Mon Jan 01 00:00:13 2007 +0000 110s - | summary: remove alpha 110s - | 110s - o changeset: 2:8b3b2f4b4158 110s - | user: test 110s - | date: Mon Jan 01 00:00:12 2007 +0000 110s - | summary: add foo 110s - | 110s - o changeset: 1:7fe02317c63d 110s - | user: test 110s - | date: Mon Jan 01 00:00:11 2007 +0000 110s - | summary: add beta 110s - | 110s - o changeset: 0:ff7a2f2d8d70 110s - user: test 110s - date: Mon Jan 01 00:00:10 2007 +0000 110s - summary: add alpha 110s - 110s - 110s -make sure alpha is not in this manifest 110s - $ hg manifest -r 3 110s - beta 110s - foo/bar 110s - 110s -make sure that only beta is in the manifest 110s - $ hg manifest 110s - beta 110s - 110s - $ hg debug-remove-hggit-state 110s - clearing out the git cache data 110s - $ ls .hg | grep git 110s - [1] 110s - $ hg push ../repo.git 110s - pushing to ../repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 9 commits with 8 trees and 5 blobs 110s - adding reference refs/heads/master 110s - 110s - $ cd .. 110s - $ git --git-dir=repo.git log --pretty=medium 110s - commit 5ee11eeae239d6a99df5a99901ec00ffafbcc46b 110s - Author: test 110s - Date: Mon Jan 1 00:00:18 2007 +0000 110s - 110s - remove betalink 110s - 110s - commit 2c7b324faeccb1acf89c35b7ad38e7956f5705fa 110s - Author: test 110s - Date: Mon Jan 1 00:00:17 2007 +0000 110s - 110s - replace file with symlink 110s - 110s - commit ff0478d2ecc2571d01eb6d406ac29e4e63e5d3d5 110s - Author: test 110s - Date: Mon Jan 1 00:00:16 2007 +0000 110s - 110s - replace symlink with file 110s - 110s - commit 5492e6e410e42df527956be945286cd1ae45acb8 110s - Author: test 110s - Date: Mon Jan 1 00:00:15 2007 +0000 110s - 110s - add symlink to beta 110s - 110s - commit b991de8952c482a7cd51162674ffff8474862218 110s - Author: test 110s - Date: Mon Jan 1 00:00:14 2007 +0000 110s - 110s - remove foo/bar 110s - 110s - commit b0edaf0adac19392cf2867498b983bc5192b41dd 110s - Author: test 110s - Date: Mon Jan 1 00:00:13 2007 +0000 110s - 110s - remove alpha 110s - 110s - commit f2d0d5bfa905e12dee728b509b96cf265bb6ee43 110s - Author: test 110s - Date: Mon Jan 1 00:00:12 2007 +0000 110s - 110s - add foo 110s - 110s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 110s - Author: test 110s - Date: Mon Jan 1 00:00:11 2007 +0000 110s - 110s - add beta 110s - 110s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 110s - Author: test 110s - Date: Mon Jan 1 00:00:10 2007 +0000 110s - 110s - add alpha 110s - 110s -test with rename detection enabled 110s - $ hg --config git.similarity=100 clone gitrepo hgreporenames 110s - importing 9 git commits 110s - new changesets ff7a2f2d8d70:0995b8a0a943 (9 drafts) 110s - updating to bookmark master 110s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 110s - 110s - $ cd hgreporenames 110s - $ hg log --graph 110s - @ changeset: 8:0995b8a0a943 110s - | bookmark: master 110s - | tag: default/master 110s - | tag: tip 110s - | user: test 110s - | date: Mon Jan 01 00:00:18 2007 +0000 110s - | summary: remove betalink 110s - | 110s - o changeset: 7:a316d3a96c89 110s - | user: test 110s - | date: Mon Jan 01 00:00:17 2007 +0000 110s - | summary: replace file with symlink 110s - | 110s - o changeset: 6:1804acb71f3e 110s - | user: test 110s - | date: Mon Jan 01 00:00:16 2007 +0000 110s - | summary: replace symlink with file 110s - | 110s - o changeset: 5:e19c85becc87 110s - | user: test 110s - | date: Mon Jan 01 00:00:15 2007 +0000 110s - | summary: add symlink to beta 110s - | 110s - o changeset: 4:0d3086c3f8c3 110s - | user: test 110s - | date: Mon Jan 01 00:00:14 2007 +0000 110s - | summary: remove foo/bar 110s - | 110s - o changeset: 3:b2406125ef5c 110s - | user: test 110s - | date: Mon Jan 01 00:00:13 2007 +0000 110s - | summary: remove alpha 110s - | 110s - o changeset: 2:8b3b2f4b4158 110s - | user: test 110s - | date: Mon Jan 01 00:00:12 2007 +0000 110s - | summary: add foo 110s - | 110s - o changeset: 1:7fe02317c63d 110s - | user: test 110s - | date: Mon Jan 01 00:00:11 2007 +0000 110s - | summary: add beta 110s - | 110s - o changeset: 0:ff7a2f2d8d70 110s - user: test 110s - date: Mon Jan 01 00:00:10 2007 +0000 110s - summary: add alpha 110s - 110s 110s ERROR: test-file-removal.t output changed 110s ! 110s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-author.t 110s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-author.t.err 110s @@ -17,255 +17,100 @@ 110s $ cd .. 110s $ hg clone repo.git 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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 110s + return f(*args, **kwargs) 110s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 110s + pullop.cgresult = repo.githandler.fetch(remote, heads) 110s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 110s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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 $ cd hgrepo 110s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 110s $ hg book master 110s - $ echo beta > beta 110s - $ hg add beta 110s - $ fn_hg_commit -u "test" -m 'add beta' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ echo gamma >> beta 110s - $ fn_hg_commit -u "test (comment)" -m 'modify beta' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ echo gamma > gamma 110s - $ hg add gamma 110s - $ fn_hg_commit -u "" -m 'add gamma' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ echo delta > delta 110s - $ hg add delta 110s - $ fn_hg_commit -u "name" -m 'add delta' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ echo epsilon > epsilon 110s - $ hg add epsilon 110s - $ fn_hg_commit -u "name zeta 110s - $ hg add zeta 110s - $ fn_hg_commit -u " test " -m 'add zeta' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ echo eta > eta 110s - $ hg add eta 110s - $ fn_hg_commit -u "test < test@example.com >" -m 'add eta' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ echo theta > theta 110s - $ hg add theta 110s - $ fn_hg_commit -u "test >test@example.com>" -m 'add theta' 110s - $ hg push 110s - pushing to $TESTTMP/repo.git 110s - searching for changes 110s - adding objects 110s - remote: found 0 deltas to reuse 110s - added 1 commits with 1 trees and 1 blobs 110s - updating reference refs/heads/master 110s - 110s - $ hg log --graph 110s - @ changeset: 8:c5d1976ab12c 110s - | bookmark: master 110s - | tag: default/master 110s - | tag: tip 110s - | user: test >test@example.com> 110s - | date: Mon Jan 01 00:00:18 2007 +0000 110s - | summary: add theta 110s - | 110s - o changeset: 7:0e2fb4d21667 110s - | user: test < test@example.com > 110s - | date: Mon Jan 01 00:00:17 2007 +0000 110s - | summary: add eta 110s - | 110s - o changeset: 6:faa3aae96199 110s - | user: test 110s - | date: Mon Jan 01 00:00:16 2007 +0000 110s - | summary: add zeta 110s - | 110s - o changeset: 5:2cf6ad5a1afc 110s - | user: name 110s - | date: Mon Jan 01 00:00:14 2007 +0000 110s - | summary: add delta 110s - | 110s - o changeset: 3:6b854d65d0d6 110s - | user: 110s - | date: Mon Jan 01 00:00:13 2007 +0000 110s - | summary: add gamma 110s - | 110s - o changeset: 2:46303c652e79 110s - | user: test (comment) 110s - | date: Mon Jan 01 00:00:12 2007 +0000 110s - | summary: modify beta 110s - | 110s - o changeset: 1:47580592d3d6 110s - | user: test 110s - | date: Mon Jan 01 00:00:11 2007 +0000 110s - | summary: add beta 110s - | 110s - o changeset: 0:ff7a2f2d8d70 110s - user: test 110s - date: Mon Jan 01 00:00:10 2007 +0000 110s - summary: add alpha 110s - 110s - 110s - $ cd .. 110s - $ hg clone repo.git hgrepo2 110s - importing 9 git commits 110s - new changesets ff7a2f2d8d70:1fbf3aa91221 (9 drafts) 110s - updating to bookmark master 110s - 8 files updated, 0 files merged, 0 files removed, 0 files unresolved 110s - $ hg -R hgrepo2 log --graph 110s - @ changeset: 8:1fbf3aa91221 110s - | bookmark: master 110s - | tag: default/master 110s - | tag: tip 110s - | user: test ?test@example.com 110s - | date: Mon Jan 01 00:00:18 2007 +0000 110s - | summary: add theta 110s - | 110s - o changeset: 7:20310508f06d 110s - | user: test 110s - | date: Mon Jan 01 00:00:17 2007 +0000 110s - | summary: add eta 110s - | 110s - o changeset: 6:e3d81af8a8c1 110s - | user: test 110s - | date: Mon Jan 01 00:00:16 2007 +0000 110s - | summary: add zeta 110s - | 110s - o changeset: 5:78f609fd208f 110s - | user: name 110s - | date: Mon Jan 01 00:00:15 2007 +0000 110s - | summary: add epsilon 110s - | 110s - o changeset: 4:42fa61d57718 110s - | user: name 110s - | date: Mon Jan 01 00:00:14 2007 +0000 110s - | summary: add delta 110s - | 110s - o changeset: 3:6b854d65d0d6 110s - | user: 110s - | date: Mon Jan 01 00:00:13 2007 +0000 110s - | summary: add gamma 110s - | 110s - o changeset: 2:46303c652e79 110s - | user: test (comment) 110s - | date: Mon Jan 01 00:00:12 2007 +0000 110s - | summary: modify beta 110s - | 110s - o changeset: 1:47580592d3d6 110s - | user: test 110s - | date: Mon Jan 01 00:00:11 2007 +0000 110s - | summary: add beta 110s - | 110s - o changeset: 0:ff7a2f2d8d70 110s - user: test 110s - date: Mon Jan 01 00:00:10 2007 +0000 110s - summary: add alpha 110s - 110s - $ git --git-dir=repo.git log --pretty=medium master 110s - commit 2fe60ba69727981e6ede78be70354c3a9e30e21d 110s - Author: test ?test@example.com 110s - Date: Mon Jan 1 00:00:18 2007 +0000 110s - 110s - add theta 110s - 110s - commit 9f2f7cafdbf2e467928db98de8275141001d3081 110s - Author: test 110s - Date: Mon Jan 1 00:00:17 2007 +0000 110s - 110s - add eta 110s - 110s - commit 172a6f8d8064d73dff7013e395a9fe3cfc3ff807 110s - Author: test 110s - Date: Mon Jan 1 00:00:16 2007 +0000 110s - 110s - add zeta 110s - 110s - commit 71badb8e343a7da391a9b5d98909fbd2ca7d78f2 110s - Author: name 110s - Date: Mon Jan 1 00:00:15 2007 +0000 110s - 110s - add epsilon 110s - 110s - commit 9a9ae7b7f310d4a1a3e732a747ca26f06934f8d8 110s - Author: name 110s - Date: Mon Jan 1 00:00:14 2007 +0000 110s - 110s - add delta 110s - 110s - commit e4149a32e81e380193f59aa8773349201b8ed7f7 110s - Author: 110s - Date: Mon Jan 1 00:00:13 2007 +0000 110s - 110s - add gamma 110s - 110s - commit fae95aef5889a80103c2fbd5d14ff6eb8c9daf93 110s - Author: test ext:(%20%28comment%29) 110s - Date: Mon Jan 1 00:00:12 2007 +0000 110s - 110s - modify beta 110s - 110s - commit 0f378ab6c2c6b5514bd873d3faf8ac4b8095b001 110s - Author: test 110s - Date: Mon Jan 1 00:00:11 2007 +0000 110s - 110s - add beta 110s - 110s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 110s - Author: test 110s - Date: Mon Jan 1 00:00:10 2007 +0000 110s - 110s - add alpha 110s 110s ERROR: test-hg-author.t output changed 111s ! 111s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos.t 111s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos.t.err 111s @@ -35,164 +35,98 @@ 111s Ensure gitlinks are transformed to .hgsubstate on hg pull from git 111s $ hg clone -u tip repo.git hgrepo 2>&1 | grep -E -v '^(Cloning into|done)' 111s importing 3 git commits 111s - new changesets e532b2bfda10:3c4fd561cbeb (3 drafts) 111s - updating to branch default 111s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 111s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 111s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 111s + return f(*args, **kwargs) 111s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 111s + pullop.cgresult = repo.githandler.fetch(remote, heads) 111s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 111s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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 $ cd hgrepo 111s + $TESTTMP.sh: 42: cd: can't cd to hgrepo 111s $ hg bookmarks -f -r default master 111s -1. Ensure gitlinks are transformed to .hgsubstate on hg <- git pull 111s -.hgsub shall list two [git] subrepos 111s - $ cat .hgsub 111s - subrepo1 = [git]../gitsubrepo 111s - xyz/subrepo2 = [git]../gitsubrepo 111s -.hgsubstate shall list two idenitcal revisions 111s - $ cat .hgsubstate 111s - 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 111s - 56f0304c5250308f14cfbafdc27bd12d40154d17 xyz/subrepo2 111s -hg status shall NOT report .hgsub and .hgsubstate as untracked - either ignored or unmodified 111s - $ hg status --unknown .hgsub .hgsubstate 111s - $ hg status --modified .hgsub .hgsubstate 111s - $ cd .. 111s - 111s -2. Check gitmodules are preserved during hg -> git push 111s - $ cd gitsubrepo 111s - $ echo gamma > gamma 111s - $ git add gamma 111s - $ fn_git_commit -m 'add gamma' 111s - $ cd .. 111s - $ cd hgrepo 111s - $ cd xyz/subrepo2 111s - $ git pull --ff-only | sed 's/files/file/;s/insertions/insertion/;s/, 0 deletions.*//' | sed 's/| */| /' 111s - From $TESTTMP/gitsubrepo 111s - 56f0304..aabf7cd master -> origin/master 111s - Updating 56f0304..aabf7cd 111s - Fast-forward 111s - gamma | 1 + 111s - 1 file changed, 1 insertion(+) 111s - create mode 100644 gamma 111s - $ cd ../.. 111s - $ echo xxx >> alpha 111s - $ fn_hg_commit -m 'Update subrepo2 from hg' | grep -v "committing subrepository" || true 111s - $ hg push 111s - pushing to $TESTTMP/repo.git 111s - searching for changes 111s - adding objects 111s - remote: found 0 deltas to reuse 111s - added 1 commits with 2 trees and 1 blobs 111s - updating reference refs/heads/master 111s - $ cd .. 111s - $ cd gitrepo 111s - $ git pull --ff-only 111s - From $TESTTMP/repo 111s - 89c22d7..275b0a5 master -> origin/master 111s - Fetching submodule xyz/subrepo2 111s - From $TESTTMP/gitsubrepo 111s - 56f0304..aabf7cd master -> origin/master 111s - Updating 89c22d7..275b0a5 111s - Fast-forward 111s - alpha | 1 + 111s - xyz/subrepo2 | 2 +- 111s - 2 files changed, 2 insertions(+), 1 deletion(-) 111s -there shall be two gitlink entries, with values matching that in .hgsubstate 111s - $ git ls-tree -r HEAD^{tree} | grep 'commit' 111s - 160000 commit 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 111s - 160000 commit aabf7cd015089aff0b84596e69aa37b24a3d090a xyz/subrepo2 111s -bring working copy to HEAD state (it's not bare repo) 111s - $ git reset --hard 111s - HEAD is now at 275b0a5 Update subrepo2 from hg 111s - $ cd .. 111s - 111s -3. Check .hgsub and .hgsubstate from git repository are merged, not overwritten 111s - $ hg init hgsub 111s - $ cd hgsub 111s - $ echo delta > delta 111s - $ hg add delta 111s - $ fn_hg_commit -m "add delta" 111s - $ hg tip --template '{node} hgsub\n' > ../gitrepo/.hgsubstate 111s - $ cat > ../gitrepo/.hgsub < hgsub = ../hgsub 111s - > EOF 111s - $ cd ../gitrepo 111s - $ git add .hgsubstate .hgsub 111s - $ fn_git_commit -m "Test3. Prepare .hgsub and .hgsubstate sources" 111s - $ git push 111s - To $TESTTMP/repo.git 111s - 275b0a5..e31d576 master -> master 111s - 111s - $ cd ../hgrepo 111s - $ hg pull 111s - pulling from $TESTTMP/repo.git 111s - importing 1 git commits 111s - updating bookmark master 111s - new changesets [0-9a-f]{12,12} \(1 drafts\) (re) 111s - (run 'hg update' to get a working copy) 111s - $ hg checkout -C 111s - updating to active bookmark master 111s - cloning subrepo hgsub from $TESTTMP/hgsub 111s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 111s - $ cd .. 111s -pull shall bring .hgsub entry which was added to the git repo 111s - $ cat hgrepo/.hgsub 111s - hgsub = ../hgsub 111s - subrepo1 = [git]../gitsubrepo 111s - xyz/subrepo2 = [git]../gitsubrepo 111s -.hgsubstate shall list revision of the subrepo added through git repo 111s - $ cat hgrepo/.hgsubstate 111s - 481ec30d580f333ae3a77f94c973ce37b69d5bda hgsub 111s - 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 111s - aabf7cd015089aff0b84596e69aa37b24a3d090a xyz/subrepo2 111s - 111s -4. Try changing the subrepos from the Mercurial side 111s - 111s - $ cd hgrepo 111s - $ cat >> .hgsub < subrepo2 = [git]../gitsubrepo 111s - > EOF 111s - $ git clone ../gitsubrepo subrepo2 111s - Cloning into 'subrepo2'... 111s - done. 111s - $ fn_hg_commit -m 'some stuff' 111s - $ hg push 111s - pushing to $TESTTMP/repo.git 111s - no changes made to subrepo hgsub since last push to $TESTTMP/hgsub 111s - searching for changes 111s - adding objects 111s - remote: found 0 deltas to reuse 111s - added 1 commits with 1 trees and 1 blobs 111s - updating reference refs/heads/master 111s - $ cd .. 111s - 111s -5. But we actually do something quite weird in this case: If a 111s -.gitmodules file exists in the repository, it always wins! In this 111s -case, we break the bidirectional convention, and modify the repository 111s -data. That's odd, so show it: 111s - 111s - $ hg id hgrepo 111s - 42c46c7eef3a default/master/tip master 111s - $ hg clone -U repo.git hgrepo2 111s - importing 6 git commits 111s - new changesets e532b2bfda10:42c46c7eef3a (6 drafts) 111s - $ hg -R hgrepo2 up :master 111s - Cloning into '$TESTTMP/hgrepo2/subrepo1'... 111s - done. 111s - cloning subrepo hgsub from $TESTTMP/hgsub 111s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 111s - checking out detached HEAD in subrepository "subrepo1" 111s - check out a git branch if you intend to make changes 111s - Cloning into '$TESTTMP/hgrepo2/subrepo2'... 111s - done. 111s - Cloning into '$TESTTMP/hgrepo2/xyz/subrepo2'... 111s - done. 111s - cloning subrepo subrepo2 from $TESTTMP/gitsubrepo 111s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 111s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 111s - 111s -We retained bidirectionality! 111s - 111s - $ git diff --stat hgrepo/.hgsub hgrepo2/.hgsub 111s - $ hg id hgrepo 111s - 42c46c7eef3a default/master/tip master 111s - $ hg id hgrepo2 111s - 42c46c7eef3a default/master/tip master 111s 111s ERROR: test-subrepos.t output changed 112s ! 112s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-extra.t 112s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-extra.t.err 112s @@ -13,189 +13,99 @@ 112s $ cd .. 112s $ hg clone gitrepo hgrepo 112s importing 1 git commits 112s - new changesets aa9eb6424386 (1 drafts) 112s - updating to bookmark not-master 112s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 112s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 112s + ** which supports versions 6.9 of Mercurial. 112s + ** Please disable "hggit" and try your action again. 112s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 112s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 112s + ** Mercurial Distributed SCM (version 7.0.1) 112s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 112s + Traceback (most recent call last): 112s + File "/usr/bin/hg", line 51, in 112s + dispatch.run() 112s + ~~~~~~~~~~~~^^ 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 112s + status = dispatch(req) 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 112s + status = _rundispatch(req) 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 112s + ret = _runcatch(req) or 0 112s + ~~~~~~~~~^^^^^ 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 112s + return _callcatch(ui, _runcatchfunc) 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 112s + return scmutil.callcatch(ui, func) 112s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 112s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 112s + return func() 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 112s + return _dispatch(req) 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 112s + return runcommand( 112s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 112s + ) 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 112s + ret = _runcommand(ui, options, cmd, d) 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 112s + return cmdfunc() 112s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 112s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 112s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 112s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 112s + return func(*args, **kwargs) 112s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 112s + r = hg.clone( 112s + ui, 112s + ...<11 lines>... 112s + depth=opts.get('depth') or None, 112s + ) 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 112s + srcpeer, destpeer = orig(*args, **opts) 112s + ~~~~^^^^^^^^^^^^^^^ 112s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 112s + exchange.pull( 112s + ~~~~~~~~~~~~~^ 112s + local, 112s + ^^^^^^ 112s + ...<5 lines>... 112s + depth=depth, 112s + ^^^^^^^^^^^^ 112s + ) 112s + ^ 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 112s + return f(*args, **kwargs) 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 112s + pullop.cgresult = repo.githandler.fetch(remote, heads) 112s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 112s + imported = self.import_git_objects( 112s + b'pull', 112s + ...<2 lines>... 112s + heads=heads, 112s + ) 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 112s + self.import_git_commit( 112s + ~~~~~~~~~~~~~~~~~~~~~~^ 112s + command, 112s + ^^^^^^^^ 112s + self.git[commit.sha], 112s + ^^^^^^^^^^^^^^^^^^^^^ 112s + commit.phase, 112s + ^^^^^^^^^^^^^ 112s + ) 112s + ^ 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 112s + files, gitlinks, git_renames = self.get_files_changed( 112s + ~~~~~~~~~~~~~~~~~~~~~~^ 112s + commit, detect_renames 112s + ^^^^^^^^^^^^^^^^^^^^^^ 112s + ) 112s + ^ 112s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 112s + oldfile, oldmode, oldsha = change.old 112s + ^^^^^^^^^^^^^^^^^^^^^^^^ 112s + TypeError: cannot unpack non-iterable NoneType object 112s + [1] 112s $ cd hgrepo 112s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 112s $ hg mv a b 112s - $ fn_hg_commit -mb 112s - $ hg up 0 112s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 112s - (leaving bookmark not-master) 112s - $ touch c 112s - $ hg add c 112s - $ fn_hg_commit -mc 112s - 112s -Rebase will add a rebase_source 112s - 112s - $ hg --config extensions.rebase= rebase -s 1 -d 2 112s - rebasing 1:4c7da7adf18b * (glob) 112s - saved backup bundle to $TESTTMP/*.hg (glob) 112s - $ hg up 2 112s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 112s - 112s -Add a commit with multiple extra fields 112s - $ hg bookmark b1 112s - $ touch d 112s - $ hg add d 112s - $ fn_hg_commitextra --field zzzzzzz=datazzz --field aaaaaaa=dataaaa 112s - $ hg log --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 112s - @ 3 f01651cfcc9337fbd9700d5018ca637a2911ed28 112s - | aaaaaaa=dataaaa branch=default zzzzzzz=datazzz 112s - | 112s - o 2 03f4cf3c429050e2204fb2bda3a0f93329bdf4fd b 112s - | branch=default rebase_source=4c7da7adf18b785726a7421ef0d585bb5762990d 112s - | 112s - o 1 a735dc0cd7cc0ccdbc16cfa4326b19c707c360f4 c 112s - | branch=default 112s - | 112s - o 0 aa9eb6424386df2b0638fe6f480c3767fdd0e6fd a 112s - branch=default hg-git-rename-source=git 112s - 112s - 112s - $ hg push -r b1 112s - pushing to $TESTTMP/gitrepo 112s - searching for changes 112s - adding objects 112s - remote: found 0 deltas to reuse 112s - added 3 commits with 3 trees and 0 blobs 112s - adding reference refs/heads/b1 112s - 112s - $ hg bookmark b2 112s - $ hg mv c c2 112s - $ hg mv d d2 112s - $ fn_hg_commitextra --field yyyyyyy=datayyy --field bbbbbbb=databbb 112s - 112s -Test some nutty filenames 112s - $ hg book b3 112s -#if windows 112s - $ hg mv c2 'c2 => c3' 112s - abort: filename contains '>', which is reserved on Windows: "c2 => c3" 112s - [255] 112s - $ hg mv c2 c3 112s - $ fn_hg_commit -m 'dummy commit' 112s - $ hg mv c3 c4 112s - $ fn_hg_commit -m 'dummy commit' 112s -#else 112s - $ hg mv c2 'c2 => c3' 112s - warning: filename contains '>', which is reserved on Windows: 'c2 => c3' 112s - $ fn_hg_commit -m 'test filename with arrow' 112s - $ hg mv 'c2 => c3' 'c3 => c4' 112s - warning: filename contains '>', which is reserved on Windows: 'c3 => c4' 112s - $ fn_hg_commit -m 'test filename with arrow 2' 112s - $ hg log --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" -l 3 --config "experimental.graphstyle.missing=|" 112s - @ 6 bca4ba69a6844c133b069e227dfa043d41e3c197 test filename with arrow 2 112s - | branch=default 112s - | 112s - o 5 864caad1f3493032f8d06f44a89dc9f1c039b09f test filename with arrow 112s - | branch=default 112s - | 112s - o 4 58f855ae26f4930ce857e648d3dd949901cce817 112s - | bbbbbbb=databbb branch=default yyyyyyy=datayyy 112s - | 112s -#endif 112s - $ hg push -r b2 -r b3 112s - pushing to $TESTTMP/gitrepo 112s - searching for changes 112s - adding objects 112s - remote: found 0 deltas to reuse 112s - added 3 commits with 3 trees and 0 blobs 112s - adding reference refs/heads/b2 112s - adding reference refs/heads/b3 112s - 112s - $ cd ../gitrepo 112s - $ git cat-file commit b1 112s - tree 1b773a2eb70f29397356f8069c285394835ff85a 112s - parent 54776dace5849bdf273fb26737a48ef64804909d 112s - author test 1167609613 +0000 112s - committer test 1167609613 +0000 112s - HG:extra aaaaaaa:dataaaa 112s - HG:extra zzzzzzz:datazzz 112s - 112s - 112s - 112s - $ git cat-file commit b2 112s - tree 34ad62c6d6ad9464bfe62db5b3d2fa16aaa9fa9e 112s - parent 15beadd92324c9b88060a4ec4ffb350f988d7075 112s - author test 1167609614 +0000 112s - committer test 1167609614 +0000 112s - HG:rename c:c2 112s - HG:rename d:d2 112s - HG:extra bbbbbbb:databbb 112s - HG:extra yyyyyyy:datayyy 112s - 112s - 112s - 112s -#if no-windows 112s - $ git cat-file commit b3 112s - tree e63df52695f9b06e54b37e7ef60d0c43994de620 112s - parent 5cafe2555a0666fcf661a3943277a9812a694a98 112s - author test 1167609616 +0000 112s - committer test 1167609616 +0000 112s - HG:rename c2%20%3D%3E%20c3:c3%20%3D%3E%20c4 112s - 112s - test filename with arrow 2 112s -#endif 112s - $ cd ../gitrepo 112s - $ git checkout b1 112s - Switched to branch 'b1' 112s - $ commit_sha=$(git rev-parse HEAD) 112s - $ tree_sha=$(git rev-parse HEAD^{tree}) 112s - 112s -There's no way to create a Git repo with extra metadata via the CLI. Dulwich 112s -lets you do that, though. 112s - 112s - >>> from dulwich.objects import Commit 112s - >>> from dulwich.porcelain import open_repo 112s - >>> repo = open_repo('.') 112s - >>> c = Commit() 112s - >>> c.author = b'test ' 112s - >>> c.author_time = 0 112s - >>> c.author_timezone = 0 112s - >>> c.committer = c.author 112s - >>> c.commit_time = 0 112s - >>> c.commit_timezone = 0 112s - >>> c.parents = [b'$commit_sha'] 112s - >>> c.tree = b'$tree_sha' 112s - >>> c.message = b'extra commit\n' 112s - >>> c.extra.extend([(b'zzz:zzz', b'data:zzz'), (b'aaa:aaa', b'data:aaa'), 112s - ... (b'HG:extra', b'hgaaa:dataaaa'), 112s - ... (b'HG:extra', b'hgzzz:datazzz')]) 112s - >>> repo.object_store.add_object(c) 112s - >>> repo.refs.set_if_equals(b'refs/heads/master', None, c.id) 112s - True 112s - 112s - $ git cat-file commit master 112s - tree 1b773a2eb70f29397356f8069c285394835ff85a 112s - parent 15beadd92324c9b88060a4ec4ffb350f988d7075 112s - author test 0 +0000 112s - committer test 0 +0000 112s - zzz:zzz data:zzz 112s - aaa:aaa data:aaa 112s - HG:extra hgaaa:dataaaa 112s - HG:extra hgzzz:datazzz 112s - 112s - extra commit 112s - 112s - $ cd .. 112s - $ hg clone -qU gitrepo hgrepo2 112s - $ cd hgrepo2 112s - $ hg log -G -r :5 -T "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 112s - o 5 58f855ae26f4930ce857e648d3dd949901cce817 112s - | bbbbbbb=databbb branch=default yyyyyyy=datayyy 112s - | 112s - | o 4 90acc8c23fcfaeb0930c03c849923a696fd9013c extra commit 112s - |/ GIT0-zzz%3Azzz=data%3Azzz GIT1-aaa%3Aaaa=data%3Aaaa branch=default hgaaa=dataaaa hgzzz=datazzz 112s - | 112s - o 3 f01651cfcc9337fbd9700d5018ca637a2911ed28 112s - | aaaaaaa=dataaaa branch=default zzzzzzz=datazzz 112s - | 112s - o 2 03f4cf3c429050e2204fb2bda3a0f93329bdf4fd b 112s - | branch=default rebase_source=4c7da7adf18b785726a7421ef0d585bb5762990d 112s - | 112s - o 1 a735dc0cd7cc0ccdbc16cfa4326b19c707c360f4 c 112s - | branch=default 112s - | 112s - o 0 aa9eb6424386df2b0638fe6f480c3767fdd0e6fd a 112s - branch=default hg-git-rename-source=git 112s - 112s 112s ERROR: test-extra.t output changed 115s ! 115s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-bookmark-workflow.t 115s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-bookmark-workflow.t.err 115s @@ -77,149 +77,99 @@ 115s 0 3442585be8a6 "add alpha" bookmarks: [] 115s $ cd .. 115s $ hg clone -q gitremoterepo hggitlocalrepo --config hggit.usephases=True 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 2046, in clone 115s + r = hg.clone( 115s + ui, 115s + ...<11 lines>... 115s + depth=opts.get('depth') or None, 115s + ) 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 115s + srcpeer, destpeer = orig(*args, **opts) 115s + ~~~~^^^^^^^^^^^^^^^ 115s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 115s + exchange.pull( 115s + ~~~~~~~~~~~~~^ 115s + local, 115s + ^^^^^^ 115s + ...<5 lines>... 115s + depth=depth, 115s + ^^^^^^^^^^^^ 115s + ) 115s + ^ 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 115s + return f(*args, **kwargs) 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 115s + pullop.cgresult = repo.githandler.fetch(remote, heads) 115s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 115s + imported = self.import_git_objects( 115s + b'pull', 115s + ...<2 lines>... 115s + heads=heads, 115s + ) 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 115s + self.import_git_commit( 115s + ~~~~~~~~~~~~~~~~~~~~~~^ 115s + command, 115s + ^^^^^^^^ 115s + self.git[commit.sha], 115s + ^^^^^^^^^^^^^^^^^^^^^ 115s + commit.phase, 115s + ^^^^^^^^^^^^^ 115s + ) 115s + ^ 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 115s + files, gitlinks, git_renames = self.get_files_changed( 115s + ~~~~~~~~~~~~~~~~~~~~~~^ 115s + commit, detect_renames 115s + ^^^^^^^^^^^^^^^^^^^^^^ 115s + ) 115s + ^ 115s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 115s + oldfile, oldmode, oldsha = change.old 115s + ^^^^^^^^^^^^^^^^^^^^^^^^ 115s + TypeError: cannot unpack non-iterable NoneType object 115s + [1] 115s $ cd hggitlocalrepo 115s + $TESTTMP.sh: 78: cd: can't cd to hggitlocalrepo 115s $ hggitstate 115s - 3 03769a650ded 55b133e1d558 "add delta" bookmarks: [master] 115s - 2 ca33a262eb46 d338971a96e2 "add gamma" bookmarks: [] 115s - 1 7fe02317c63d 9497a4ee62e1 "add beta" bookmarks: [b1] 115s - 0 ff7a2f2d8d70 7eeab2ea75ec "add alpha" bookmarks: [] 115s - 115s -Make sure that master is public 115s - $ hg phase -r master 115s - 3: public 115s - $ cd .. 115s - 115s -No changes 115s - $ cd purehglocalrepo 115s - $ hg incoming -B 115s - comparing with $TESTTMP/hgremoterepo 115s - searching for changed bookmarks 115s - no changed bookmarks found 115s - [1] 115s - $ hg outgoing 115s - comparing with $TESTTMP/hgremoterepo 115s - searching for changes 115s - no changes found 115s - [1] 115s - $ hg outgoing -B 115s - comparing with $TESTTMP/hgremoterepo 115s - searching for changed bookmarks 115s - no changed bookmarks found 115s - [1] 115s - $ hg push 115s - pushing to $TESTTMP/hgremoterepo 115s - searching for changes 115s - no changes found 115s - [1] 115s - $ cd .. 115s - $ cd hggitlocalrepo 115s - $ hg incoming -B 115s - comparing with $TESTTMP/gitremoterepo 115s - searching for changed bookmarks 115s - no changed bookmarks found 115s - [1] 115s - $ hg outgoing 115s - comparing with $TESTTMP/gitremoterepo 115s - searching for changes 115s - no changes found 115s - [1] 115s - $ hg outgoing -B 115s - comparing with $TESTTMP/gitremoterepo 115s - searching for changed bookmarks 115s - no changed bookmarks found 115s - [1] 115s - $ hg push 115s - pushing to $TESTTMP/gitremoterepo 115s - searching for changes 115s - no changes found 115s - [1] 115s - $ cd .. 115s - 115s -Bookmarks on existing revs: 115s -- change b1 on local repo 115s -- introduce b2 on local repo 115s -- introduce b3 on remote repo 115s -Bookmarks on new revs 115s -- introduce b4 on a new rev on the remote 115s - $ cd hgremoterepo 115s - $ hg bookmark -r master b3 115s - $ hg bookmark -r master b4 115s - $ hg update -q b4 115s - $ echo epsilon > epsilon; hg add epsilon; hgcommit -m 'add epsilon' 115s - $ hgstate 115s - 4 d979bb8e0fbb "add epsilon" bookmarks: [b4] 115s - 3 fc2664cac217 "add delta" bookmarks: [b3 master] 115s - 2 d85ced7ae9d6 "add gamma" bookmarks: [] 115s - 1 7bcd915dc873 "add beta" bookmarks: [b1] 115s - 0 3442585be8a6 "add alpha" bookmarks: [] 115s - $ cd .. 115s - $ cd purehglocalrepo 115s - $ hg bookmark -fr 2 b1 115s - $ hg bookmark -r 0 b2 115s - $ hgstate 115s - 3 fc2664cac217 "add delta" bookmarks: [master] 115s - 2 d85ced7ae9d6 "add gamma" bookmarks: [b1] 115s - 1 7bcd915dc873 "add beta" bookmarks: [] 115s - 0 3442585be8a6 "add alpha" bookmarks: [b2] 115s - $ hg incoming -B 115s - comparing with $TESTTMP/hgremoterepo 115s - searching for changed bookmarks 115s - b3 fc2664cac217 115s - b4 d979bb8e0fbb 115s - $ hg outgoing 115s - comparing with $TESTTMP/hgremoterepo 115s - searching for changes 115s - no changes found 115s - [1] 115s -As of 2.3, Mercurial's outgoing -B doesn't actually show changed bookmarks 115s -It only shows "new" bookmarks. Thus, b1 doesn't show up. 115s -This changed in 3.4 to start showing changed and deleted bookmarks again. 115s - $ hg outgoing -B | grep -v -E -w 'b1|b3|b4' 115s - comparing with $TESTTMP/hgremoterepo 115s - searching for changed bookmarks 115s - b2 3442585be8a6 115s - $ cd .. 115s - 115s - $ cd gitremoterepo 115s - $ git branch b3 master 115s - $ git checkout -b b4 master 115s - Switched to a new branch 'b4' 115s - $ echo epsilon > epsilon 115s - $ git add epsilon 115s - $ gitcommit -m 'add epsilon' 115s - $ gitstate 115s - fcfd2c0 "add epsilon" refs: (*b4) (glob) 115s - 55b133e "add delta" refs: (master, b3) 115s - d338971 "add gamma" refs: 115s - 9497a4e "add beta" refs: (b1) 115s - 7eeab2e "add alpha" refs: 115s - $ cd .. 115s - $ cd hggitlocalrepo 115s - $ hg bookmark -fr 2 b1 115s - $ hg bookmark -r 0 b2 115s - $ hgstate 115s - 3 03769a650ded "add delta" bookmarks: [master] 115s - 2 ca33a262eb46 "add gamma" bookmarks: [b1] 115s - 1 7fe02317c63d "add beta" bookmarks: [] 115s - 0 ff7a2f2d8d70 "add alpha" bookmarks: [b2] 115s - $ hg incoming -B 115s - comparing with $TESTTMP/gitremoterepo 115s - searching for changed bookmarks 115s - b3 03769a650ded 115s - b4 fcfd2c0262db 115s - $ hg outgoing 115s - comparing with $TESTTMP/gitremoterepo 115s - searching for changes 115s - no changes found 115s - [1] 115s -As of 2.3, Mercurial's outgoing -B doesn't actually show changed bookmarks 115s -It only shows "new" bookmarks. Thus, b1 doesn't show up. 115s -This changed in 3.4 to start showing changed and deleted bookmarks again. 115s - $ hg outgoing -B 115s - comparing with $TESTTMP/gitremoterepo 115s - searching for changed bookmarks 115s - b1 ca33a262eb46 115s - b2 ff7a2f2d8d70 115s - b3 115s - b4 115s - $ cd .. 115s 115s ERROR: test-bookmark-workflow.t output changed 123s ! 123s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-illegal-contents.t 123s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-illegal-contents.t.err 123s @@ -23,19 +23,132 @@ 123s warning: skipping invalid path '.git/hooks/post-update' 123s warning: skipping invalid path 'bar/.gi\xe2\x80\x8ct/wut' 123s warning: skipping invalid path 'foo/git~100/wat' 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 123s + repo.githandler.export_commits() 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 123s + self.export_git_objects() 123s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 123s + packer.pack(synchronous=True) 123s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 123s + _process_batch(self.ui, self.object_store, todo) 123s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 123s + object_store._remove_loose_object(obj.id) 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 123s + [1] 123s $ GIT_DIR=.hg/git git ls-tree -r --name-only master 123s - this/is/safe 123s + fatal: Not a valid object name master 123s + [128] 123s $ hg debug-remove-hggit-state 123s clearing out the git cache data 123s $ hg gexport --config hggit.invalidpaths=keep 123s warning: path '.git/hooks/post-update' contains an invalid path component 123s warning: path 'bar/.gi\xe2\x80\x8ct/wut' contains an invalid path component 123s warning: path 'foo/git~100/wat' contains an invalid path component 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 123s + repo.githandler.export_commits() 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 123s + self.export_git_objects() 123s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 123s + packer.pack(synchronous=True) 123s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 123s + _process_batch(self.ui, self.object_store, todo) 123s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 123s + object_store._remove_loose_object(obj.id) 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 123s + [1] 123s $ GIT_DIR=.hg/git git ls-tree -r --name-only master 123s - .git/hooks/post-update 123s - "bar/.gi\342\200\214t/wut" 123s - foo/git~100/wat 123s - this/is/safe 123s + fatal: Not a valid object name master 123s + [128] 123s $ cd .. 123s 123s $ rm -rf hg 123s @@ -53,8 +166,66 @@ 123s $ hg book master 123s $ hg gexport 123s warning: skipping invalid path 'nested/.git/hooks/post-update' 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 123s + repo.githandler.export_commits() 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 123s + self.export_git_objects() 123s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 123s + packer.pack(synchronous=True) 123s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 123s + _process_batch(self.ui, self.object_store, todo) 123s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 123s + object_store._remove_loose_object(obj.id) 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 123s + [1] 123s $ git clone .hg/git git 123s Cloning into 'git'... 123s + warning: You appear to have cloned an empty repository. 123s done. 123s $ rm -rf git 123s 123s @@ -70,17 +241,74 @@ 123s 123s $ hg --config hggit.invalidpaths=keep gexport 123s warning: path 'nested/.git/hooks/post-update' contains an invalid path component 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 123s + repo.githandler.export_commits() 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 123s + self.export_git_objects() 123s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 123s + packer.pack(synchronous=True) 123s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 123s + _process_batch(self.ui, self.object_store, todo) 123s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 123s + object_store._remove_loose_object(obj.id) 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 123s + [1] 123s $ cd .. 123s $ # different git versions give different return codes 123s $ git clone hg/.hg/git git || true 123s Cloning into 'git'... 123s - done. 123s - error: [Ii]nvalid path 'nested/\.git/hooks/post-update' (re) 123s + warning: You appear to have cloned an empty repository. 123s fatal: unable to checkout working tree (?) 123s warning: Clone succeeded, but checkout failed. (?) 123s You can inspect what was checked out with 'git status' (?) 123s and retry( the checkout)? with '.*' (re) (?) 123s (?) 123s + done. 123s 123s Now check something that case-folds to .git, which might let you own 123s Mac users: 123s @@ -100,6 +328,63 @@ 123s $ hg ci -m "also refuse to export this" 123s $ hg book master 123s $ hg gexport 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 123s + repo.githandler.export_commits() 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 123s + self.export_git_objects() 123s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 123s + packer.pack(synchronous=True) 123s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 123s + _process_batch(self.ui, self.object_store, todo) 123s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 123s + object_store._remove_loose_object(obj.id) 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 123s + [1] 123s $ cd .. 123s 123s And the NTFS case: 123s @@ -119,6 +404,63 @@ 123s $ hg book master 123s $ hg gexport 123s warning: skipping invalid path 'GIT~1/hooks/post-checkout' 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 123s + repo.githandler.export_commits() 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 123s + self.export_git_objects() 123s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 123s + packer.pack(synchronous=True) 123s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 123s + _process_batch(self.ui, self.object_store, todo) 123s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 123s + object_store._remove_loose_object(obj.id) 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 123s + [1] 123s $ cd .. 123s 123s Now check a Git repository containing a Mercurial repository, which 123s @@ -134,29 +476,294 @@ 123s $ cd .. 123s $ hg clone --config hggit.invalidpaths=abort git hg 123s importing 1 git commits 123s - abort: invalid path 'nested/.hg/00changelog.i' rejected by configuration 123s - (see 'hg help config.hggit.invalidpaths for details) 123s - [255] 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 123s + r = hg.clone( 123s + ui, 123s + ...<11 lines>... 123s + depth=opts.get('depth') or None, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 123s + srcpeer, destpeer = orig(*args, **opts) 123s + ~~~~^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 123s + exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + local, 123s + ^^^^^^ 123s + ...<5 lines>... 123s + depth=depth, 123s + ^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 123s + imported = self.import_git_objects( 123s + b'pull', 123s + ...<2 lines>... 123s + heads=heads, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 123s + self.import_git_commit( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + command, 123s + ^^^^^^^^ 123s + self.git[commit.sha], 123s + ^^^^^^^^^^^^^^^^^^^^^ 123s + commit.phase, 123s + ^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 123s + files, gitlinks, git_renames = self.get_files_changed( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + commit, detect_renames 123s + ^^^^^^^^^^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 123s + oldfile, oldmode, oldsha = change.old 123s + ^^^^^^^^^^^^^^^^^^^^^^^^ 123s + TypeError: cannot unpack non-iterable NoneType object 123s + [1] 123s $ rm -rf hg 123s $ hg clone --config hggit.invalidpaths=keep git hg 123s importing 1 git commits 123s - warning: path 'nested/.hg/00changelog.i' contains an invalid path component 123s - warning: path 'nested/.hg/requires' contains an invalid path component 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s warning: path 'nested/.hg/store/requires' contains an invalid path component (?) 123s - new changesets [0-9a-f]{12,12} \(1 drafts\) (re) 123s warning: path 'nested/.hg/store/requires' is within a nested repository, which Mercurial cannot check out. (?) 123s - updating to bookmark master 123s - abort: path 'nested/.hg/00changelog.i' is inside nested repo 'nested' 123s - [10] 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 123s + r = hg.clone( 123s + ui, 123s + ...<11 lines>... 123s + depth=opts.get('depth') or None, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 123s + srcpeer, destpeer = orig(*args, **opts) 123s + ~~~~^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 123s + exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + local, 123s + ^^^^^^ 123s + ...<5 lines>... 123s + depth=depth, 123s + ^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 123s + imported = self.import_git_objects( 123s + b'pull', 123s + ...<2 lines>... 123s + heads=heads, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 123s + self.import_git_commit( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + command, 123s + ^^^^^^^^ 123s + self.git[commit.sha], 123s + ^^^^^^^^^^^^^^^^^^^^^ 123s + commit.phase, 123s + ^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 123s + files, gitlinks, git_renames = self.get_files_changed( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + commit, detect_renames 123s + ^^^^^^^^^^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 123s + oldfile, oldmode, oldsha = change.old 123s + ^^^^^^^^^^^^^^^^^^^^^^^^ 123s + TypeError: cannot unpack non-iterable NoneType object 123s + [1] 123s $ rm -rf hg 123s $ hg clone git hg 123s importing 1 git commits 123s - warning: skipping invalid path 'nested/.hg/00changelog.i' 123s - warning: skipping invalid path 'nested/.hg/requires' 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s warning: skipping invalid path 'nested/.hg/store/requires' (?) 123s - new changesets 3ea18a67c0e6 (1 drafts) 123s - updating to bookmark master 123s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 123s + r = hg.clone( 123s + ui, 123s + ...<11 lines>... 123s + depth=opts.get('depth') or None, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 123s + srcpeer, destpeer = orig(*args, **opts) 123s + ~~~~^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 123s + exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + local, 123s + ^^^^^^ 123s + ...<5 lines>... 123s + depth=depth, 123s + ^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 123s + imported = self.import_git_objects( 123s + b'pull', 123s + ...<2 lines>... 123s + heads=heads, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 123s + self.import_git_commit( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + command, 123s + ^^^^^^^^ 123s + self.git[commit.sha], 123s + ^^^^^^^^^^^^^^^^^^^^^ 123s + commit.phase, 123s + ^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 123s + files, gitlinks, git_renames = self.get_files_changed( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + commit, detect_renames 123s + ^^^^^^^^^^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 123s + oldfile, oldmode, oldsha = change.old 123s + ^^^^^^^^^^^^^^^^^^^^^^^^ 123s + TypeError: cannot unpack non-iterable NoneType object 123s + [1] 123s $ cd .. 123s 123s Now check a Git repository containing paths with carriage return and 123s @@ -172,22 +779,288 @@ 123s $ cd .. 123s $ hg clone --config hggit.invalidpaths=abort git hg 123s importing 1 git commits 123s - abort: invalid path 'Icon\r' rejected by configuration 123s - (see 'hg help config.hggit.invalidpaths for details) 123s - [255] 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 123s + r = hg.clone( 123s + ui, 123s + ...<11 lines>... 123s + depth=opts.get('depth') or None, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 123s + srcpeer, destpeer = orig(*args, **opts) 123s + ~~~~^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 123s + exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + local, 123s + ^^^^^^ 123s + ...<5 lines>... 123s + depth=depth, 123s + ^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 123s + imported = self.import_git_objects( 123s + b'pull', 123s + ...<2 lines>... 123s + heads=heads, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 123s + self.import_git_commit( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + command, 123s + ^^^^^^^^ 123s + self.git[commit.sha], 123s + ^^^^^^^^^^^^^^^^^^^^^ 123s + commit.phase, 123s + ^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 123s + files, gitlinks, git_renames = self.get_files_changed( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + commit, detect_renames 123s + ^^^^^^^^^^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 123s + oldfile, oldmode, oldsha = change.old 123s + ^^^^^^^^^^^^^^^^^^^^^^^^ 123s + TypeError: cannot unpack non-iterable NoneType object 123s + [1] 123s $ hg clone --config hggit.invalidpaths=keep git hg 123s importing 1 git commits 123s - warning: skipping invalid path 'Icon\r' 123s - warning: skipping invalid path 'the\nfile' 123s - new changesets 8354c06a5842 (1 drafts) 123s - updating to bookmark master 123s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 123s + r = hg.clone( 123s + ui, 123s + ...<11 lines>... 123s + depth=opts.get('depth') or None, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 123s + srcpeer, destpeer = orig(*args, **opts) 123s + ~~~~^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 123s + exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + local, 123s + ^^^^^^ 123s + ...<5 lines>... 123s + depth=depth, 123s + ^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 123s + imported = self.import_git_objects( 123s + b'pull', 123s + ...<2 lines>... 123s + heads=heads, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 123s + self.import_git_commit( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + command, 123s + ^^^^^^^^ 123s + self.git[commit.sha], 123s + ^^^^^^^^^^^^^^^^^^^^^ 123s + commit.phase, 123s + ^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 123s + files, gitlinks, git_renames = self.get_files_changed( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + commit, detect_renames 123s + ^^^^^^^^^^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 123s + oldfile, oldmode, oldsha = change.old 123s + ^^^^^^^^^^^^^^^^^^^^^^^^ 123s + TypeError: cannot unpack non-iterable NoneType object 123s + [1] 123s $ rm -rf hg 123s $ hg clone git hg 123s importing 1 git commits 123s - warning: skipping invalid path 'Icon\r' 123s - warning: skipping invalid path 'the\nfile' 123s - new changesets 8354c06a5842 (1 drafts) 123s - updating to bookmark master 123s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 123s - 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + dispatch.run() 123s + ~~~~~~~~~~~~^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 123s + status = dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 123s + status = _rundispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 123s + ret = _runcatch(req) or 0 123s + ~~~~~~~~~^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 123s + return _callcatch(ui, _runcatchfunc) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 123s + return scmutil.callcatch(ui, func) 123s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 123s + return func() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 123s + return _dispatch(req) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 123s + return runcommand( 123s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 123s + ) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 123s + ret = _runcommand(ui, options, cmd, d) 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 123s + return cmdfunc() 123s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 123s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 123s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 123s + return func(*args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 123s + r = hg.clone( 123s + ui, 123s + ...<11 lines>... 123s + depth=opts.get('depth') or None, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 123s + srcpeer, destpeer = orig(*args, **opts) 123s + ~~~~^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 123s + exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + local, 123s + ^^^^^^ 123s + ...<5 lines>... 123s + depth=depth, 123s + ^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 123s + imported = self.import_git_objects( 123s + b'pull', 123s + ...<2 lines>... 123s + heads=heads, 123s + ) 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 123s + self.import_git_commit( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + command, 123s + ^^^^^^^^ 123s + self.git[commit.sha], 123s + ^^^^^^^^^^^^^^^^^^^^^ 123s + commit.phase, 123s + ^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 123s + files, gitlinks, git_renames = self.get_files_changed( 123s + ~~~~~~~~~~~~~~~~~~~~~~^ 123s + commit, detect_renames 123s + ^^^^^^^^^^^^^^^^^^^^^^ 123s + ) 123s + ^ 123s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 123s + oldfile, oldmode, oldsha = change.old 123s + ^^^^^^^^^^^^^^^^^^^^^^^^ 123s + TypeError: cannot unpack non-iterable NoneType object 123s + [1] 123s + 123s 123s ERROR: test-illegal-contents.t output changed 123s ! 123s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-remote.t 123s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-remote.t.err 123s @@ -27,192 +27,100 @@ 123s 123s $ hg clone --config hggit.usephases=True -U gitrepo hgrepo 123s importing 4 git commits 123s - new changesets ff7a2f2d8d70:25eed24f5e8f (1 drafts) 123s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 123s + ** which supports versions 6.9 of Mercurial. 123s + ** Please disable "hggit" and try your action again. 123s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 123s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 123s + ** Mercurial Distributed SCM (version 7.0.1) 123s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 123s + Traceback (most recent call last): 123s + File "/usr/bin/hg", line 51, in 123s + 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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 124s + return f(*args, **kwargs) 124s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 124s + pullop.cgresult = repo.githandler.fetch(remote, heads) 124s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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.rkAkJU/build.lKB/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: 48: cd: can't cd to hgrepo 124s $ hg log -G -T '{rev}|{phase}|{bookmarks}|{tags}\n' 124s - o 3|public||thetag tip 124s - | 124s - | o 2|draft|not-master|default/not-master 124s - |/ 124s - | o 1|public|master|default/master 124s - |/ 124s - o 0|public|| 124s - 124s - $ hg phase -r 'all()' | tee $TESTTMP/after-clone 124s - 0: public 124s - 1: public 124s - 2: draft 124s - 3: public 124s - $ cat >> .hg/hgrc < [paths] 124s - > other = $TESTTMP/gitrepo/.git 124s - > other:hg-git.publish = no 124s - > EOF 124s - $ cd .. 124s - 124s -that disables publishing from that remote 124s - 124s - $ cd hgrepo 124s - $ hg phase -fd 'all()' 124s - $ hg pull other 124s - pulling from $TESTTMP/gitrepo/.git 124s - no changes found 124s - $ hg log -qr 'public()' 124s - $ hg pull -v --config hggit.usephases=True other 124s - pulling from $TESTTMP/gitrepo/.git 124s - no changes found 124s - processing commits in batches of 1000 124s - bookmark master is up-to-date 124s - bookmark not-master is up-to-date 124s - $ hg log -qr 'public()' 124s - $ cd .. 124s - 124s -but not default when enable by the global setting 124s - 124s - $ cd hgrepo 124s - $ hg phase -fd 'all()' 124s - no phases changed 124s - $ hg pull -v --config hggit.usephases=True 124s - pulling from $TESTTMP/gitrepo 124s - publishing remote HEAD 124s - publishing tag thetag 124s - no changes found 124s - processing commits in batches of 1000 124s - bookmark master is up-to-date 124s - bookmark not-master is up-to-date 124s - publishing remote HEAD 124s - publishing tag thetag 124s - 3 local changesets published 124s - $ hg phase -r 'all()' > $TESTTMP/after-pull 124s - $ cmp $TESTTMP/after-clone $TESTTMP/after-pull 124s - $ cd .. 124s - 124s -or the path option 124s - 124s - $ cd hgrepo 124s - $ hg phase -fd 'all()' 124s - $ hg pull -v --config paths.default:hg-git.publish=yes 124s - pulling from $TESTTMP/gitrepo 124s - publishing remote HEAD 124s - publishing tag thetag 124s - no changes found 124s - processing commits in batches of 1000 124s - bookmark master is up-to-date 124s - bookmark not-master is up-to-date 124s - publishing remote HEAD 124s - publishing tag thetag 124s - 3 local changesets published 124s - $ hg phase -r 'all()' > $TESTTMP/after-pull 124s - $ cmp $TESTTMP/after-clone $TESTTMP/after-pull 124s - $ cd .. 124s - 124s -but we can specify individual branches 124s - 124s - $ cd hgrepo 124s - $ hg phase -fd 'all()' 124s - $ hg pull -v --config paths.default:hg-git.publish=not-master 124s - pulling from $TESTTMP/gitrepo 124s - publishing branch not-master 124s - no changes found 124s - processing commits in batches of 1000 124s - bookmark master is up-to-date 124s - bookmark not-master is up-to-date 124s - publishing branch not-master 124s - 2 local changesets published 124s - $ hg phase -r master -r not-master -r thetag 124s - 1: draft 124s - 2: public 124s - 3: draft 124s - $ cd .. 124s - 124s -and we can also specify the tag 124s - 124s - $ cd hgrepo 124s - $ hg phase -fd 'all()' 124s - $ hg pull -v --config paths.default:hg-git.publish=thetag 124s - pulling from $TESTTMP/gitrepo 124s - publishing tag thetag 124s - no changes found 124s - processing commits in batches of 1000 124s - bookmark master is up-to-date 124s - bookmark not-master is up-to-date 124s - publishing tag thetag 124s - 2 local changesets published 124s - $ hg phase -r master -r not-master -r thetag 124s - 1: draft 124s - 2: draft 124s - 3: public 124s - $ cd .. 124s - 124s - 124s -Check multiple paths behavior 124s -============================= 124s - 124s - 124s - $ cd hgrepo 124s - $ cat >> .hg/hgrc < [paths] 124s - > multi:multi-urls = yes 124s - > multi = path://other, path://default 124s - > recursive:multi-urls = yes 124s - > recursive = path://multi, default 124s - > EOF 124s - 124s -Using multiple path works fine: 124s - 124s - 124s - $ hg pull multi --config paths.default:hg-git.publish=yes 124s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 124s - [255] 124s - 124s -Recursive multiple path are tricker, but Mercurial don't work with them either. 124s -This test exist to make sure we bail out on our own. 124s - 124s - 124s -`yes` should abort (until we implement it) 124s - 124s - $ hg pull multi --config paths.default:hg-git.publish=yes 124s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 124s - [255] 124s - 124s -`some-value` should abort (until we implement it) 124s - 124s - $ hg pull multi --config paths.default:hg-git.publish=thetag 124s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 124s - [255] 124s - 124s -`no` is fine 124s - 124s - $ hg pull multi --config paths.default:hg-git.publish=no 124s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 124s - [255] 124s - 124s - $ cd .. 124s - 124s -Check conflicting paths behavior 124s -================================ 124s - 124s - $ cd hgrepo 124s - $ cat > .hg/hgrc < [paths] 124s - > default = $TESTTMP/gitrepo 124s - > default:hg-git.publish = yes 124s - > also-default = $TESTTMP/gitrepo 124s - > EOF 124s - $ hg pull also-default 124s - pulling from $TESTTMP/gitrepo 124s - abort: different publishing configurations for the same remote location 124s - (conflicting paths: also-default, default) 124s - [255] 124s - $ hg pull --config paths.also-default:hg-git.publish=no 124s - pulling from $TESTTMP/gitrepo 124s - abort: different publishing configurations for the same remote location 124s - (conflicting paths: also-default, default) 124s - [255] 124s - $ hg pull --config paths.also-default:hg-git.publish=true 124s - pulling from $TESTTMP/gitrepo 124s - no changes found 124s - 1 local changesets published 124s - $ cd .. 124s - 124s 124s ERROR: test-phases-remote.t output changed 129s !. 129s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-octopus.t 129s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-octopus.t.err 129s @@ -63,110 +63,99 @@ 129s 129s $ hg clone gitrepo hgrepo 129s importing 8 git commits 129s - new changesets ff7a2f2d8d70:307506d6ae8a (10 drafts) 129s - updating to bookmark master 129s - 6 files updated, 0 files merged, 0 files removed, 0 files unresolved 129s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 129s + ** which supports versions 6.9 of Mercurial. 129s + ** Please disable "hggit" and try your action again. 129s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 129s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 129s + ** Mercurial Distributed SCM (version 7.0.1) 129s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 129s + Traceback (most recent call last): 129s + File "/usr/bin/hg", line 51, in 129s + dispatch.run() 129s + ~~~~~~~~~~~~^^ 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 129s + status = dispatch(req) 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 129s + status = _rundispatch(req) 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 129s + ret = _runcatch(req) or 0 129s + ~~~~~~~~~^^^^^ 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 129s + return _callcatch(ui, _runcatchfunc) 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 129s + return scmutil.callcatch(ui, func) 129s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 129s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 129s + return func() 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 129s + return _dispatch(req) 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 129s + return runcommand( 129s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 129s + ) 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 129s + ret = _runcommand(ui, options, cmd, d) 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 129s + return cmdfunc() 129s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 129s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 129s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 129s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 129s + return func(*args, **kwargs) 129s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 129s + r = hg.clone( 129s + ui, 129s + ...<11 lines>... 129s + depth=opts.get('depth') or None, 129s + ) 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 129s + srcpeer, destpeer = orig(*args, **opts) 129s + ~~~~^^^^^^^^^^^^^^^ 129s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 129s + exchange.pull( 129s + ~~~~~~~~~~~~~^ 129s + local, 129s + ^^^^^^ 129s + ...<5 lines>... 129s + depth=depth, 129s + ^^^^^^^^^^^^ 129s + ) 129s + ^ 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 129s + return f(*args, **kwargs) 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 129s + pullop.cgresult = repo.githandler.fetch(remote, heads) 129s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 129s + imported = self.import_git_objects( 129s + b'pull', 129s + ...<2 lines>... 129s + heads=heads, 129s + ) 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 129s + self.import_git_commit( 129s + ~~~~~~~~~~~~~~~~~~~~~~^ 129s + command, 129s + ^^^^^^^^ 129s + self.git[commit.sha], 129s + ^^^^^^^^^^^^^^^^^^^^^ 129s + commit.phase, 129s + ^^^^^^^^^^^^^ 129s + ) 129s + ^ 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 129s + files, gitlinks, git_renames = self.get_files_changed( 129s + ~~~~~~~~~~~~~~~~~~~~~~^ 129s + commit, detect_renames 129s + ^^^^^^^^^^^^^^^^^^^^^^ 129s + ) 129s + ^ 129s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 129s + oldfile, oldmode, oldsha = change.old 129s + ^^^^^^^^^^^^^^^^^^^^^^^^ 129s + TypeError: cannot unpack non-iterable NoneType object 129s + [1] 129s $ cd hgrepo 129s + $TESTTMP.sh: 64: cd: can't cd to hgrepo 129s $ hg log --graph --style compact | sed 's/\[.*\]//g' 129s - @ 9:7,8 307506d6ae8a 2007-01-01 00:00 +0000 test 129s - |\ Merge branches 'branch3' and 'branch4' 129s - | | 129s - | o 8:3,4 2b07220e422e 2007-01-01 00:00 +0000 test 129s - | |\ Merge branches 'branch3' and 'branch4' 129s - | | | 129s - o | | 7:5,6 ccf2d65d982c 2007-01-01 00:00 +0000 test 129s - |\ \ \ Merge branches 'branch1' and 'branch2' 129s - | | | | 129s - | o | | 6:1,2 690b40256117 2007-01-01 00:00 +0000 test 129s - | |\ \ \ Merge branches 'branch1' and 'branch2' 129s - | | | | | 129s - o | | | | 5:0 e459c0629ca4 2007-01-01 00:00 +0000 test 129s - | | | | | add delta 129s - | | | | | 129s - +-------o 4:0 e857c9a04474 2007-01-01 00:00 +0000 test 129s - | | | | add zeta 129s - | | | | 129s - +-----o 3:0 0071dec0de0e 2007-01-01 00:00 +0000 test 129s - | | | add epsilon 129s - | | | 129s - +---o 2:0 205a004356ef 2007-01-01 00:00 +0000 test 129s - | | add gamma 129s - | | 129s - | o 1 7fe02317c63d 2007-01-01 00:00 +0000 test 129s - |/ add beta 129s - | 129s - o 0 ff7a2f2d8d70 2007-01-01 00:00 +0000 test 129s - add alpha 129s - 129s - $ hg gverify -r 9 129s - verifying rev 307506d6ae8a against git commit b32ff845df61df998206b630e4370a44f9b36845 129s - $ hg gverify -r 8 129s - abort: no git commit found for rev 2b07220e422e 129s - (if this is an octopus merge, verify against the last rev) 129s - [255] 129s - 129s - $ hg debug-remove-hggit-state 129s - clearing out the git cache data 129s - $ hg push ../repo.git 129s - pushing to ../repo.git 129s - searching for changes 129s - adding objects 129s - remote: found 0 deltas to reuse 129s - added 8 commits with 8 trees and 6 blobs 129s - adding reference refs/heads/branch1 129s - adding reference refs/heads/branch2 129s - adding reference refs/heads/branch3 129s - adding reference refs/heads/branch4 129s - adding reference refs/heads/master 129s - $ cd .. 129s - 129s - $ git --git-dir=repo.git log --pretty=medium | sed s/\\.\\.\\.//g 129s - commit b32ff845df61df998206b630e4370a44f9b36845 129s - Merge: 9ac68f9 7e9cd9f e695849 129s - Author: test 129s - Date: Mon Jan 1 00:00:15 2007 +0000 129s - 129s - Merge branches 'branch3' and 'branch4' 129s - 129s - commit 9ac68f982ae7426d9597ff16c74afb4e6053c582 129s - Merge: d40f375 9497a4e e5023f9 129s - Author: test 129s - Date: Mon Jan 1 00:00:15 2007 +0000 129s - 129s - Merge branches 'branch1' and 'branch2' 129s - 129s - commit d40f375a81b7d033e92cbad89487115fe2dd472f 129s - Author: test 129s - Date: Mon Jan 1 00:00:15 2007 +0000 129s - 129s - add delta 129s - 129s - commit e695849087f6c320c1a447620492b29a82ca41b1 129s - Author: test 129s - Date: Mon Jan 1 00:00:14 2007 +0000 129s - 129s - add zeta 129s - 129s - commit 7e9cd9f90b6d2c60579375eb796ce706d2d8bbe6 129s - Author: test 129s - Date: Mon Jan 1 00:00:13 2007 +0000 129s - 129s - add epsilon 129s - 129s - commit e5023f9e5cb24fdcec7b6c127cec45d8888e35a9 129s - Author: test 129s - Date: Mon Jan 1 00:00:12 2007 +0000 129s - 129s - add gamma 129s - 129s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 129s - Author: test 129s - Date: Mon Jan 1 00:00:11 2007 +0000 129s - 129s - add beta 129s - 129s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 129s - Author: test 129s - Date: Mon Jan 1 00:00:10 2007 +0000 129s - 129s - add alpha 129s 129s ERROR: test-octopus.t output changed 132s ! 132s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hook.t 132s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hook.t.err 132s @@ -41,27 +41,89 @@ 132s | preoutgoing.url=$TESTTMP/repo.git 132s | gitexport.nodes=[b'cc0ffa47c67ebcb08dc50f69afaecb5d622cc777'] 132s | gitexport.git=True 132s - searching for changes 132s - | prechangegroup.source=push 132s - | prechangegroup.git=True 132s - | prechangegroup.url=$TESTTMP/repo.git 132s - | outgoing.source=push 132s - | outgoing.git=True 132s - | outgoing.url=$TESTTMP/repo.git 132s - | outgoing.node=cc0ffa47c67ebcb08dc50f69afaecb5d622cc777 132s - | outgoing.git_node=681fb452693218a33986174228560272a6fad87a 132s - adding objects 132s - remote: found 0 deltas to reuse 132s - added 1 commits with 1 trees and 1 blobs 132s - adding reference refs/heads/master 132s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 132s + ** which supports versions 6.9 of Mercurial. 132s + ** Please disable "hggit" and try your action again. 132s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 132s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 132s + ** Mercurial Distributed SCM (version 7.0.1) 132s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 132s + Traceback (most recent call last): 132s + File "/usr/bin/hg", line 51, in 132s + dispatch.run() 132s + ~~~~~~~~~~~~^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 132s + status = dispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 132s + status = _rundispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 132s + ret = _runcatch(req) or 0 132s + ~~~~~~~~~^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 132s + return _callcatch(ui, _runcatchfunc) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 132s + return scmutil.callcatch(ui, func) 132s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 132s + return func() 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 132s + return _dispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 132s + return runcommand( 132s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 132s + ) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 132s + ret = _runcommand(ui, options, cmd, d) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 132s + return cmdfunc() 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 132s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 132s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 132s + return func(*args, **kwargs) 132s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 132s + pushop = exchange.push( 132s + repo, 132s + ...<6 lines>... 132s + opargs=opargs, 132s + ) 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 132s + return f(*args, **kwargs) 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 132s + pushop.cgresult = repo.githandler.push( 132s + ~~~~~~~~~~~~~~~~~~~~^ 132s + remote.path, revs, bookmarks, force 132s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + ) 132s + ^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 132s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 132s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 132s + all_exportable = self.export_commits() 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 132s + self.export_git_objects() 132s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 132s + packer.pack(synchronous=True) 132s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 132s + _process_batch(self.ui, self.object_store, todo) 132s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 132s + object_store._remove_loose_object(obj.id) 132s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 132s + [1] 132s 132s $ git clone -q ../repo.git ../gitrepo 132s + warning: You appear to have cloned an empty repository. 132s $ cd ../gitrepo 132s $ fn_commit git b 132s $ fn_commit git c 132s $ git push 132s To $TESTTMP/hgrepo/../repo.git 132s - 681fb45..1dab31e master -> master 132s + * [new branch] master -> master 132s $ cd ../hgrepo 132s 132s Hooks on pull? 132s @@ -71,27 +133,93 @@ 132s | gitimport.source=pull 132s | gitimport.git=True 132s | gitimport.names=[b'default'] 132s - | gitimport.refs={b'HEAD': b'1dab31e7bc9691ba42a2fe7b14680694770bc527', b'refs/heads/master': b'1dab31e7bc9691ba42a2fe7b14680694770bc527'} 132s + | gitimport.refs={b'HEAD': b'073d1514b9b792cb98ce11d76b6caa87c4887f5b', b'refs/heads/master': b'073d1514b9b792cb98ce11d76b6caa87c4887f5b'} 132s | gitimport.heads=None 132s importing 2 git commits 132s - : pretxncommit 132s - | incoming.git=True 132s - | incoming.source=pull 132s - | incoming.node=382ad5fa1d7727210384d40fa1539af52ca632c5 132s - | incoming.git_node=92150d1529ccaea34a6b36fe4144993193080499 132s - : pretxncommit 132s - | incoming.git=True 132s - | incoming.source=pull 132s - | incoming.node=892115eea5c32152e09ae4013c9a119d7b534049 132s - | incoming.git_node=1dab31e7bc9691ba42a2fe7b14680694770bc527 132s - updating bookmark master 132s - | changegroup.source=push 132s - | changegroup.git=True 132s - | changegroup.node=382ad5fa1d7727210384d40fa1539af52ca632c5 132s - | changegroup.node_last=892115eea5c32152e09ae4013c9a119d7b534049 132s - new changesets 382ad5fa1d77:892115eea5c3 (2 drafts) 132s - updating to active bookmark master 132s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 132s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 132s + ** which supports versions 6.9 of Mercurial. 132s + ** Please disable "hggit" and try your action again. 132s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 132s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 132s + ** Mercurial Distributed SCM (version 7.0.1) 132s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 132s + Traceback (most recent call last): 132s + File "/usr/bin/hg", line 51, in 132s + dispatch.run() 132s + ~~~~~~~~~~~~^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 132s + status = dispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 132s + status = _rundispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 132s + ret = _runcatch(req) or 0 132s + ~~~~~~~~~^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 132s + return _callcatch(ui, _runcatchfunc) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 132s + return scmutil.callcatch(ui, func) 132s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 132s + return func() 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 132s + return _dispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 132s + return runcommand( 132s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 132s + ) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 132s + ret = _runcommand(ui, options, cmd, d) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 132s + return cmdfunc() 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 132s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 132s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 132s + return func(*args, **kwargs) 132s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 132s + modheads = exchange.pull( 132s + ~~~~~~~~~~~~~^ 132s + repo, 132s + ^^^^^ 132s + ...<6 lines>... 132s + confirm=opts.get('confirm'), 132s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + ).cgresult 132s + ^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 132s + return f(*args, **kwargs) 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 132s + pullop.cgresult = repo.githandler.fetch(remote, heads) 132s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 132s + imported = self.import_git_objects( 132s + b'pull', 132s + ...<2 lines>... 132s + heads=heads, 132s + ) 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 132s + self.import_git_commit( 132s + ~~~~~~~~~~~~~~~~~~~~~~^ 132s + command, 132s + ^^^^^^^^ 132s + self.git[commit.sha], 132s + ^^^^^^^^^^^^^^^^^^^^^ 132s + commit.phase, 132s + ^^^^^^^^^^^^^ 132s + ) 132s + ^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 132s + files, gitlinks, git_renames = self.get_files_changed( 132s + ~~~~~~~~~~~~~~~~~~~~~~^ 132s + commit, detect_renames 132s + ^^^^^^^^^^^^^^^^^^^^^^ 132s + ) 132s + ^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 132s + oldfile, oldmode, oldsha = change.old 132s + ^^^^^^^^^^^^^^^^^^^^^^^^ 132s + TypeError: cannot unpack non-iterable NoneType object 132s + [1] 132s 132s Hooks on push? 132s 132s @@ -102,16 +230,82 @@ 132s | preoutgoing.git=True 132s | preoutgoing.source=push 132s | preoutgoing.url=$TESTTMP/repo.git 132s - | gitexport.nodes=[b'cc6164a17449d58d7811ff3918f33f89c2c83fa5', b'46737f6a4c9d8307b681cbb2e9e2e5419cc87f82'] 132s + | gitexport.nodes=[b'eb13ee910fa61c332b2d3b5eca9f0c08e6c75893', b'450aa114da3b128c1174f32eccdd55539853d173'] 132s | gitexport.git=True 132s - searching for changes 132s - | prechangegroup.source=push 132s - | prechangegroup.git=True 132s - | prechangegroup.url=$TESTTMP/repo.git 132s - adding objects 132s - remote: found 0 deltas to reuse 132s - added 2 commits with 2 trees and 2 blobs 132s - updating reference refs/heads/master 132s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 132s + ** which supports versions 6.9 of Mercurial. 132s + ** Please disable "hggit" and try your action again. 132s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 132s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 132s + ** Mercurial Distributed SCM (version 7.0.1) 132s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 132s + Traceback (most recent call last): 132s + File "/usr/bin/hg", line 51, in 132s + dispatch.run() 132s + ~~~~~~~~~~~~^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 132s + status = dispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 132s + status = _rundispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 132s + ret = _runcatch(req) or 0 132s + ~~~~~~~~~^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 132s + return _callcatch(ui, _runcatchfunc) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 132s + return scmutil.callcatch(ui, func) 132s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 132s + return func() 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 132s + return _dispatch(req) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 132s + return runcommand( 132s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 132s + ) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 132s + ret = _runcommand(ui, options, cmd, d) 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 132s + return cmdfunc() 132s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 132s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 132s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 132s + return func(*args, **kwargs) 132s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 132s + pushop = exchange.push( 132s + repo, 132s + ...<6 lines>... 132s + opargs=opargs, 132s + ) 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 132s + return f(*args, **kwargs) 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 132s + pushop.cgresult = repo.githandler.push( 132s + ~~~~~~~~~~~~~~~~~~~~^ 132s + remote.path, revs, bookmarks, force 132s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + ) 132s + ^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 132s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 132s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 132s + all_exportable = self.export_commits() 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 132s + self.export_git_objects() 132s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 132s + packer.pack(synchronous=True) 132s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 132s + _process_batch(self.ui, self.object_store, todo) 132s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 132s + object_store._remove_loose_object(obj.id) 132s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 132s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 132s + [1] 132s 132s 132s And what does Mercurial do? 132s @@ -133,7 +327,7 @@ 132s adding changesets 132s adding manifests 132s adding file changes 132s - added 5 changesets with 5 changes to 5 files 132s + added 3 changesets with 3 changes to 3 files 132s 132s With more than one head: 132s 132s @@ -154,7 +348,7 @@ 132s adding changesets 132s adding manifests 132s adding file changes 132s - added 7 changesets with 7 changes to 7 files (+1 heads) 132s + added 5 changesets with 5 changes to 5 files (+1 heads) 132s 132s On pull: 132s 132s @@ -171,16 +365,16 @@ 132s adding manifests 132s adding file changes 132s added 1 changesets with 1 changes to 1 files (+1 heads) 132s - new changesets d4097d98a390 132s + new changesets 11a693974ec5 132s | changegroup.txnname=pull 132s file://$TESTTMP/hgrepo-copy 132s | changegroup.source=pull 132s | changegroup.url=file:$TESTTMP/hgrepo-copy 132s - | changegroup.node=d4097d98a3905be88e8a566039b1fdcca06e0d2e 132s - | changegroup.node_last=d4097d98a3905be88e8a566039b1fdcca06e0d2e 132s + | changegroup.node=11a693974ec530e32672629628dde90793335199 132s + | changegroup.node_last=11a693974ec530e32672629628dde90793335199 132s | incoming.txnname=pull 132s file://$TESTTMP/hgrepo-copy 132s | incoming.source=pull 132s | incoming.url=file:$TESTTMP/hgrepo-copy 132s - | incoming.node=d4097d98a3905be88e8a566039b1fdcca06e0d2e 132s + | incoming.node=11a693974ec530e32672629628dde90793335199 132s (run 'hg heads' to see heads) 132s 132s ERROR: test-hook.t output changed 136s ! 136s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-transactions.t 136s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-transactions.t.err 136s @@ -42,7 +42,104 @@ 136s 136s $ hg clone gitrepo hgrepo --config hggit.mapsavefrequency=10 --debug \ 136s > | grep -c saving 136s - 1 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 137s + r = hg.clone( 137s + ui, 137s + ...<11 lines>... 137s + depth=opts.get('depth') or None, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 137s + srcpeer, destpeer = orig(*args, **opts) 137s + ~~~~^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 137s + exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + local, 137s + ^^^^^^ 137s + ...<5 lines>... 137s + depth=depth, 137s + ^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + 0 137s + [1] 137s $ rm -rf hgrepo 137s 137s pull with mapsavefreq set 137s @@ -54,7 +151,95 @@ 137s > EOF 137s $ hg -R hgrepo --config hggit.mapsavefrequency=10 pull --debug \ 137s > | grep -c saving 137s - 10 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 137s + modheads = exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + repo, 137s + ^^^^^ 137s + ...<6 lines>... 137s + confirm=opts.get('confirm'), 137s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137s + ).cgresult 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + 0 137s + [1] 137s $ rm -rf hgrepo 137s 137s The user experience 137s @@ -77,16 +262,100 @@ 137s $ hg --config hggit.mapsavefrequency=25 pull 137s pulling from $TESTTMP/gitrepo 137s importing 100 git commits 137s - new changesets 1c8407413fa3:abc468b9e51b (25 drafts) 137s - new changesets 217c308baf47:d5d14eeedd08 (25 drafts) 137s - new changesets d9807ef6abcb:4678067bd500 (25 drafts) 137s - adding bookmark master 137s - new changesets c31a154888bb:eda59117ba04 (25 drafts) 137s - (run 'hg update' to get a working copy) 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 137s + modheads = exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + repo, 137s + ^^^^^ 137s + ...<6 lines>... 137s + confirm=opts.get('confirm'), 137s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137s + ).cgresult 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s 137s Reset the repository 137s 137s $ hg debugstrip --no-backup 'all()' 137s + abort: empty revision set 137s + [255] 137s $ hg debug-remove-hggit-state 137s clearing out the git cache data 137s 137s @@ -96,16 +365,100 @@ 137s $ hg --config hggit.mapsavefrequency=25 --config hggit.usephases=yes pull 137s pulling from $TESTTMP/gitrepo 137s importing 100 git commits 137s - new changesets 1c8407413fa3:abc468b9e51b 137s - new changesets 217c308baf47:d5d14eeedd08 137s - new changesets d9807ef6abcb:4678067bd500 137s - updating bookmark master 137s - new changesets c31a154888bb:eda59117ba04 137s - (run 'hg update' to get a working copy) 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 137s + modheads = exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + repo, 137s + ^^^^^ 137s + ...<6 lines>... 137s + confirm=opts.get('confirm'), 137s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137s + ).cgresult 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s 137s Reset the repository 137s 137s $ hg debugstrip --no-backup 'all()' 137s + abort: empty revision set 137s + [255] 137s $ hg debug-remove-hggit-state 137s clearing out the git cache data 137s 137s @@ -123,10 +476,94 @@ 137s $ ABORT_AFTER=99 hg pull 137s pulling from $TESTTMP/gitrepo 137s importing 100 git commits 137s - transaction abort! 137s - rollback completed 137s - abort: aborted after 99 commits! 137s - [255] 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 137s + modheads = exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + repo, 137s + ^^^^^ 137s + ...<6 lines>... 137s + confirm=opts.get('confirm'), 137s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137s + ).cgresult 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s $ hg log -l 10 -T '{rev} {gitnode}\n' 137s 137s Test the user exiting in the first transaction: 137s @@ -134,10 +571,94 @@ 137s $ EXIT_AFTER=5 hg --config hggit.mapsavefrequency=10 pull 137s pulling from $TESTTMP/gitrepo 137s importing 100 git commits 137s - transaction abort! 137s - rollback completed 137s - interrupted! 137s - [255] 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 137s + modheads = exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + repo, 137s + ^^^^^ 137s + ...<6 lines>... 137s + confirm=opts.get('confirm'), 137s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137s + ).cgresult 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s $ hg log -l 10 -T '{rev} {gitnode}\n' 137s 137s Check that we have no state, but clear it just in case 137s @@ -153,22 +674,95 @@ 137s $ EXIT_AFTER=15 hg --config hggit.mapsavefrequency=10 pull 137s pulling from $TESTTMP/gitrepo 137s importing 100 git commits 137s - new changesets 1c8407413fa3:7c8c534a5fbe (10 drafts) 137s - transaction abort! 137s - rollback completed 137s - interrupted! 137s - [255] 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 137s + modheads = exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + repo, 137s + ^^^^^ 137s + ...<6 lines>... 137s + confirm=opts.get('confirm'), 137s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137s + ).cgresult 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s $ hg log -l 10 -T '{rev} {gitnode}\n' 137s - 9 7cbb16ec981b308e1e2b181f8e1f22c8f409f44e 137s - 8 42da70ed92bbecf9f348ba59c93646be723d0bf2 137s - 7 17e841146e5744b81af9959634d82c20a5d7df52 137s - 6 c31065bf97bf014815e37cdfbdef2c32c687f314 137s - 5 fcf21b8e0520ec1cced1d7593d13f9ee54721269 137s - 4 46acd02d0352e4b92bd6a099bb0490305d847a18 137s - 3 61eeda444b37b8aa3892d5f04c66c5441d21dd66 137s - 2 e55db11bb0472791c7af3fc636772174cdea4a36 137s - 1 17a2672b3c24c02d568f99d8d55ccae2bf362d5c 137s - 0 4e195b4c6e77604b70a8ad3b01306adbb9b1c7e7 137s $ cd .. 137s $ rm -rf hgrepo 137s 137s @@ -184,10 +778,103 @@ 137s > --cwd hgrepo \ 137s > clone -U $TESTTMP/gitrepo . 137s importing 100 git commits 137s - transaction abort! 137s - rollback completed 137s - interrupted! 137s - [255] 137s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 137s + ** which supports versions unknown of Mercurial. 137s + ** Please disable "breakage" and try your action again. 137s + ** If that fixes the bug please report it to the extension author. 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: breakage, hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 137s + r = hg.clone( 137s + ui, 137s + ...<11 lines>... 137s + depth=opts.get('depth') or None, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 137s + srcpeer, destpeer = orig(*args, **opts) 137s + ~~~~^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 137s + exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + local, 137s + ^^^^^^ 137s + ...<5 lines>... 137s + depth=depth, 137s + ^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 137s + return func(*(args + a), **kw) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 137s + return orig(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s the leftover below appeared in Mercurial 5.9+; it is unintentional 137s $ ls -A hgrepo 137s .git 137s 137s ERROR: test-transactions.t output changed 137s ! 137s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-outgoing.t 137s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-outgoing.t.err 137s @@ -15,165 +15,100 @@ 137s $ cd .. 137s $ hg clone gitrepo hgrepo 137s importing 1 git commits 137s - new changesets ff7a2f2d8d70 (1 drafts) 137s - updating to bookmark master 137s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 137s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 137s + ** which supports versions 6.9 of Mercurial. 137s + ** Please disable "hggit" and try your action again. 137s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 137s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 137s + ** Mercurial Distributed SCM (version 7.0.1) 137s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 137s + Traceback (most recent call last): 137s + File "/usr/bin/hg", line 51, in 137s + dispatch.run() 137s + ~~~~~~~~~~~~^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 137s + status = dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 137s + status = _rundispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 137s + ret = _runcatch(req) or 0 137s + ~~~~~~~~~^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 137s + return _callcatch(ui, _runcatchfunc) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 137s + return scmutil.callcatch(ui, func) 137s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 137s + return func() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 137s + return _dispatch(req) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 137s + return runcommand( 137s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 137s + ) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 137s + ret = _runcommand(ui, options, cmd, d) 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 137s + return cmdfunc() 137s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 137s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 137s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 137s + return func(*args, **kwargs) 137s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 137s + r = hg.clone( 137s + ui, 137s + ...<11 lines>... 137s + depth=opts.get('depth') or None, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 137s + srcpeer, destpeer = orig(*args, **opts) 137s + ~~~~^^^^^^^^^^^^^^^ 137s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 137s + exchange.pull( 137s + ~~~~~~~~~~~~~^ 137s + local, 137s + ^^^^^^ 137s + ...<5 lines>... 137s + depth=depth, 137s + ^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 137s + return f(*args, **kwargs) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 137s + pullop.cgresult = repo.githandler.fetch(remote, heads) 137s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 137s + imported = self.import_git_objects( 137s + b'pull', 137s + ...<2 lines>... 137s + heads=heads, 137s + ) 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 137s + self.import_git_commit( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + command, 137s + ^^^^^^^^ 137s + self.git[commit.sha], 137s + ^^^^^^^^^^^^^^^^^^^^^ 137s + commit.phase, 137s + ^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 137s + files, gitlinks, git_renames = self.get_files_changed( 137s + ~~~~~~~~~~~~~~~~~~~~~~^ 137s + commit, detect_renames 137s + ^^^^^^^^^^^^^^^^^^^^^^ 137s + ) 137s + ^ 137s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 137s + oldfile, oldmode, oldsha = change.old 137s + ^^^^^^^^^^^^^^^^^^^^^^^^ 137s + TypeError: cannot unpack non-iterable NoneType object 137s + [1] 137s 137s $ cd hgrepo 137s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 137s $ hg book 137s - alpha 0:ff7a2f2d8d70 137s - * master 0:ff7a2f2d8d70 137s - $ hg update -q master 137s - $ echo beta > beta 137s - $ hg add beta 137s - $ fn_hg_commit -m 'add beta' 137s - 137s - 137s - $ echo gamma > gamma 137s - $ hg add gamma 137s - $ fn_hg_commit -m 'add gamma' 137s - 137s - $ hg book -r 1 beta 137s - 137s - $ hg outgoing | grep -v 'searching for changes' 137s - comparing with $TESTTMP/gitrepo 137s - changeset: 1:47580592d3d6 137s - bookmark: beta 137s - user: test 137s - date: Mon Jan 01 00:00:11 2007 +0000 137s - summary: add beta 137s - 137s - changeset: 2:953796e1cfd8 137s - bookmark: master 137s - tag: tip 137s - user: test 137s - date: Mon Jan 01 00:00:12 2007 +0000 137s - summary: add gamma 137s - 137s - $ hg outgoing -r beta 137s - comparing with $TESTTMP/gitrepo 137s - searching for changes 137s - changeset: 1:47580592d3d6 137s - bookmark: beta 137s - user: test 137s - date: Mon Jan 01 00:00:11 2007 +0000 137s - summary: add beta 137s - 137s - $ hg outgoing -r master 137s - comparing with $TESTTMP/gitrepo 137s - searching for changes 137s - changeset: 1:47580592d3d6 137s - bookmark: beta 137s - user: test 137s - date: Mon Jan 01 00:00:11 2007 +0000 137s - summary: add beta 137s - 137s - changeset: 2:953796e1cfd8 137s - bookmark: master 137s - tag: tip 137s - user: test 137s - date: Mon Jan 01 00:00:12 2007 +0000 137s - summary: add gamma 137s - 137s - 137s - $ cd .. 137s - 137s -some more work on master from git 137s - $ cd gitrepo 137s - 137s -Check state of refs after outgoing 137s - $ git show-ref 137s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 refs/heads/alpha 137s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 refs/heads/master 137s - 137s - $ git checkout master 2>&1 | sed s/\'/\"/g 137s - Already on "master" 137s - $ echo delta > delta 137s - $ git add delta 137s - $ fn_git_commit -m "add delta" 137s - 137s - $ cd .. 137s - 137s - $ cd hgrepo 137s -this will fail # maybe we should try to make it work 137s - $ hg outgoing 137s - comparing with $TESTTMP/gitrepo 137s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 137s - [255] 137s -let's pull and try again 137s - $ hg pull 137s - pulling from */gitrepo (glob) 137s - importing 1 git commits 137s - not updating diverged bookmark master 137s - new changesets 25eed24f5e8f (1 drafts) 137s - (run 'hg heads' to see heads, 'hg merge' to merge) 137s - $ hg log --graph 137s - o changeset: 3:25eed24f5e8f 137s - | tag: default/master 137s - | tag: tip 137s - | parent: 0:ff7a2f2d8d70 137s - | user: test 137s - | date: Mon Jan 01 00:00:13 2007 +0000 137s - | summary: add delta 137s - | 137s - | @ changeset: 2:953796e1cfd8 137s - | | bookmark: master 137s - | | user: test 137s - | | date: Mon Jan 01 00:00:12 2007 +0000 137s - | | summary: add gamma 137s - | | 137s - | o changeset: 1:47580592d3d6 137s - |/ bookmark: beta 137s - | user: test 137s - | date: Mon Jan 01 00:00:11 2007 +0000 137s - | summary: add beta 137s - | 137s - o changeset: 0:ff7a2f2d8d70 137s - bookmark: alpha 137s - tag: default/alpha 137s - user: test 137s - date: Mon Jan 01 00:00:10 2007 +0000 137s - summary: add alpha 137s - 137s - $ hg outgoing 137s - comparing with $TESTTMP/gitrepo 137s - searching for changes 137s - changeset: 1:47580592d3d6 137s - bookmark: beta 137s - user: test 137s - date: Mon Jan 01 00:00:11 2007 +0000 137s - summary: add beta 137s - 137s - changeset: 2:953796e1cfd8 137s - bookmark: master 137s - user: test 137s - date: Mon Jan 01 00:00:12 2007 +0000 137s - summary: add gamma 137s - 137s - $ hg outgoing -r beta 137s - comparing with $TESTTMP/gitrepo 137s - searching for changes 137s - changeset: 1:47580592d3d6 137s - bookmark: beta 137s - user: test 137s - date: Mon Jan 01 00:00:11 2007 +0000 137s - summary: add beta 137s - 137s - $ hg outgoing -r master 137s - comparing with $TESTTMP/gitrepo 137s - searching for changes 137s - changeset: 1:47580592d3d6 137s - bookmark: beta 137s - user: test 137s - date: Mon Jan 01 00:00:11 2007 +0000 137s - summary: add beta 137s - 137s - changeset: 2:953796e1cfd8 137s - bookmark: master 137s - user: test 137s - date: Mon Jan 01 00:00:12 2007 +0000 137s - summary: add gamma 137s - 137s - 137s - 137s - $ cd .. 137s 137s ERROR: test-outgoing.t output changed 140s ! 140s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gc.t 140s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gc.t.err 140s @@ -26,187 +26,99 @@ 140s $ cd .. 140s $ hg clone -U gitrepo hgrepo 140s importing 100 git commits 140s - new changesets 1c8407413fa3:eda59117ba04 (100 drafts) 140s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 140s + ** which supports versions 6.9 of Mercurial. 140s + ** Please disable "hggit" and try your action again. 140s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 140s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 140s + ** Mercurial Distributed SCM (version 7.0.1) 140s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 140s + Traceback (most recent call last): 140s + File "/usr/bin/hg", line 51, in 140s + dispatch.run() 140s + ~~~~~~~~~~~~^^ 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 140s + status = dispatch(req) 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 140s + status = _rundispatch(req) 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 140s + ret = _runcatch(req) or 0 140s + ~~~~~~~~~^^^^^ 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 140s + return _callcatch(ui, _runcatchfunc) 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 140s + return scmutil.callcatch(ui, func) 140s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 140s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 140s + return func() 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 140s + return _dispatch(req) 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 140s + return runcommand( 140s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 140s + ) 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 140s + ret = _runcommand(ui, options, cmd, d) 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 140s + return cmdfunc() 140s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 140s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 140s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 140s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 140s + return func(*args, **kwargs) 140s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 140s + r = hg.clone( 140s + ui, 140s + ...<11 lines>... 140s + depth=opts.get('depth') or None, 140s + ) 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 140s + srcpeer, destpeer = orig(*args, **opts) 140s + ~~~~^^^^^^^^^^^^^^^ 140s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 140s + exchange.pull( 140s + ~~~~~~~~~~~~~^ 140s + local, 140s + ^^^^^^ 140s + ...<5 lines>... 140s + depth=depth, 140s + ^^^^^^^^^^^^ 140s + ) 140s + ^ 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 140s + return f(*args, **kwargs) 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 140s + pullop.cgresult = repo.githandler.fetch(remote, heads) 140s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 140s + imported = self.import_git_objects( 140s + b'pull', 140s + ...<2 lines>... 140s + heads=heads, 140s + ) 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 140s + self.import_git_commit( 140s + ~~~~~~~~~~~~~~~~~~~~~~^ 140s + command, 140s + ^^^^^^^^ 140s + self.git[commit.sha], 140s + ^^^^^^^^^^^^^^^^^^^^^ 140s + commit.phase, 140s + ^^^^^^^^^^^^^ 140s + ) 140s + ^ 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 140s + files, gitlinks, git_renames = self.get_files_changed( 140s + ~~~~~~~~~~~~~~~~~~~~~~^ 140s + commit, detect_renames 140s + ^^^^^^^^^^^^^^^^^^^^^^ 140s + ) 140s + ^ 140s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 140s + oldfile, oldmode, oldsha = change.old 140s + ^^^^^^^^^^^^^^^^^^^^^^^^ 140s + TypeError: cannot unpack non-iterable NoneType object 140s + [1] 140s $ cd hgrepo 140s + $TESTTMP.sh: 24: cd: can't cd to hgrepo 140s $ hg debug-remove-hggit-state 140s - clearing out the git cache data 140s - 140s ------------ 140s - 140s -Test garbage collection of loose objects into packs. We first test 140s -this with two threads, which is closest to the expected usage 140s -scenario, as almost all computers have at least two cores these days. 140s -The main downside is that this makes the output order unreliable, so 140s -we just sort it. 140s - 140s - $ hg gexport --config hggit.mapsavefrequency=33 --config hggit.threads=2 --debug | grep pack | sort 140s - packed 3 loose objects! 140s - packed 75 loose objects! 140s - packed 78 loose objects! 140s - packed 86 loose objects! 140s - packing 3 loose objects... 140s - packing 75 loose objects... 140s - packing 78 loose objects... 140s - packing 86 loose objects... 140s - $ hg debug-remove-hggit-state 140s - clearing out the git cache data 140s - 140s -Test the actual order of operations -- this uses a single thread, 140s -which means that the packing happens synchronously in the main thread, 140s -giving us a reliable output order. 140s - 140s -In addition, the transaction size is set up such that we happen to do 140s -nothing in the final, synchronous packing that happens on every pull. 140s -Lots of other tests have a map save frequency higher than the total 140s -amount of commits pulled, but let's just trigger that other odd 140s -occurence here. 140s - 140s - $ hg gexport --debug \ 140s - > --config hggit.mapsavefrequency=10 --config hggit.threads=1 | \ 140s - > sed 's/^converting revision.*/./' 140s - finding unexported changesets 140s - exporting 100 changesets 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 30 loose objects... 140s - packed 30 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 25 loose objects... 140s - packed 25 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 25 loose objects... 140s - packed 25 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 24 loose objects... 140s - packed 24 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 24 loose objects... 140s - packed 24 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 24 loose objects... 140s - packed 24 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 24 loose objects... 140s - packed 24 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 23 loose objects... 140s - packed 23 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 22 loose objects... 140s - packed 22 loose objects! 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - . 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - packing 21 loose objects... 140s - packed 21 loose objects! 140s - packing 0 loose objects... 140s - packed 0 loose objects! 140s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 140s - $ find .hg/git/objects -type f | grep -Fv .idx | sort 140s - .hg/git/objects/pack/pack-33903607b479000b976a29a349fe0f4dffb0aaac.pack 140s - .hg/git/objects/pack/pack-40d9440e392d9eab62fa38a2ed66cc763d77aca3.pack 140s - .hg/git/objects/pack/pack-4ab2dac268f94e407788d52d6ba087b626c41651.pack 140s - .hg/git/objects/pack/pack-543e3b37bd36218a4dc6611a96d7c218afb78429.pack 140s - .hg/git/objects/pack/pack-5fc80292253ee10d1b86b5c4d9c51b29d2b4ba47.pack 140s - .hg/git/objects/pack/pack-9c636f5f16302fc5fadf0cc4ed42aeb67fc51f6a.pack 140s - .hg/git/objects/pack/pack-ae74b1f0197dfb45cfb13889453860a40103969a.pack 140s - .hg/git/objects/pack/pack-b432e2f477cb765fc0aeaa850d56e04b10392e6c.pack 140s - .hg/git/objects/pack/pack-cf7023660ce10ede2896d1be117f6ba93a261ff9.pack 140s - .hg/git/objects/pack/pack-e601b2af6a91a9cf6817d71f4eb660d2218d4094.pack 140s 140s ERROR: test-gc.t output changed 141s ! 141s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-public.t 141s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-public.t#publish-defaults.err 141s @@ -25,148 +25,100 @@ 141s cloning with hggit.usephases publishes cloned HEAD 141s $ hg --config hggit.usephases=True clone -U gitrepo hgrepo 141s importing 1 git commits 141s - new changesets ff7a2f2d8d70 141s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 141s + ** which supports versions 6.9 of Mercurial. 141s + ** Please disable "hggit" and try your action again. 141s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 141s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 141s + ** Mercurial Distributed SCM (version 7.0.1) 141s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 141s + Traceback (most recent call last): 141s + File "/usr/bin/hg", line 51, in 141s + dispatch.run() 141s + ~~~~~~~~~~~~^^ 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 141s + status = dispatch(req) 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 141s + status = _rundispatch(req) 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 141s + ret = _runcatch(req) or 0 141s + ~~~~~~~~~^^^^^ 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 141s + return _callcatch(ui, _runcatchfunc) 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 141s + return scmutil.callcatch(ui, func) 141s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 141s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 141s + return func() 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 141s + return _dispatch(req) 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 141s + return runcommand( 141s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 141s + ) 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 141s + ret = _runcommand(ui, options, cmd, d) 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 141s + return cmdfunc() 141s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 141s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 141s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 141s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 141s + return func(*args, **kwargs) 141s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 141s + r = hg.clone( 141s + ui, 141s + ...<11 lines>... 141s + depth=opts.get('depth') or None, 141s + ) 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 141s + srcpeer, destpeer = orig(*args, **opts) 141s + ~~~~^^^^^^^^^^^^^^^ 141s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 141s + exchange.pull( 141s + ~~~~~~~~~~~~~^ 141s + local, 141s + ^^^^^^ 141s + ...<5 lines>... 141s + depth=depth, 141s + ^^^^^^^^^^^^ 141s + ) 141s + ^ 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 141s + return f(*args, **kwargs) 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 141s + pullop.cgresult = repo.githandler.fetch(remote, heads) 141s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 141s + imported = self.import_git_objects( 141s + b'pull', 141s + ...<2 lines>... 141s + heads=heads, 141s + ) 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 141s + self.import_git_commit( 141s + ~~~~~~~~~~~~~~~~~~~~~~^ 141s + command, 141s + ^^^^^^^^ 141s + self.git[commit.sha], 141s + ^^^^^^^^^^^^^^^^^^^^^ 141s + commit.phase, 141s + ^^^^^^^^^^^^^ 141s + ) 141s + ^ 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 141s + files, gitlinks, git_renames = self.get_files_changed( 141s + ~~~~~~~~~~~~~~~~~~~~~~^ 141s + commit, detect_renames 141s + ^^^^^^^^^^^^^^^^^^^^^^ 141s + ) 141s + ^ 141s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 141s + oldfile, oldmode, oldsha = change.old 141s + ^^^^^^^^^^^^^^^^^^^^^^^^ 141s + TypeError: cannot unpack non-iterable NoneType object 141s + [1] 141s 141s $ cd hgrepo 141s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 141s $ hg phase -r master 141s - 0: public 141s - $ cd .. 141s - 141s -pulled changesets are public 141s - $ cd gitrepo 141s - $ git checkout -q master 141s - $ echo beta > beta 141s - $ git add beta 141s - $ fn_git_commit -m 'add beta' 141s - $ git checkout -b not-master 141s - Switched to a new branch 'not-master' 141s - $ echo gamma > gamma 141s - $ git add gamma 141s - $ fn_git_commit -m 'add gamma' 141s - $ git tag thetag 141s - $ echo delta > delta 141s - $ git add delta 141s - $ fn_git_commit -m 'add delta' 141s - $ git checkout master 141s - Switched to branch 'master' 141s - $ cd .. 141s - 141s - $ cd hgrepo 141s - $ cat >>$HGRCPATH < [paths] 141s - > other = $TESTTMP/gitrepo/.git 141s - > [hggit] 141s - > usephases = True 141s - > EOF 141s - 141s - $ hg phase -fd 'all()' 141s - 141s -we can restrict publishing to the remote HEAD and that tag, which 141s -happens to be the same thing here 141s - 141s -#if publish-specific 141s - $ cat >>$HGRCPATH < [git] 141s - > public = default/master, thetag 141s - > EOF 141s -#endif 141s - 141s -pulling publishes the branch 141s - 141s - $ hg phase -r master 141s - 0: draft 141s -#if publish-defaults 141s - $ hg pull -r master other 141s - pulling from $TESTTMP/gitrepo/.git 141s - importing 1 git commits 141s - updating bookmark master 141s - new changesets 7fe02317c63d 141s - 1 local changesets published 141s - (run 'hg update' to get a working copy) 141s -#else 141s - $ hg pull -r master other 141s - pulling from $TESTTMP/gitrepo/.git 141s - importing 1 git commits 141s - updating bookmark master 141s - new changesets 7fe02317c63d (1 drafts) 141s - (run 'hg update' to get a working copy) 141s -#endif 141s - $ hg phase -r master 141s - 1: draft (publish-specific !) 141s - 1: public (publish-defaults !) 141s -#if publish-defaults 141s - $ hg phase -fd master 141s - $ hg pull 141s - pulling from $TESTTMP/gitrepo 141s - importing 2 git commits 141s - adding bookmark not-master 141s - new changesets ca33a262eb46:03769a650ded (1 drafts) 141s - 1 local changesets published 141s - (run 'hg update' to get a working copy) 141s -#else 141s - $ hg pull 141s - pulling from $TESTTMP/gitrepo 141s - importing 2 git commits 141s - adding bookmark not-master 141s - new changesets ca33a262eb46:03769a650ded (1 drafts) 141s - 2 local changesets published 141s - (run 'hg update' to get a working copy) 141s -#endif 141s - $ hg phase -r master -r not-master -r thetag 141s - 1: public 141s - 3: draft 141s - 2: public 141s - 141s -public bookmark not pushed is not published after pull 141s - 141s - $ hg update 0 141s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 141s - $ echo delta > delta 141s - $ hg bookmark not-pushed 141s - $ hg add delta 141s - $ hg commit -m 'add delta' 141s - created new head 141s - $ hg phase -r 'all()' > $TESTTMP/before 141s - $ hg pull --config git.public=master,not-pushed 141s - pulling from $TESTTMP/gitrepo 141s - no changes found 141s - $ hg phase -r 'all()' > $TESTTMP/after 141s - $ cmp -s $TESTTMP/before $TESTTMP/after 141s - $ hg phase -r not-pushed 141s - 4: draft 141s - $ rm $TESTTMP/before $TESTTMP/after 141s - 141s -pushing public bookmark publishes local changesets, but only those 141s -actually pushed 141s - 141s - $ hg update master 141s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 141s - (activating bookmark master) 141s - $ echo epsilon > epsilon 141s - $ hg add epsilon 141s - $ hg commit -m 'add epsilon' 141s - created new head 141s - $ hg phase -r 'all() - master' > $TESTTMP/before 141s - $ hg push -B not-pushed 141s - pushing to $TESTTMP/gitrepo 141s - searching for changes 141s - adding objects 141s - remote: found 0 deltas to reuse 141s - added 1 commits with 1 trees and 1 blobs 141s - adding reference refs/heads/not-pushed 141s - $ hg phase -r 'all() - master' > $TESTTMP/after 141s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 141s - $ hg phase -r not-pushed -r master 141s - 4: draft 141s - 5: draft 141s - $ hg push -B master 141s - pushing to $TESTTMP/gitrepo 141s - searching for changes 141s - adding objects 141s - remote: found 0 deltas to reuse 141s - added 1 commits with 1 trees and 1 blobs 141s - updating reference refs/heads/master 141s - $ hg phase -r 'all() - master' > $TESTTMP/after 141s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 141s - $ hg phase -r master 141s - 5: public 141s 141s ERROR: test-phases-public.t#publish-defaults output changed 142s ! 142s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-public.t 142s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-public.t#publish-specific.err 142s @@ -25,148 +25,100 @@ 142s cloning with hggit.usephases publishes cloned HEAD 142s $ hg --config hggit.usephases=True clone -U gitrepo hgrepo 142s importing 1 git commits 142s - new changesets ff7a2f2d8d70 142s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 142s + ** which supports versions 6.9 of Mercurial. 142s + ** Please disable "hggit" and try your action again. 142s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 142s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 142s + ** Mercurial Distributed SCM (version 7.0.1) 142s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 142s + Traceback (most recent call last): 142s + File "/usr/bin/hg", line 51, in 142s + dispatch.run() 142s + ~~~~~~~~~~~~^^ 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 142s + status = dispatch(req) 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 142s + status = _rundispatch(req) 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 142s + ret = _runcatch(req) or 0 142s + ~~~~~~~~~^^^^^ 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 142s + return _callcatch(ui, _runcatchfunc) 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 142s + return scmutil.callcatch(ui, func) 142s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 142s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 142s + return func() 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 142s + return _dispatch(req) 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 142s + return runcommand( 142s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 142s + ) 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 142s + ret = _runcommand(ui, options, cmd, d) 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 142s + return cmdfunc() 142s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 142s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 142s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 142s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 142s + return func(*args, **kwargs) 142s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 142s + r = hg.clone( 142s + ui, 142s + ...<11 lines>... 142s + depth=opts.get('depth') or None, 142s + ) 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 142s + srcpeer, destpeer = orig(*args, **opts) 142s + ~~~~^^^^^^^^^^^^^^^ 142s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 142s + exchange.pull( 142s + ~~~~~~~~~~~~~^ 142s + local, 142s + ^^^^^^ 142s + ...<5 lines>... 142s + depth=depth, 142s + ^^^^^^^^^^^^ 142s + ) 142s + ^ 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 142s + return f(*args, **kwargs) 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 142s + pullop.cgresult = repo.githandler.fetch(remote, heads) 142s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 142s + imported = self.import_git_objects( 142s + b'pull', 142s + ...<2 lines>... 142s + heads=heads, 142s + ) 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 142s + self.import_git_commit( 142s + ~~~~~~~~~~~~~~~~~~~~~~^ 142s + command, 142s + ^^^^^^^^ 142s + self.git[commit.sha], 142s + ^^^^^^^^^^^^^^^^^^^^^ 142s + commit.phase, 142s + ^^^^^^^^^^^^^ 142s + ) 142s + ^ 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 142s + files, gitlinks, git_renames = self.get_files_changed( 142s + ~~~~~~~~~~~~~~~~~~~~~~^ 142s + commit, detect_renames 142s + ^^^^^^^^^^^^^^^^^^^^^^ 142s + ) 142s + ^ 142s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 142s + oldfile, oldmode, oldsha = change.old 142s + ^^^^^^^^^^^^^^^^^^^^^^^^ 142s + TypeError: cannot unpack non-iterable NoneType object 142s + [1] 142s 142s $ cd hgrepo 142s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 142s $ hg phase -r master 142s - 0: public 142s - $ cd .. 142s - 142s -pulled changesets are public 142s - $ cd gitrepo 142s - $ git checkout -q master 142s - $ echo beta > beta 142s - $ git add beta 142s - $ fn_git_commit -m 'add beta' 142s - $ git checkout -b not-master 142s - Switched to a new branch 'not-master' 142s - $ echo gamma > gamma 142s - $ git add gamma 142s - $ fn_git_commit -m 'add gamma' 142s - $ git tag thetag 142s - $ echo delta > delta 142s - $ git add delta 142s - $ fn_git_commit -m 'add delta' 142s - $ git checkout master 142s - Switched to branch 'master' 142s - $ cd .. 142s - 142s - $ cd hgrepo 142s - $ cat >>$HGRCPATH < [paths] 142s - > other = $TESTTMP/gitrepo/.git 142s - > [hggit] 142s - > usephases = True 142s - > EOF 142s - 142s - $ hg phase -fd 'all()' 142s - 142s -we can restrict publishing to the remote HEAD and that tag, which 142s -happens to be the same thing here 142s - 142s -#if publish-specific 142s - $ cat >>$HGRCPATH < [git] 142s - > public = default/master, thetag 142s - > EOF 142s -#endif 142s - 142s -pulling publishes the branch 142s - 142s - $ hg phase -r master 142s - 0: draft 142s -#if publish-defaults 142s - $ hg pull -r master other 142s - pulling from $TESTTMP/gitrepo/.git 142s - importing 1 git commits 142s - updating bookmark master 142s - new changesets 7fe02317c63d 142s - 1 local changesets published 142s - (run 'hg update' to get a working copy) 142s -#else 142s - $ hg pull -r master other 142s - pulling from $TESTTMP/gitrepo/.git 142s - importing 1 git commits 142s - updating bookmark master 142s - new changesets 7fe02317c63d (1 drafts) 142s - (run 'hg update' to get a working copy) 142s -#endif 142s - $ hg phase -r master 142s - 1: draft (publish-specific !) 142s - 1: public (publish-defaults !) 142s -#if publish-defaults 142s - $ hg phase -fd master 142s - $ hg pull 142s - pulling from $TESTTMP/gitrepo 142s - importing 2 git commits 142s - adding bookmark not-master 142s - new changesets ca33a262eb46:03769a650ded (1 drafts) 142s - 1 local changesets published 142s - (run 'hg update' to get a working copy) 142s -#else 142s - $ hg pull 142s - pulling from $TESTTMP/gitrepo 142s - importing 2 git commits 142s - adding bookmark not-master 142s - new changesets ca33a262eb46:03769a650ded (1 drafts) 142s - 2 local changesets published 142s - (run 'hg update' to get a working copy) 142s -#endif 142s - $ hg phase -r master -r not-master -r thetag 142s - 1: public 142s - 3: draft 142s - 2: public 142s - 142s -public bookmark not pushed is not published after pull 142s - 142s - $ hg update 0 142s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 142s - $ echo delta > delta 142s - $ hg bookmark not-pushed 142s - $ hg add delta 142s - $ hg commit -m 'add delta' 142s - created new head 142s - $ hg phase -r 'all()' > $TESTTMP/before 142s - $ hg pull --config git.public=master,not-pushed 142s - pulling from $TESTTMP/gitrepo 142s - no changes found 142s - $ hg phase -r 'all()' > $TESTTMP/after 142s - $ cmp -s $TESTTMP/before $TESTTMP/after 142s - $ hg phase -r not-pushed 142s - 4: draft 142s - $ rm $TESTTMP/before $TESTTMP/after 142s - 142s -pushing public bookmark publishes local changesets, but only those 142s -actually pushed 142s - 142s - $ hg update master 142s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 142s - (activating bookmark master) 142s - $ echo epsilon > epsilon 142s - $ hg add epsilon 142s - $ hg commit -m 'add epsilon' 142s - created new head 142s - $ hg phase -r 'all() - master' > $TESTTMP/before 142s - $ hg push -B not-pushed 142s - pushing to $TESTTMP/gitrepo 142s - searching for changes 142s - adding objects 142s - remote: found 0 deltas to reuse 142s - added 1 commits with 1 trees and 1 blobs 142s - adding reference refs/heads/not-pushed 142s - $ hg phase -r 'all() - master' > $TESTTMP/after 142s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 142s - $ hg phase -r not-pushed -r master 142s - 4: draft 142s - 5: draft 142s - $ hg push -B master 142s - pushing to $TESTTMP/gitrepo 142s - searching for changes 142s - adding objects 142s - remote: found 0 deltas to reuse 142s - added 1 commits with 1 trees and 1 blobs 142s - updating reference refs/heads/master 142s - $ hg phase -r 'all() - master' > $TESTTMP/after 142s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 142s - $ hg phase -r master 142s - 5: public 142s 142s ERROR: test-phases-public.t#publish-specific output changed 147s !.s 147s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-invalid-refs.t 147s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-invalid-refs.t.err 147s @@ -13,114 +13,100 @@ 147s $ cd .. 147s $ hg clone -U gitrepo hgrepo 147s importing 1 git commits 147s - new changesets ff7a2f2d8d70 (1 drafts) 147s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 147s + ** which supports versions 6.9 of Mercurial. 147s + ** Please disable "hggit" and try your action again. 147s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 147s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 147s + ** Mercurial Distributed SCM (version 7.0.1) 147s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 147s + Traceback (most recent call last): 147s + File "/usr/bin/hg", line 51, in 147s + dispatch.run() 147s + ~~~~~~~~~~~~^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 147s + status = dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 147s + status = _rundispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 147s + ret = _runcatch(req) or 0 147s + ~~~~~~~~~^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 147s + return _callcatch(ui, _runcatchfunc) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 147s + return scmutil.callcatch(ui, func) 147s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 147s + return func() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 147s + return _dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 147s + return runcommand( 147s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 147s + ) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 147s + ret = _runcommand(ui, options, cmd, d) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 147s + return cmdfunc() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 147s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 147s + return func(*args, **kwargs) 147s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 147s + r = hg.clone( 147s + ui, 147s + ...<11 lines>... 147s + depth=opts.get('depth') or None, 147s + ) 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 147s + srcpeer, destpeer = orig(*args, **opts) 147s + ~~~~^^^^^^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 147s + exchange.pull( 147s + ~~~~~~~~~~~~~^ 147s + local, 147s + ^^^^^^ 147s + ...<5 lines>... 147s + depth=depth, 147s + ^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 147s + return f(*args, **kwargs) 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 147s + pullop.cgresult = repo.githandler.fetch(remote, heads) 147s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 147s + imported = self.import_git_objects( 147s + b'pull', 147s + ...<2 lines>... 147s + heads=heads, 147s + ) 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 147s + self.import_git_commit( 147s + ~~~~~~~~~~~~~~~~~~~~~~^ 147s + command, 147s + ^^^^^^^^ 147s + self.git[commit.sha], 147s + ^^^^^^^^^^^^^^^^^^^^^ 147s + commit.phase, 147s + ^^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 147s + files, gitlinks, git_renames = self.get_files_changed( 147s + ~~~~~~~~~~~~~~~~~~~~~~^ 147s + commit, detect_renames 147s + ^^^^^^^^^^^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 147s + oldfile, oldmode, oldsha = change.old 147s + ^^^^^^^^^^^^^^^^^^^^^^^^ 147s + TypeError: cannot unpack non-iterable NoneType object 147s + [1] 147s 147s $ cd hgrepo 147s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 147s $ hg up master 147s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 147s - (activating bookmark master) 147s - $ fn_hg_tag alph#a 147s - $ fn_hg_tag bet*a 147s - $ fn_hg_tag 'gamm a' 147s - $ hg book -r . delt#a 147s - $ hg book -r . epsil*on 147s - 147s - $ hg gexport 147s - warning: not exporting tag 'bet*a' due to invalid name 147s - warning: not exporting bookmark 'epsil*on' due to invalid name 147s - 147s - $ hg push 147s - pushing to $TESTTMP/gitrepo 147s - warning: not exporting tag 'bet*a' due to invalid name 147s - warning: not exporting bookmark 'epsil*on' due to invalid name 147s - searching for changes 147s - adding objects 147s - remote: found 0 deltas to reuse 147s - added 3 commits with 3 trees and 3 blobs 147s - adding reference refs/heads/delt#a 147s - updating reference refs/heads/master 147s - adding reference refs/tags/alph#a 147s - adding reference refs/tags/gamm_a 147s - 147s - $ hg log --graph 147s - @ changeset: 3:0950ab44ea23 147s - | bookmark: delt#a 147s - | bookmark: epsil*on 147s - | bookmark: master 147s - | tag: default/delt#a 147s - | tag: default/master 147s - | tag: tip 147s - | user: test 147s - | date: Mon Jan 01 00:00:13 2007 +0000 147s - | summary: Added tag gamm a for changeset 0b27ab2b3df6 147s - | 147s - o changeset: 2:0b27ab2b3df6 147s - | tag: gamm a 147s - | user: test 147s - | date: Mon Jan 01 00:00:12 2007 +0000 147s - | summary: Added tag bet*a for changeset 491ceeb1b0f1 147s - | 147s - o changeset: 1:491ceeb1b0f1 147s - | tag: bet*a 147s - | user: test 147s - | date: Mon Jan 01 00:00:11 2007 +0000 147s - | summary: Added tag alph#a for changeset ff7a2f2d8d70 147s - | 147s - o changeset: 0:ff7a2f2d8d70 147s - bookmark: not-master 147s - tag: alph#a 147s - tag: default/not-master 147s - user: test 147s - date: Mon Jan 01 00:00:10 2007 +0000 147s - summary: add alpha 147s - 147s - 147s - $ cd .. 147s - $ cd gitrepo 147s -git should have only the valid tag alph#a but have full commit log including the missing invalid bet*a tag commit 147s - $ git tag -l 147s - alph#a 147s - gamm_a 147s - 147s - $ cd .. 147s - $ hg clone -U gitrepo hgrepo2 147s - importing 4 git commits 147s - new changesets ff7a2f2d8d70:0950ab44ea23 (4 drafts) 147s - $ hg -R hgrepo2 log --graph 147s - o changeset: 3:0950ab44ea23 147s - | bookmark: delt#a 147s - | bookmark: master 147s - | tag: default/delt#a 147s - | tag: default/master 147s - | tag: tip 147s - | user: test 147s - | date: Mon Jan 01 00:00:13 2007 +0000 147s - | summary: Added tag gamm a for changeset 0b27ab2b3df6 147s - | 147s - o changeset: 2:0b27ab2b3df6 147s - | tag: gamm a 147s - | tag: gamm_a 147s - | user: test 147s - | date: Mon Jan 01 00:00:12 2007 +0000 147s - | summary: Added tag bet*a for changeset 491ceeb1b0f1 147s - | 147s - o changeset: 1:491ceeb1b0f1 147s - | tag: bet*a 147s - | user: test 147s - | date: Mon Jan 01 00:00:11 2007 +0000 147s - | summary: Added tag alph#a for changeset ff7a2f2d8d70 147s - | 147s - o changeset: 0:ff7a2f2d8d70 147s - bookmark: not-master 147s - tag: alph#a 147s - tag: default/not-master 147s - user: test 147s - date: Mon Jan 01 00:00:10 2007 +0000 147s - summary: add alpha 147s - 147s - 147s -the tag should be in .hgtags 147s - $ hg cat -r master hgrepo2/.hgtags 147s - ff7a2f2d8d7099694ae1e8b03838d40575bebb63 alph#a 147s - 491ceeb1b0f10d65d956dfcdd3470ac2bc2c96a8 bet*a 147s - 0b27ab2b3df69c6f7defd7040b93e539136db5be gamm a 147s 147s ERROR: test-invalid-refs.t output changed 147s ! 147s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-workflow.t 147s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-workflow.t.err 147s @@ -39,11 +39,68 @@ 147s $ hg debuggitdir 147s $TESTTMP/gitrepo/.git 147s $ hg gexport 147s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 147s + ** which supports versions 6.9 of Mercurial. 147s + ** Please disable "hggit" and try your action again. 147s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 147s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 147s + ** Mercurial Distributed SCM (version 7.0.1) 147s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 147s + Traceback (most recent call last): 147s + File "/usr/bin/hg", line 51, in 147s + dispatch.run() 147s + ~~~~~~~~~~~~^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 147s + status = dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 147s + status = _rundispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 147s + ret = _runcatch(req) or 0 147s + ~~~~~~~~~^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 147s + return _callcatch(ui, _runcatchfunc) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 147s + return scmutil.callcatch(ui, func) 147s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 147s + return func() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 147s + return _dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 147s + return runcommand( 147s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 147s + ) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 147s + ret = _runcommand(ui, options, cmd, d) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 147s + return cmdfunc() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 147s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 147s + return func(*args, **kwargs) 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 147s + repo.githandler.export_commits() 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 147s + self.export_git_objects() 147s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 147s + packer.pack(synchronous=True) 147s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 147s + _process_batch(self.ui, self.object_store, todo) 147s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 147s + object_store._remove_loose_object(obj.id) 147s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 147s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 147s + [1] 147s 147s do some work 147s $ git config core.bare false 147s $ git checkout master 2>&1 | sed s/\'/\"/g 147s - Already on "master" 147s + error: pathspec "master" did not match any file(s) known to git 147s $ echo beta > beta 147s $ git add beta 147s $ fn_git_commit -m 'add beta' 147s @@ -51,25 +108,79 @@ 147s get things back to hg 147s $ hg gimport 147s importing 1 git commits 147s - updating bookmark master 147s - new changesets 9f124f3c1fc2 (1 drafts) 147s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 147s + ** which supports versions 6.9 of Mercurial. 147s + ** Please disable "hggit" and try your action again. 147s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 147s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 147s + ** Mercurial Distributed SCM (version 7.0.1) 147s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 147s + Traceback (most recent call last): 147s + File "/usr/bin/hg", line 51, in 147s + dispatch.run() 147s + ~~~~~~~~~~~~^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 147s + status = dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 147s + status = _rundispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 147s + ret = _runcatch(req) or 0 147s + ~~~~~~~~~^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 147s + return _callcatch(ui, _runcatchfunc) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 147s + return scmutil.callcatch(ui, func) 147s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 147s + return func() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 147s + return _dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 147s + return runcommand( 147s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 147s + ) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 147s + ret = _runcommand(ui, options, cmd, d) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 147s + return cmdfunc() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 147s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 147s + return func(*args, **kwargs) 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 46, in gimport 147s + repo.githandler.import_commits(remote_name) 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 388, in import_commits 147s + self.import_git_objects(b'gimport', remote_names, refs) 147s + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 147s + self.import_git_commit( 147s + ~~~~~~~~~~~~~~~~~~~~~~^ 147s + command, 147s + ^^^^^^^^ 147s + self.git[commit.sha], 147s + ^^^^^^^^^^^^^^^^^^^^^ 147s + commit.phase, 147s + ^^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 147s + files, gitlinks, git_renames = self.get_files_changed( 147s + ~~~~~~~~~~~~~~~~~~~~~~^ 147s + commit, detect_renames 147s + ^^^^^^^^^^^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 147s + oldfile, oldmode, oldsha = change.old 147s + ^^^^^^^^^^^^^^^^^^^^^^^^ 147s + TypeError: cannot unpack non-iterable NoneType object 147s + [1] 147s $ hg log --graph --debug | grep -v phase: 147s - o changeset: 1:9f124f3c1fc29a14f5eb027c24811b0ac9d5ff10 147s - | bookmark: master 147s - | tag: tip 147s - | parent: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2 147s - | parent: -1:0000000000000000000000000000000000000000 147s - | manifest: 1:f0bd6fbafbaebe4bb59c35108428f6fce152431d 147s - | user: test 147s - | date: Mon Jan 01 00:00:11 2007 +0000 147s - | files+: beta 147s - | extra: branch=default 147s - | extra: hg-git-rename-source=git 147s - | description: 147s - | add beta 147s - | 147s - | 147s o changeset: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2 147s + bookmark: master 147s + tag: tip 147s parent: -1:0000000000000000000000000000000000000000 147s parent: -1:0000000000000000000000000000000000000000 147s manifest: 0:8b8a0e87dfd7a0706c0524afa8ba67e20544cbf0 147s @@ -83,7 +194,7 @@ 147s 147s gimport should have updated the bookmarks as well 147s $ hg bookmarks 147s - master 1:9f124f3c1fc2 147s + master 0:0221c246a567 147s 147s gimport support for git.mindate 147s $ cat >> .hg/hgrc << EOF 147s @@ -98,14 +209,9 @@ 147s $ hg gimport 147s no changes found 147s $ hg log --graph 147s - o changeset: 1:9f124f3c1fc2 147s - | bookmark: master 147s - | tag: tip 147s - | user: test 147s - | date: Mon Jan 01 00:00:11 2007 +0000 147s - | summary: add beta 147s - | 147s o changeset: 0:0221c246a567 147s + bookmark: master 147s + tag: tip 147s user: test 147s date: Mon Jan 01 00:00:10 2007 +0000 147s summary: add alpha 147s @@ -117,28 +223,80 @@ 147s > GIT_COMMITTER_DATE="2014-01-02 00:00:00 +0000" \ 147s > git commit -m newcommit > /dev/null || echo "git commit error" 147s $ hg gimport 147s - importing 2 git commits 147s - updating bookmark master 147s - new changesets befdecd14df5:3d10b7289d79 (2 drafts) 147s + importing 3 git commits 147s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 147s + ** which supports versions 6.9 of Mercurial. 147s + ** Please disable "hggit" and try your action again. 147s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 147s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 147s + ** Mercurial Distributed SCM (version 7.0.1) 147s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 147s + Traceback (most recent call last): 147s + File "/usr/bin/hg", line 51, in 147s + dispatch.run() 147s + ~~~~~~~~~~~~^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 147s + status = dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 147s + status = _rundispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 147s + ret = _runcatch(req) or 0 147s + ~~~~~~~~~^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 147s + return _callcatch(ui, _runcatchfunc) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 147s + return scmutil.callcatch(ui, func) 147s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 147s + return func() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 147s + return _dispatch(req) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 147s + return runcommand( 147s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 147s + ) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 147s + ret = _runcommand(ui, options, cmd, d) 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 147s + return cmdfunc() 147s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 147s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 147s + return func(*args, **kwargs) 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 46, in gimport 147s + repo.githandler.import_commits(remote_name) 147s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 388, in import_commits 147s + self.import_git_objects(b'gimport', remote_names, refs) 147s + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 147s + self.import_git_commit( 147s + ~~~~~~~~~~~~~~~~~~~~~~^ 147s + command, 147s + ^^^^^^^^ 147s + self.git[commit.sha], 147s + ^^^^^^^^^^^^^^^^^^^^^ 147s + commit.phase, 147s + ^^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 147s + files, gitlinks, git_renames = self.get_files_changed( 147s + ~~~~~~~~~~~~~~~~~~~~~~^ 147s + commit, detect_renames 147s + ^^^^^^^^^^^^^^^^^^^^^^ 147s + ) 147s + ^ 147s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 147s + oldfile, oldmode, oldsha = change.old 147s + ^^^^^^^^^^^^^^^^^^^^^^^^ 147s + TypeError: cannot unpack non-iterable NoneType object 147s + [1] 147s $ hg log --graph 147s - o changeset: 3:3d10b7289d79 147s - | bookmark: master 147s - | tag: tip 147s - | user: test 147s - | date: Wed Jan 01 00:00:00 2014 +0000 147s - | summary: newcommit 147s - | 147s - o changeset: 2:befdecd14df5 147s - | user: test 147s - | date: Sat Mar 01 00:00:00 2014 +0000 147s - | summary: oldcommit 147s - | 147s - o changeset: 1:9f124f3c1fc2 147s - | user: test 147s - | date: Mon Jan 01 00:00:11 2007 +0000 147s - | summary: add beta 147s - | 147s o changeset: 0:0221c246a567 147s + bookmark: master 147s + tag: tip 147s user: test 147s date: Mon Jan 01 00:00:10 2007 +0000 147s summary: add alpha 147s 147s ERROR: test-git-workflow.t output changed 148s ! 148s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-serve-hg.t 148s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-serve-hg.t#with-hggit.err 148s @@ -32,10 +32,101 @@ 148s 148s $ hg clone gitrepo hgrepo 148s importing 2 git commits 148s - new changesets f488b65fa424:c61c38c3d614 (2 drafts) 148s - updating to bookmark master 148s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 148s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 148s + ** which supports versions 6.9 of Mercurial. 148s + ** Please disable "hggit" and try your action again. 148s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 148s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 148s + ** Mercurial Distributed SCM (version 7.0.1) 148s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 148s + Traceback (most recent call last): 148s + File "/usr/bin/hg", line 51, in 148s + dispatch.run() 148s + ~~~~~~~~~~~~^^ 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 148s + status = dispatch(req) 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 148s + status = _rundispatch(req) 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 148s + ret = _runcatch(req) or 0 148s + ~~~~~~~~~^^^^^ 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 148s + return _callcatch(ui, _runcatchfunc) 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 148s + return scmutil.callcatch(ui, func) 148s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 148s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 148s + return func() 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 148s + return _dispatch(req) 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 148s + return runcommand( 148s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 148s + ) 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 148s + ret = _runcommand(ui, options, cmd, d) 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 148s + return cmdfunc() 148s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 148s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 148s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 148s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 148s + return func(*args, **kwargs) 148s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 148s + r = hg.clone( 148s + ui, 148s + ...<11 lines>... 148s + depth=opts.get('depth') or None, 148s + ) 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 148s + srcpeer, destpeer = orig(*args, **opts) 148s + ~~~~^^^^^^^^^^^^^^^ 148s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 148s + exchange.pull( 148s + ~~~~~~~~~~~~~^ 148s + local, 148s + ^^^^^^ 148s + ...<5 lines>... 148s + depth=depth, 148s + ^^^^^^^^^^^^ 148s + ) 148s + ^ 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 148s + return f(*args, **kwargs) 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 148s + pullop.cgresult = repo.githandler.fetch(remote, heads) 148s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 148s + imported = self.import_git_objects( 148s + b'pull', 148s + ...<2 lines>... 148s + heads=heads, 148s + ) 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 148s + self.import_git_commit( 148s + ~~~~~~~~~~~~~~~~~~~~~~^ 148s + command, 148s + ^^^^^^^^ 148s + self.git[commit.sha], 148s + ^^^^^^^^^^^^^^^^^^^^^ 148s + commit.phase, 148s + ^^^^^^^^^^^^^ 148s + ) 148s + ^ 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 148s + files, gitlinks, git_renames = self.get_files_changed( 148s + ~~~~~~~~~~~~~~~~~~~~~~^ 148s + commit, detect_renames 148s + ^^^^^^^^^^^^^^^^^^^^^^ 148s + ) 148s + ^ 148s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 148s + oldfile, oldmode, oldsha = change.old 148s + ^^^^^^^^^^^^^^^^^^^^^^^^ 148s + TypeError: cannot unpack non-iterable NoneType object 148s + [1] 148s $ cd hgrepo 148s + $TESTTMP.sh: 41: cd: can't cd to hgrepo 148s $ cat >> .hg/hgrc < [push] 148s > pushvars.server = true 148s @@ -45,81 +136,3 @@ 148s > [hooks] 148s > pretxnchangegroup = env | grep HG_USERVAR_ || true 148s > EOF 148s - $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log 148s - $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid 148s - 148s -Test server address cannot be reused 148s - 148s -#if windows 148s - $ hg serve -p $HGPORT1 2>&1 148s - abort: cannot start server at '*:$HGPORT1': * (glob) 148s - [255] 148s -#else 148s - $ hg serve -p $HGPORT1 2>&1 148s - abort: cannot start server at '*:$HGPORT1': Address* in use (glob) 148s - [255] 148s -#endif 148s - $ cd .. 148s - $ cat hg1.pid hg2.pid >> $DAEMON_PIDS 148s - 148s -Make sure that clone regular mercurial repos over http doesn't break, 148s -and that we can transfer the hg-git metadata 148s - 148s - $ hg clone http://localhost:$HGPORT/ copy 2>&1 148s - requesting all changes 148s - adding changesets 148s - adding manifests 148s - adding file changes 148s - added 2 changesets with 4 changes to 4 files 148s - new changesets f488b65fa424:c61c38c3d614 (?) 148s - updating to branch default 148s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 148s - 148s -And it shouldn't create a Git repository needlessly: 148s - $ test -e copy/git 148s - [1] 148s - $ cd copy 148s - 148s -#if without-hggit 148s - $ hg tags 148s - tip 1:c61c38c3d614 148s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 148s - 1:c61c38c3d614 | master | | 148s - 0:f488b65fa424 | | | 148s - $ hg pull -u ../gitrepo 148s - pulling from ../gitrepo 148s - importing 2 git commits 148s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 148s -#else 148s - $ hg tags 148s - tip 1:c61c38c3d614 148s - thetag 0:f488b65fa424 148s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 148s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 148s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 148s - $ hg pull -u ../gitrepo 148s - pulling from ../gitrepo 148s - warning: created new git repository at $TESTTMP/copy/.hg/git 148s - no changes found 148s -#endif 148s - 148s - $ hg tags 148s - tip 1:c61c38c3d614 148s - thetag 0:f488b65fa424 148s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 148s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 148s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 148s - 148s -Furthermore, make sure that we pass all arguments when pushing: 148s - 148s - $ echo baz > baz 148s - $ fn_hg_commit -A -m baz 148s - $ hg push --pushvars FOO=BAR 148s - pushing to http://localhost:$HGPORT/ 148s - searching for changes 148s - remote: adding changesets 148s - remote: adding manifests 148s - remote: adding file changes 148s - remote: HG_USERVAR_FOO=BAR 148s - remote: added 1 changesets with 1 changes to 1 files 148s - $ cd .. 148s 148s ERROR: test-serve-hg.t#with-hggit output changed 149s ! 149s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-serve-hg.t 149s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-serve-hg.t#without-hggit.err 149s @@ -32,10 +32,101 @@ 149s 149s $ hg clone gitrepo hgrepo 149s importing 2 git commits 149s - new changesets f488b65fa424:c61c38c3d614 (2 drafts) 149s - updating to bookmark master 149s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 149s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 149s + ** which supports versions 6.9 of Mercurial. 149s + ** Please disable "hggit" and try your action again. 149s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 149s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 149s + ** Mercurial Distributed SCM (version 7.0.1) 149s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 149s + Traceback (most recent call last): 149s + File "/usr/bin/hg", line 51, in 149s + dispatch.run() 149s + ~~~~~~~~~~~~^^ 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 149s + status = dispatch(req) 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 149s + status = _rundispatch(req) 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 149s + ret = _runcatch(req) or 0 149s + ~~~~~~~~~^^^^^ 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 149s + return _callcatch(ui, _runcatchfunc) 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 149s + return scmutil.callcatch(ui, func) 149s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 149s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 149s + return func() 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 149s + return _dispatch(req) 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 149s + return runcommand( 149s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 149s + ) 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 149s + ret = _runcommand(ui, options, cmd, d) 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 149s + return cmdfunc() 149s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 149s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 149s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 149s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 149s + return func(*args, **kwargs) 149s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 149s + r = hg.clone( 149s + ui, 149s + ...<11 lines>... 149s + depth=opts.get('depth') or None, 149s + ) 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 149s + srcpeer, destpeer = orig(*args, **opts) 149s + ~~~~^^^^^^^^^^^^^^^ 149s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 149s + exchange.pull( 149s + ~~~~~~~~~~~~~^ 149s + local, 149s + ^^^^^^ 149s + ...<5 lines>... 149s + depth=depth, 149s + ^^^^^^^^^^^^ 149s + ) 149s + ^ 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 149s + return f(*args, **kwargs) 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 149s + pullop.cgresult = repo.githandler.fetch(remote, heads) 149s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 149s + imported = self.import_git_objects( 149s + b'pull', 149s + ...<2 lines>... 149s + heads=heads, 149s + ) 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 149s + self.import_git_commit( 149s + ~~~~~~~~~~~~~~~~~~~~~~^ 149s + command, 149s + ^^^^^^^^ 149s + self.git[commit.sha], 149s + ^^^^^^^^^^^^^^^^^^^^^ 149s + commit.phase, 149s + ^^^^^^^^^^^^^ 149s + ) 149s + ^ 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 149s + files, gitlinks, git_renames = self.get_files_changed( 149s + ~~~~~~~~~~~~~~~~~~~~~~^ 149s + commit, detect_renames 149s + ^^^^^^^^^^^^^^^^^^^^^^ 149s + ) 149s + ^ 149s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 149s + oldfile, oldmode, oldsha = change.old 149s + ^^^^^^^^^^^^^^^^^^^^^^^^ 149s + TypeError: cannot unpack non-iterable NoneType object 149s + [1] 149s $ cd hgrepo 149s + $TESTTMP.sh: 36: cd: can't cd to hgrepo 149s $ cat >> .hg/hgrc < [push] 149s > pushvars.server = true 149s @@ -45,81 +136,3 @@ 149s > [hooks] 149s > pretxnchangegroup = env | grep HG_USERVAR_ || true 149s > EOF 149s - $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log 149s - $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid 149s - 149s -Test server address cannot be reused 149s - 149s -#if windows 149s - $ hg serve -p $HGPORT1 2>&1 149s - abort: cannot start server at '*:$HGPORT1': * (glob) 149s - [255] 149s -#else 149s - $ hg serve -p $HGPORT1 2>&1 149s - abort: cannot start server at '*:$HGPORT1': Address* in use (glob) 149s - [255] 149s -#endif 149s - $ cd .. 149s - $ cat hg1.pid hg2.pid >> $DAEMON_PIDS 149s - 149s -Make sure that clone regular mercurial repos over http doesn't break, 149s -and that we can transfer the hg-git metadata 149s - 149s - $ hg clone http://localhost:$HGPORT/ copy 2>&1 149s - requesting all changes 149s - adding changesets 149s - adding manifests 149s - adding file changes 149s - added 2 changesets with 4 changes to 4 files 149s - new changesets f488b65fa424:c61c38c3d614 (?) 149s - updating to branch default 149s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 149s - 149s -And it shouldn't create a Git repository needlessly: 149s - $ test -e copy/git 149s - [1] 149s - $ cd copy 149s - 149s -#if without-hggit 149s - $ hg tags 149s - tip 1:c61c38c3d614 149s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 149s - 1:c61c38c3d614 | master | | 149s - 0:f488b65fa424 | | | 149s - $ hg pull -u ../gitrepo 149s - pulling from ../gitrepo 149s - importing 2 git commits 149s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 149s -#else 149s - $ hg tags 149s - tip 1:c61c38c3d614 149s - thetag 0:f488b65fa424 149s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 149s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 149s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 149s - $ hg pull -u ../gitrepo 149s - pulling from ../gitrepo 149s - warning: created new git repository at $TESTTMP/copy/.hg/git 149s - no changes found 149s -#endif 149s - 149s - $ hg tags 149s - tip 1:c61c38c3d614 149s - thetag 0:f488b65fa424 149s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 149s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 149s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 149s - 149s -Furthermore, make sure that we pass all arguments when pushing: 149s - 149s - $ echo baz > baz 149s - $ fn_hg_commit -A -m baz 149s - $ hg push --pushvars FOO=BAR 149s - pushing to http://localhost:$HGPORT/ 149s - searching for changes 149s - remote: adding changesets 149s - remote: adding manifests 149s - remote: adding file changes 149s - remote: HG_USERVAR_FOO=BAR 149s - remote: added 1 changesets with 1 changes to 1 files 149s - $ cd .. 149s 149s ERROR: test-serve-hg.t#without-hggit output changed 154s ! 154s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-authors.t 154s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-authors.t.err 154s @@ -73,11 +73,80 @@ 154s 154s $ hg push 154s pushing to $TESTTMP/repo.git 154s - searching for changes 154s - adding objects 154s - remote: found 0 deltas to reuse 154s - added 6 commits with 6 trees and 1 blobs 154s - adding reference refs/heads/master 154s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 154s + ** which supports versions 6.9 of Mercurial. 154s + ** Please disable "hggit" and try your action again. 154s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 154s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 154s + ** Mercurial Distributed SCM (version 7.0.1) 154s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 154s + Traceback (most recent call last): 154s + File "/usr/bin/hg", line 51, in 154s + dispatch.run() 154s + ~~~~~~~~~~~~^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 154s + status = dispatch(req) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 154s + status = _rundispatch(req) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 154s + ret = _runcatch(req) or 0 154s + ~~~~~~~~~^^^^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 154s + return _callcatch(ui, _runcatchfunc) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 154s + return scmutil.callcatch(ui, func) 154s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 154s + return func() 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 154s + return _dispatch(req) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 154s + return runcommand( 154s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 154s + ) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 154s + ret = _runcommand(ui, options, cmd, d) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 154s + return cmdfunc() 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 154s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 154s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 154s + return func(*args, **kwargs) 154s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 154s + pushop = exchange.push( 154s + repo, 154s + ...<6 lines>... 154s + opargs=opargs, 154s + ) 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 154s + return f(*args, **kwargs) 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 154s + pushop.cgresult = repo.githandler.push( 154s + ~~~~~~~~~~~~~~~~~~~~^ 154s + remote.path, revs, bookmarks, force 154s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 154s + ) 154s + ^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 154s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 154s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 154s + all_exportable = self.export_commits() 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 154s + self.export_git_objects() 154s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 154s + packer.pack(synchronous=True) 154s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 154s + _process_batch(self.ui, self.object_store, todo) 154s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 154s + object_store._remove_loose_object(obj.id) 154s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 154s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 154s + [1] 154s 154s Check the results: 154s 154s @@ -107,28 +176,6 @@ 154s User #3 = user3@example.com 154s user4 = 154s $ git log --pretty='tformat:Commit: %H%nAuthor: %an <%ae>%nCommitter: %cn <%ce>%n---' 154s - Commit: 869e310765d5d7ad92f83bf036e12b0341922a65 154s - Author: test 154s - Committer: test 154s - --- 154s - Commit: b5c0fcb75f876b158ece64859400d36b07570ce9 154s - Author: User #5 154s - Committer: User #5 154s - --- 154s - Commit: 2833824a870810915f7a7a27c05cccad0448bfd7 154s - Author: 154s - Committer: 154s - --- 154s - Commit: fe63bf29ef0bd4af50e85b8aec8d2fbeff255845 154s - Author: user3@example.com 154s - Committer: user3@example.com 154s - --- 154s - Commit: eba936dd13172a2f17936785e3604845aed9170d 154s - Author: user2 154s - Committer: user2 154s - --- 154s - Commit: 796162e5747a7ba57f31fb828b88319caf7b1f7b 154s - Author: User no. 1 154s - Committer: User no. 1 154s - --- 154s + fatal: your current branch 'master' does not have any commits yet 154s + [128] 154s $ cd .. 154s 154s ERROR: test-push-authors.t output changed 154s ! 154s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-verify-fail.t 154s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-verify-fail.t.err 154s @@ -74,6 +74,63 @@ 154s $ hg debug-remove-hggit-state 154s clearing out the git cache data 154s $ hg gexport 154s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 154s + ** which supports versions 6.9 of Mercurial. 154s + ** Please disable "hggit" and try your action again. 154s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 154s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 154s + ** Mercurial Distributed SCM (version 7.0.1) 154s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 154s + Traceback (most recent call last): 154s + File "/usr/bin/hg", line 51, in 154s + dispatch.run() 154s + ~~~~~~~~~~~~^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 154s + status = dispatch(req) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 154s + status = _rundispatch(req) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 154s + ret = _runcatch(req) or 0 154s + ~~~~~~~~~^^^^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 154s + return _callcatch(ui, _runcatchfunc) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 154s + return scmutil.callcatch(ui, func) 154s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 154s + return func() 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 154s + return _dispatch(req) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 154s + return runcommand( 154s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 154s + ) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 154s + ret = _runcommand(ui, options, cmd, d) 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 154s + return cmdfunc() 154s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 154s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 154s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 154s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 154s + return func(*args, **kwargs) 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 154s + repo.githandler.export_commits() 154s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 154s + self.export_git_objects() 154s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 154s + packer.pack(synchronous=True) 154s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 154s + _process_batch(self.ui, self.object_store, todo) 154s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 154s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 154s + object_store._remove_loose_object(obj.id) 154s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 154s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 154s + [1] 154s $ mv .hg/git/objects/pack $TESTTMP/pack-old 154s $ for packfile in $TESTTMP/pack-old/*.pack 154s > do 154s 154s ERROR: test-verify-fail.t output changed 155s ! 155s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-to-head.t 155s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-to-head.t.err 155s @@ -15,64 +15,99 @@ 155s 155s $ hg clone gitrepo hgrepo 155s importing 1 git commits 155s - new changesets ff7a2f2d8d70 (1 drafts) 155s - updating to bookmark master 155s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 155s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 155s + ** which supports versions 6.9 of Mercurial. 155s + ** Please disable "hggit" and try your action again. 155s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 155s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 155s + ** Mercurial Distributed SCM (version 7.0.1) 155s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 155s + Traceback (most recent call last): 155s + File "/usr/bin/hg", line 51, in 155s + dispatch.run() 155s + ~~~~~~~~~~~~^^ 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 155s + status = dispatch(req) 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 155s + status = _rundispatch(req) 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 155s + ret = _runcatch(req) or 0 155s + ~~~~~~~~~^^^^^ 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 155s + return _callcatch(ui, _runcatchfunc) 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 155s + return scmutil.callcatch(ui, func) 155s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 155s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 155s + return func() 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 155s + return _dispatch(req) 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 155s + return runcommand( 155s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 155s + ) 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 155s + ret = _runcommand(ui, options, cmd, d) 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 155s + return cmdfunc() 155s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 155s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 155s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 155s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 155s + return func(*args, **kwargs) 155s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 155s + r = hg.clone( 155s + ui, 155s + ...<11 lines>... 155s + depth=opts.get('depth') or None, 155s + ) 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 155s + srcpeer, destpeer = orig(*args, **opts) 155s + ~~~~^^^^^^^^^^^^^^^ 155s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 155s + exchange.pull( 155s + ~~~~~~~~~~~~~^ 155s + local, 155s + ^^^^^^ 155s + ...<5 lines>... 155s + depth=depth, 155s + ^^^^^^^^^^^^ 155s + ) 155s + ^ 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 155s + return f(*args, **kwargs) 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 155s + pullop.cgresult = repo.githandler.fetch(remote, heads) 155s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 155s + imported = self.import_git_objects( 155s + b'pull', 155s + ...<2 lines>... 155s + heads=heads, 155s + ) 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 155s + self.import_git_commit( 155s + ~~~~~~~~~~~~~~~~~~~~~~^ 155s + command, 155s + ^^^^^^^^ 155s + self.git[commit.sha], 155s + ^^^^^^^^^^^^^^^^^^^^^ 155s + commit.phase, 155s + ^^^^^^^^^^^^^ 155s + ) 155s + ^ 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 155s + files, gitlinks, git_renames = self.get_files_changed( 155s + ~~~~~~~~~~~~~~~~~~~~~~^ 155s + commit, detect_renames 155s + ^^^^^^^^^^^^^^^^^^^^^^ 155s + ) 155s + ^ 155s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 155s + oldfile, oldmode, oldsha = change.old 155s + ^^^^^^^^^^^^^^^^^^^^^^^^ 155s + TypeError: cannot unpack non-iterable NoneType object 155s + [1] 155s $ cd hgrepo 155s + $TESTTMP.sh: 18: cd: can't cd to hgrepo 155s $ echo beta > beta 155s - $ fn_hg_commit -A -m "add beta" 155s - 155s -The output is confusing, and this even more-so: 155s - 155s - $ hg push 155s - pushing to $TESTTMP/gitrepo 155s - searching for changes 155s - adding objects 155s - remote: found 0 deltas to reuse 155s - remote: error: refusing to update checked out branch: refs/heads/master 155s - remote: error: By default, updating the current branch in a non-bare repository 155s - remote: is denied, because it will make the index and work tree inconsistent 155s - remote: with what you pushed, and will require 'git reset --hard' to match 155s - remote: the work tree to HEAD. 155s - remote: 155s - remote: You can set the 'receive.denyCurrentBranch' configuration variable 155s - remote: to 'ignore' or 'warn' in the remote repository to allow pushing into 155s - remote: its current branch; however, this is not recommended unless you 155s - remote: arranged to update its work tree to match what you pushed in some 155s - remote: other way. 155s - remote: 155s - remote: To squelch this message and still keep the default behaviour, set 155s - remote: 'receive.denyCurrentBranch' configuration variable to 'refuse'. 155s - added 1 commits with 1 trees and 1 blobs 155s - warning: failed to update refs/heads/master; branch is currently checked out 155s - 155s - $ hg push 155s - pushing to $TESTTMP/gitrepo 155s - searching for changes 155s - adding objects 155s - remote: found 0 deltas to reuse 155s - remote: error: refusing to update checked out branch: refs/heads/master 155s - remote: error: By default, updating the current branch in a non-bare repository 155s - remote: is denied, because it will make the index and work tree inconsistent 155s - remote: with what you pushed, and will require 'git reset --hard' to match 155s - remote: the work tree to HEAD. 155s - remote: 155s - remote: You can set the 'receive.denyCurrentBranch' configuration variable 155s - remote: to 'ignore' or 'warn' in the remote repository to allow pushing into 155s - remote: its current branch; however, this is not recommended unless you 155s - remote: arranged to update its work tree to match what you pushed in some 155s - remote: other way. 155s - remote: 155s - remote: To squelch this message and still keep the default behaviour, set 155s - remote: 'receive.denyCurrentBranch' configuration variable to 'refuse'. 155s - added 1 commits with 1 trees and 1 blobs 155s - warning: failed to update refs/heads/master; branch is currently checked out 155s - 155s -Show that it really didn't get pushed: 155s - 155s - $ hg tags 155s - tip 1:47580592d3d6 155s - default/master 0:ff7a2f2d8d70 155s - $ cd ../gitrepo 155s - $ git log --all --oneline --decorate 155s - 7eeab2e (HEAD -> master) add alpha 155s 155s ERROR: test-push-to-head.t output changed 156s ! 156s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-orphan-tags.t 156s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-orphan-tags.t.err 156s @@ -62,16 +62,105 @@ 156s 156s $ hg clone -U repo.git hgrepo 156s importing 4 git commits 156s - new changesets b8e77484829b:387d03400596 (4 drafts) 156s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 156s + ** which supports versions 6.9 of Mercurial. 156s + ** Please disable "hggit" and try your action again. 156s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 156s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 156s + ** Mercurial Distributed SCM (version 7.0.1) 156s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 156s + Traceback (most recent call last): 156s + File "/usr/bin/hg", line 51, in 156s + dispatch.run() 156s + ~~~~~~~~~~~~^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 156s + status = dispatch(req) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 156s + status = _rundispatch(req) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 156s + ret = _runcatch(req) or 0 156s + ~~~~~~~~~^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 156s + return _callcatch(ui, _runcatchfunc) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 156s + return scmutil.callcatch(ui, func) 156s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 156s + return func() 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 156s + return _dispatch(req) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 156s + return runcommand( 156s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 156s + ) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 156s + ret = _runcommand(ui, options, cmd, d) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 156s + return cmdfunc() 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 156s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 156s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 156s + return func(*args, **kwargs) 156s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 156s + r = hg.clone( 156s + ui, 156s + ...<11 lines>... 156s + depth=opts.get('depth') or None, 156s + ) 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 156s + srcpeer, destpeer = orig(*args, **opts) 156s + ~~~~^^^^^^^^^^^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 156s + exchange.pull( 156s + ~~~~~~~~~~~~~^ 156s + local, 156s + ^^^^^^ 156s + ...<5 lines>... 156s + depth=depth, 156s + ^^^^^^^^^^^^ 156s + ) 156s + ^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 156s + return f(*args, **kwargs) 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 156s + pullop.cgresult = repo.githandler.fetch(remote, heads) 156s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 156s + imported = self.import_git_objects( 156s + b'pull', 156s + ...<2 lines>... 156s + heads=heads, 156s + ) 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 156s + self.import_git_commit( 156s + ~~~~~~~~~~~~~~~~~~~~~~^ 156s + command, 156s + ^^^^^^^^ 156s + self.git[commit.sha], 156s + ^^^^^^^^^^^^^^^^^^^^^ 156s + commit.phase, 156s + ^^^^^^^^^^^^^ 156s + ) 156s + ^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 156s + files, gitlinks, git_renames = self.get_files_changed( 156s + ~~~~~~~~~~~~~~~~~~~~~~^ 156s + commit, detect_renames 156s + ^^^^^^^^^^^^^^^^^^^^^^ 156s + ) 156s + ^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 156s + oldfile, oldmode, oldsha = change.old 156s + ^^^^^^^^^^^^^^^^^^^^^^^^ 156s + TypeError: cannot unpack non-iterable NoneType object 156s + [1] 156s $ hg outgoing -R hgrepo 156s - comparing with $TESTTMP/repo.git 156s - searching for changes 156s - no changes found 156s + abort: repository hgrepo not found 156s + [255] 156s + $ hg push --debug -R hgrepo | grep -e reference -e found 156s + abort: repository hgrepo not found 156s [1] 156s - $ hg push --debug -R hgrepo | grep -e reference -e found 156s - unchanged reference default::refs/heads/master => GIT:996e5084 156s - unchanged reference default::refs/tags/the_tag => GIT:e4338156 156s - no changes found 156s 156s Verify that we can push this tag, and that outgoing doesn't report 156s them (#358) 156s @@ -83,33 +172,5 @@ 156s To $TESTTMP/repo.git 156s - [deleted] the_tag 156s $ cd ../hgrepo 156s + $TESTTMP.sh: 72: cd: can't cd to ../hgrepo 156s $ hg outgoing 156s - comparing with $TESTTMP/repo.git 156s - searching for changes 156s - changeset: 2:7b35eb0afb3f 156s - tag: the_tag 156s - user: test 156s - date: Mon Jan 01 00:00:12 2007 +0000 156s - summary: add foo3 156s - 156s - $ hg push --debug 156s - pushing to $TESTTMP/repo.git 156s - finding unexported changesets 156s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 156s - searching for changes 156s - remote: counting objects: 5, done. 156s - 1 commits found 156s - list of commits: 156s - e12852326ef72772e9696b008ad6546b5266ff13 156s - adding objects 156s - remote: counting objects: 5, done. 156s - remote: found 0 deltas to reuse 156s - added 1 commits with 1 trees and 0 blobs 156s - unchanged reference default::refs/heads/master => GIT:996e5084 156s - adding reference default::refs/tags/the_tag => GIT:e4338156 156s - $ cd ../gitrepo 156s - $ git fetch 156s - From $TESTTMP/repo 156s - * [new tag] the_tag -> the_tag 156s - $ git tag -ln 156s - the_tag Tag message 156s 156s ERROR: test-orphan-tags.t output changed 156s ! 156s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-missing-commit.t 156s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-missing-commit.t.err 156s @@ -23,74 +23,99 @@ 156s 156s $ hg clone -U repo.git hgrepo 156s importing 1 git commits 156s - new changesets fb68c5a534ce (1 drafts) 156s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 156s + ** which supports versions 6.9 of Mercurial. 156s + ** Please disable "hggit" and try your action again. 156s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 156s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 156s + ** Mercurial Distributed SCM (version 7.0.1) 156s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 156s + Traceback (most recent call last): 156s + File "/usr/bin/hg", line 51, in 156s + dispatch.run() 156s + ~~~~~~~~~~~~^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 156s + status = dispatch(req) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 156s + status = _rundispatch(req) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 156s + ret = _runcatch(req) or 0 156s + ~~~~~~~~~^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 156s + return _callcatch(ui, _runcatchfunc) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 156s + return scmutil.callcatch(ui, func) 156s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 156s + return func() 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 156s + return _dispatch(req) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 156s + return runcommand( 156s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 156s + ) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 156s + ret = _runcommand(ui, options, cmd, d) 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 156s + return cmdfunc() 156s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 156s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 156s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 156s + return func(*args, **kwargs) 156s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 156s + r = hg.clone( 156s + ui, 156s + ...<11 lines>... 156s + depth=opts.get('depth') or None, 156s + ) 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 156s + srcpeer, destpeer = orig(*args, **opts) 156s + ~~~~^^^^^^^^^^^^^^^ 156s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 156s + exchange.pull( 156s + ~~~~~~~~~~~~~^ 156s + local, 156s + ^^^^^^ 156s + ...<5 lines>... 156s + depth=depth, 156s + ^^^^^^^^^^^^ 156s + ) 156s + ^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 156s + return f(*args, **kwargs) 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 156s + pullop.cgresult = repo.githandler.fetch(remote, heads) 156s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 156s + imported = self.import_git_objects( 156s + b'pull', 156s + ...<2 lines>... 156s + heads=heads, 156s + ) 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 156s + self.import_git_commit( 156s + ~~~~~~~~~~~~~~~~~~~~~~^ 156s + command, 156s + ^^^^^^^^ 156s + self.git[commit.sha], 156s + ^^^^^^^^^^^^^^^^^^^^^ 156s + commit.phase, 156s + ^^^^^^^^^^^^^ 156s + ) 156s + ^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 156s + files, gitlinks, git_renames = self.get_files_changed( 156s + ~~~~~~~~~~~~~~~~~~~~~~^ 156s + commit, detect_renames 156s + ^^^^^^^^^^^^^^^^^^^^^^ 156s + ) 156s + ^ 156s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 156s + oldfile, oldmode, oldsha = change.old 156s + ^^^^^^^^^^^^^^^^^^^^^^^^ 156s + TypeError: cannot unpack non-iterable NoneType object 156s + [1] 156s $ cd hgrepo 156s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 156s $ hg up -q master 156s - $ echo other > thefile 156s - $ fn_hg_commit -m 'change thefile' 156s - $ cd .. 156s - 156s -now remove the git commit from the cache repository used internally by 156s -hg-git — actually, changing `git.intree` is equivalent to this, and how 156s -a user noticed it in #376. 156s - 156s - $ rm -rf hgrepo/.hg/git 156s - 156s -what happens when we push it? 156s - 156s - $ hg -R hgrepo push 156s - pushing to $TESTTMP/repo.git 156s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 156s - abort: cannot push git commit 533d4e670a8b as it is not present locally 156s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 156s - [255] 156s - 156s -try to follow the hint: 156s - 156s -(and just to see that the warning is useful, try re-resetting first) 156s - 156s - $ rm -rf hgrepo/.hg/git hgrepo/.git 156s - $ hg -R hgrepo pull 156s - pulling from $TESTTMP/repo.git 156s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 156s - no changes found 156s - not updating diverged bookmark master 156s - $ hg -R hgrepo push 156s - pushing to $TESTTMP/repo.git 156s - searching for changes 156s - adding objects 156s - remote: found 0 deltas to reuse 156s - added 1 commits with 1 trees and 1 blobs 156s - updating reference refs/heads/master 156s - 156s -and as an extra test, what if we want to push a commit that's 156s -converted, but gone? 156s - 156s -simply pushing doesn't suffice: 156s - 156s - $ cd hgrepo 156s - $ rm -rf .hg/git 156s - $ hg push 156s - pushing to $TESTTMP/repo.git 156s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 156s - searching for changes 156s - no changes found 156s - [1] 156s - $ cd .. 156s - 156s -but we can't create another commit building on the git history, export 156s -it, and push: 156s - 156s - $ cd hgrepo 156s - $ echo not that > thefile 156s - $ fn_hg_commit -m 'change thefile again' 156s - $ hg gexport 156s - $ rm -rf .hg/git 156s - $ hg push 156s - pushing to $TESTTMP/repo.git 156s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 156s - searching for changes 156s - abort: cannot push git commit 61619410916a as it is not present locally 156s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 156s - [255] 156s - $ cd .. 156s 156s ERROR: test-push-missing-commit.t output changed 157s ! 157s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-branch.t 157s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-branch.t.err 157s @@ -13,81 +13,100 @@ 157s $ cd .. 157s $ hg clone gitrepo hgrepo 157s importing 1 git commits 157s - new changesets ff7a2f2d8d70 (1 drafts) 157s - updating to bookmark not-master 157s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 157s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 157s + ** which supports versions 6.9 of Mercurial. 157s + ** Please disable "hggit" and try your action again. 157s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 157s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 157s + ** Mercurial Distributed SCM (version 7.0.1) 157s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 157s + Traceback (most recent call last): 157s + File "/usr/bin/hg", line 51, in 157s + dispatch.run() 157s + ~~~~~~~~~~~~^^ 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 157s + status = dispatch(req) 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 157s + status = _rundispatch(req) 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 157s + ret = _runcatch(req) or 0 157s + ~~~~~~~~~^^^^^ 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 157s + return _callcatch(ui, _runcatchfunc) 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 157s + return scmutil.callcatch(ui, func) 157s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 157s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 157s + return func() 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 157s + return _dispatch(req) 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 157s + return runcommand( 157s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 157s + ) 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 157s + ret = _runcommand(ui, options, cmd, d) 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 157s + return cmdfunc() 157s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 157s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 157s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 157s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 157s + return func(*args, **kwargs) 157s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 157s + r = hg.clone( 157s + ui, 157s + ...<11 lines>... 157s + depth=opts.get('depth') or None, 157s + ) 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 157s + srcpeer, destpeer = orig(*args, **opts) 157s + ~~~~^^^^^^^^^^^^^^^ 157s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 157s + exchange.pull( 157s + ~~~~~~~~~~~~~^ 157s + local, 157s + ^^^^^^ 157s + ...<5 lines>... 157s + depth=depth, 157s + ^^^^^^^^^^^^ 157s + ) 157s + ^ 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 157s + return f(*args, **kwargs) 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 157s + pullop.cgresult = repo.githandler.fetch(remote, heads) 157s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 157s + imported = self.import_git_objects( 157s + b'pull', 157s + ...<2 lines>... 157s + heads=heads, 157s + ) 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 157s + self.import_git_commit( 157s + ~~~~~~~~~~~~~~~~~~~~~~^ 157s + command, 157s + ^^^^^^^^ 157s + self.git[commit.sha], 157s + ^^^^^^^^^^^^^^^^^^^^^ 157s + commit.phase, 157s + ^^^^^^^^^^^^^ 157s + ) 157s + ^ 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 157s + files, gitlinks, git_renames = self.get_files_changed( 157s + ~~~~~~~~~~~~~~~~~~~~~~^ 157s + commit, detect_renames 157s + ^^^^^^^^^^^^^^^^^^^^^^ 157s + ) 157s + ^ 157s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 157s + oldfile, oldmode, oldsha = change.old 157s + ^^^^^^^^^^^^^^^^^^^^^^^^ 157s + TypeError: cannot unpack non-iterable NoneType object 157s + [1] 157s 157s $ cd hgrepo 157s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 157s $ hg co master 157s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 157s - (activating bookmark master) 157s - $ hg mv alpha beta 157s - $ fn_hg_commit -m 'rename alpha to beta' 157s - $ hg push 157s - pushing to $TESTTMP/gitrepo 157s - searching for changes 157s - adding objects 157s - remote: found 0 deltas to reuse 157s - added 1 commits with 1 trees and 0 blobs 157s - updating reference refs/heads/master 157s - 157s - $ hg branch gamma | grep -v 'permanent and global' 157s - marked working directory as branch gamma 157s - $ fn_hg_commit -m 'started branch gamma' 157s - $ hg push 157s - pushing to $TESTTMP/gitrepo 157s - searching for changes 157s - adding objects 157s - remote: found 0 deltas to reuse 157s - added 1 commits with 1 trees and 0 blobs 157s - updating reference refs/heads/master 157s - 157s - $ hg log --graph 157s - @ changeset: 2:400db38f4f64 157s - | branch: gamma 157s - | bookmark: master 157s - | tag: default/master 157s - | tag: tip 157s - | user: test 157s - | date: Mon Jan 01 00:00:12 2007 +0000 157s - | summary: started branch gamma 157s - | 157s - o changeset: 1:3baa67317a4d 157s - | user: test 157s - | date: Mon Jan 01 00:00:11 2007 +0000 157s - | summary: rename alpha to beta 157s - | 157s - o changeset: 0:ff7a2f2d8d70 157s - bookmark: not-master 157s - tag: default/not-master 157s - user: test 157s - date: Mon Jan 01 00:00:10 2007 +0000 157s - summary: add alpha 157s - 157s - 157s - $ cd .. 157s - $ hg clone -U gitrepo hgrepo2 157s - importing 3 git commits 157s - new changesets ff7a2f2d8d70:400db38f4f64 (3 drafts) 157s - $ hg -R hgrepo2 log --graph 157s - o changeset: 2:400db38f4f64 157s - | branch: gamma 157s - | bookmark: master 157s - | tag: default/master 157s - | tag: tip 157s - | user: test 157s - | date: Mon Jan 01 00:00:12 2007 +0000 157s - | summary: started branch gamma 157s - | 157s - o changeset: 1:3baa67317a4d 157s - | user: test 157s - | date: Mon Jan 01 00:00:11 2007 +0000 157s - | summary: rename alpha to beta 157s - | 157s - o changeset: 0:ff7a2f2d8d70 157s - bookmark: not-master 157s - tag: default/not-master 157s - user: test 157s - date: Mon Jan 01 00:00:10 2007 +0000 157s - summary: add alpha 157s - 157s 157s ERROR: test-hg-branch.t output changed 158s ! 158s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull-after-strip.t 158s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull-after-strip.t.err 158s @@ -16,81 +16,99 @@ 158s $ cd .. 158s $ hg clone -U gitrepo hgrepo 158s importing 2 git commits 158s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 158s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 158s + ** which supports versions 6.9 of Mercurial. 158s + ** Please disable "hggit" and try your action again. 158s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 158s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 158s + ** Mercurial Distributed SCM (version 7.0.1) 158s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 158s + Traceback (most recent call last): 158s + File "/usr/bin/hg", line 51, in 158s + dispatch.run() 158s + ~~~~~~~~~~~~^^ 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 158s + status = dispatch(req) 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 158s + status = _rundispatch(req) 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 158s + ret = _runcatch(req) or 0 158s + ~~~~~~~~~^^^^^ 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 158s + return _callcatch(ui, _runcatchfunc) 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 158s + return scmutil.callcatch(ui, func) 158s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 158s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 158s + return func() 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 158s + return _dispatch(req) 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 158s + return runcommand( 158s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 158s + ) 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 158s + ret = _runcommand(ui, options, cmd, d) 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 158s + return cmdfunc() 158s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 158s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 158s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 158s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 158s + return func(*args, **kwargs) 158s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 158s + r = hg.clone( 158s + ui, 158s + ...<11 lines>... 158s + depth=opts.get('depth') or None, 158s + ) 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 158s + srcpeer, destpeer = orig(*args, **opts) 158s + ~~~~^^^^^^^^^^^^^^^ 158s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 158s + exchange.pull( 158s + ~~~~~~~~~~~~~^ 158s + local, 158s + ^^^^^^ 158s + ...<5 lines>... 158s + depth=depth, 158s + ^^^^^^^^^^^^ 158s + ) 158s + ^ 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 158s + return f(*args, **kwargs) 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 158s + pullop.cgresult = repo.githandler.fetch(remote, heads) 158s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 158s + imported = self.import_git_objects( 158s + b'pull', 158s + ...<2 lines>... 158s + heads=heads, 158s + ) 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 158s + self.import_git_commit( 158s + ~~~~~~~~~~~~~~~~~~~~~~^ 158s + command, 158s + ^^^^^^^^ 158s + self.git[commit.sha], 158s + ^^^^^^^^^^^^^^^^^^^^^ 158s + commit.phase, 158s + ^^^^^^^^^^^^^ 158s + ) 158s + ^ 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 158s + files, gitlinks, git_renames = self.get_files_changed( 158s + ~~~~~~~~~~~~~~~~~~~~~~^ 158s + commit, detect_renames 158s + ^^^^^^^^^^^^^^^^^^^^^^ 158s + ) 158s + ^ 158s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 158s + oldfile, oldmode, oldsha = change.old 158s + ^^^^^^^^^^^^^^^^^^^^^^^^ 158s + TypeError: cannot unpack non-iterable NoneType object 158s + [1] 158s $ cd hgrepo 158s + $TESTTMP.sh: 26: cd: can't cd to hgrepo 158s $ hg up master 158s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 158s - (activating bookmark master) 158s - $ hg log --graph 158s - @ changeset: 1:7fe02317c63d 158s - | bookmark: master 158s - | tag: default/master 158s - | tag: thetag 158s - | tag: tip 158s - | user: test 158s - | date: Mon Jan 01 00:00:11 2007 +0000 158s - | summary: add beta 158s - | 158s - o changeset: 0:ff7a2f2d8d70 158s - user: test 158s - date: Mon Jan 01 00:00:10 2007 +0000 158s - summary: add alpha 158s - 158s - $ cd ../gitrepo 158s - $ echo beta line 2 >> beta 158s - $ git add beta 158s - $ fn_git_commit -m 'add to beta' 158s - 158s - $ cd .. 158s - $ cd hgrepo 158s - $ hg debugstrip --no-backup tip 158s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 158s - $ hg pull 158s - pulling from $TESTTMP/gitrepo 158s - importing 1 git commits 158s - abort: you appear to have run strip - please run hg git-cleanup 158s - [255] 158s - $ hg tags 158s - tip 0:ff7a2f2d8d70 158s - $ hg git-cleanup 158s - git commit map cleaned 158s - 158s -pull works after 'hg git-cleanup' 158s - 158s - $ hg pull 158s - pulling from $TESTTMP/gitrepo 158s - importing 2 git commits 158s - updating bookmark master 158s - new changesets 7fe02317c63d:cc1e605d90db (2 drafts) 158s - (run 'hg update' to get a working copy) 158s - $ hg log --graph 158s - o changeset: 2:cc1e605d90db 158s - | bookmark: master 158s - | tag: default/master 158s - | tag: tip 158s - | user: test 158s - | date: Mon Jan 01 00:00:12 2007 +0000 158s - | summary: add to beta 158s - | 158s - o changeset: 1:7fe02317c63d 158s - | tag: thetag 158s - | user: test 158s - | date: Mon Jan 01 00:00:11 2007 +0000 158s - | summary: add beta 158s - | 158s - @ changeset: 0:ff7a2f2d8d70 158s - user: test 158s - date: Mon Jan 01 00:00:10 2007 +0000 158s - summary: add alpha 158s - 158s - 158s - $ cd .. 158s - 158s -Check that we also remove bad refs: 158s - 158s - $ cd hgrepo 158s - $ echo e93b671cb24bff41779187edff99178e2597c2 > .hg/git/refs/tags/bad-tag 158s - $ hg git-cleanup 158s - git commit map cleaned 158s - $ test -e .hg/git/refs/tags/bad-tag 158s - [1] 158s 158s ERROR: test-pull-after-strip.t output changed 159s ! 159s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-syntax.t 159s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-syntax.t.err 159s @@ -39,53 +39,99 @@ 159s 159s $ hg clone -U repo.git hgrepo 159s importing 3 git commits 159s - new changesets e532b2bfda10:3c4fd561cbeb (3 drafts) 159s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 159s + ** which supports versions 6.9 of Mercurial. 159s + ** Please disable "hggit" and try your action again. 159s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 159s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 159s + ** Mercurial Distributed SCM (version 7.0.1) 159s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 159s + Traceback (most recent call last): 159s + File "/usr/bin/hg", line 51, in 159s + dispatch.run() 159s + ~~~~~~~~~~~~^^ 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 159s + status = dispatch(req) 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 159s + status = _rundispatch(req) 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 159s + ret = _runcatch(req) or 0 159s + ~~~~~~~~~^^^^^ 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 159s + return _callcatch(ui, _runcatchfunc) 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 159s + return scmutil.callcatch(ui, func) 159s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 159s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 159s + return func() 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 159s + return _dispatch(req) 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 159s + return runcommand( 159s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 159s + ) 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 159s + ret = _runcommand(ui, options, cmd, d) 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 159s + return cmdfunc() 159s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 159s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 159s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 159s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 159s + return func(*args, **kwargs) 159s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 159s + r = hg.clone( 159s + ui, 159s + ...<11 lines>... 159s + depth=opts.get('depth') or None, 159s + ) 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 159s + srcpeer, destpeer = orig(*args, **opts) 159s + ~~~~^^^^^^^^^^^^^^^ 159s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 159s + exchange.pull( 159s + ~~~~~~~~~~~~~^ 159s + local, 159s + ^^^^^^ 159s + ...<5 lines>... 159s + depth=depth, 159s + ^^^^^^^^^^^^ 159s + ) 159s + ^ 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 159s + return f(*args, **kwargs) 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 159s + pullop.cgresult = repo.githandler.fetch(remote, heads) 159s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 159s + imported = self.import_git_objects( 159s + b'pull', 159s + ...<2 lines>... 159s + heads=heads, 159s + ) 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 159s + self.import_git_commit( 159s + ~~~~~~~~~~~~~~~~~~~~~~^ 159s + command, 159s + ^^^^^^^^ 159s + self.git[commit.sha], 159s + ^^^^^^^^^^^^^^^^^^^^^ 159s + commit.phase, 159s + ^^^^^^^^^^^^^ 159s + ) 159s + ^ 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 159s + files, gitlinks, git_renames = self.get_files_changed( 159s + ~~~~~~~~~~~~~~~~~~~~~~^ 159s + commit, detect_renames 159s + ^^^^^^^^^^^^^^^^^^^^^^ 159s + ) 159s + ^ 159s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 159s + oldfile, oldmode, oldsha = change.old 159s + ^^^^^^^^^^^^^^^^^^^^^^^^ 159s + TypeError: cannot unpack non-iterable NoneType object 159s + [1] 159s $ cd hgrepo 159s + $TESTTMP.sh: 42: cd: can't cd to hgrepo 159s $ hg up master 159s - Cloning into '$TESTTMP/hgrepo/subrepo1'... 159s - done. 159s - Cloning into '$TESTTMP/hgrepo/xyz/subrepo2'... 159s - done. 159s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 159s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 159s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 159s - (activating bookmark master) 159s - $ cat >> .hgsub < # this is a comment 159s - > [subpaths] 159s - > flaf = blyf 159s - > EOF 159s - $ fn_hg_commit -m 'add comment & subsection' 159s - $ hg push 159s - pushing to $TESTTMP/repo.git 159s - searching for changes 159s - adding objects 159s - remote: found 0 deltas to reuse 159s - added 1 commits with 1 trees and 0 blobs 159s - updating reference refs/heads/master 159s - $ cd .. 159s - 159s - $ cd gitrepo 159s - $ git pull --ff-only 159s - From $TESTTMP/repo 159s - 89c22d7..106b34e master -> origin/master 159s - Updating 89c22d7..106b34e 159s - Fast-forward 159s - $ cat .gitmodules 159s - [submodule "subrepo1"] 159s - path = subrepo1 159s - url = ../gitsubrepo 159s - [submodule "xyz/subrepo2"] 159s - path = xyz/subrepo2 159s - url = ../gitsubrepo 159s - $ cd .. 159s - 159s -We broke bidirectionality: 159s - 159s - $ hg clone -U repo.git hgrepo2 159s - importing 4 git commits 159s - new changesets e532b2bfda10:cbf584fe001b (4 drafts) 159s - $ hg id -r tip hgrepo 159s - c58a542b18bc default/master/tip master 159s - $ hg id -r tip hgrepo2 159s - cbf584fe001b default/master/tip master 159s 159s ERROR: test-subrepos-syntax.t output changed 161s ! 161s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-multiple-remotes.t 161s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-multiple-remotes.t.err 161s @@ -28,50 +28,175 @@ 161s $ hg pull 161s pulling from $TESTTMP/gitrepo 161s importing 1 git commits 161s - adding bookmark master 161s - adding bookmark not-master 161s - new changesets ff7a2f2d8d70 (1 drafts) 161s - (run 'hg update' to get a working copy) 161s - pulling from $TESTTMP/repo.git 161s - no changes found 161s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 161s + ** which supports versions 6.9 of Mercurial. 161s + ** Please disable "hggit" and try your action again. 161s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 161s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 161s + ** Mercurial Distributed SCM (version 7.0.1) 161s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 161s + Traceback (most recent call last): 161s + File "/usr/bin/hg", line 51, in 161s + dispatch.run() 161s + ~~~~~~~~~~~~^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 161s + status = dispatch(req) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 161s + status = _rundispatch(req) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 161s + ret = _runcatch(req) or 0 161s + ~~~~~~~~~^^^^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 161s + return _callcatch(ui, _runcatchfunc) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 161s + return scmutil.callcatch(ui, func) 161s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 161s + return func() 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 161s + return _dispatch(req) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 161s + return runcommand( 161s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 161s + ) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 161s + ret = _runcommand(ui, options, cmd, d) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 161s + return cmdfunc() 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 161s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 161s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 161s + return func(*args, **kwargs) 161s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5235, in pull 161s + modheads = exchange.pull( 161s + ~~~~~~~~~~~~~^ 161s + repo, 161s + ^^^^^ 161s + ...<6 lines>... 161s + confirm=opts.get('confirm'), 161s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 161s + ).cgresult 161s + ^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 161s + return f(*args, **kwargs) 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 161s + pullop.cgresult = repo.githandler.fetch(remote, heads) 161s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 161s + imported = self.import_git_objects( 161s + b'pull', 161s + ...<2 lines>... 161s + heads=heads, 161s + ) 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 161s + self.import_git_commit( 161s + ~~~~~~~~~~~~~~~~~~~~~~^ 161s + command, 161s + ^^^^^^^^ 161s + self.git[commit.sha], 161s + ^^^^^^^^^^^^^^^^^^^^^ 161s + commit.phase, 161s + ^^^^^^^^^^^^^ 161s + ) 161s + ^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 161s + files, gitlinks, git_renames = self.get_files_changed( 161s + ~~~~~~~~~~~~~~~~~~~~~~^ 161s + commit, detect_renames 161s + ^^^^^^^^^^^^^^^^^^^^^^ 161s + ) 161s + ^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 161s + oldfile, oldmode, oldsha = change.old 161s + ^^^^^^^^^^^^^^^^^^^^^^^^ 161s + TypeError: cannot unpack non-iterable NoneType object 161s + [1] 161s $ hg tags 161s - tip 0:ff7a2f2d8d70 161s - git/not-master 0:ff7a2f2d8d70 161s - git/master 0:ff7a2f2d8d70 161s - bare/not-master 0:ff7a2f2d8d70 161s - bare/master 0:ff7a2f2d8d70 161s - also-git/not-master 0:ff7a2f2d8d70 161s - also-git/master 0:ff7a2f2d8d70 161s - also-bare/not-master 0:ff7a2f2d8d70 161s - also-bare/master 0:ff7a2f2d8d70 161s + tip -1:000000000000 161s 161s $ hg up master 161s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 161s - (activating bookmark master) 161s + abort: unknown revision 'master' 161s + [10] 161s $ echo beta > beta 161s $ fn_hg_commit -A -m "add beta" 161s $ hg push 161s pushing to $TESTTMP/gitrepo 161s - searching for changes 161s - adding objects 161s - remote: found 0 deltas to reuse 161s - added 1 commits with 1 trees and 1 blobs 161s - updating reference refs/heads/master 161s - pushing to $TESTTMP/repo.git 161s - searching for changes 161s - adding objects 161s - remote: found 0 deltas to reuse 161s - added 1 commits with 1 trees and 1 blobs 161s - updating reference refs/heads/master 161s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 161s + ** which supports versions 6.9 of Mercurial. 161s + ** Please disable "hggit" and try your action again. 161s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 161s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 161s + ** Mercurial Distributed SCM (version 7.0.1) 161s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 161s + Traceback (most recent call last): 161s + File "/usr/bin/hg", line 51, in 161s + dispatch.run() 161s + ~~~~~~~~~~~~^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 161s + status = dispatch(req) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 161s + status = _rundispatch(req) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 161s + ret = _runcatch(req) or 0 161s + ~~~~~~~~~^^^^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 161s + return _callcatch(ui, _runcatchfunc) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 161s + return scmutil.callcatch(ui, func) 161s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 161s + return func() 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 161s + return _dispatch(req) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 161s + return runcommand( 161s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 161s + ) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 161s + ret = _runcommand(ui, options, cmd, d) 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 161s + return cmdfunc() 161s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 161s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 161s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 161s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 161s + return func(*args, **kwargs) 161s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 161s + pushop = exchange.push( 161s + repo, 161s + ...<6 lines>... 161s + opargs=opargs, 161s + ) 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 161s + return f(*args, **kwargs) 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 161s + pushop.cgresult = repo.githandler.push( 161s + ~~~~~~~~~~~~~~~~~~~~^ 161s + remote.path, revs, bookmarks, force 161s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 161s + ) 161s + ^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 161s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 161s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 161s + all_exportable = self.export_commits() 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 161s + self.export_git_objects() 161s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 161s + packer.pack(synchronous=True) 161s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 161s + _process_batch(self.ui, self.object_store, todo) 161s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 161s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 161s + object_store._remove_loose_object(obj.id) 161s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 161s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 161s + [1] 161s 161s $ hg tags 161s - tip 1:47580592d3d6 161s - git/master 1:47580592d3d6 161s - bare/master 1:47580592d3d6 161s - also-git/master 1:47580592d3d6 161s - also-bare/master 1:47580592d3d6 161s - git/not-master 0:ff7a2f2d8d70 161s - bare/not-master 0:ff7a2f2d8d70 161s - also-git/not-master 0:ff7a2f2d8d70 161s - also-bare/not-master 0:ff7a2f2d8d70 161s - 161s + tip 0:59e1f63242de 161s + 161s 161s ERROR: test-multiple-remotes.t output changed 162s ! 162s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gitignore.t 162s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gitignore.t.err 162s @@ -27,6 +27,63 @@ 162s it's gone: 162s 162s $ hg gexport 162s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 162s + ** which supports versions 6.9 of Mercurial. 162s + ** Please disable "hggit" and try your action again. 162s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 162s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 162s + ** Mercurial Distributed SCM (version 7.0.1) 162s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 162s + Traceback (most recent call last): 162s + File "/usr/bin/hg", line 51, in 162s + dispatch.run() 162s + ~~~~~~~~~~~~^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 162s + status = dispatch(req) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 162s + status = _rundispatch(req) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 162s + ret = _runcatch(req) or 0 162s + ~~~~~~~~~^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 162s + return _callcatch(ui, _runcatchfunc) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 162s + return scmutil.callcatch(ui, func) 162s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 162s + return func() 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 162s + return _dispatch(req) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 162s + return runcommand( 162s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 162s + ) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 162s + ret = _runcommand(ui, options, cmd, d) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 162s + return cmdfunc() 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 162s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 162s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 162s + return func(*args, **kwargs) 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 162s + repo.githandler.export_commits() 162s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 162s + self.export_git_objects() 162s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 162s + packer.pack(synchronous=True) 162s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 162s + _process_batch(self.ui, self.object_store, todo) 162s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 162s + object_store._remove_loose_object(obj.id) 162s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 162s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 162s + [1] 162s $ hg status 162s ? .gitignore 162s ? bar 162s 162s ERROR: test-gitignore.t output changed 162s ! 162s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-merge.t 162s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-merge.t.err 162s @@ -31,59 +31,101 @@ 162s 162s $ hg clone gitrepo hgrepo 162s importing 4 git commits 162s - new changesets ff7a2f2d8d70:89ca4a68d6b9 (4 drafts) 162s - updating to bookmark master 162s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 162s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 162s + ** which supports versions 6.9 of Mercurial. 162s + ** Please disable "hggit" and try your action again. 162s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 162s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 162s + ** Mercurial Distributed SCM (version 7.0.1) 162s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 162s + Traceback (most recent call last): 162s + File "/usr/bin/hg", line 51, in 162s + dispatch.run() 162s + ~~~~~~~~~~~~^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 162s + status = dispatch(req) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 162s + status = _rundispatch(req) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 162s + ret = _runcatch(req) or 0 162s + ~~~~~~~~~^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 162s + return _callcatch(ui, _runcatchfunc) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 162s + return scmutil.callcatch(ui, func) 162s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 162s + return func() 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 162s + return _dispatch(req) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 162s + return runcommand( 162s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 162s + ) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 162s + ret = _runcommand(ui, options, cmd, d) 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 162s + return cmdfunc() 162s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 162s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 162s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 162s + return func(*args, **kwargs) 162s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 162s + r = hg.clone( 162s + ui, 162s + ...<11 lines>... 162s + depth=opts.get('depth') or None, 162s + ) 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 162s + srcpeer, destpeer = orig(*args, **opts) 162s + ~~~~^^^^^^^^^^^^^^^ 162s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 162s + exchange.pull( 162s + ~~~~~~~~~~~~~^ 162s + local, 162s + ^^^^^^ 162s + ...<5 lines>... 162s + depth=depth, 162s + ^^^^^^^^^^^^ 162s + ) 162s + ^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 162s + return f(*args, **kwargs) 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 162s + pullop.cgresult = repo.githandler.fetch(remote, heads) 162s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 162s + imported = self.import_git_objects( 162s + b'pull', 162s + ...<2 lines>... 162s + heads=heads, 162s + ) 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 162s + self.import_git_commit( 162s + ~~~~~~~~~~~~~~~~~~~~~~^ 162s + command, 162s + ^^^^^^^^ 162s + self.git[commit.sha], 162s + ^^^^^^^^^^^^^^^^^^^^^ 162s + commit.phase, 162s + ^^^^^^^^^^^^^ 162s + ) 162s + ^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 162s + files, gitlinks, git_renames = self.get_files_changed( 162s + ~~~~~~~~~~~~~~~~~~~~~~^ 162s + commit, detect_renames 162s + ^^^^^^^^^^^^^^^^^^^^^^ 162s + ) 162s + ^ 162s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 162s + oldfile, oldmode, oldsha = change.old 162s + ^^^^^^^^^^^^^^^^^^^^^^^^ 162s + TypeError: cannot unpack non-iterable NoneType object 162s + [1] 162s $ cd hgrepo 162s + $TESTTMP.sh: 40: cd: can't cd to hgrepo 162s 162s clear the cache to be sure it is regenerated correctly 162s $ hg debug-remove-hggit-state 162s - clearing out the git cache data 162s - $ hg push ../repo.git 162s - pushing to ../repo.git 162s - searching for changes 162s - adding objects 162s - remote: found 0 deltas to reuse 162s - added 4 commits with 4 trees and 3 blobs 162s - adding reference refs/heads/beta 162s - adding reference refs/heads/master 162s - 162s - $ cd .. 162s -git log in repo pushed from hg 162s - $ git --git-dir=repo.git log --pretty=medium master | sed 's/\.\.\.//g' 162s - commit 5806851511aaf3bfe813ae3a86c5027165fa9b96 162s - Merge: e5023f9 9497a4e 162s - Author: test 162s - Date: Mon Jan 1 00:00:12 2007 +0000 162s - 162s - Merge branch 'beta' 162s - 162s - commit e5023f9e5cb24fdcec7b6c127cec45d8888e35a9 162s - Author: test 162s - Date: Mon Jan 1 00:00:12 2007 +0000 162s - 162s - add gamma 162s - 162s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 162s - Author: test 162s - Date: Mon Jan 1 00:00:11 2007 +0000 162s - 162s - add beta 162s - 162s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 162s - Author: test 162s - Date: Mon Jan 1 00:00:10 2007 +0000 162s - 162s - add alpha 162s - $ git --git-dir=repo.git log --pretty=medium beta | sed 's/\.\.\.//g' 162s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 162s - Author: test 162s - Date: Mon Jan 1 00:00:11 2007 +0000 162s - 162s - add beta 162s - 162s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 162s - Author: test 162s - Date: Mon Jan 1 00:00:10 2007 +0000 162s - 162s - add alpha 162s 162s ERROR: test-merge.t output changed 163s ! 163s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-tags.t 163s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-tags.t.err 163s @@ -17,68 +17,100 @@ 163s $ cd .. 163s $ hg clone -U repo.git hgrepo 163s importing 1 git commits 163s - new changesets ff7a2f2d8d70 (1 drafts) 163s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 163s + ** which supports versions 6.9 of Mercurial. 163s + ** Please disable "hggit" and try your action again. 163s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 163s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 163s + ** Mercurial Distributed SCM (version 7.0.1) 163s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 163s + Traceback (most recent call last): 163s + File "/usr/bin/hg", line 51, in 163s + dispatch.run() 163s + ~~~~~~~~~~~~^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 163s + status = dispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 163s + status = _rundispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 163s + ret = _runcatch(req) or 0 163s + ~~~~~~~~~^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 163s + return _callcatch(ui, _runcatchfunc) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 163s + return scmutil.callcatch(ui, func) 163s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 163s + return func() 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 163s + return _dispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 163s + return runcommand( 163s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 163s + ) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 163s + ret = _runcommand(ui, options, cmd, d) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 163s + return cmdfunc() 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 163s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 163s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 163s + return func(*args, **kwargs) 163s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 163s + r = hg.clone( 163s + ui, 163s + ...<11 lines>... 163s + depth=opts.get('depth') or None, 163s + ) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 163s + srcpeer, destpeer = orig(*args, **opts) 163s + ~~~~^^^^^^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 163s + exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + local, 163s + ^^^^^^ 163s + ...<5 lines>... 163s + depth=depth, 163s + ^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 163s + imported = self.import_git_objects( 163s + b'pull', 163s + ...<2 lines>... 163s + heads=heads, 163s + ) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 163s + self.import_git_commit( 163s + ~~~~~~~~~~~~~~~~~~~~~~^ 163s + command, 163s + ^^^^^^^^ 163s + self.git[commit.sha], 163s + ^^^^^^^^^^^^^^^^^^^^^ 163s + commit.phase, 163s + ^^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 163s + files, gitlinks, git_renames = self.get_files_changed( 163s + ~~~~~~~~~~~~~~~~~~~~~~^ 163s + commit, detect_renames 163s + ^^^^^^^^^^^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 163s + oldfile, oldmode, oldsha = change.old 163s + ^^^^^^^^^^^^^^^^^^^^^^^^ 163s + TypeError: cannot unpack non-iterable NoneType object 163s + [1] 163s 163s $ cd hgrepo 163s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 163s $ hg co master 163s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 163s - (activating bookmark master) 163s - $ fn_hg_tag alpha 163s - $ hg push 163s - pushing to $TESTTMP/repo.git 163s - searching for changes 163s - adding objects 163s - remote: found 0 deltas to reuse 163s - added 1 commits with 1 trees and 1 blobs 163s - updating reference refs/heads/master 163s - adding reference refs/tags/alpha 163s - 163s - $ hg log --graph 163s - @ changeset: 1:e8b150f84560 163s - | bookmark: master 163s - | tag: default/master 163s - | tag: tip 163s - | user: test 163s - | date: Mon Jan 01 00:00:11 2007 +0000 163s - | summary: Added tag alpha for changeset ff7a2f2d8d70 163s - | 163s - o changeset: 0:ff7a2f2d8d70 163s - tag: alpha 163s - user: test 163s - date: Mon Jan 01 00:00:10 2007 +0000 163s - summary: add alpha 163s - 163s - 163s - $ cd .. 163s - $ cd gitrepo 163s -git should have the tag alpha 163s - $ git fetch origin 163s - From $TESTTMP/repo 163s - 7eeab2e..bbae830 master -> origin/master 163s - * [new tag] alpha -> alpha 163s - $ cd .. 163s - 163s - $ hg clone repo.git hgrepo2 163s - importing 2 git commits 163s - new changesets ff7a2f2d8d70:e8b150f84560 (2 drafts) 163s - updating to bookmark master 163s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 163s - $ hg -R hgrepo2 log --graph 163s - @ changeset: 1:e8b150f84560 163s - | bookmark: master 163s - | tag: default/master 163s - | tag: tip 163s - | user: test 163s - | date: Mon Jan 01 00:00:11 2007 +0000 163s - | summary: Added tag alpha for changeset ff7a2f2d8d70 163s - | 163s - o changeset: 0:ff7a2f2d8d70 163s - tag: alpha 163s - user: test 163s - date: Mon Jan 01 00:00:10 2007 +0000 163s - summary: add alpha 163s - 163s - 163s -the tag should be in .hgtags 163s - $ cat hgrepo2/.hgtags 163s - ff7a2f2d8d7099694ae1e8b03838d40575bebb63 alpha 163s 163s ERROR: test-hg-tags.t output changed 163s ! 163s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-clone.t 163s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-hg-clone.t.err 163s @@ -12,87 +12,106 @@ 163s 163s $ hg clone -U gitrepo hgrepo 163s importing 1 git commits 163s - new changesets ff7a2f2d8d70 (1 drafts) 163s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 163s + ** which supports versions 6.9 of Mercurial. 163s + ** Please disable "hggit" and try your action again. 163s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 163s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 163s + ** Mercurial Distributed SCM (version 7.0.1) 163s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 163s + Traceback (most recent call last): 163s + File "/usr/bin/hg", line 51, in 163s + dispatch.run() 163s + ~~~~~~~~~~~~^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 163s + status = dispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 163s + status = _rundispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 163s + ret = _runcatch(req) or 0 163s + ~~~~~~~~~^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 163s + return _callcatch(ui, _runcatchfunc) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 163s + return scmutil.callcatch(ui, func) 163s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 163s + return func() 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 163s + return _dispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 163s + return runcommand( 163s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 163s + ) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 163s + ret = _runcommand(ui, options, cmd, d) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 163s + return cmdfunc() 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 163s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 163s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 163s + return func(*args, **kwargs) 163s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 163s + r = hg.clone( 163s + ui, 163s + ...<11 lines>... 163s + depth=opts.get('depth') or None, 163s + ) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 163s + srcpeer, destpeer = orig(*args, **opts) 163s + ~~~~^^^^^^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 163s + exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + local, 163s + ^^^^^^ 163s + ...<5 lines>... 163s + depth=depth, 163s + ^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 163s + imported = self.import_git_objects( 163s + b'pull', 163s + ...<2 lines>... 163s + heads=heads, 163s + ) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 163s + self.import_git_commit( 163s + ~~~~~~~~~~~~~~~~~~~~~~^ 163s + command, 163s + ^^^^^^^^ 163s + self.git[commit.sha], 163s + ^^^^^^^^^^^^^^^^^^^^^ 163s + commit.phase, 163s + ^^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 163s + files, gitlinks, git_renames = self.get_files_changed( 163s + ~~~~~~~~~~~~~~~~~~~~~~^ 163s + commit, detect_renames 163s + ^^^^^^^^^^^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 163s + oldfile, oldmode, oldsha = change.old 163s + ^^^^^^^^^^^^^^^^^^^^^^^^ 163s + TypeError: cannot unpack non-iterable NoneType object 163s + [1] 163s 163s By default, the Git state isn't preserved across a copying/linking 163s clone 163s 163s $ hg clone -U hgrepo otherhgrepo 163s + abort: repository hgrepo not found 163s + [255] 163s $ cd otherhgrepo 163s + $TESTTMP.sh: 22: cd: can't cd to otherhgrepo 163s $ find .hg -name 'git*' | sort 163s - $ hg tags -v 163s - tip 0:ff7a2f2d8d70 163s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 163s - $ cd .. 163s - $ rm -r otherhgrepo 163s - 163s -Nor using a pull clone 163s - 163s - $ hg clone -U --pull hgrepo otherhgrepo 163s - requesting all changes 163s - adding changesets 163s - adding manifests 163s - adding file changes 163s - added 1 changesets with 1 changes to 1 files 163s - new changesets ff7a2f2d8d70 163s - $ cd otherhgrepo 163s - $ find .hg -name 'git*' | sort 163s - $ hg tags -v 163s - tip 0:ff7a2f2d8d70 163s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 163s - $ cd .. 163s - $ rm -r otherhgrepo 163s - 163s -But we can enable it! 163s - 163s - $ cat >> $HGRCPATH < [experimental] 163s - > hg-git-serve = yes 163s - > EOF 163s - 163s -Check transferring between Mercurial repositories using a 163s -copying/linking clone 163s - 163s - $ hg clone -U hgrepo otherhgrepo 163s - $ cd otherhgrepo 163s - $ find .hg -name 'git*' | sort 163s - $ hg tags -q 163s - tip 163s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 163s - $ cd .. 163s - 163s -Checking using a pull clone 163s - 163s - $ rm -rf otherhgrepo 163s - $ hg clone -U --pull hgrepo otherhgrepo 163s - requesting all changes 163s - adding changesets 163s - adding manifests 163s - adding file changes 163s - added 1 changesets with 1 changes to 1 files 163s - new changesets ff7a2f2d8d70 163s - $ cd otherhgrepo 163s - $ hg tags -q 163s - tip 163s - alpha 163s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 163s - 0:ff7a2f2d8d70 7eeab2ea75ec 163s - $ cd .. 163s - 163s -Can we repopulate the state from a Mercurial repository? 163s - 163s - $ cd otherhgrepo 163s - $ hg debug-remove-hggit-state 163s - clearing out the git cache data 163s - $ hg log -qr 'fromgit()' 163s - $ hg tags 163s - tip 0:ff7a2f2d8d70 163s - $ hg pull 163s - pulling from $TESTTMP/hgrepo 163s - searching for changes 163s - no changes found 163s - $ hg log -qr 'fromgit()' 163s - $ hg tags 163s - tip 0:ff7a2f2d8d70 163s - 163s -Sadly, no. 163s 163s ERROR: test-hg-clone.t output changed 163s ! 163s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-detached.t 163s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-detached.t.err 163s @@ -41,36 +41,99 @@ 163s 163s $ hg clone gitrepo hgrepo 163s importing 1 git commits 163s - new changesets ff7a2f2d8d70 (1 drafts) 163s - updating to bookmark master 163s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 163s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 163s + ** which supports versions 6.9 of Mercurial. 163s + ** Please disable "hggit" and try your action again. 163s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 163s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 163s + ** Mercurial Distributed SCM (version 7.0.1) 163s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 163s + Traceback (most recent call last): 163s + File "/usr/bin/hg", line 51, in 163s + dispatch.run() 163s + ~~~~~~~~~~~~^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 163s + status = dispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 163s + status = _rundispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 163s + ret = _runcatch(req) or 0 163s + ~~~~~~~~~^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 163s + return _callcatch(ui, _runcatchfunc) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 163s + return scmutil.callcatch(ui, func) 163s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 163s + return func() 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 163s + return _dispatch(req) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 163s + return runcommand( 163s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 163s + ) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 163s + ret = _runcommand(ui, options, cmd, d) 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 163s + return cmdfunc() 163s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 163s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 163s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 163s + return func(*args, **kwargs) 163s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 163s + r = hg.clone( 163s + ui, 163s + ...<11 lines>... 163s + depth=opts.get('depth') or None, 163s + ) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 163s + srcpeer, destpeer = orig(*args, **opts) 163s + ~~~~^^^^^^^^^^^^^^^ 163s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 163s + exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + local, 163s + ^^^^^^ 163s + ...<5 lines>... 163s + depth=depth, 163s + ^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 163s + imported = self.import_git_objects( 163s + b'pull', 163s + ...<2 lines>... 163s + heads=heads, 163s + ) 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 163s + self.import_git_commit( 163s + ~~~~~~~~~~~~~~~~~~~~~~^ 163s + command, 163s + ^^^^^^^^ 163s + self.git[commit.sha], 163s + ^^^^^^^^^^^^^^^^^^^^^ 163s + commit.phase, 163s + ^^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 163s + files, gitlinks, git_renames = self.get_files_changed( 163s + ~~~~~~~~~~~~~~~~~~~~~~^ 163s + commit, detect_renames 163s + ^^^^^^^^^^^^^^^^^^^^^^ 163s + ) 163s + ^ 163s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 163s + oldfile, oldmode, oldsha = change.old 163s + ^^^^^^^^^^^^^^^^^^^^^^^^ 163s + TypeError: cannot unpack non-iterable NoneType object 163s + [1] 163s $ cd hgrepo 163s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 163s $ echo beta > beta 163s - $ hg add beta 163s - $ fn_hg_commit -m "add beta" 163s - 163s -Pushing that changeset, with phases, publishes the detached HEAD. 163s -Whether this should happen is debatable, but it's a side effect from 163s -the fact that pushing to the remote HEAD, with HEAD being the usual 163s -symref, should publish it. 163s - 163s - $ hg push -v --config hggit.usephases=yes 163s - pushing to $TESTTMP/gitrepo 163s - finding unexported changesets 163s - exporting 1 changesets 163s - converting revision 47580592d3d6492421a1e6cebc5c2d701a2e858b 163s - packing 3 loose objects... 163s - searching for changes 163s - remote: counting objects: 5, done. 163s - 1 commits found 163s - adding objects 163s - remote: counting objects: 5, done. 163s - remote: found 0 deltas to reuse 163s - added 1 commits with 1 trees and 1 blobs 163s - updating reference default::refs/heads/master => GIT:0f378ab6 163s - publishing remote HEAD 163s - $ hg phase 'all()' 163s - 0: public 163s - 1: draft 163s - $ cd .. 163s - 163s 163s ERROR: test-push-detached.t output changed 165s ! 165s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-serve-git.t 165s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-serve-git.t.err 165s @@ -48,13 +48,104 @@ 165s \r (no-eol) (esc) 165s \r (no-eol) (esc) 165s importing commits 1/2 b23744d34f97 [======> ]\r (no-eol) (esc) 165s - importing commits 2/2 3af9773036a9 [=============>]\r (no-eol) (esc) 165s \r (no-eol) (esc) 165s importing 2 git commits 165s - new changesets c4d188f6e13d:221dd250e933 165s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 165s + ** which supports versions 6.9 of Mercurial. 165s + ** Please disable "hggit" and try your action again. 165s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 165s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 165s + ** Mercurial Distributed SCM (version 7.0.1) 165s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 165s + Traceback (most recent call last): 165s + File "/usr/bin/hg", line 51, in 165s + dispatch.run() 165s + ~~~~~~~~~~~~^^ 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 165s + status = dispatch(req) 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 165s + status = _rundispatch(req) 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 165s + ret = _runcatch(req) or 0 165s + ~~~~~~~~~^^^^^ 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 165s + return _callcatch(ui, _runcatchfunc) 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 165s + return scmutil.callcatch(ui, func) 165s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 165s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 165s + return func() 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 165s + return _dispatch(req) 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 165s + return runcommand( 165s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 165s + ) 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 165s + ret = _runcommand(ui, options, cmd, d) 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 165s + return cmdfunc() 165s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 165s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 165s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 165s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 165s + return func(*args, **kwargs) 165s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 165s + r = hg.clone( 165s + ui, 165s + ...<11 lines>... 165s + depth=opts.get('depth') or None, 165s + ) 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 165s + srcpeer, destpeer = orig(*args, **opts) 165s + ~~~~^^^^^^^^^^^^^^^ 165s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 165s + exchange.pull( 165s + ~~~~~~~~~~~~~^ 165s + local, 165s + ^^^^^^ 165s + ...<5 lines>... 165s + depth=depth, 165s + ^^^^^^^^^^^^ 165s + ) 165s + ^ 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 165s + return f(*args, **kwargs) 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 165s + pullop.cgresult = repo.githandler.fetch(remote, heads) 165s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 165s + imported = self.import_git_objects( 165s + b'pull', 165s + ...<2 lines>... 165s + heads=heads, 165s + ) 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 165s + self.import_git_commit( 165s + ~~~~~~~~~~~~~~~~~~~~~~^ 165s + command, 165s + ^^^^^^^^ 165s + self.git[commit.sha], 165s + ^^^^^^^^^^^^^^^^^^^^^ 165s + commit.phase, 165s + ^^^^^^^^^^^^^ 165s + ) 165s + ^ 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 165s + files, gitlinks, git_renames = self.get_files_changed( 165s + ~~~~~~~~~~~~~~~~~~~~~~^ 165s + commit, detect_renames 165s + ^^^^^^^^^^^^^^^^^^^^^^ 165s + ) 165s + ^ 165s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 165s + oldfile, oldmode, oldsha = change.old 165s + ^^^^^^^^^^^^^^^^^^^^^^^^ 165s + TypeError: cannot unpack non-iterable NoneType object 165s + [1] 165s $ hg log -T 'HG:{node|short} GIT:{gitnode|short}\n' -R copy 165s - HG:221dd250e933 GIT:3af9773036a9 165s - HG:c4d188f6e13d GIT:b23744d34f97 165s + abort: repository copy not found 165s + [255] 165s $ hg tags -v -R copy 165s - tip 1:221dd250e933 165s - default/master 1:221dd250e933 git-remote 165s + abort: repository copy not found 165s + [255] 165s 165s ERROR: test-serve-git.t output changed 168s ! 168s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-convergedmerge.t 168s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-convergedmerge.t.err 168s @@ -49,34 +49,88 @@ 168s $ hg bookmark -r4 master 168s $ hg push -r master ../repo.git 168s pushing to ../repo.git 168s - searching for changes 168s - adding objects 168s - remote: found 0 deltas to reuse 168s - added 5 commits with 3 trees and 3 blobs 168s - adding reference refs/heads/master 168s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 168s + ** which supports versions 6.9 of Mercurial. 168s + ** Please disable "hggit" and try your action again. 168s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 168s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 168s + ** Mercurial Distributed SCM (version 7.0.1) 168s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 168s + Traceback (most recent call last): 168s + File "/usr/bin/hg", line 51, in 168s + dispatch.run() 168s + ~~~~~~~~~~~~^^ 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 168s + status = dispatch(req) 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 168s + status = _rundispatch(req) 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 168s + ret = _runcatch(req) or 0 168s + ~~~~~~~~~^^^^^ 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 168s + return _callcatch(ui, _runcatchfunc) 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 168s + return scmutil.callcatch(ui, func) 168s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 168s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 168s + return func() 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 168s + return _dispatch(req) 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 168s + return runcommand( 168s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 168s + ) 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 168s + ret = _runcommand(ui, options, cmd, d) 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 168s + return cmdfunc() 168s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 168s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 168s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 168s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 168s + return func(*args, **kwargs) 168s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 168s + pushop = exchange.push( 168s + repo, 168s + ...<6 lines>... 168s + opargs=opargs, 168s + ) 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 168s + return f(*args, **kwargs) 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 168s + pushop.cgresult = repo.githandler.push( 168s + ~~~~~~~~~~~~~~~~~~~~^ 168s + remote.path, revs, bookmarks, force 168s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 168s + ) 168s + ^ 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 168s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 168s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 168s + all_exportable = self.export_commits() 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 168s + self.export_git_objects() 168s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 168s + packer.pack(synchronous=True) 168s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 168s + _process_batch(self.ui, self.object_store, todo) 168s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 168s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 168s + object_store._remove_loose_object(obj.id) 168s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 168s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 168s + [1] 168s $ cd .. 168s 168s $ hg clone repo.git hgrepo2 168s - importing 5 git commits 168s - new changesets 5d1a6b64f9d0:eaa21d002113 (5 drafts) 168s - updating to bookmark master 168s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 168s + updating to branch default 168s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 168s expect the same revision ids as above 168s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 168s - @ 4:1,3 eaa21d002113 1970-01-01 00:00 +0000 test 168s - |\ merge 168s - | | 168s - | o 3 0dbe4ac1a758 1970-01-01 00:00 +0000 test 168s - | | B->C 168s - | | 168s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 168s - | | A->B 168s - | | 168s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 168s - |/ A->C 168s - | 168s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 168s - origin 168s - 168s $ hg -R hgrepo2 gverify 168s - verifying rev eaa21d002113 against git commit fb8c9e2afe5418cfff337eeed79fad5dd58826f0 168s + abort: no git commit found for rev 000000000000 168s + (if this is an octopus merge, verify against the last rev) 168s + [255] 168s 168s ERROR: test-convergedmerge.t output changed 169s ! 169s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-conflict-2.t 169s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-conflict-2.t.err 169s @@ -47,29 +47,84 @@ 169s $ hg bookmark -r tip master 169s $ hg push -r master ../repo.git 169s pushing to ../repo.git 169s - searching for changes 169s - adding objects 169s - remote: found 0 deltas to reuse 169s - added 4 commits with 3 trees and 3 blobs 169s - adding reference refs/heads/master 169s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 169s + ** which supports versions 6.9 of Mercurial. 169s + ** Please disable "hggit" and try your action again. 169s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 169s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 169s + ** Mercurial Distributed SCM (version 7.0.1) 169s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 169s + Traceback (most recent call last): 169s + File "/usr/bin/hg", line 51, in 169s + dispatch.run() 169s + ~~~~~~~~~~~~^^ 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 169s + status = dispatch(req) 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 169s + status = _rundispatch(req) 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 169s + ret = _runcatch(req) or 0 169s + ~~~~~~~~~^^^^^ 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 169s + return _callcatch(ui, _runcatchfunc) 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 169s + return scmutil.callcatch(ui, func) 169s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 169s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 169s + return func() 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 169s + return _dispatch(req) 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 169s + return runcommand( 169s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 169s + ) 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 169s + ret = _runcommand(ui, options, cmd, d) 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 169s + return cmdfunc() 169s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 169s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 169s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 169s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 169s + return func(*args, **kwargs) 169s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 169s + pushop = exchange.push( 169s + repo, 169s + ...<6 lines>... 169s + opargs=opargs, 169s + ) 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 169s + return f(*args, **kwargs) 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 169s + pushop.cgresult = repo.githandler.push( 169s + ~~~~~~~~~~~~~~~~~~~~^ 169s + remote.path, revs, bookmarks, force 169s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 169s + ) 169s + ^ 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 169s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 169s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 169s + all_exportable = self.export_commits() 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 169s + self.export_git_objects() 169s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 169s + packer.pack(synchronous=True) 169s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 169s + _process_batch(self.ui, self.object_store, todo) 169s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 169s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 169s + object_store._remove_loose_object(obj.id) 169s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 169s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 169s + [1] 169s $ cd .. 169s 169s $ hg clone repo.git hgrepo2 169s - importing 4 git commits 169s - new changesets 5d1a6b64f9d0:120385945d08 (4 drafts) 169s - updating to bookmark master 169s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 169s + updating to branch default 169s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 169s expect the same revision ids as above 169s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 169s - @ 3:1,2 120385945d08 1970-01-01 00:00 +0000 test 169s - |\ merge to B 169s - | | 169s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 169s - | | A->B 169s - | | 169s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 169s - |/ A->C 169s - | 169s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 169s - origin 169s - 169s 169s ERROR: test-conflict-2.t output changed 170s ! 170s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-draft.t 170s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-phases-draft.t.err 170s @@ -12,73 +12,100 @@ 170s cloning without hggit.usephases does not publish local changesets 170s $ cd .. 170s $ hg clone gitrepo hgrepo | grep -v '^updating' 170s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 170s + ** which supports versions 6.9 of Mercurial. 170s + ** Please disable "hggit" and try your action again. 170s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 170s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 170s + ** Mercurial Distributed SCM (version 7.0.1) 170s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 170s + Traceback (most recent call last): 170s + File "/usr/bin/hg", line 51, in 170s + dispatch.run() 170s + ~~~~~~~~~~~~^^ 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 170s + status = dispatch(req) 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 170s + status = _rundispatch(req) 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 170s + ret = _runcatch(req) or 0 170s + ~~~~~~~~~^^^^^ 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 170s + return _callcatch(ui, _runcatchfunc) 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 170s + return scmutil.callcatch(ui, func) 170s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 170s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 170s + return func() 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 170s + return _dispatch(req) 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 170s + return runcommand( 170s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 170s + ) 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 170s + ret = _runcommand(ui, options, cmd, d) 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 170s + return cmdfunc() 170s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 170s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 170s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 170s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 170s + return func(*args, **kwargs) 170s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 170s + r = hg.clone( 170s + ui, 170s + ...<11 lines>... 170s + depth=opts.get('depth') or None, 170s + ) 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 170s + srcpeer, destpeer = orig(*args, **opts) 170s + ~~~~^^^^^^^^^^^^^^^ 170s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 170s + exchange.pull( 170s + ~~~~~~~~~~~~~^ 170s + local, 170s + ^^^^^^ 170s + ...<5 lines>... 170s + depth=depth, 170s + ^^^^^^^^^^^^ 170s + ) 170s + ^ 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 170s + return f(*args, **kwargs) 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 170s + pullop.cgresult = repo.githandler.fetch(remote, heads) 170s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 170s + imported = self.import_git_objects( 170s + b'pull', 170s + ...<2 lines>... 170s + heads=heads, 170s + ) 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 170s + self.import_git_commit( 170s + ~~~~~~~~~~~~~~~~~~~~~~^ 170s + command, 170s + ^^^^^^^^ 170s + self.git[commit.sha], 170s + ^^^^^^^^^^^^^^^^^^^^^ 170s + commit.phase, 170s + ^^^^^^^^^^^^^ 170s + ) 170s + ^ 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 170s + files, gitlinks, git_renames = self.get_files_changed( 170s + ~~~~~~~~~~~~~~~~~~~~~~^ 170s + commit, detect_renames 170s + ^^^^^^^^^^^^^^^^^^^^^^ 170s + ) 170s + ^ 170s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 170s + oldfile, oldmode, oldsha = change.old 170s + ^^^^^^^^^^^^^^^^^^^^^^^^ 170s + TypeError: cannot unpack non-iterable NoneType object 170s importing 1 git commits 170s - new changesets ff7a2f2d8d70 (1 drafts) 170s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 170s 170s $ cd hgrepo 170s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 170s $ hg phase -r master 170s - 0: draft 170s - 170s -pulling advances the draft phase, though 170s - 170s - $ hg phase -fs 0 170s - $ hg pull 170s - pulling from $TESTTMP/gitrepo 170s - no changes found 170s - $ hg phase tip 170s - 0: draft 170s - 170s -even if we don't have a name? 170s - 170s - $ hg phase -fs 0 170s - $ mv .hg/hgrc .hg/hgrc.bak 170s - $ hg pull ../gitrepo 170s - pulling from ../gitrepo 170s - no changes found 170s - $ hg phase tip 170s - 0: draft 170s - $ mv .hg/hgrc.bak .hg/hgrc 170s - $ cd .. 170s - 170s - 170s -pulling without hggit.usephases does not publish local changesets 170s - $ cd gitrepo 170s - $ git checkout -q master 170s - $ echo beta > beta 170s - $ git add beta 170s - $ fn_git_commit -m 'add beta' 170s - $ cd .. 170s - 170s - $ cd hgrepo 170s - $ hg pull 170s - pulling from $TESTTMP/gitrepo 170s - importing 1 git commits 170s - updating bookmark master 170s - new changesets 7fe02317c63d (1 drafts) 170s - (run 'hg update' to get a working copy) 170s - $ hg phase -r master 170s - 1: draft 170s - 170s -pulling with git.public does not publish local changesets 170s - $ hg --config git.public=master pull 170s - pulling from $TESTTMP/gitrepo 170s - no changes found 170s - $ hg phase -r master 170s - 1: draft 170s - 170s -pushing without hggit.usephases does not publish local changesets 170s - $ hg update master 170s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 170s - $ echo gamma > gamma 170s - $ hg add gamma 170s - $ hg commit -m 'gamma' 170s - $ hg push 170s - pushing to $TESTTMP/gitrepo 170s - searching for changes 170s - adding objects 170s - remote: found 0 deltas to reuse 170s - added 1 commits with 1 trees and 1 blobs 170s - updating reference refs/heads/master 170s - $ hg phase -r master 170s - 2: draft 170s 170s ERROR: test-phases-draft.t output changed 173s ! 173s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-conflict-1.t 173s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-conflict-1.t.err 173s @@ -47,29 +47,84 @@ 173s $ hg bookmark -r tip master 173s $ hg push -r master ../repo.git 173s pushing to ../repo.git 173s - searching for changes 173s - adding objects 173s - remote: found 0 deltas to reuse 173s - added 4 commits with 3 trees and 3 blobs 173s - adding reference refs/heads/master 173s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 173s + ** which supports versions 6.9 of Mercurial. 173s + ** Please disable "hggit" and try your action again. 173s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 173s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 173s + ** Mercurial Distributed SCM (version 7.0.1) 173s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 173s + Traceback (most recent call last): 173s + File "/usr/bin/hg", line 51, in 173s + dispatch.run() 173s + ~~~~~~~~~~~~^^ 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 173s + status = dispatch(req) 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 173s + status = _rundispatch(req) 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 173s + ret = _runcatch(req) or 0 173s + ~~~~~~~~~^^^^^ 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 173s + return _callcatch(ui, _runcatchfunc) 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 173s + return scmutil.callcatch(ui, func) 173s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 173s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 173s + return func() 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 173s + return _dispatch(req) 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 173s + return runcommand( 173s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 173s + ) 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 173s + ret = _runcommand(ui, options, cmd, d) 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 173s + return cmdfunc() 173s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 173s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 173s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 173s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 173s + return func(*args, **kwargs) 173s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 173s + pushop = exchange.push( 173s + repo, 173s + ...<6 lines>... 173s + opargs=opargs, 173s + ) 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 173s + return f(*args, **kwargs) 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 173s + pushop.cgresult = repo.githandler.push( 173s + ~~~~~~~~~~~~~~~~~~~~^ 173s + remote.path, revs, bookmarks, force 173s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 173s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 173s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 173s + all_exportable = self.export_commits() 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 173s + self.export_git_objects() 173s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 173s + packer.pack(synchronous=True) 173s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 173s + _process_batch(self.ui, self.object_store, todo) 173s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 173s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 173s + object_store._remove_loose_object(obj.id) 173s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 173s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 173s + [1] 173s $ cd .. 173s 173s $ hg clone repo.git hgrepo2 173s - importing 4 git commits 173s - new changesets 5d1a6b64f9d0:6c53bc0f062f (4 drafts) 173s - updating to bookmark master 173s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 173s + updating to branch default 173s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 173s expect the same revision ids as above 173s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 173s - @ 3:1,2 6c53bc0f062f 1970-01-01 00:00 +0000 test 173s - |\ merge to C 173s - | | 173s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 173s - | | A->B 173s - | | 173s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 173s - |/ A->C 173s - | 173s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 173s - origin 173s - 173s 173s ERROR: test-conflict-1.t output changed 175s ! 175s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-push.t 175s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-push.t.err 175s @@ -41,11 +41,80 @@ 175s pushing subrepo hg to $TESTTMP/hgsubrepo 175s searching for changes 175s no changes found 175s - searching for changes 175s - adding objects 175s - remote: found 0 deltas to reuse 175s - added 4 commits with 2 trees and 2 blobs 175s - adding reference refs/heads/master 175s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 175s + ** which supports versions 6.9 of Mercurial. 175s + ** Please disable "hggit" and try your action again. 175s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 175s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 175s + ** Mercurial Distributed SCM (version 7.0.1) 175s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 175s + Traceback (most recent call last): 175s + File "/usr/bin/hg", line 51, in 175s + dispatch.run() 175s + ~~~~~~~~~~~~^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 175s + status = dispatch(req) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 175s + status = _rundispatch(req) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 175s + ret = _runcatch(req) or 0 175s + ~~~~~~~~~^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 175s + return _callcatch(ui, _runcatchfunc) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 175s + return scmutil.callcatch(ui, func) 175s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 175s + return func() 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 175s + return _dispatch(req) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 175s + return runcommand( 175s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 175s + ) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 175s + ret = _runcommand(ui, options, cmd, d) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 175s + return cmdfunc() 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 175s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 175s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 175s + return func(*args, **kwargs) 175s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 175s + pushop = exchange.push( 175s + repo, 175s + ...<6 lines>... 175s + opargs=opargs, 175s + ) 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 175s + return f(*args, **kwargs) 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 175s + pushop.cgresult = repo.githandler.push( 175s + ~~~~~~~~~~~~~~~~~~~~^ 175s + remote.path, revs, bookmarks, force 175s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 175s + ) 175s + ^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 175s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 175s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 175s + all_exportable = self.export_commits() 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 175s + self.export_git_objects() 175s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 175s + packer.pack(synchronous=True) 175s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 175s + _process_batch(self.ui, self.object_store, todo) 175s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 175s + object_store._remove_loose_object(obj.id) 175s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 175s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 175s + [1] 175s $ cat .hgsub 175s hg = ../hgsubrepo 175s git = [git]../gitsubrepo 175s @@ -58,21 +127,14 @@ 175s 175s $ git clone --recurse-submodules repo.git gitrepo 175s Cloning into 'gitrepo'... 175s + warning: You appear to have cloned an empty repository. 175s done. 175s - Submodule 'git' ($TESTTMP/gitsubrepo) registered for path 'git' 175s - Cloning into '$TESTTMP/gitrepo/git'... 175s - done. 175s - Submodule path 'git': checked out 'aaae5224095dca7403147c0e20cbac1f450b0e95' 175s $ cd gitrepo 175s $ ls -A 175s .git 175s - .gitmodules 175s - alpha 175s - git 175s $ cat .gitmodules 175s - [submodule "git"] 175s - path = git 175s - url = ../gitsubrepo 175s + cat: .gitmodules: No such file or directory (os error 2) 175s + [1] 175s $ ls -A git 175s - .git 175s - thefile 175s + ls: cannot access 'git': No such file or directory 175s + [2] 175s 175s ERROR: test-subrepos-push.t output changed 175s ! 175s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull-after-obsolete.t 175s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-pull-after-obsolete.t.err 175s @@ -21,51 +21,99 @@ 175s $ cd .. 175s $ hg clone -U gitrepo hgrepo 175s importing 2 git commits 175s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 175s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 175s + ** which supports versions 6.9 of Mercurial. 175s + ** Please disable "hggit" and try your action again. 175s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 175s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 175s + ** Mercurial Distributed SCM (version 7.0.1) 175s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 175s + Traceback (most recent call last): 175s + File "/usr/bin/hg", line 51, in 175s + dispatch.run() 175s + ~~~~~~~~~~~~^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 175s + status = dispatch(req) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 175s + status = _rundispatch(req) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 175s + ret = _runcatch(req) or 0 175s + ~~~~~~~~~^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 175s + return _callcatch(ui, _runcatchfunc) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 175s + return scmutil.callcatch(ui, func) 175s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 175s + return func() 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 175s + return _dispatch(req) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 175s + return runcommand( 175s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 175s + ) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 175s + ret = _runcommand(ui, options, cmd, d) 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 175s + return cmdfunc() 175s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 175s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 175s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 175s + return func(*args, **kwargs) 175s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 175s + r = hg.clone( 175s + ui, 175s + ...<11 lines>... 175s + depth=opts.get('depth') or None, 175s + ) 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 175s + srcpeer, destpeer = orig(*args, **opts) 175s + ~~~~^^^^^^^^^^^^^^^ 175s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 175s + exchange.pull( 175s + ~~~~~~~~~~~~~^ 175s + local, 175s + ^^^^^^ 175s + ...<5 lines>... 175s + depth=depth, 175s + ^^^^^^^^^^^^ 175s + ) 175s + ^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 175s + return f(*args, **kwargs) 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 175s + pullop.cgresult = repo.githandler.fetch(remote, heads) 175s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 175s + imported = self.import_git_objects( 175s + b'pull', 175s + ...<2 lines>... 175s + heads=heads, 175s + ) 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 175s + self.import_git_commit( 175s + ~~~~~~~~~~~~~~~~~~~~~~^ 175s + command, 175s + ^^^^^^^^ 175s + self.git[commit.sha], 175s + ^^^^^^^^^^^^^^^^^^^^^ 175s + commit.phase, 175s + ^^^^^^^^^^^^^ 175s + ) 175s + ^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 175s + files, gitlinks, git_renames = self.get_files_changed( 175s + ~~~~~~~~~~~~~~~~~~~~~~^ 175s + commit, detect_renames 175s + ^^^^^^^^^^^^^^^^^^^^^^ 175s + ) 175s + ^ 175s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 175s + oldfile, oldmode, oldsha = change.old 175s + ^^^^^^^^^^^^^^^^^^^^^^^^ 175s + TypeError: cannot unpack non-iterable NoneType object 175s + [1] 175s $ cd hgrepo 175s + $TESTTMP.sh: 31: cd: can't cd to hgrepo 175s $ hg up master 175s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 175s - (activating bookmark master) 175s - $ hg log --graph 175s - @ changeset: 1:7fe02317c63d 175s - | bookmark: master 175s - | tag: default/master 175s - | tag: thetag 175s - | tag: tip 175s - | user: test 175s - | date: Mon Jan 01 00:00:11 2007 +0000 175s - | summary: add beta 175s - | 175s - o changeset: 0:ff7a2f2d8d70 175s - user: test 175s - date: Mon Jan 01 00:00:10 2007 +0000 175s - summary: add alpha 175s - 175s - $ cd ../gitrepo 175s - $ echo beta line 2 >> beta 175s - $ git add beta 175s - $ fn_git_commit -m 'add to beta' 175s - 175s -Create a commit, obsolete it, and pull, to ensure that we can pull if 175s -the tipmost commit is hidden. 175s - 175s - $ cd ../hgrepo 175s - $ hg bookmark --inactive 175s - $ echo gamma > gamma 175s - $ hg add gamma 175s - $ fn_hg_commit -m 'add gamma' 175s - $ hg up master 175s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 175s - (activating bookmark master) 175s - $ hg log -T '{rev}:{node} {desc}\n' -r tip 175s - 2:4090a1266584bc1a47ce562e9349b1e0f1b44611 add gamma 175s - $ hg debugobsolete 4090a1266584bc1a47ce562e9349b1e0f1b44611 175s - 1 new obsolescence markers 175s - obsoleted 1 changesets 175s - 175s - $ hg pull 175s - pulling from $TESTTMP/gitrepo 175s - importing 1 git commits 175s - updating bookmark master 175s - new changesets cc1e605d90db (1 drafts) 175s - (run 'hg update' to get a working copy) 175s 175s ERROR: test-pull-after-obsolete.t output changed 176s ! 176s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-clone.t 176s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-clone.t.err 176s @@ -15,29 +15,110 @@ 176s 176s $ hg clone gitrepo hgrepo 176s importing 2 git commits 176s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 176s - updating to bookmark master 176s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 176s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 176s + ** which supports versions 6.9 of Mercurial. 176s + ** Please disable "hggit" and try your action again. 176s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 176s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 176s + ** Mercurial Distributed SCM (version 7.0.1) 176s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 176s + Traceback (most recent call last): 176s + File "/usr/bin/hg", line 51, in 176s + dispatch.run() 176s + ~~~~~~~~~~~~^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 176s + status = dispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 176s + status = _rundispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 176s + ret = _runcatch(req) or 0 176s + ~~~~~~~~~^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 176s + return _callcatch(ui, _runcatchfunc) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 176s + return scmutil.callcatch(ui, func) 176s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 176s + return func() 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 176s + return _dispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 176s + return runcommand( 176s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 176s + ) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 176s + ret = _runcommand(ui, options, cmd, d) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 176s + return cmdfunc() 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 176s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 176s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 176s + return func(*args, **kwargs) 176s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 176s + r = hg.clone( 176s + ui, 176s + ...<11 lines>... 176s + depth=opts.get('depth') or None, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 176s + srcpeer, destpeer = orig(*args, **opts) 176s + ~~~~^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 176s + exchange.pull( 176s + ~~~~~~~~~~~~~^ 176s + local, 176s + ^^^^^^ 176s + ...<5 lines>... 176s + depth=depth, 176s + ^^^^^^^^^^^^ 176s + ) 176s + ^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 176s + return f(*args, **kwargs) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 176s + pullop.cgresult = repo.githandler.fetch(remote, heads) 176s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 176s + imported = self.import_git_objects( 176s + b'pull', 176s + ...<2 lines>... 176s + heads=heads, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 176s + self.import_git_commit( 176s + ~~~~~~~~~~~~~~~~~~~~~~^ 176s + command, 176s + ^^^^^^^^ 176s + self.git[commit.sha], 176s + ^^^^^^^^^^^^^^^^^^^^^ 176s + commit.phase, 176s + ^^^^^^^^^^^^^ 176s + ) 176s + ^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 176s + files, gitlinks, git_renames = self.get_files_changed( 176s + ~~~~~~~~~~~~~~~~~~~~~~^ 176s + commit, detect_renames 176s + ^^^^^^^^^^^^^^^^^^^^^^ 176s + ) 176s + ^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 176s + oldfile, oldmode, oldsha = change.old 176s + ^^^^^^^^^^^^^^^^^^^^^^^^ 176s + TypeError: cannot unpack non-iterable NoneType object 176s + [1] 176s $ hg -R hgrepo log --graph 176s - @ changeset: 1:7fe02317c63d 176s - | bookmark: master 176s - | tag: default/master 176s - | tag: tip 176s - | user: test 176s - | date: Mon Jan 01 00:00:11 2007 +0000 176s - | summary: add beta 176s - | 176s - o changeset: 0:ff7a2f2d8d70 176s - user: test 176s - date: Mon Jan 01 00:00:10 2007 +0000 176s - summary: add alpha 176s - 176s + abort: repository hgrepo not found 176s + [255] 176s 176s we should have some bookmarks 176s $ hg -R hgrepo book 176s - * master 1:7fe02317c63d 176s + abort: repository hgrepo not found 176s + [255] 176s $ hg -R hgrepo gverify 176s - verifying rev 7fe02317c63d against git commit 9497a4ee62e16ee641860d7677cdb2589ea15554 176s + abort: repository hgrepo not found 176s + [255] 176s 176s test for ssh vulnerability 176s 176s @@ -53,10 +134,180 @@ 176s abort: potentially unsafe hostname: '-oProxyCommand=rm${IFS}nonexistent' 176s [255] 176s $ hg clone -q 'git+ssh://fakehost|rm${IFS}nonexistent/path' 176s - ssh: * fakehost%7?rm%24%7????%7?nonexistent* (glob) 176s - abort: git remote error: The remote server unexpectedly closed the connection. 176s - [255] 176s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 176s + ** which supports versions 6.9 of Mercurial. 176s + ** Please disable "hggit" and try your action again. 176s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 176s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 176s + ** Mercurial Distributed SCM (version 7.0.1) 176s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 176s + Traceback (most recent call last): 176s + File "/usr/bin/hg", line 51, in 176s + dispatch.run() 176s + ~~~~~~~~~~~~^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 176s + status = dispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 176s + status = _rundispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 176s + ret = _runcatch(req) or 0 176s + ~~~~~~~~~^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 176s + return _callcatch(ui, _runcatchfunc) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 176s + return scmutil.callcatch(ui, func) 176s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 176s + return func() 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 176s + return _dispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 176s + return runcommand( 176s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 176s + ) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 176s + ret = _runcommand(ui, options, cmd, d) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 176s + return cmdfunc() 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 176s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 176s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 176s + return func(*args, **kwargs) 176s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 176s + r = hg.clone( 176s + ui, 176s + ...<11 lines>... 176s + depth=opts.get('depth') or None, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 176s + srcpeer, destpeer = orig(*args, **opts) 176s + ~~~~^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 176s + exchange.pull( 176s + ~~~~~~~~~~~~~^ 176s + local, 176s + ^^^^^^ 176s + ...<5 lines>... 176s + depth=depth, 176s + ^^^^^^^^^^^^ 176s + ) 176s + ^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 176s + return f(*args, **kwargs) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 176s + pullop.cgresult = repo.githandler.fetch(remote, heads) 176s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 391, in fetch 176s + result = self.fetch_pack(remote.path, heads) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1644, in fetch_pack 176s + ret = self._call_client( 176s + remote, 176s + ...<4 lines>... 176s + progress.progress, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1680, in _call_client 176s + ret = func(path, *args, **kwargs) 176s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 176s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 176s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 176s + con = self.ssh_vendor.run_command( 176s + self.host, 176s + ...<4 lines>... 176s + **kwargs, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/_ssh.py", line 23, in run_command 176s + assert isinstance(command, str) 176s + ~~~~~~~~~~^^^^^^^^^^^^^^ 176s + AssertionError 176s + [1] 176s $ hg clone -q 'git+ssh://fakehost%7Crm${IFS}nonexistent/path' 176s - ssh: * fakehost%7?rm%24%7????%7?nonexistent* (glob) 176s - abort: git remote error: The remote server unexpectedly closed the connection. 176s - [255] 176s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 176s + ** which supports versions 6.9 of Mercurial. 176s + ** Please disable "hggit" and try your action again. 176s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 176s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 176s + ** Mercurial Distributed SCM (version 7.0.1) 176s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 176s + Traceback (most recent call last): 176s + File "/usr/bin/hg", line 51, in 176s + dispatch.run() 176s + ~~~~~~~~~~~~^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 176s + status = dispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 176s + status = _rundispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 176s + ret = _runcatch(req) or 0 176s + ~~~~~~~~~^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 176s + return _callcatch(ui, _runcatchfunc) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 176s + return scmutil.callcatch(ui, func) 176s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 176s + return func() 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 176s + return _dispatch(req) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 176s + return runcommand( 176s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 176s + ) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 176s + ret = _runcommand(ui, options, cmd, d) 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 176s + return cmdfunc() 176s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 176s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 176s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 176s + return func(*args, **kwargs) 176s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 176s + r = hg.clone( 176s + ui, 176s + ...<11 lines>... 176s + depth=opts.get('depth') or None, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 176s + srcpeer, destpeer = orig(*args, **opts) 176s + ~~~~^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 176s + exchange.pull( 176s + ~~~~~~~~~~~~~^ 176s + local, 176s + ^^^^^^ 176s + ...<5 lines>... 176s + depth=depth, 176s + ^^^^^^^^^^^^ 176s + ) 176s + ^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 176s + return f(*args, **kwargs) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 176s + pullop.cgresult = repo.githandler.fetch(remote, heads) 176s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 391, in fetch 176s + result = self.fetch_pack(remote.path, heads) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1644, in fetch_pack 176s + ret = self._call_client( 176s + remote, 176s + ...<4 lines>... 176s + progress.progress, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1680, in _call_client 176s + ret = func(path, *args, **kwargs) 176s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 176s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 176s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 176s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 176s + con = self.ssh_vendor.run_command( 176s + self.host, 176s + ...<4 lines>... 176s + **kwargs, 176s + ) 176s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/_ssh.py", line 23, in run_command 176s + assert isinstance(command, str) 176s + ~~~~~~~~~~^^^^^^^^^^^^^^ 176s + AssertionError 176s + [1] 176s 176s ERROR: test-git-clone.t output changed 177s ! 177s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-gpg.t 177s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-git-gpg.t.err 177s @@ -56,22 +56,100 @@ 177s 177s $ hg clone gitrepo hgrepo 177s importing 2 git commits 177s - new changesets ab60c5e55bd6:[0-9a-f]{12,12} \(2 drafts\) (re) 177s - updating to bookmark signed 177s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 177s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 177s + ** which supports versions 6.9 of Mercurial. 177s + ** Please disable "hggit" and try your action again. 177s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 177s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 177s + ** Mercurial Distributed SCM (version 7.0.1) 177s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 177s + Traceback (most recent call last): 177s + File "/usr/bin/hg", line 51, in 177s + dispatch.run() 177s + ~~~~~~~~~~~~^^ 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 177s + status = dispatch(req) 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 177s + status = _rundispatch(req) 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 177s + ret = _runcatch(req) or 0 177s + ~~~~~~~~~^^^^^ 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 177s + return _callcatch(ui, _runcatchfunc) 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 177s + return scmutil.callcatch(ui, func) 177s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 177s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 177s + return func() 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 177s + return _dispatch(req) 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 177s + return runcommand( 177s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 177s + ) 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 177s + ret = _runcommand(ui, options, cmd, d) 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 177s + return cmdfunc() 177s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 177s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 177s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 177s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 177s + return func(*args, **kwargs) 177s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 177s + r = hg.clone( 177s + ui, 177s + ...<11 lines>... 177s + depth=opts.get('depth') or None, 177s + ) 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 177s + srcpeer, destpeer = orig(*args, **opts) 177s + ~~~~^^^^^^^^^^^^^^^ 177s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 177s + exchange.pull( 177s + ~~~~~~~~~~~~~^ 177s + local, 177s + ^^^^^^ 177s + ...<5 lines>... 177s + depth=depth, 177s + ^^^^^^^^^^^^ 177s + ) 177s + ^ 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 177s + return f(*args, **kwargs) 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 177s + pullop.cgresult = repo.githandler.fetch(remote, heads) 177s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 177s + imported = self.import_git_objects( 177s + b'pull', 177s + ...<2 lines>... 177s + heads=heads, 177s + ) 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 177s + self.import_git_commit( 177s + ~~~~~~~~~~~~~~~~~~~~~~^ 177s + command, 177s + ^^^^^^^^ 177s + self.git[commit.sha], 177s + ^^^^^^^^^^^^^^^^^^^^^ 177s + commit.phase, 177s + ^^^^^^^^^^^^^ 177s + ) 177s + ^ 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 177s + files, gitlinks, git_renames = self.get_files_changed( 177s + ~~~~~~~~~~~~~~~~~~~~~~^ 177s + commit, detect_renames 177s + ^^^^^^^^^^^^^^^^^^^^^^ 177s + ) 177s + ^ 177s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 177s + oldfile, oldmode, oldsha = change.old 177s + ^^^^^^^^^^^^^^^^^^^^^^^^ 177s + TypeError: cannot unpack non-iterable NoneType object 177s + [1] 177s 177s $ cd hgrepo 177s + $TESTTMP.sh: 46: cd: can't cd to hgrepo 177s $ hg push ../gitrepo2 -B signed 177s - pushing to ../gitrepo2 177s - searching for changes 177s - adding objects 177s - remote: found 0 deltas to reuse 177s - added 1 commits with 1 trees and 0 blobs 177s - adding reference refs/heads/signed 177s - $ cd .. 177s - 177s -Verify the commit 177s - 177s - $ cd gitrepo2 177s - $ git show --show-signature signed | grep "Good signature from" 177s - gpg: Good signature from "hgtest" [ultimate] 177s 177s ERROR: test-git-gpg.t output changed 181s ! 181s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-annotate.t 181s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-annotate.t.err 181s @@ -46,6 +46,63 @@ 181s 0* a 181s 181s $ hg gexport 181s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 181s + ** which supports versions 6.9 of Mercurial. 181s + ** Please disable "hggit" and try your action again. 181s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 181s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 181s + ** Mercurial Distributed SCM (version 7.0.1) 181s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 181s + Traceback (most recent call last): 181s + File "/usr/bin/hg", line 51, in 181s + dispatch.run() 181s + ~~~~~~~~~~~~^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 181s + status = dispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 181s + status = _rundispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 181s + ret = _runcatch(req) or 0 181s + ~~~~~~~~~^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 181s + return _callcatch(ui, _runcatchfunc) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 181s + return scmutil.callcatch(ui, func) 181s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 181s + return func() 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 181s + return _dispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 181s + return runcommand( 181s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 181s + ) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 181s + ret = _runcommand(ui, options, cmd, d) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 181s + return cmdfunc() 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 181s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 181s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 181s + return func(*args, **kwargs) 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 181s + repo.githandler.export_commits() 181s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 181s + self.export_git_objects() 181s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 181s + packer.pack(synchronous=True) 181s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 181s + _process_batch(self.ui, self.object_store, todo) 181s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 181s + object_store._remove_loose_object(obj.id) 181s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 181s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 181s + [1] 181s $ hg log -T '{rev}:{node} {gitnode}\n' 181s 2:beb139b96eec386addc02d48db524b7646ef1605 19388575d02e71e917e7013aa854d4a21c509819 181s 1:a9a255d66663f9216bdcf8dda69211d7280f7278 debec50a14cc4830584dd4fa1507c51cce1c098f 181s 181s ERROR: test-annotate.t output changed 181s ! 181s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-phases.t 181s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-phases.t.err 181s @@ -26,12 +26,80 @@ 181s $ hg book -r . secret 181s $ hg push 181s pushing to $TESTTMP/repo.git 181s - warning: not exporting secret bookmark 'secret' 181s - searching for changes 181s - adding objects 181s - remote: found 0 deltas to reuse 181s - added 1 commits with 1 trees and 1 blobs 181s - adding reference refs/heads/master 181s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 181s + ** which supports versions 6.9 of Mercurial. 181s + ** Please disable "hggit" and try your action again. 181s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 181s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 181s + ** Mercurial Distributed SCM (version 7.0.1) 181s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 181s + Traceback (most recent call last): 181s + File "/usr/bin/hg", line 51, in 181s + dispatch.run() 181s + ~~~~~~~~~~~~^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 181s + status = dispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 181s + status = _rundispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 181s + ret = _runcatch(req) or 0 181s + ~~~~~~~~~^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 181s + return _callcatch(ui, _runcatchfunc) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 181s + return scmutil.callcatch(ui, func) 181s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 181s + return func() 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 181s + return _dispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 181s + return runcommand( 181s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 181s + ) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 181s + ret = _runcommand(ui, options, cmd, d) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 181s + return cmdfunc() 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 181s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 181s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 181s + return func(*args, **kwargs) 181s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 181s + pushop = exchange.push( 181s + repo, 181s + ...<6 lines>... 181s + opargs=opargs, 181s + ) 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 181s + return f(*args, **kwargs) 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 181s + pushop.cgresult = repo.githandler.push( 181s + ~~~~~~~~~~~~~~~~~~~~^ 181s + remote.path, revs, bookmarks, force 181s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 181s + ) 181s + ^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 181s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 181s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 181s + all_exportable = self.export_commits() 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 181s + self.export_git_objects() 181s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 181s + packer.pack(synchronous=True) 181s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 181s + _process_batch(self.ui, self.object_store, todo) 181s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 181s + object_store._remove_loose_object(obj.id) 181s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 181s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 181s + [1] 181s $ cd .. 181s $ hg -R hgrepo log --graph --template phases 181s @ changeset: 1:62966756ea96 181s @@ -44,8 +112,7 @@ 181s | 181s o changeset: 0:d4b83afc35d1 181s bookmark: master 181s - tag: default/master 181s - phase: public 181s + phase: draft 181s user: test 181s date: Mon Jan 01 00:00:10 2007 +0000 181s summary: alpha 181s @@ -63,14 +130,9 @@ 181s Only one changeset was pushed: 181s 181s $ GIT_DIR=repo.git git log --graph --all --decorate=short 181s - * commit 2cc4e3d19551e459a0dd606f4cf890de571c7d33 (HEAD -> master) 181s - Author: test 181s - Date: Mon Jan 1 00:00:10 2007 +0000 181s - 181s - alpha 181s 181s And this published the remote head: 181s 181s $ hg -R hgrepo phase 'all()' 181s - 0: public 181s + 0: draft 181s 1: secret 181s 181s ERROR: test-push-phases.t output changed 181s ! 181s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-keywords.t 181s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-keywords.t.err 181s @@ -22,28 +22,99 @@ 181s 181s $ hg clone gitrepo hgrepo 181s importing 3 git commits 181s - new changesets ff7a2f2d8d70:8e3f0ecc9aef (3 drafts) 181s - updating to bookmark master 181s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 181s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 181s + ** which supports versions 6.9 of Mercurial. 181s + ** Please disable "hggit" and try your action again. 181s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 181s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 181s + ** Mercurial Distributed SCM (version 7.0.1) 181s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 181s + Traceback (most recent call last): 181s + File "/usr/bin/hg", line 51, in 181s + dispatch.run() 181s + ~~~~~~~~~~~~^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 181s + status = dispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 181s + status = _rundispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 181s + ret = _runcatch(req) or 0 181s + ~~~~~~~~~^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 181s + return _callcatch(ui, _runcatchfunc) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 181s + return scmutil.callcatch(ui, func) 181s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 181s + return func() 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 181s + return _dispatch(req) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 181s + return runcommand( 181s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 181s + ) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 181s + ret = _runcommand(ui, options, cmd, d) 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 181s + return cmdfunc() 181s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 181s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 181s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 181s + return func(*args, **kwargs) 181s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 181s + r = hg.clone( 181s + ui, 181s + ...<11 lines>... 181s + depth=opts.get('depth') or None, 181s + ) 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 181s + srcpeer, destpeer = orig(*args, **opts) 181s + ~~~~^^^^^^^^^^^^^^^ 181s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 181s + exchange.pull( 181s + ~~~~~~~~~~~~~^ 181s + local, 181s + ^^^^^^ 181s + ...<5 lines>... 181s + depth=depth, 181s + ^^^^^^^^^^^^ 181s + ) 181s + ^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 181s + return f(*args, **kwargs) 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 181s + pullop.cgresult = repo.githandler.fetch(remote, heads) 181s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 181s + imported = self.import_git_objects( 181s + b'pull', 181s + ...<2 lines>... 181s + heads=heads, 181s + ) 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 181s + self.import_git_commit( 181s + ~~~~~~~~~~~~~~~~~~~~~~^ 181s + command, 181s + ^^^^^^^^ 181s + self.git[commit.sha], 181s + ^^^^^^^^^^^^^^^^^^^^^ 181s + commit.phase, 181s + ^^^^^^^^^^^^^ 181s + ) 181s + ^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 181s + files, gitlinks, git_renames = self.get_files_changed( 181s + ~~~~~~~~~~~~~~~~~~~~~~^ 181s + commit, detect_renames 181s + ^^^^^^^^^^^^^^^^^^^^^^ 181s + ) 181s + ^ 181s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 181s + oldfile, oldmode, oldsha = change.old 181s + ^^^^^^^^^^^^^^^^^^^^^^^^ 181s + TypeError: cannot unpack non-iterable NoneType object 181s + [1] 181s $ cd hgrepo 181s + $TESTTMP.sh: 30: cd: can't cd to hgrepo 181s $ echo gamma > gamma 181s - $ hg add gamma 181s - $ hg commit -m 'add gamma' 181s - 181s - $ hg log --template "{rev} {node} {node|short} {gitnode} {gitnode|short}\n" 181s - 3 965bf7d08d3ac847dd8eb9e72ee0bf547d1a65d9 965bf7d08d3a 181s - 2 8e3f0ecc9aefd4ea2fdf8e2d5299cac548762a1c 8e3f0ecc9aef 7e2a5465ff4e3b992c429bb87a392620a0ac97b7 7e2a5465ff4e 181s - 1 7fe02317c63d9ee324d4b5df7c9296085162da1b 7fe02317c63d 9497a4ee62e16ee641860d7677cdb2589ea15554 9497a4ee62e1 181s - 0 ff7a2f2d8d7099694ae1e8b03838d40575bebb63 ff7a2f2d8d70 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 7eeab2ea75ec 181s - $ hg log --template "fromgit {rev}\n" --rev "fromgit()" 181s - fromgit 0 181s - fromgit 1 181s - fromgit 2 181s - $ hg log --template "gitnode_existsA {rev}\n" --rev "gitnode(9497a4ee62e16ee641860d7677cdb2589ea15554)" 181s - gitnode_existsA 1 181s - $ hg log --template "gitnode_existsB {rev}\n" --rev "gitnode(7eeab)" 181s - gitnode_existsB 0 181s - $ hg log --rev "gitnode(7e)" 181s - abort: git-mapfile@7e: ambiguous identifier!? (re) 181s - [50] 181s - $ hg log --template "gitnode_notexists {rev}\n" --rev "gitnode(1234567890ab)" 181s 181s ERROR: test-keywords.t output changed 182s ! 182s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-delete.t 182s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-delete.t.err 182s @@ -53,21 +53,99 @@ 182s 182s $ hg clone -U repo.git hgrepo 182s importing 3 git commits 182s - new changesets e532b2bfda10:cc611d35fb62 (3 drafts) 182s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 182s + ** which supports versions 6.9 of Mercurial. 182s + ** Please disable "hggit" and try your action again. 182s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 182s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 182s + ** Mercurial Distributed SCM (version 7.0.1) 182s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 182s + Traceback (most recent call last): 182s + File "/usr/bin/hg", line 51, in 182s + dispatch.run() 182s + ~~~~~~~~~~~~^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 182s + status = dispatch(req) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 182s + status = _rundispatch(req) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 182s + ret = _runcatch(req) or 0 182s + ~~~~~~~~~^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 182s + return _callcatch(ui, _runcatchfunc) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 182s + return scmutil.callcatch(ui, func) 182s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 182s + return func() 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 182s + return _dispatch(req) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 182s + return runcommand( 182s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 182s + ) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 182s + ret = _runcommand(ui, options, cmd, d) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 182s + return cmdfunc() 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 182s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 182s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 182s + return func(*args, **kwargs) 182s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 182s + r = hg.clone( 182s + ui, 182s + ...<11 lines>... 182s + depth=opts.get('depth') or None, 182s + ) 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 182s + srcpeer, destpeer = orig(*args, **opts) 182s + ~~~~^^^^^^^^^^^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 182s + exchange.pull( 182s + ~~~~~~~~~~~~~^ 182s + local, 182s + ^^^^^^ 182s + ...<5 lines>... 182s + depth=depth, 182s + ^^^^^^^^^^^^ 182s + ) 182s + ^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 182s + return f(*args, **kwargs) 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 182s + pullop.cgresult = repo.githandler.fetch(remote, heads) 182s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 182s + imported = self.import_git_objects( 182s + b'pull', 182s + ...<2 lines>... 182s + heads=heads, 182s + ) 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 182s + self.import_git_commit( 182s + ~~~~~~~~~~~~~~~~~~~~~~^ 182s + command, 182s + ^^^^^^^^ 182s + self.git[commit.sha], 182s + ^^^^^^^^^^^^^^^^^^^^^ 182s + commit.phase, 182s + ^^^^^^^^^^^^^ 182s + ) 182s + ^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 182s + files, gitlinks, git_renames = self.get_files_changed( 182s + ~~~~~~~~~~~~~~~~~~~~~~^ 182s + commit, detect_renames 182s + ^^^^^^^^^^^^^^^^^^^^^^ 182s + ) 182s + ^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 182s + oldfile, oldmode, oldsha = change.old 182s + ^^^^^^^^^^^^^^^^^^^^^^^^ 182s + TypeError: cannot unpack non-iterable NoneType object 182s + [1] 182s $ cd hgrepo 182s + $TESTTMP.sh: 50: cd: can't cd to hgrepo 182s $ hg log --graph --template info 182s - o 182s - | commit: 2:cc611d35fb62 delete subrepo 182s - | added: 182s - | removed: .hgsub .hgsubstate 182s - o 182s - | commit: 1:8d549bcc5179 add subrepo 182s - | added: .hgsub .hgsubstate 182s - | removed: 182s - o 182s - commit: 0:e532b2bfda10 add alpha 182s - added: alpha 182s - removed: 182s - $ hg manifest -r tip 182s - alpha 182s - $ cd .. 182s 182s ERROR: test-subrepos-delete.t output changed 182s ! 182s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-tree-decomposition.t 182s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-tree-decomposition.t.err 182s @@ -25,44 +25,99 @@ 182s 182s $ hg clone gitrepo hgrepo 182s importing 3 git commits 182s - new changesets d4d3d2417141:541f27994b81 (3 drafts) 182s - updating to bookmark master 182s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 182s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 182s + ** which supports versions 6.9 of Mercurial. 182s + ** Please disable "hggit" and try your action again. 182s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 182s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 182s + ** Mercurial Distributed SCM (version 7.0.1) 182s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 182s + Traceback (most recent call last): 182s + File "/usr/bin/hg", line 51, in 182s + dispatch.run() 182s + ~~~~~~~~~~~~^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 182s + status = dispatch(req) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 182s + status = _rundispatch(req) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 182s + ret = _runcatch(req) or 0 182s + ~~~~~~~~~^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 182s + return _callcatch(ui, _runcatchfunc) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 182s + return scmutil.callcatch(ui, func) 182s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 182s + return func() 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 182s + return _dispatch(req) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 182s + return runcommand( 182s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 182s + ) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 182s + ret = _runcommand(ui, options, cmd, d) 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 182s + return cmdfunc() 182s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 182s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 182s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 182s + return func(*args, **kwargs) 182s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 182s + r = hg.clone( 182s + ui, 182s + ...<11 lines>... 182s + depth=opts.get('depth') or None, 182s + ) 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 182s + srcpeer, destpeer = orig(*args, **opts) 182s + ~~~~^^^^^^^^^^^^^^^ 182s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 182s + exchange.pull( 182s + ~~~~~~~~~~~~~^ 182s + local, 182s + ^^^^^^ 182s + ...<5 lines>... 182s + depth=depth, 182s + ^^^^^^^^^^^^ 182s + ) 182s + ^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 182s + return f(*args, **kwargs) 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 182s + pullop.cgresult = repo.githandler.fetch(remote, heads) 182s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 182s + imported = self.import_git_objects( 182s + b'pull', 182s + ...<2 lines>... 182s + heads=heads, 182s + ) 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 182s + self.import_git_commit( 182s + ~~~~~~~~~~~~~~~~~~~~~~^ 182s + command, 182s + ^^^^^^^^ 182s + self.git[commit.sha], 182s + ^^^^^^^^^^^^^^^^^^^^^ 182s + commit.phase, 182s + ^^^^^^^^^^^^^ 182s + ) 182s + ^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 182s + files, gitlinks, git_renames = self.get_files_changed( 182s + ~~~~~~~~~~~~~~~~~~~~~~^ 182s + commit, detect_renames 182s + ^^^^^^^^^^^^^^^^^^^^^^ 182s + ) 182s + ^ 182s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 182s + oldfile, oldmode, oldsha = change.old 182s + ^^^^^^^^^^^^^^^^^^^^^^^^ 182s + TypeError: cannot unpack non-iterable NoneType object 182s + [1] 182s $ cd hgrepo 182s + $TESTTMP.sh: 38: cd: can't cd to hgrepo 182s $ hg log --template 'adds: {file_adds}\ndels: {file_dels}\n' 182s - adds: d1 182s - dels: d1/f1 182s - adds: d2/f2 182s - dels: d1/f2 182s - adds: d1/f1 d1/f2 182s - dels: 182s - 182s - $ hg debug-remove-hggit-state 182s - clearing out the git cache data 182s - $ hg push ../repo.git 182s - pushing to ../repo.git 182s - searching for changes 182s - adding objects 182s - remote: found 0 deltas to reuse 182s - added 3 commits with 6 trees and 3 blobs 182s - adding reference refs/heads/master 182s - $ cd .. 182s - 182s - $ git --git-dir=repo.git log --pretty=medium 182s - commit 6e0dbd8cd92ed4823c69cb48d8a2b81f904e6e69 182s - Author: test 182s - Date: Mon Jan 1 00:00:12 2007 +0000 182s - 182s - replace a dir with a file 182s - 182s - commit a1874d5cd0b1549ed729e36f0da4a93ed36259ee 182s - Author: test 182s - Date: Mon Jan 1 00:00:11 2007 +0000 182s - 182s - rename 182s - 182s - commit 102c17a5deda49db3f10ec5573f9378867098b7c 182s - Author: test 182s - Date: Mon Jan 1 00:00:10 2007 +0000 182s - 182s - initial 182s 182s ERROR: test-tree-decomposition.t output changed 183s ! 183s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-anonymous.t 183s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-push-anonymous.t.err 183s @@ -26,27 +26,99 @@ 183s 183s $ hg clone -U gitrepo hgrepo 183s importing 1 git commits 183s - new changesets ff7a2f2d8d70 (1 drafts) 183s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 183s + ** which supports versions 6.9 of Mercurial. 183s + ** Please disable "hggit" and try your action again. 183s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 183s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 183s + ** Mercurial Distributed SCM (version 7.0.1) 183s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 183s + Traceback (most recent call last): 183s + File "/usr/bin/hg", line 51, in 183s + dispatch.run() 183s + ~~~~~~~~~~~~^^ 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 183s + status = dispatch(req) 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 183s + status = _rundispatch(req) 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 183s + ret = _runcatch(req) or 0 183s + ~~~~~~~~~^^^^^ 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 183s + return _callcatch(ui, _runcatchfunc) 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 183s + return scmutil.callcatch(ui, func) 183s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 183s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 183s + return func() 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 183s + return _dispatch(req) 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 183s + return runcommand( 183s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 183s + ) 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 183s + ret = _runcommand(ui, options, cmd, d) 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 183s + return cmdfunc() 183s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 183s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 183s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 183s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 183s + return func(*args, **kwargs) 183s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 183s + r = hg.clone( 183s + ui, 183s + ...<11 lines>... 183s + depth=opts.get('depth') or None, 183s + ) 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 183s + srcpeer, destpeer = orig(*args, **opts) 183s + ~~~~^^^^^^^^^^^^^^^ 183s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 183s + exchange.pull( 183s + ~~~~~~~~~~~~~^ 183s + local, 183s + ^^^^^^ 183s + ...<5 lines>... 183s + depth=depth, 183s + ^^^^^^^^^^^^ 183s + ) 183s + ^ 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 183s + return f(*args, **kwargs) 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 183s + pullop.cgresult = repo.githandler.fetch(remote, heads) 183s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 183s + imported = self.import_git_objects( 183s + b'pull', 183s + ...<2 lines>... 183s + heads=heads, 183s + ) 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 183s + self.import_git_commit( 183s + ~~~~~~~~~~~~~~~~~~~~~~^ 183s + command, 183s + ^^^^^^^^ 183s + self.git[commit.sha], 183s + ^^^^^^^^^^^^^^^^^^^^^ 183s + commit.phase, 183s + ^^^^^^^^^^^^^ 183s + ) 183s + ^ 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 183s + files, gitlinks, git_renames = self.get_files_changed( 183s + ~~~~~~~~~~~~~~~~~~~~~~^ 183s + commit, detect_renames 183s + ^^^^^^^^^^^^^^^^^^^^^^ 183s + ) 183s + ^ 183s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 183s + oldfile, oldmode, oldsha = change.old 183s + ^^^^^^^^^^^^^^^^^^^^^^^^ 183s + TypeError: cannot unpack non-iterable NoneType object 183s + [1] 183s $ cd hgrepo 183s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 183s $ hg up tip 183s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 183s - $ echo beta > beta 183s - $ hg add beta 183s - $ fn_hg_commit -m "add beta" 183s - 183s -Pushing that changeset should print a helpful message: 183s - 183s - $ hg push 183s - pushing to $TESTTMP/gitrepo 183s - searching for changes 183s - no changes found (ignoring 1 changesets without bookmarks or tags) 183s - [1] 183s - 183s -But what about untagged, but secret changesets? 183s - 183s - $ hg phase -fs tip 183s - $ hg push 183s - pushing to $TESTTMP/gitrepo 183s - searching for changes 183s - no changes found 183s - [1] 183s 183s ERROR: test-push-anonymous.t output changed 185s ! 185s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-empty-working-tree.t 185s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-empty-working-tree.t.err 185s @@ -24,15 +24,81 @@ 185s clearing out the git cache data 185s $ hg push ../repo.git 185s pushing to ../repo.git 185s - searching for changes 185s - adding objects 185s - remote: found 0 deltas to reuse 185s - added 1 commits with 1 trees and 0 blobs 185s - adding reference refs/heads/master 185s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 185s + ** which supports versions 6.9 of Mercurial. 185s + ** Please disable "hggit" and try your action again. 185s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 185s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 185s + ** Mercurial Distributed SCM (version 7.0.1) 185s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 185s + Traceback (most recent call last): 185s + File "/usr/bin/hg", line 51, in 185s + dispatch.run() 185s + ~~~~~~~~~~~~^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 185s + status = dispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 185s + status = _rundispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 185s + ret = _runcatch(req) or 0 185s + ~~~~~~~~~^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 185s + return _callcatch(ui, _runcatchfunc) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 185s + return scmutil.callcatch(ui, func) 185s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 185s + return func() 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 185s + return _dispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 185s + return runcommand( 185s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 185s + ) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 185s + ret = _runcommand(ui, options, cmd, d) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 185s + return cmdfunc() 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 185s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 185s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 185s + return func(*args, **kwargs) 185s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 185s + pushop = exchange.push( 185s + repo, 185s + ...<6 lines>... 185s + opargs=opargs, 185s + ) 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 185s + return f(*args, **kwargs) 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 185s + pushop.cgresult = repo.githandler.push( 185s + ~~~~~~~~~~~~~~~~~~~~^ 185s + remote.path, revs, bookmarks, force 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 185s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 185s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 185s + all_exportable = self.export_commits() 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 185s + self.export_git_objects() 185s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 185s + packer.pack(synchronous=True) 185s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 185s + _process_batch(self.ui, self.object_store, todo) 185s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 185s + object_store._remove_loose_object(obj.id) 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 185s + [1] 185s $ cd .. 185s $ git --git-dir=repo.git log --pretty=medium 185s - commit 678256865a8c85ae925bf834369264193c88f8de 185s - Author: test 185s - Date: Mon Jan 1 00:00:00 2007 +0000 185s - 185s - empty 185s + fatal: your current branch 'master' does not have any commits yet 185s + [128] 185s 185s ERROR: test-empty-working-tree.t output changed 185s ! 185s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-drop.t 185s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-subrepos-drop.t.err 185s @@ -37,11 +37,80 @@ 185s $ hg -R hgrepo push 185s pushing to $TESTTMP/repo.git 185s warning: ignoring modifications to '.gitmodules' file; please use '.hgsub' instead 185s - searching for changes 185s - adding objects 185s - remote: found 0 deltas to reuse 185s - added 2 commits with 1 trees and 1 blobs 185s - adding reference refs/heads/master 185s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 185s + ** which supports versions 6.9 of Mercurial. 185s + ** Please disable "hggit" and try your action again. 185s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 185s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 185s + ** Mercurial Distributed SCM (version 7.0.1) 185s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 185s + Traceback (most recent call last): 185s + File "/usr/bin/hg", line 51, in 185s + dispatch.run() 185s + ~~~~~~~~~~~~^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 185s + status = dispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 185s + status = _rundispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 185s + ret = _runcatch(req) or 0 185s + ~~~~~~~~~^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 185s + return _callcatch(ui, _runcatchfunc) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 185s + return scmutil.callcatch(ui, func) 185s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 185s + return func() 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 185s + return _dispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 185s + return runcommand( 185s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 185s + ) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 185s + ret = _runcommand(ui, options, cmd, d) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 185s + return cmdfunc() 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 185s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 185s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 185s + return func(*args, **kwargs) 185s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 185s + pushop = exchange.push( 185s + repo, 185s + ...<6 lines>... 185s + opargs=opargs, 185s + ) 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 185s + return f(*args, **kwargs) 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 185s + pushop.cgresult = repo.githandler.push( 185s + ~~~~~~~~~~~~~~~~~~~~^ 185s + remote.path, revs, bookmarks, force 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 185s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 185s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 185s + all_exportable = self.export_commits() 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 185s + self.export_git_objects() 185s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 185s + packer.pack(synchronous=True) 185s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 185s + _process_batch(self.ui, self.object_store, todo) 185s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 185s + object_store._remove_loose_object(obj.id) 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 185s + [1] 185s 185s But we don't get a warning if we don't touch .gitmodules: 185s 185s @@ -50,19 +119,87 @@ 185s $ fn_hg_commit -A -m 'add that' 185s $ hg push 185s pushing to $TESTTMP/repo.git 185s - searching for changes 185s - adding objects 185s - remote: found 0 deltas to reuse 185s - added 1 commits with 1 trees and 0 blobs 185s - updating reference refs/heads/master 185s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 185s + ** which supports versions 6.9 of Mercurial. 185s + ** Please disable "hggit" and try your action again. 185s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 185s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 185s + ** Mercurial Distributed SCM (version 7.0.1) 185s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 185s + Traceback (most recent call last): 185s + File "/usr/bin/hg", line 51, in 185s + dispatch.run() 185s + ~~~~~~~~~~~~^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 185s + status = dispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 185s + status = _rundispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 185s + ret = _runcatch(req) or 0 185s + ~~~~~~~~~^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 185s + return _callcatch(ui, _runcatchfunc) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 185s + return scmutil.callcatch(ui, func) 185s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 185s + return func() 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 185s + return _dispatch(req) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 185s + return runcommand( 185s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 185s + ) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 185s + ret = _runcommand(ui, options, cmd, d) 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 185s + return cmdfunc() 185s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 185s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 185s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 185s + return func(*args, **kwargs) 185s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 185s + pushop = exchange.push( 185s + repo, 185s + ...<6 lines>... 185s + opargs=opargs, 185s + ) 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 185s + return f(*args, **kwargs) 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 185s + pushop.cgresult = repo.githandler.push( 185s + ~~~~~~~~~~~~~~~~~~~~^ 185s + remote.path, revs, bookmarks, force 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 185s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 185s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 185s + all_exportable = self.export_commits() 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 185s + self.export_git_objects() 185s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 185s + packer.pack(synchronous=True) 185s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 185s + _process_batch(self.ui, self.object_store, todo) 185s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 185s + object_store._remove_loose_object(obj.id) 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 185s + [1] 185s $ cd .. 185s 185s Check that it didn't silenty come through, or something: 185s 185s $ git clone repo.git gitrepo 185s Cloning into 'gitrepo'... 185s + warning: You appear to have cloned an empty repository. 185s done. 185s $ ls -A gitrepo 185s .git 185s - that 185s - this 185s 185s ERROR: test-subrepos-drop.t output changed 187s ! 187s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gitignore-permissions.t 187s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gitignore-permissions.t.err 187s @@ -18,6 +18,63 @@ 187s $ hg add thefile 187s $ hg ci -A -m commit 187s $ hg gexport 187s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 187s + ** which supports versions 6.9 of Mercurial. 187s + ** Please disable "hggit" and try your action again. 187s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 187s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 187s + ** Mercurial Distributed SCM (version 7.0.1) 187s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 187s + Traceback (most recent call last): 187s + File "/usr/bin/hg", line 51, in 187s + dispatch.run() 187s + ~~~~~~~~~~~~^^ 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 187s + status = dispatch(req) 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 187s + status = _rundispatch(req) 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 187s + ret = _runcatch(req) or 0 187s + ~~~~~~~~~^^^^^ 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 187s + return _callcatch(ui, _runcatchfunc) 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 187s + return scmutil.callcatch(ui, func) 187s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 187s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 187s + return func() 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 187s + return _dispatch(req) 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 187s + return runcommand( 187s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 187s + ) 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 187s + ret = _runcommand(ui, options, cmd, d) 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 187s + return cmdfunc() 187s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 187s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 187s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 187s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 187s + return func(*args, **kwargs) 187s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 187s + repo.githandler.export_commits() 187s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 187s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 187s + self.export_git_objects() 187s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 187s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 187s + packer.pack(synchronous=True) 187s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 187s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 187s + _process_batch(self.ui, self.object_store, todo) 187s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 187s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 187s + object_store._remove_loose_object(obj.id) 187s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 187s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 187s + [1] 187s 187s Create a file that we can ignore 187s 187s 187s ERROR: test-gitignore-permissions.t output changed 188s ! 188s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gitignore-share.t 188s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-gitignore-share.t.err 188s @@ -20,11 +20,80 @@ 188s $ hg book master 188s $ hg push 188s pushing to $TESTTMP/repo.git 188s - searching for changes 188s - adding objects 188s - remote: found 0 deltas to reuse 188s - added 1 commits with 1 trees and 1 blobs 188s - adding reference refs/heads/master 188s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 188s + ** which supports versions 6.9 of Mercurial. 188s + ** Please disable "hggit" and try your action again. 188s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 188s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 188s + ** Mercurial Distributed SCM (version 7.0.1) 188s + ** Extensions loaded: hggit unknown (dulwich 0.24.10), share 188s + Traceback (most recent call last): 188s + File "/usr/bin/hg", line 51, in 188s + dispatch.run() 188s + ~~~~~~~~~~~~^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 188s + status = dispatch(req) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 188s + status = _rundispatch(req) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 188s + ret = _runcatch(req) or 0 188s + ~~~~~~~~~^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 188s + return _callcatch(ui, _runcatchfunc) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 188s + return scmutil.callcatch(ui, func) 188s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 188s + return func() 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 188s + return _dispatch(req) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 188s + return runcommand( 188s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 188s + ) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 188s + ret = _runcommand(ui, options, cmd, d) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 188s + return cmdfunc() 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 188s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 188s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 188s + return func(*args, **kwargs) 188s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 188s + pushop = exchange.push( 188s + repo, 188s + ...<6 lines>... 188s + opargs=opargs, 188s + ) 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 188s + return f(*args, **kwargs) 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 232, in exchangepush 188s + pushop.cgresult = repo.githandler.push( 188s + ~~~~~~~~~~~~~~~~~~~~^ 188s + remote.path, revs, bookmarks, force 188s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 188s + ) 188s + ^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 520, in push 188s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 188s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1421, in upload_pack 188s + all_exportable = self.export_commits() 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 188s + self.export_git_objects() 188s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 188s + packer.pack(synchronous=True) 188s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 188s + _process_batch(self.ui, self.object_store, todo) 188s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 188s + object_store._remove_loose_object(obj.id) 188s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 188s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 188s + [1] 188s $ cd .. 188s 188s We should also ignore the file in a shared repository: 188s 188s ERROR: test-gitignore-share.t output changed 188s ! 188s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-ambiguousprefix.t 188s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-ambiguousprefix.t.err 188s @@ -22,12 +22,101 @@ 188s 188s $ hg clone gitrepo hgrepo 188s importing 3 git commits 188s - new changesets ff7a2f2d8d70:8e3f0ecc9aef (3 drafts) 188s - updating to bookmark master 188s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 188s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 188s + ** which supports versions 6.9 of Mercurial. 188s + ** Please disable "hggit" and try your action again. 188s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 188s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 188s + ** Mercurial Distributed SCM (version 7.0.1) 188s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 188s + Traceback (most recent call last): 188s + File "/usr/bin/hg", line 51, in 188s + dispatch.run() 188s + ~~~~~~~~~~~~^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 188s + status = dispatch(req) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 188s + status = _rundispatch(req) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 188s + ret = _runcatch(req) or 0 188s + ~~~~~~~~~^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 188s + return _callcatch(ui, _runcatchfunc) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 188s + return scmutil.callcatch(ui, func) 188s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 188s + return func() 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 188s + return _dispatch(req) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 188s + return runcommand( 188s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 188s + ) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 188s + ret = _runcommand(ui, options, cmd, d) 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 188s + return cmdfunc() 188s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 188s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 188s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 188s + return func(*args, **kwargs) 188s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 188s + r = hg.clone( 188s + ui, 188s + ...<11 lines>... 188s + depth=opts.get('depth') or None, 188s + ) 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/schemes.py", line 116, in clone 188s + srcpeer, destpeer = orig(*args, **opts) 188s + ~~~~^^^^^^^^^^^^^^^ 188s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 188s + exchange.pull( 188s + ~~~~~~~~~~~~~^ 188s + local, 188s + ^^^^^^ 188s + ...<5 lines>... 188s + depth=depth, 188s + ^^^^^^^^^^^^ 188s + ) 188s + ^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/util.py", line 98, in inner 188s + return f(*args, **kwargs) 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gitrepo.py", line 195, in exchangepull 188s + pullop.cgresult = repo.githandler.fetch(remote, heads) 188s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 397, in fetch 188s + imported = self.import_git_objects( 188s + b'pull', 188s + ...<2 lines>... 188s + heads=heads, 188s + ) 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1085, in import_git_objects 188s + self.import_git_commit( 188s + ~~~~~~~~~~~~~~~~~~~~~~^ 188s + command, 188s + ^^^^^^^^ 188s + self.git[commit.sha], 188s + ^^^^^^^^^^^^^^^^^^^^^ 188s + commit.phase, 188s + ^^^^^^^^^^^^^ 188s + ) 188s + ^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 1145, in import_git_commit 188s + files, gitlinks, git_renames = self.get_files_changed( 188s + ~~~~~~~~~~~~~~~~~~~~~~^ 188s + commit, detect_renames 188s + ^^^^^^^^^^^^^^^^^^^^^^ 188s + ) 188s + ^ 188s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 2130, in get_files_changed 188s + oldfile, oldmode, oldsha = change.old 188s + ^^^^^^^^^^^^^^^^^^^^^^^^ 188s + TypeError: cannot unpack non-iterable NoneType object 188s + [1] 188s 188s $ cd hgrepo 188s + $TESTTMP.sh: 30: cd: can't cd to hgrepo 188s 188s $ hg log -r 'gitnode(7e)' 188s - abort: git-mapfile@7e: ambiguous identifier!? (re) 188s - [50] 188s 188s ERROR: test-ambiguousprefix.t output changed 190s ! 190s --- /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-timezone.t 190s +++ /tmp/autopkgtest.rkAkJU/build.lKB/src/tests/test-timezone.t.err 190s @@ -30,3 +30,60 @@ 190s $ hg import patch2 190s applying patch2 190s $ hg gexport 190s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 190s + ** which supports versions 6.9 of Mercurial. 190s + ** Please disable "hggit" and try your action again. 190s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 190s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 190s + ** Mercurial Distributed SCM (version 7.0.1) 190s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 190s + Traceback (most recent call last): 190s + File "/usr/bin/hg", line 51, in 190s + dispatch.run() 190s + ~~~~~~~~~~~~^^ 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 190s + status = dispatch(req) 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 190s + status = _rundispatch(req) 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 190s + ret = _runcatch(req) or 0 190s + ~~~~~~~~~^^^^^ 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 190s + return _callcatch(ui, _runcatchfunc) 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 190s + return scmutil.callcatch(ui, func) 190s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 190s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 190s + return func() 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 190s + return _dispatch(req) 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 190s + return runcommand( 190s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 190s + ) 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 190s + ret = _runcommand(ui, options, cmd, d) 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 190s + return cmdfunc() 190s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 190s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 190s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 190s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 190s + return func(*args, **kwargs) 190s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/commands.py", line 64, in gexport 190s + repo.githandler.export_commits() 190s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 190s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 465, in export_commits 190s + self.export_git_objects() 190s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 190s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/git_handler.py", line 715, in export_git_objects 190s + packer.pack(synchronous=True) 190s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 190s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 121, in pack 190s + _process_batch(self.ui, self.object_store, todo) 190s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 190s + File "/tmp/autopkgtest.rkAkJU/build.lKB/src/hggit/gc.py", line 59, in _process_batch 190s + object_store._remove_loose_object(obj.id) 190s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 190s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 190s + [1] 190s 190s ERROR: test-timezone.t output changed 193s !.s... 193s Skipped test-check-black.t: missing feature: the black formatter for python (>= 22.3) 193s Skipped test-check-commit.t: missing feature: running tests from repository 193s Skipped test-check-pyflakes.t: missing feature: Pyflakes python linter 193s Skipped test-check-pylint.t: missing feature: Pylint python linter 193s Skipped test-encoding.t: blacklisted 193s Skipped test-gitignore-windows.t: missing feature: Windows 193s Skipped test-incoming.t: blacklisted 193s Skipped test-serve-ci.t: skipped 193s Skipped test-serve-dulwich.t: blacklisted 193s Failed test-ambiguousprefix.t: output changed and returned error code 1 193s Failed test-annotate.t: output changed 193s Failed test-bookmark-workflow.t: output changed and returned error code 1 193s Failed test-branch-bookmark-suffix.t#with-path: output changed and returned error code 1 193s Failed test-branch-bookmark-suffix.t#without-path: output changed and returned error code 1 193s Failed test-bundle.t: output changed and returned error code 1 193s Failed test-clone.t#draft: output changed 193s Failed test-clone.t#secret: output changed 193s Failed test-conflict-1.t: output changed 193s Failed test-conflict-2.t: output changed 193s Failed test-convergedmerge.t: output changed 193s Failed test-empty-working-tree.t: output changed 193s Failed test-extra.t: output changed and returned error code 1 193s Failed test-file-removal.t: output changed and returned error code 1 193s Failed test-gc.t: output changed and returned error code 1 193s Failed test-git-clone.t: output changed 193s Failed test-git-gpg.t: output changed and returned error code 1 193s Failed test-git-submodules.t: output changed and returned error code 1 193s Failed test-git-tags.t#draft: output changed and returned error code 1 193s Failed test-git-tags.t#secret: output changed and returned error code 1 193s Failed test-git-workflow.t: output changed 193s Failed test-gitignore-permissions.t: output changed 193s Failed test-gitignore-share.t: output changed 193s Failed test-gitignore.t: output changed 193s Failed test-hg-author.t: output changed and returned error code 1 193s Failed test-hg-branch.t: output changed and returned error code 1 193s Failed test-hg-clone.t: output changed and returned error code 1 193s Failed test-hg-tags.t: output changed and returned error code 1 193s Failed test-hook.t: output changed 193s Failed test-illegal-contents.t: output changed 193s Failed test-invalid-refs.t: output changed and returned error code 1 193s Failed test-keywords.t: output changed and returned error code 1 193s Failed test-merge.t: output changed and returned error code 1 193s Failed test-multiple-remotes.t: output changed 193s Failed test-octopus.t: output changed and returned error code 1 193s Failed test-orphan-tags.t: output changed and returned error code 1 193s Failed test-outgoing.t: output changed and returned error code 1 193s Failed test-phases-draft.t: output changed and returned error code 1 193s Failed test-phases-public.t#publish-defaults: output changed and returned error code 1 193s Failed test-phases-public.t#publish-specific: output changed and returned error code 1 193s Failed test-phases-remote.t: output changed and returned error code 1 193s Failed test-pull-after-obsolete.t: output changed and returned error code 1 193s Failed test-pull-after-rebase.t: output changed and returned error code 1 193s Failed test-pull-after-strip.t: output changed and returned error code 1 193s Failed test-pull.t#draft: output changed 193s Failed test-pull.t#secret: output changed 193s Failed test-push-anonymous.t: output changed and returned error code 1 193s Failed test-push-authors.t: output changed 193s Failed test-push-detached.t: output changed and returned error code 1 193s Failed test-push-missing-commit.t: output changed and returned error code 1 193s Failed test-push-phases.t: output changed 193s Failed test-push-to-head.t: output changed and returned error code 1 193s Failed test-push.t: output changed and returned error code 1 193s Failed test-renames.t: output changed and returned error code 1 193s Failed test-serve-git.t: output changed 193s Failed test-serve-hg.t#with-hggit: output changed and returned error code 1 193s Failed test-serve-hg.t#without-hggit: output changed and returned error code 1 193s Failed test-subrepos-delete.t: output changed and returned error code 1 193s Failed test-subrepos-drop.t: output changed 193s Failed test-subrepos-push.t: output changed 193s Failed test-subrepos-syntax.t: output changed and returned error code 1 193s Failed test-subrepos.t: output changed and returned error code 1 193s Failed test-timezone.t: output changed 193s Failed test-transactions.t: output changed 193s Failed test-tree-decomposition.t: output changed and returned error code 1 193s Failed test-verify-fail.t: output changed 193s # Ran 73 tests, 9 skipped, 66 failed. 193s python hash seed: 2562886595 193s make: *** [Makefile:15: tests] Error 1 193s autopkgtest [16:29:01]: test testsuite: -----------------------] 194s testsuite FAIL non-zero exit status 2 194s autopkgtest [16:29:02]: test testsuite: - - - - - - - - - - results - - - - - - - - - - 195s autopkgtest [16:29:03]: test mercurial-git: preparing testbed 203s Creating nova instance adt-resolute-i386-hg-git-20251117-162548-juju-7f2275-prod-proposed-migration-environment-2-feac5d8f-b873-4ae4-bc3b-eced421ee487 from image adt/ubuntu-resolute-amd64-server-20251117.img (UUID 9762b0cc-7c5b-4854-acd5-cc74ad0de8c6)... 251s autopkgtest [16:29:59]: testbed dpkg architecture: amd64 251s autopkgtest [16:29:59]: testbed apt version: 3.1.11 252s autopkgtest [16:30:00]: @@@@@@@@@@@@@@@@@@@@ test bed setup 252s autopkgtest [16:30:00]: testbed release detected to be: resolute 253s autopkgtest [16:30:01]: updating testbed package index (apt update) 253s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 253s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 253s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 253s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 253s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 253s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [839 kB] 254s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9848 B] 254s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [81.5 kB] 254s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 Packages [159 kB] 254s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/main i386 Packages [118 kB] 254s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/main amd64 c-n-f Metadata [3236 B] 254s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 Packages [64.6 kB] 254s Get:13 http://ftpmaster.internal/ubuntu resolute-proposed/restricted i386 Packages [3744 B] 254s Get:14 http://ftpmaster.internal/ubuntu resolute-proposed/restricted amd64 c-n-f Metadata [336 B] 254s Get:15 http://ftpmaster.internal/ubuntu resolute-proposed/universe i386 Packages [271 kB] 254s Get:16 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 Packages [585 kB] 254s Get:17 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 c-n-f Metadata [20.1 kB] 254s Get:18 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse i386 Packages [6516 B] 254s Get:19 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 Packages [13.4 kB] 254s Get:20 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse amd64 c-n-f Metadata [680 B] 257s Fetched 2286 kB in 1s (1585 kB/s) 258s Reading package lists... 258s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 258s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 258s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 258s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 259s Reading package lists... 259s Reading package lists... 260s Building dependency tree... 260s Reading state information... 260s Calculating upgrade... 260s The following packages will be upgraded: 260s usbutils 260s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 260s Need to get 83.9 kB of archives. 260s After this operation, 0 B of additional disk space will be used. 260s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 usbutils amd64 1:019-1 [83.9 kB] 260s dpkg-preconfigure: unable to re-open stdin: No such file or directory 260s Fetched 83.9 kB in 0s (7084 kB/s) 261s (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.) 261s Preparing to unpack .../usbutils_1%3a019-1_amd64.deb ... 261s Unpacking usbutils (1:019-1) over (1:018-2) ... 261s Setting up usbutils (1:019-1) ... 261s Processing triggers for man-db (2.13.1-1) ... 262s autopkgtest [16:30:10]: upgrading testbed (apt dist-upgrade and autopurge) 262s Reading package lists... 262s Building dependency tree... 262s Reading state information... 262s Calculating upgrade... 262s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 263s Reading package lists... 263s Building dependency tree... 263s Reading state information... 263s Solving dependencies... 263s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 266s Reading package lists... 266s Building dependency tree... 266s Reading state information... 266s Solving dependencies... 266s The following NEW packages will be installed: 266s git git-man liberror-perl mercurial mercurial-common mercurial-git 266s python3-dulwich 266s 0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded. 266s Need to get 9272 kB of archives. 266s After this operation, 48.3 MB of additional disk space will be used. 266s Get:1 http://ftpmaster.internal/ubuntu resolute/main amd64 liberror-perl all 0.17030-1 [23.5 kB] 266s Get:2 http://ftpmaster.internal/ubuntu resolute/main amd64 git-man all 1:2.51.0-1ubuntu1 [1179 kB] 267s Get:3 http://ftpmaster.internal/ubuntu resolute/main amd64 git amd64 1:2.51.0-1ubuntu1 [4414 kB] 267s Get:4 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-common all 7.0.1-2 [2783 kB] 267s Get:5 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial amd64 7.0.1-2 [428 kB] 267s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe amd64 python3-dulwich amd64 0.24.10-1 [383 kB] 267s Get:7 http://ftpmaster.internal/ubuntu resolute/universe amd64 mercurial-git all 1.2.0-1 [60.9 kB] 267s Fetched 9272 kB in 1s (17.2 MB/s) 267s Selecting previously unselected package liberror-perl. 267s (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.) 267s Preparing to unpack .../0-liberror-perl_0.17030-1_all.deb ... 267s Unpacking liberror-perl (0.17030-1) ... 267s Selecting previously unselected package git-man. 267s Preparing to unpack .../1-git-man_1%3a2.51.0-1ubuntu1_all.deb ... 267s Unpacking git-man (1:2.51.0-1ubuntu1) ... 267s Selecting previously unselected package git. 267s Preparing to unpack .../2-git_1%3a2.51.0-1ubuntu1_amd64.deb ... 267s Unpacking git (1:2.51.0-1ubuntu1) ... 267s Selecting previously unselected package mercurial-common. 268s Preparing to unpack .../3-mercurial-common_7.0.1-2_all.deb ... 268s Unpacking mercurial-common (7.0.1-2) ... 268s Selecting previously unselected package mercurial. 268s Preparing to unpack .../4-mercurial_7.0.1-2_amd64.deb ... 268s Unpacking mercurial (7.0.1-2) ... 268s Selecting previously unselected package python3-dulwich. 268s Preparing to unpack .../5-python3-dulwich_0.24.10-1_amd64.deb ... 268s Unpacking python3-dulwich (0.24.10-1) ... 268s Selecting previously unselected package mercurial-git. 268s Preparing to unpack .../6-mercurial-git_1.2.0-1_all.deb ... 268s Unpacking mercurial-git (1.2.0-1) ... 268s Setting up mercurial-common (7.0.1-2) ... 269s Setting up liberror-perl (0.17030-1) ... 269s Setting up python3-dulwich (0.24.10-1) ... 270s Setting up git-man (1:2.51.0-1ubuntu1) ... 270s Setting up mercurial (7.0.1-2) ... 270s Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version 270s Setting up mercurial-git (1.2.0-1) ... 270s mercurial-git extension is disabled by default. 270s You can follow the instructions in /usr/share/doc/mercurial-git/README.Debian to enable it. 270s Setting up git (1:2.51.0-1ubuntu1) ... 270s Processing triggers for man-db (2.13.1-1) ... 273s autopkgtest [16:30:21]: test environment configured for cross building 273s autopkgtest [16:30:21]: test mercurial-git: [----------------------- 273s Initialized empty Git repository in /tmp/autopkgtest.rkAkJU/build.lKB/src/git_server/ 273s Cloning into 'git_clone'... 273s warning: You appear to have cloned an empty repository. 273s done. 273s [master (root-commit) 56c1e0c] a 273s 1 file changed, 1 insertion(+) 273s create mode 100644 a 273s To /tmp/autopkgtest.rkAkJU/build.lKB/src/git_server 273s * [new branch] master -> master 274s importing 1 git commits 274s ** Unknown exception encountered with possibly-broken third-party extension "hggit" 1.2.0 (dulwich 0.24.10) 274s ** which supports versions 6.9 of Mercurial. 274s ** Please disable "hggit" and try your action again. 274s ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 274s ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 274s ** Mercurial Distributed SCM (version 7.0.1) 274s ** Extensions loaded: hggit 1.2.0 (dulwich 0.24.10) 274s Traceback (most recent call last): 274s File "/usr/bin/hg", line 51, in 274s dispatch.run() 274s ~~~~~~~~~~~~^^ 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 274s status = dispatch(req) 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 274s status = _rundispatch(req) 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 274s ret = _runcatch(req) or 0 274s ~~~~~~~~~^^^^^ 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 274s return _callcatch(ui, _runcatchfunc) 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 274s return scmutil.callcatch(ui, func) 274s ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 274s File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 274s return func() 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 274s return _dispatch(req) 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 274s return runcommand( 274s lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 274s ) 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 274s ret = _runcommand(ui, options, cmd, d) 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 274s return cmdfunc() 274s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 274s d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 274s ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 274s File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 274s return func(*args, **kwargs) 274s File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 274s r = hg.clone( 274s ui, 274s ...<11 lines>... 274s depth=opts.get('depth') or None, 274s ) 274s File "/usr/lib/python3/dist-packages/hggit/schemes.py", line 116, in clone 274s srcpeer, destpeer = orig(*args, **opts) 274s ~~~~^^^^^^^^^^^^^^^ 274s File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 274s exchange.pull( 274s ~~~~~~~~~~~~~^ 274s local, 274s ^^^^^^ 274s ...<5 lines>... 274s depth=depth, 274s ^^^^^^^^^^^^ 274s ) 274s ^ 274s File "/usr/lib/python3/dist-packages/hggit/util.py", line 98, in inner 274s return f(*args, **kwargs) 274s File "/usr/lib/python3/dist-packages/hggit/gitrepo.py", line 195, in exchangepull 274s pullop.cgresult = repo.githandler.fetch(remote, heads) 274s ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 274s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 397, in fetch 274s imported = self.import_git_objects( 274s b'pull', 274s ...<2 lines>... 274s heads=heads, 274s ) 274s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1085, in import_git_objects 274s self.import_git_commit( 274s ~~~~~~~~~~~~~~~~~~~~~~^ 274s command, 274s ^^^^^^^^ 274s self.git[commit.sha], 274s ^^^^^^^^^^^^^^^^^^^^^ 274s commit.phase, 274s ^^^^^^^^^^^^^ 274s ) 274s ^ 274s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1145, in import_git_commit 274s files, gitlinks, git_renames = self.get_files_changed( 274s ~~~~~~~~~~~~~~~~~~~~~~^ 274s commit, detect_renames 274s ^^^^^^^^^^^^^^^^^^^^^^ 274s ) 274s ^ 274s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 2130, in get_files_changed 274s oldfile, oldmode, oldsha = change.old 274s ^^^^^^^^^^^^^^^^^^^^^^^^ 274s TypeError: cannot unpack non-iterable NoneType object 275s autopkgtest [16:30:23]: test mercurial-git: -----------------------] 275s autopkgtest [16:30:23]: test mercurial-git: - - - - - - - - - - results - - - - - - - - - - 275s mercurial-git FAIL non-zero exit status 1 276s autopkgtest [16:30:24]: test mercurial-git: - - - - - - - - - - stderr - - - - - - - - - - 276s ** Unknown exception encountered with possibly-broken third-party extension "hggit" 1.2.0 (dulwich 0.24.10) 276s ** which supports versions 6.9 of Mercurial. 276s ** Please disable "hggit" and try your action again. 276s ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 276s ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 276s ** Mercurial Distributed SCM (version 7.0.1) 276s ** Extensions loaded: hggit 1.2.0 (dulwich 0.24.10) 276s Traceback (most recent call last): 276s File "/usr/bin/hg", line 51, in 276s dispatch.run() 276s ~~~~~~~~~~~~^^ 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 276s status = dispatch(req) 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 276s status = _rundispatch(req) 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 276s ret = _runcatch(req) or 0 276s ~~~~~~~~~^^^^^ 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 276s return _callcatch(ui, _runcatchfunc) 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 276s return scmutil.callcatch(ui, func) 276s ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 276s File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 276s return func() 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 276s return _dispatch(req) 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 276s return runcommand( 276s lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 276s ) 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 276s ret = _runcommand(ui, options, cmd, d) 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 276s return cmdfunc() 276s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 276s d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 276s ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 276s File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 276s return func(*args, **kwargs) 276s File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 276s r = hg.clone( 276s ui, 276s ...<11 lines>... 276s depth=opts.get('depth') or None, 276s ) 276s File "/usr/lib/python3/dist-packages/hggit/schemes.py", line 116, in clone 276s srcpeer, destpeer = orig(*args, **opts) 276s ~~~~^^^^^^^^^^^^^^^ 276s File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 276s exchange.pull( 276s ~~~~~~~~~~~~~^ 276s local, 276s ^^^^^^ 276s ...<5 lines>... 276s depth=depth, 276s ^^^^^^^^^^^^ 276s ) 276s ^ 276s File "/usr/lib/python3/dist-packages/hggit/util.py", line 98, in inner 276s return f(*args, **kwargs) 276s File "/usr/lib/python3/dist-packages/hggit/gitrepo.py", line 195, in exchangepull 276s pullop.cgresult = repo.githandler.fetch(remote, heads) 276s ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 276s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 397, in fetch 276s imported = self.import_git_objects( 276s b'pull', 276s ...<2 lines>... 276s heads=heads, 276s ) 276s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1085, in import_git_objects 276s self.import_git_commit( 276s ~~~~~~~~~~~~~~~~~~~~~~^ 276s command, 276s ^^^^^^^^ 276s self.git[commit.sha], 276s ^^^^^^^^^^^^^^^^^^^^^ 276s commit.phase, 276s ^^^^^^^^^^^^^ 276s ) 276s ^ 276s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1145, in import_git_commit 276s files, gitlinks, git_renames = self.get_files_changed( 276s ~~~~~~~~~~~~~~~~~~~~~~^ 276s commit, detect_renames 276s ^^^^^^^^^^^^^^^^^^^^^^ 276s ) 276s ^ 276s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 2130, in get_files_changed 276s oldfile, oldmode, oldsha = change.old 276s ^^^^^^^^^^^^^^^^^^^^^^^^ 276s TypeError: cannot unpack non-iterable NoneType object 276s autopkgtest [16:30:24]: @@@@@@@@@@@@@@@@@@@@ summary 276s testsuite FAIL non-zero exit status 2 276s mercurial-git FAIL non-zero exit status 1