0s autopkgtest [18:22:16]: starting date and time: 2025-11-17 18:22:16+0000 0s autopkgtest [18:22:16]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [18:22:16]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work._6b5w3n3/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:dulwich --apt-upgrade hg-git --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=dulwich/0.24.10-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-ppc64el --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-ppc64el-5.secgroup --name adt-resolute-ppc64el-hg-git-20251117-182216-juju-7f2275-prod-proposed-migration-environment-2-92cbdbd3-3266-44fd-a1ac-028af474556c --image adt/ubuntu-resolute-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration-ppc64el -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 4s Creating nova instance adt-resolute-ppc64el-hg-git-20251117-182216-juju-7f2275-prod-proposed-migration-environment-2-92cbdbd3-3266-44fd-a1ac-028af474556c from image adt/ubuntu-resolute-ppc64el-server-20251117.img (UUID c6f5b741-c77a-45db-84cb-f00b40e77676)... 54s autopkgtest [18:23:10]: testbed dpkg architecture: ppc64el 55s autopkgtest [18:23:11]: testbed apt version: 3.1.11 55s autopkgtest [18:23:11]: @@@@@@@@@@@@@@@@@@@@ test bed setup 55s autopkgtest [18:23:11]: testbed release detected to be: None 56s autopkgtest [18:23:12]: updating testbed package index (apt update) 57s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 57s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 57s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 57s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 57s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [779 kB] 57s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9852 B] 57s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 57s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [73.2 kB] 57s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [135 kB] 57s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted ppc64el Packages [940 B] 57s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [501 kB] 58s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [11.0 kB] 58s Fetched 1622 kB in 1s (1256 kB/s) 59s 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 60s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 60s Reading package lists... 60s Reading package lists... 61s Building dependency tree... 61s Reading state information... 61s Calculating upgrade... 61s The following packages will be upgraded: 61s apt libapt-pkg7.0 libcrypt-dev libcrypt1 usbutils 61s 5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 61s Need to get 3180 kB of archives. 61s After this operation, 118 kB of additional disk space will be used. 61s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcrypt-dev ppc64el 1:4.5.1-1 [162 kB] 61s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcrypt1 ppc64el 1:4.5.1-1 [125 kB] 61s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el libapt-pkg7.0 ppc64el 3.1.12 [1286 kB] 62s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el apt ppc64el 3.1.12 [1516 kB] 62s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el usbutils ppc64el 1:019-1 [91.5 kB] 63s dpkg-preconfigure: unable to re-open stdin: No such file or directory 63s Fetched 3180 kB in 1s (2134 kB/s) 63s (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 ... 81022 files and directories currently installed.) 63s Preparing to unpack .../libcrypt-dev_1%3a4.5.1-1_ppc64el.deb ... 63s Unpacking libcrypt-dev:ppc64el (1:4.5.1-1) over (1:4.4.38-1build1) ... 63s Preparing to unpack .../libcrypt1_1%3a4.5.1-1_ppc64el.deb ... 63s Unpacking libcrypt1:ppc64el (1:4.5.1-1) over (1:4.4.38-1build1) ... 63s Setting up libcrypt1:ppc64el (1:4.5.1-1) ... 63s (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 ... 81022 files and directories currently installed.) 63s Preparing to unpack .../libapt-pkg7.0_3.1.12_ppc64el.deb ... 63s Unpacking libapt-pkg7.0:ppc64el (3.1.12) over (3.1.11) ... 63s Preparing to unpack .../apt_3.1.12_ppc64el.deb ... 63s Unpacking apt (3.1.12) over (3.1.11) ... 63s Preparing to unpack .../usbutils_1%3a019-1_ppc64el.deb ... 63s Unpacking usbutils (1:019-1) over (1:018-2) ... 63s Setting up usbutils (1:019-1) ... 63s Setting up libcrypt-dev:ppc64el (1:4.5.1-1) ... 63s Setting up libapt-pkg7.0:ppc64el (3.1.12) ... 63s Setting up apt (3.1.12) ... 64s Processing triggers for man-db (2.13.1-1) ... 66s Processing triggers for libc-bin (2.42-2ubuntu2) ... 66s autopkgtest [18:23:22]: upgrading testbed (apt dist-upgrade and autopurge) 67s Reading package lists... 67s Building dependency tree... 67s Reading state information... 67s Calculating upgrade... 67s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 67s Reading package lists... 68s Building dependency tree... 68s Reading state information... 68s Solving dependencies... 68s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 68s autopkgtest [18:23:24]: rebooting testbed after setup commands that affected boot 94s autopkgtest [18:23:50]: testbed running kernel: Linux 6.17.0-5-generic #5-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 10:02:41 UTC 2025 97s autopkgtest [18:23:53]: @@@@@@@@@@@@@@@@@@@@ apt-source hg-git 99s Get:1 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (dsc) [2142 B] 99s Get:2 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (tar) [222 kB] 99s Get:3 http://ftpmaster.internal/ubuntu resolute/universe hg-git 1.2.0-1 (diff) [6816 B] 99s gpgv: Signature made Sun Feb 16 14:22:41 2025 UTC 99s gpgv: using RSA key 8F6DE104377F3B11E741748731F3144544A1741A 99s gpgv: issuer "tchet@debian.org" 99s gpgv: Can't check signature: No public key 99s dpkg-source: warning: cannot verify inline signature for ./hg-git_1.2.0-1.dsc: no acceptable signature found 99s autopkgtest [18:23:55]: testing package hg-git version 1.2.0-1 100s autopkgtest [18:23:56]: build not needed 100s autopkgtest [18:23:56]: test testsuite: preparing testbed 100s Reading package lists... 101s Building dependency tree... 101s Reading state information... 101s Solving dependencies... 101s The following NEW packages will be installed: 101s git git-man liberror-perl mercurial mercurial-common mercurial-git 101s python3-dulwich unzip 101s 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded. 101s Need to get 12.8 MB of archives. 101s After this operation, 57.8 MB of additional disk space will be used. 101s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el liberror-perl all 0.17030-1 [23.5 kB] 101s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el git-man all 1:2.51.0-1ubuntu1 [1179 kB] 102s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el git ppc64el 1:2.51.0-1ubuntu1 [7646 kB] 104s Get:4 http://ftpmaster.internal/ubuntu resolute/universe ppc64el mercurial-common all 7.0.1-2 [2783 kB] 104s Get:5 http://ftpmaster.internal/ubuntu resolute/universe ppc64el mercurial ppc64el 7.0.1-2 [521 kB] 105s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el python3-dulwich ppc64el 0.24.10-1 [383 kB] 105s Get:7 http://ftpmaster.internal/ubuntu resolute/universe ppc64el mercurial-git all 1.2.0-1 [60.9 kB] 105s Get:8 http://ftpmaster.internal/ubuntu resolute/main ppc64el unzip ppc64el 6.0-28ubuntu7 [201 kB] 105s Fetched 12.8 MB in 4s (3179 kB/s) 105s Selecting previously unselected package liberror-perl. 105s (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 ... 81022 files and directories currently installed.) 105s Preparing to unpack .../0-liberror-perl_0.17030-1_all.deb ... 105s Unpacking liberror-perl (0.17030-1) ... 105s Selecting previously unselected package git-man. 105s Preparing to unpack .../1-git-man_1%3a2.51.0-1ubuntu1_all.deb ... 105s Unpacking git-man (1:2.51.0-1ubuntu1) ... 105s Selecting previously unselected package git. 105s Preparing to unpack .../2-git_1%3a2.51.0-1ubuntu1_ppc64el.deb ... 105s Unpacking git (1:2.51.0-1ubuntu1) ... 105s Selecting previously unselected package mercurial-common. 105s Preparing to unpack .../3-mercurial-common_7.0.1-2_all.deb ... 105s Unpacking mercurial-common (7.0.1-2) ... 106s Selecting previously unselected package mercurial. 106s Preparing to unpack .../4-mercurial_7.0.1-2_ppc64el.deb ... 106s Unpacking mercurial (7.0.1-2) ... 106s Selecting previously unselected package python3-dulwich. 106s Preparing to unpack .../5-python3-dulwich_0.24.10-1_ppc64el.deb ... 106s Unpacking python3-dulwich (0.24.10-1) ... 106s Selecting previously unselected package mercurial-git. 106s Preparing to unpack .../6-mercurial-git_1.2.0-1_all.deb ... 106s Unpacking mercurial-git (1.2.0-1) ... 106s Selecting previously unselected package unzip. 106s Preparing to unpack .../7-unzip_6.0-28ubuntu7_ppc64el.deb ... 106s Unpacking unzip (6.0-28ubuntu7) ... 106s Setting up mercurial-common (7.0.1-2) ... 107s Setting up unzip (6.0-28ubuntu7) ... 107s Setting up liberror-perl (0.17030-1) ... 107s Setting up python3-dulwich (0.24.10-1) ... 108s Setting up git-man (1:2.51.0-1ubuntu1) ... 108s Setting up mercurial (7.0.1-2) ... 108s Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version 108s Setting up mercurial-git (1.2.0-1) ... 108s mercurial-git extension is disabled by default. 108s You can follow the instructions in /usr/share/doc/mercurial-git/README.Debian to enable it. 108s Setting up git (1:2.51.0-1ubuntu1) ... 108s Processing triggers for man-db (2.13.1-1) ... 110s autopkgtest [18:24:06]: test testsuite: [----------------------- 111s no username found, using 'ubuntu@autopkgtest.local' instead 111s cd tests && /usr/bin/python3 run-tests.py --with-hg=/usr/bin/hg --blacklist=/tmp/autopkgtest.UPNtUL/build.0dG/src/debian/hg-git.test_blacklist 111s running 82 tests using 2 parallel processes 123s ssssss 123s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull.t 123s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull.t#draft.err 123s @@ -39,17 +39,92 @@ 123s $ hg pull ../gitrepo 123s pulling from ../gitrepo 123s importing 3 git commits 123s - adding bookmark beta 123s - adding bookmark delta 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ git --git-dir .hg/git for-each-ref 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 123s $ hg log -Tp 123s - 2|draft|delta|tip 123s - 1|draft|beta| 123s - 0|draft|master|t_alpha 123s $ cd .. 123s $ rm -rf hgrepo 123s 123s @@ -61,20 +136,92 @@ 123s $ hg pull ../gitrepo 123s pulling from ../gitrepo 123s importing 3 git commits 123s - adding bookmark beta 123s - adding bookmark delta 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ git --git-dir .hg/git for-each-ref 123s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 123s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 123s $ hg log -Tp 123s - 2|draft|delta|default/delta tip 123s - 1|draft|beta|default/beta 123s - 0|draft|master|default/master t_alpha 123s $ cd .. 123s $ rm -rf hgrepo 123s 123s @@ -86,20 +233,92 @@ 123s $ hg pull 123s pulling from $TESTTMP/gitrepo 123s importing 3 git commits 123s - adding bookmark beta 123s - adding bookmark delta 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ git --git-dir .hg/git for-each-ref 123s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 123s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 123s $ hg log -Tp 123s - 2|draft|delta|default/delta tip 123s - 1|draft|beta|default/beta 123s - 0|draft|master|default/master t_alpha 123s $ cd .. 123s $ rm -rf hgrepo 123s 123s @@ -110,18 +329,183 @@ 123s $ hg -R hgrepo pull -r t_alpha 123s pulling from $TESTTMP/gitrepo 123s importing 1 git commits 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70 (1 drafts) 123s - (run 'hg update' to get a working copy) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo update t_alpha 123s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 123s + abort: unknown revision 't_alpha' 123s + [10] 123s $ hg log -Tp -R hgrepo 123s - 0|draft|master|default/master t_alpha tip 123s 123s no-op pull 123s $ hg -R hgrepo pull -r t_alpha 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s + importing 1 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 no-op pull with added bookmark 123s $ cd gitrepo 123s @@ -129,8 +513,91 @@ 123s $ cd .. 123s $ hg -R hgrepo pull -r epsilon 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s - adding bookmark epsilon 123s + importing 1 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 pull something that doesn't exist 123s $ hg -R hgrepo pull -r kaflaflibob 123s @@ -149,39 +616,187 @@ 123s pull a branch 123s $ hg -R hgrepo pull -r beta 123s pulling from $TESTTMP/gitrepo 123s - importing 1 git commits 123s - adding bookmark beta 123s - new changesets 7fe02317c63d (1 drafts) 123s - (run 'hg update' to get a working copy) 123s + importing 2 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo log --graph --template=phases 123s - o changeset: 1:7fe02317c63d 123s - | bookmark: beta 123s - | tag: default/beta 123s - | tag: tip 123s - | phase: draft 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - bookmark: master 123s - tag: default/epsilon 123s - tag: default/master 123s - tag: t_alpha 123s - phase: draft 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s 123s no-op pull should affect phases 123s $ hg -R hgrepo phase -fs beta 123s + abort: unknown revision 'beta' 123s + [10] 123s $ hg -R hgrepo pull -r beta 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s + importing 2 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo phase beta 123s - 1: draft 123s + abort: unknown revision 'beta' 123s + [10] 123s 123s 123s add another commit and tag to the git repo 123s @@ -197,49 +812,92 @@ 123s pull everything else 123s $ hg -R hgrepo pull 123s pulling from $TESTTMP/gitrepo 123s - importing 2 git commits 123s - adding bookmark delta 123s - updating bookmark master 123s - new changesets 678ebee93e38:6f898ad1f3e1 (2 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 123s + importing 4 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo log --graph --template=phases 123s - o changeset: 3:6f898ad1f3e1 123s - | bookmark: master 123s - | tag: default/master 123s - | tag: tip 123s - | phase: draft 123s - | parent: 0:ff7a2f2d8d70 123s - | user: test 123s - | date: Mon Jan 01 00:00:13 2007 +0000 123s - | summary: add gamma 123s - | 123s - | o changeset: 2:678ebee93e38 123s - |/ bookmark: delta 123s - | tag: default/delta 123s - | phase: draft 123s - | parent: 0:ff7a2f2d8d70 123s - | user: test 123s - | date: Mon Jan 01 00:00:12 2007 +0000 123s - | summary: add delta 123s - | 123s - | o changeset: 1:7fe02317c63d 123s - |/ bookmark: beta 123s - | tag: default/beta 123s - | tag: t_beta 123s - | phase: draft 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - tag: default/epsilon 123s - tag: t_alpha 123s - phase: draft 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s add a merge to the git repo, and delete the branch 123s $ cd gitrepo 123s $ git merge -q -m "Merge branch 'beta'" beta 123s @@ -252,60 +910,186 @@ 123s 123s pull the merge 123s $ hg -R hgrepo tags | grep default/beta 123s - default/beta 1:7fe02317c63d 123s + [1] 123s $ hg -R hgrepo pull --config git.pull-prune-remote-branches=false 123s pulling from $TESTTMP/gitrepo 123s - importing 1 git commits 123s - updating bookmark master 123s - deleting bookmark beta 123s - new changesets a02330f767a4 (1 drafts) 123s - (run 'hg update' to get a working copy) 123s + importing 5 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo tags | grep default/beta 123s - default/beta 1:7fe02317c63d 123s + [1] 123s $ hg -R hgrepo pull 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s + importing 5 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo tags | grep default/beta 123s [1] 123s $ hg -R hgrepo log --graph 123s - o changeset: 4:a02330f767a4 123s - |\ bookmark: master 123s - | | tag: default/master 123s - | | tag: tip 123s - | | parent: 3:6f898ad1f3e1 123s - | | parent: 1:7fe02317c63d 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: Merge branch 'beta' 123s - | | 123s - | o changeset: 3:6f898ad1f3e1 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: add gamma 123s - | | 123s - | | o changeset: 2:678ebee93e38 123s - | |/ bookmark: delta 123s - | | tag: default/delta 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:12 2007 +0000 123s - | | summary: add delta 123s - | | 123s - o | changeset: 1:7fe02317c63d 123s - |/ tag: t_beta 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - tag: default/epsilon 123s - tag: t_alpha 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s pull with wildcards 123s $ cd gitrepo 123s $ git checkout -qb releases/v1 master 123s @@ -325,65 +1109,92 @@ 123s $ cd .. 123s $ hg -R hgrepo pull -r 'releases/*' 123s pulling from $TESTTMP/gitrepo 123s - importing 2 git commits 123s - adding bookmark releases/v1 123s - adding bookmark releases/v2 123s - new changesets 218b2d0660d3:a3f95e150b0a (2 drafts) 123s - (run 'hg heads .' to see heads, 'hg merge' to merge) 123s + importing 6 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo log --graph 123s - o changeset: 6:a3f95e150b0a 123s - | bookmark: releases/v2 123s - | tag: default/releases/v2 123s - | tag: tip 123s - | parent: 4:a02330f767a4 123s - | user: test 123s - | date: Mon Jan 01 00:00:15 2007 +0000 123s - | summary: add eta 123s - | 123s - | o changeset: 5:218b2d0660d3 123s - |/ bookmark: releases/v1 123s - | tag: default/releases/v1 123s - | user: test 123s - | date: Mon Jan 01 00:00:14 2007 +0000 123s - | summary: add zeta 123s - | 123s - o changeset: 4:a02330f767a4 123s - |\ bookmark: master 123s - | | tag: default/master 123s - | | parent: 3:6f898ad1f3e1 123s - | | parent: 1:7fe02317c63d 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: Merge branch 'beta' 123s - | | 123s - | o changeset: 3:6f898ad1f3e1 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: add gamma 123s - | | 123s - | | o changeset: 2:678ebee93e38 123s - | |/ bookmark: delta 123s - | | tag: default/delta 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:12 2007 +0000 123s - | | summary: add delta 123s - | | 123s - o | changeset: 1:7fe02317c63d 123s - |/ tag: t_beta 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - tag: default/epsilon 123s - tag: t_alpha 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s 123s add old and new commits to the git repo -- make sure we're using the commit date 123s and not the author date 123s @@ -418,15 +1229,8 @@ 123s pulling from $TESTTMP/gitrepo 123s no changes found 123s $ hg -R hgrepo log -r master 123s - changeset: 4:a02330f767a4 123s - bookmark: master 123s - tag: default/master 123s - parent: 3:6f898ad1f3e1 123s - parent: 1:7fe02317c63d 123s - user: test 123s - date: Mon Jan 01 00:00:13 2007 +0000 123s - summary: Merge branch 'beta' 123s - 123s + abort: unknown revision 'master' 123s + [10] 123s 123s $ cd gitrepo 123s $ git checkout -q master 123s @@ -441,50 +1245,93 @@ 123s $ cd .. 123s $ hg -R hgrepo pull 123s pulling from $TESTTMP/gitrepo 123s - importing 3 git commits 123s - updating bookmark master 123s - new changesets 49713da8f665:e103a73f33be (3 drafts) 123s - (run 'hg heads .' to see heads, 'hg merge' to merge) 123s + importing 7 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo heads 123s - changeset: 9:e103a73f33be 123s - bookmark: master 123s - tag: default/master 123s - tag: tip 123s - user: test 123s - date: Wed Jan 01 00:00:00 2014 +0000 123s - summary: newcommit 123s - 123s - changeset: 7:49713da8f665 123s - tag: newtag 123s - tag: oldtag 123s - parent: 4:a02330f767a4 123s - user: test 123s - date: Sat Mar 01 00:00:00 2014 +0000 123s - summary: oldtag 123s - 123s - changeset: 6:a3f95e150b0a 123s - bookmark: releases/v2 123s - tag: default/releases/v2 123s - parent: 4:a02330f767a4 123s - user: test 123s - date: Mon Jan 01 00:00:15 2007 +0000 123s - summary: add eta 123s - 123s - changeset: 5:218b2d0660d3 123s - bookmark: releases/v1 123s - tag: default/releases/v1 123s - user: test 123s - date: Mon Jan 01 00:00:14 2007 +0000 123s - summary: add zeta 123s - 123s - changeset: 2:678ebee93e38 123s - bookmark: delta 123s - tag: default/delta 123s - parent: 0:ff7a2f2d8d70 123s - user: test 123s - date: Mon Jan 01 00:00:12 2007 +0000 123s - summary: add delta 123s - 123s + [1] 123s 123s test for ssh vulnerability 123s 123s @@ -502,10 +1349,162 @@ 123s abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 123s [255] 123s $ hg pull -q 'git+ssh://fakehost|shellcommand/path' 123s - ssh: * fakehost%7?shellcommand* (glob) 123s - abort: git remote error: The remote server unexpectedly closed the connection. 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 391, in fetch 123s + result = self.fetch_pack(remote.path, heads) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1644, in fetch_pack 123s + ret = self._call_client( 123s + remote, 123s + ...<4 lines>... 123s + progress.progress, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1680, in _call_client 123s + ret = func(path, *args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 123s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 123s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 123s + con = self.ssh_vendor.run_command( 123s + self.host, 123s + ...<4 lines>... 123s + **kwargs, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/_ssh.py", line 23, in run_command 123s + assert isinstance(command, str) 123s + ~~~~~~~~~~^^^^^^^^^^^^^^ 123s + AssertionError 123s + [1] 123s $ hg pull -q 'git+ssh://fakehost%7Cshellcommand/path' 123s - ssh: * fakehost%7?shellcommand* (glob) 123s - abort: git remote error: The remote server unexpectedly closed the connection. 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 391, in fetch 123s + result = self.fetch_pack(remote.path, heads) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1644, in fetch_pack 123s + ret = self._call_client( 123s + remote, 123s + ...<4 lines>... 123s + progress.progress, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1680, in _call_client 123s + ret = func(path, *args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 123s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 123s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 123s + con = self.ssh_vendor.run_command( 123s + self.host, 123s + ...<4 lines>... 123s + **kwargs, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/_ssh.py", line 23, in run_command 123s + assert isinstance(command, str) 123s + ~~~~~~~~~~^^^^^^^^^^^^^^ 123s + AssertionError 123s + [1] 123s 123s ERROR: test-pull.t#draft output changed 123s ! 123s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull.t 123s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull.t#secret.err 123s @@ -39,17 +39,92 @@ 123s $ hg pull ../gitrepo 123s pulling from ../gitrepo 123s importing 3 git commits 123s - adding bookmark beta 123s - adding bookmark delta 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ git --git-dir .hg/git for-each-ref 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 123s $ hg log -Tp 123s - 2|draft|delta|tip 123s - 1|draft|beta| 123s - 0|draft|master|t_alpha 123s $ cd .. 123s $ rm -rf hgrepo 123s 123s @@ -61,20 +136,92 @@ 123s $ hg pull ../gitrepo 123s pulling from ../gitrepo 123s importing 3 git commits 123s - adding bookmark beta 123s - adding bookmark delta 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ git --git-dir .hg/git for-each-ref 123s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 123s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 123s $ hg log -Tp 123s - 2|draft|delta|default/delta tip 123s - 1|draft|beta|default/beta 123s - 0|draft|master|default/master t_alpha 123s $ cd .. 123s $ rm -rf hgrepo 123s 123s @@ -86,20 +233,92 @@ 123s $ hg pull 123s pulling from $TESTTMP/gitrepo 123s importing 3 git commits 123s - adding bookmark beta 123s - adding bookmark delta 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70:678ebee93e38 (3 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ git --git-dir .hg/git for-each-ref 123s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 123s - 8cbeb817785fe2676ab0eda570534702b6b6f9cf commit refs/remotes/default/delta 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 123s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/t_alpha 123s $ hg log -Tp 123s - 2|draft|delta|default/delta tip 123s - 1|draft|beta|default/beta 123s - 0|draft|master|default/master t_alpha 123s $ cd .. 123s $ rm -rf hgrepo 123s 123s @@ -110,18 +329,183 @@ 123s $ hg -R hgrepo pull -r t_alpha 123s pulling from $TESTTMP/gitrepo 123s importing 1 git commits 123s - adding bookmark master 123s - new changesets ff7a2f2d8d70 (1 drafts) 123s - (run 'hg update' to get a working copy) 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo update t_alpha 123s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 123s + abort: unknown revision 't_alpha' 123s + [10] 123s $ hg log -Tp -R hgrepo 123s - 0|draft|master|default/master t_alpha tip 123s 123s no-op pull 123s $ hg -R hgrepo pull -r t_alpha 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s + importing 1 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 no-op pull with added bookmark 123s $ cd gitrepo 123s @@ -129,8 +513,91 @@ 123s $ cd .. 123s $ hg -R hgrepo pull -r epsilon 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s - adding bookmark epsilon 123s + importing 1 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 pull something that doesn't exist 123s $ hg -R hgrepo pull -r kaflaflibob 123s @@ -149,39 +616,187 @@ 123s pull a branch 123s $ hg -R hgrepo pull -r beta 123s pulling from $TESTTMP/gitrepo 123s - importing 1 git commits 123s - adding bookmark beta 123s - new changesets 7fe02317c63d (1 drafts) 123s - (run 'hg update' to get a working copy) 123s + importing 2 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo log --graph --template=phases 123s - o changeset: 1:7fe02317c63d 123s - | bookmark: beta 123s - | tag: default/beta 123s - | tag: tip 123s - | phase: draft 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - bookmark: master 123s - tag: default/epsilon 123s - tag: default/master 123s - tag: t_alpha 123s - phase: draft 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s 123s no-op pull should affect phases 123s $ hg -R hgrepo phase -fs beta 123s + abort: unknown revision 'beta' 123s + [10] 123s $ hg -R hgrepo pull -r beta 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s + importing 2 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo phase beta 123s - 1: draft 123s + abort: unknown revision 'beta' 123s + [10] 123s 123s 123s add another commit and tag to the git repo 123s @@ -197,49 +812,92 @@ 123s pull everything else 123s $ hg -R hgrepo pull 123s pulling from $TESTTMP/gitrepo 123s - importing 2 git commits 123s - adding bookmark delta 123s - updating bookmark master 123s - new changesets 678ebee93e38:6f898ad1f3e1 (2 drafts) 123s - (run 'hg heads' to see heads, 'hg merge' to merge) 123s + importing 4 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo log --graph --template=phases 123s - o changeset: 3:6f898ad1f3e1 123s - | bookmark: master 123s - | tag: default/master 123s - | tag: tip 123s - | phase: draft 123s - | parent: 0:ff7a2f2d8d70 123s - | user: test 123s - | date: Mon Jan 01 00:00:13 2007 +0000 123s - | summary: add gamma 123s - | 123s - | o changeset: 2:678ebee93e38 123s - |/ bookmark: delta 123s - | tag: default/delta 123s - | phase: draft 123s - | parent: 0:ff7a2f2d8d70 123s - | user: test 123s - | date: Mon Jan 01 00:00:12 2007 +0000 123s - | summary: add delta 123s - | 123s - | o changeset: 1:7fe02317c63d 123s - |/ bookmark: beta 123s - | tag: default/beta 123s - | tag: t_beta 123s - | phase: draft 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - tag: default/epsilon 123s - tag: t_alpha 123s - phase: draft 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s add a merge to the git repo, and delete the branch 123s $ cd gitrepo 123s $ git merge -q -m "Merge branch 'beta'" beta 123s @@ -252,60 +910,186 @@ 123s 123s pull the merge 123s $ hg -R hgrepo tags | grep default/beta 123s - default/beta 1:7fe02317c63d 123s + [1] 123s $ hg -R hgrepo pull --config git.pull-prune-remote-branches=false 123s pulling from $TESTTMP/gitrepo 123s - importing 1 git commits 123s - updating bookmark master 123s - deleting bookmark beta 123s - new changesets a02330f767a4 (1 drafts) 123s - (run 'hg update' to get a working copy) 123s + importing 5 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo tags | grep default/beta 123s - default/beta 1:7fe02317c63d 123s + [1] 123s $ hg -R hgrepo pull 123s pulling from $TESTTMP/gitrepo 123s - no changes found 123s + importing 5 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo tags | grep default/beta 123s [1] 123s $ hg -R hgrepo log --graph 123s - o changeset: 4:a02330f767a4 123s - |\ bookmark: master 123s - | | tag: default/master 123s - | | tag: tip 123s - | | parent: 3:6f898ad1f3e1 123s - | | parent: 1:7fe02317c63d 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: Merge branch 'beta' 123s - | | 123s - | o changeset: 3:6f898ad1f3e1 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: add gamma 123s - | | 123s - | | o changeset: 2:678ebee93e38 123s - | |/ bookmark: delta 123s - | | tag: default/delta 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:12 2007 +0000 123s - | | summary: add delta 123s - | | 123s - o | changeset: 1:7fe02317c63d 123s - |/ tag: t_beta 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - tag: default/epsilon 123s - tag: t_alpha 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s pull with wildcards 123s $ cd gitrepo 123s $ git checkout -qb releases/v1 master 123s @@ -325,65 +1109,92 @@ 123s $ cd .. 123s $ hg -R hgrepo pull -r 'releases/*' 123s pulling from $TESTTMP/gitrepo 123s - importing 2 git commits 123s - adding bookmark releases/v1 123s - adding bookmark releases/v2 123s - new changesets 218b2d0660d3:a3f95e150b0a (2 drafts) 123s - (run 'hg heads .' to see heads, 'hg merge' to merge) 123s + importing 6 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo log --graph 123s - o changeset: 6:a3f95e150b0a 123s - | bookmark: releases/v2 123s - | tag: default/releases/v2 123s - | tag: tip 123s - | parent: 4:a02330f767a4 123s - | user: test 123s - | date: Mon Jan 01 00:00:15 2007 +0000 123s - | summary: add eta 123s - | 123s - | o changeset: 5:218b2d0660d3 123s - |/ bookmark: releases/v1 123s - | tag: default/releases/v1 123s - | user: test 123s - | date: Mon Jan 01 00:00:14 2007 +0000 123s - | summary: add zeta 123s - | 123s - o changeset: 4:a02330f767a4 123s - |\ bookmark: master 123s - | | tag: default/master 123s - | | parent: 3:6f898ad1f3e1 123s - | | parent: 1:7fe02317c63d 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: Merge branch 'beta' 123s - | | 123s - | o changeset: 3:6f898ad1f3e1 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:13 2007 +0000 123s - | | summary: add gamma 123s - | | 123s - | | o changeset: 2:678ebee93e38 123s - | |/ bookmark: delta 123s - | | tag: default/delta 123s - | | parent: 0:ff7a2f2d8d70 123s - | | user: test 123s - | | date: Mon Jan 01 00:00:12 2007 +0000 123s - | | summary: add delta 123s - | | 123s - o | changeset: 1:7fe02317c63d 123s - |/ tag: t_beta 123s - | user: test 123s - | date: Mon Jan 01 00:00:11 2007 +0000 123s - | summary: add beta 123s - | 123s - @ changeset: 0:ff7a2f2d8d70 123s - bookmark: epsilon 123s - tag: default/epsilon 123s - tag: t_alpha 123s - user: test 123s - date: Mon Jan 01 00:00:10 2007 +0000 123s - summary: add alpha 123s - 123s 123s add old and new commits to the git repo -- make sure we're using the commit date 123s and not the author date 123s @@ -418,15 +1229,8 @@ 123s pulling from $TESTTMP/gitrepo 123s no changes found 123s $ hg -R hgrepo log -r master 123s - changeset: 4:a02330f767a4 123s - bookmark: master 123s - tag: default/master 123s - parent: 3:6f898ad1f3e1 123s - parent: 1:7fe02317c63d 123s - user: test 123s - date: Mon Jan 01 00:00:13 2007 +0000 123s - summary: Merge branch 'beta' 123s - 123s + abort: unknown revision 'master' 123s + [10] 123s 123s $ cd gitrepo 123s $ git checkout -q master 123s @@ -441,50 +1245,93 @@ 123s $ cd .. 123s $ hg -R hgrepo pull 123s pulling from $TESTTMP/gitrepo 123s - importing 3 git commits 123s - updating bookmark master 123s - new changesets 49713da8f665:e103a73f33be (3 drafts) 123s - (run 'hg heads .' to see heads, 'hg merge' to merge) 123s + importing 7 git commits 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 -R hgrepo heads 123s - changeset: 9:e103a73f33be 123s - bookmark: master 123s - tag: default/master 123s - tag: tip 123s - user: test 123s - date: Wed Jan 01 00:00:00 2014 +0000 123s - summary: newcommit 123s - 123s - changeset: 7:49713da8f665 123s - tag: newtag 123s - tag: oldtag 123s - parent: 4:a02330f767a4 123s - user: test 123s - date: Sat Mar 01 00:00:00 2014 +0000 123s - summary: oldtag 123s - 123s - changeset: 6:a3f95e150b0a 123s - bookmark: releases/v2 123s - tag: default/releases/v2 123s - parent: 4:a02330f767a4 123s - user: test 123s - date: Mon Jan 01 00:00:15 2007 +0000 123s - summary: add eta 123s - 123s - changeset: 5:218b2d0660d3 123s - bookmark: releases/v1 123s - tag: default/releases/v1 123s - user: test 123s - date: Mon Jan 01 00:00:14 2007 +0000 123s - summary: add zeta 123s - 123s - changeset: 2:678ebee93e38 123s - bookmark: delta 123s - tag: default/delta 123s - parent: 0:ff7a2f2d8d70 123s - user: test 123s - date: Mon Jan 01 00:00:12 2007 +0000 123s - summary: add delta 123s - 123s + [1] 123s 123s test for ssh vulnerability 123s 123s @@ -502,10 +1349,162 @@ 123s abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 123s [255] 123s $ hg pull -q 'git+ssh://fakehost|shellcommand/path' 123s - ssh: * fakehost%7?shellcommand* (glob) 123s - abort: git remote error: The remote server unexpectedly closed the connection. 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 391, in fetch 123s + result = self.fetch_pack(remote.path, heads) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1644, in fetch_pack 123s + ret = self._call_client( 123s + remote, 123s + ...<4 lines>... 123s + progress.progress, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1680, in _call_client 123s + ret = func(path, *args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 123s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 123s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 123s + con = self.ssh_vendor.run_command( 123s + self.host, 123s + ...<4 lines>... 123s + **kwargs, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/_ssh.py", line 23, in run_command 123s + assert isinstance(command, str) 123s + ~~~~~~~~~~^^^^^^^^^^^^^^ 123s + AssertionError 123s + [1] 123s $ hg pull -q 'git+ssh://fakehost%7Cshellcommand/path' 123s - ssh: * fakehost%7?shellcommand* (glob) 123s - abort: git remote error: The remote server unexpectedly closed the connection. 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 5235, in pull 123s + modheads = exchange.pull( 123s + ~~~~~~~~~~~~~^ 123s + repo, 123s + ^^^^^ 123s + ...<6 lines>... 123s + confirm=opts.get('confirm'), 123s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + ).cgresult 123s + ^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 123s + return f(*args, **kwargs) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 123s + pullop.cgresult = repo.githandler.fetch(remote, heads) 123s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 391, in fetch 123s + result = self.fetch_pack(remote.path, heads) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1644, in fetch_pack 123s + ret = self._call_client( 123s + remote, 123s + ...<4 lines>... 123s + progress.progress, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1680, in _call_client 123s + ret = func(path, *args, **kwargs) 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 123s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 123s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 123s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 123s + con = self.ssh_vendor.run_command( 123s + self.host, 123s + ...<4 lines>... 123s + **kwargs, 123s + ) 123s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/_ssh.py", line 23, in run_command 123s + assert isinstance(command, str) 123s + ~~~~~~~~~~^^^^^^^^^^^^^^ 123s + AssertionError 123s + [1] 123s 123s ERROR: test-pull.t#secret output changed 124s ! 124s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-submodules.t 124s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-submodules.t.err 124s @@ -189,260 +189,99 @@ 124s 124s $ hg clone gitrepo2 hgrepo 124s importing 10 git commits 124s - new changesets ff7a2f2d8d70:0ad944b2c4d8 (10 drafts) 124s - updating to bookmark master 124s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 124s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 124s + ** which supports versions 6.9 of Mercurial. 124s + ** Please disable "hggit" and try your action again. 124s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 124s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 124s + ** Mercurial Distributed SCM (version 7.0.1) 124s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 124s + Traceback (most recent call last): 124s + File "/usr/bin/hg", line 51, in 124s + dispatch.run() 124s + ~~~~~~~~~~~~^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 124s + status = dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 124s + status = _rundispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 124s + ret = _runcatch(req) or 0 124s + ~~~~~~~~~^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 124s + return _callcatch(ui, _runcatchfunc) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 124s + return scmutil.callcatch(ui, func) 124s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 124s + return func() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 124s + return _dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 124s + return runcommand( 124s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 124s + ) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 124s + ret = _runcommand(ui, options, cmd, d) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 124s + return cmdfunc() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 124s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 124s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 124s + return func(*args, **kwargs) 124s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 124s + r = hg.clone( 124s + ui, 124s + ...<11 lines>... 124s + depth=opts.get('depth') or None, 124s + ) 124s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 124s + return f(*args, **kwargs) 124s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 124s + pullop.cgresult = repo.githandler.fetch(remote, heads) 124s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ cd hgrepo 124s + $TESTTMP.sh: 133: cd: can't cd to hgrepo 124s $ hg log --graph 124s - @ changeset: 9:0ad944b2c4d8 124s - | bookmark: master 124s - | tag: default/master 124s - | tag: tip 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: remove all subrepos 124s - | 124s - o changeset: 8:33da452ef22f 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace subrepo with symlink 124s - | 124s - o changeset: 7:acebec53c0fc 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace symlink with subrepo 124s - | 124s - o changeset: 6:78c2ea52db4b 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: add symlink 124s - | 124s - o changeset: 5:c0d52ffc59b8 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace file with subrepo 124s - | 124s - o changeset: 4:73e078a178a0 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace subrepo with file 124s - | 124s - o changeset: 3:29e236ba4c06 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: add another subrepo 124s - | 124s - o changeset: 2:a6075a162f62 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: change subrepo commit 124s - | 124s - o changeset: 1:a4036e758995 124s - | user: test 124s - | date: Mon Jan 01 00:00:11 2007 +0000 124s - | summary: add subrepo 124s - | 124s - o changeset: 0:ff7a2f2d8d70 124s - user: test 124s - date: Mon Jan 01 00:00:10 2007 +0000 124s - summary: add alpha 124s - 124s - $ hg book 124s - * master 9:0ad944b2c4d8 124s - 124s -(add subrepo) 124s - $ hg cat -r 1 .hgsubstate 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo 124s - $ hg cat -r 1 .hgsub 124s - subrepo = [git]../gitsubrepo 124s - $ hg gverify -r 1 124s - verifying rev a4036e758995 against git commit e42b08b3cb7069b4594a4ee1d9cb641ee47b2355 124s - 124s -(change subrepo commit) 124s - $ hg cat -r 2 .hgsubstate 124s - aa2ead20c29b5cc6256408e1d9ef704870033afb subrepo 124s - $ hg cat -r 2 .hgsub 124s - subrepo = [git]../gitsubrepo 124s - $ hg gverify -r 2 124s - verifying rev a6075a162f62 against git commit a000567ceefbd9a2ce364e0dea6e298010b02b6d 124s - 124s -(add another subrepo) 124s - $ hg cat -r 3 .hgsubstate 124s - aa2ead20c29b5cc6256408e1d9ef704870033afb subrepo 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 124s - $ hg cat -r 3 .hgsub 124s - subrepo = [git]../gitsubrepo 124s - subrepo2 = [git]../gitsubrepo 124s - $ hg gverify -r 3 124s - verifying rev 29e236ba4c06 against git commit 6e219527869fa40eb6ffbdd013cd86d576b26b01 124s - 124s -(replace subrepo with file) 124s - $ hg cat -r 4 .hgsubstate 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 124s - $ hg cat -r 4 .hgsub 124s - subrepo2 = [git]../gitsubrepo 124s - $ hg manifest -r 4 124s - .hgsub 124s - .hgsubstate 124s - alpha 124s - subrepo 124s - $ hg gverify -r 4 124s - verifying rev 73e078a178a0 against git commit f6436a472da00f581d8d257e9bbaf3c358a5e88c 124s - 124s -(replace file with subrepo) 124s - $ hg cat -r 5 .hgsubstate 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 124s - $ hg cat -r 5 .hgsub 124s - subrepo2 = [git]../gitsubrepo 124s - alpha = [git]../gitsubrepo 124s - $ hg manifest -r 5 124s - .hgsub 124s - .hgsubstate 124s - subrepo 124s - $ hg gverify -r 5 124s - verifying rev c0d52ffc59b8 against git commit 88171163bf4795b5570924e51d5f8ede33f8bc28 124s - 124s -(replace symlink with subrepo) 124s - $ hg cat -r 7 .hgsub 124s - subrepo2 = [git]../gitsubrepo 124s - alpha = [git]../gitsubrepo 124s - foolink = [git]../gitsubrepo 124s - $ hg cat -r 7 .hgsubstate 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba foolink 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 124s - $ hg gverify -r 7 124s - verifying rev acebec53c0fc against git commit e3288fa737d429a60637b3b6782cb25b8298bc00 124s - 124s -(replace subrepo with symlink) 124s - $ hg cat -r 8 .hgsub .hgsubstate 124s - subrepo2 = [git]../gitsubrepo 124s - alpha = [git]../gitsubrepo 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba alpha 124s - 6e4ad8da50204560c00fa25e4987eb2e239029ba subrepo2 124s - 124s - $ hg gverify -r 8 124s - verifying rev 33da452ef22f against git commit d28364013fe1a0fde56c0e1921e49ecdeee8571d 124s - 124s -(remove all subrepos) 124s - $ hg cat -r 9 .hgsub .hgsubstate 124s - .hgsub: no such file in rev 0ad944b2c4d8 124s - .hgsubstate: no such file in rev 0ad944b2c4d8 124s - [1] 124s - $ hg gverify -r 9 124s - verifying rev 0ad944b2c4d8 against git commit 15ba94929481c654814178aac1dbca06ae688718 124s - 124s - $ hg debug-remove-hggit-state 124s - clearing out the git cache data 124s - $ hg gexport 124s - $ cd .hg/git 124s - $ git log --pretty=oneline 124s - 73c15b74fb81fa0cc60e9c59c73787a9f26c778b remove all subrepos 124s - d28364013fe1a0fde56c0e1921e49ecdeee8571d replace subrepo with symlink 124s - e3288fa737d429a60637b3b6782cb25b8298bc00 replace symlink with subrepo 124s - 2d1c135447d11df4dfe96dd5d4f37926dc5c821d add symlink 124s - 88171163bf4795b5570924e51d5f8ede33f8bc28 replace file with subrepo 124s - f6436a472da00f581d8d257e9bbaf3c358a5e88c replace subrepo with file 124s - 6e219527869fa40eb6ffbdd013cd86d576b26b01 add another subrepo 124s - a000567ceefbd9a2ce364e0dea6e298010b02b6d change subrepo commit 124s - e42b08b3cb7069b4594a4ee1d9cb641ee47b2355 add subrepo 124s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 add alpha 124s - 124s -test with rename detection enabled -- simply checking that the Mercurial hashes 124s -are the same is enough 124s - $ cd ../../.. 124s - $ hg --config git.similarity=100 clone gitrepo2 hgreporenames 124s - importing 10 git commits 124s - new changesets ff7a2f2d8d70:0ad944b2c4d8 (10 drafts) 124s - updating to bookmark master 124s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 124s - $ cd hgreporenames 124s - $ hg log --graph 124s - @ changeset: 9:0ad944b2c4d8 124s - | bookmark: master 124s - | tag: default/master 124s - | tag: tip 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: remove all subrepos 124s - | 124s - o changeset: 8:33da452ef22f 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace subrepo with symlink 124s - | 124s - o changeset: 7:acebec53c0fc 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace symlink with subrepo 124s - | 124s - o changeset: 6:78c2ea52db4b 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: add symlink 124s - | 124s - o changeset: 5:c0d52ffc59b8 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace file with subrepo 124s - | 124s - o changeset: 4:73e078a178a0 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: replace subrepo with file 124s - | 124s - o changeset: 3:29e236ba4c06 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: add another subrepo 124s - | 124s - o changeset: 2:a6075a162f62 124s - | user: test 124s - | date: Mon Jan 01 00:00:12 2007 +0000 124s - | summary: change subrepo commit 124s - | 124s - o changeset: 1:a4036e758995 124s - | user: test 124s - | date: Mon Jan 01 00:00:11 2007 +0000 124s - | summary: add subrepo 124s - | 124s - o changeset: 0:ff7a2f2d8d70 124s - user: test 124s - date: Mon Jan 01 00:00:10 2007 +0000 124s - summary: add alpha 124s - 124s - $ cd .. 124s - 124s -test handling of an invalid .gitmodules file (#380) 124s - 124s - $ git init --quiet gitrepo-issue380 124s - $ cd gitrepo-issue380 124s - $ git submodule add ../gitsubrepo 124s - Cloning into '$TESTTMP/gitrepo-issue380/gitsubrepo'... 124s - done. 124s - $ fn_git_commit -m 'add a submodule' 124s - $ cat >> .gitmodules < <<<<<<< HEAD 124s - > EOF 124s - $ fn_git_commit -a -m 'b0rken .gitmodules' 124s - $ git status 124s - fatal: bad config line 4 in file $TESTTMP/gitrepo-issue380/.gitmodules 124s - [128] 124s - $ sed -i.orig /HEAD/d .gitmodules 124s - $ fn_git_commit -a -m 'fix .gitmodules' 124s - $ git status 124s - On branch master 124s - Untracked files: 124s - (use "git add ..." to include in what will be committed) 124s - .gitmodules.orig 124s - 124s - nothing added to commit but untracked files present (use "git add" to track) 124s - $ cd .. 124s - $ git clone gitrepo-issue380 gitrepo-issue380~ 124s - Cloning into 'gitrepo-issue380~'... 124s - done. 124s - $ hg clone -U gitrepo-issue380 hgrepo-issue380 124s - importing 3 git commits 124s - warning: failed to parse .gitmodules in 2e4ec4293822 124s - new changesets ed60e5fbc192:9dfc0cdf1787 (3 drafts) 124s 124s ERROR: test-git-submodules.t output changed 124s ! 124s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-renames.t 124s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-renames.t.err 124s @@ -95,494 +95,99 @@ 124s 124s $ cd .. 124s $ hg clone -q repo.git hgrepo 124s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 124s + ** which supports versions 6.9 of Mercurial. 124s + ** Please disable "hggit" and try your action again. 124s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 124s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 124s + ** Mercurial Distributed SCM (version 7.0.1) 124s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 124s + Traceback (most recent call last): 124s + File "/usr/bin/hg", line 51, in 124s + dispatch.run() 124s + ~~~~~~~~~~~~^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 124s + status = dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 124s + status = _rundispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 124s + ret = _runcatch(req) or 0 124s + ~~~~~~~~~^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 124s + return _callcatch(ui, _runcatchfunc) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 124s + return scmutil.callcatch(ui, func) 124s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 124s + return func() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 124s + return _dispatch(req) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 124s + return runcommand( 124s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 124s + ) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 124s + ret = _runcommand(ui, options, cmd, d) 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 124s + return cmdfunc() 124s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 124s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 124s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 124s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 124s + return func(*args, **kwargs) 124s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 124s + r = hg.clone( 124s + ui, 124s + ...<11 lines>... 124s + depth=opts.get('depth') or None, 124s + ) 124s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 124s + return f(*args, **kwargs) 124s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 124s + pullop.cgresult = repo.githandler.fetch(remote, heads) 124s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 124s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ cd hgrepo 124s + $TESTTMP.sh: 115: cd: can't cd to hgrepo 124s $ hg book master -q 124s - $ hg log -p --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 124s - @ 8 497105ddbe119aa40af691eb2b1a029c29bf5247 remove submodule and rename back 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/.hgsub b/.hgsub 124s - | --- a/.hgsub 124s - | +++ b/.hgsub 124s - | @@ -1,2 +1,1 @@ 124s - | gitsubmodule2 = [git]../gitsubmodule 124s - | -gamma = [git]../gitsubmodule 124s - | diff --git a/.hgsubstate b/.hgsubstate 124s - | --- a/.hgsubstate 124s - | +++ b/.hgsubstate 124s - | @@ -1,2 +1,1 @@ 124s - | -5944b31ff85b415573d1a43eb942e2dea30ab8be gamma 124s - | 5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 124s - | diff --git a/gamma-new b/gamma 124s - | rename from gamma-new 124s - | rename to gamma 124s - | 124s - o 7 adfc1ce8461d3174dcf8425e112e2fa848de3913 rename and add submodule 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/.hgsub b/.hgsub 124s - | --- a/.hgsub 124s - | +++ b/.hgsub 124s - | @@ -1,1 +1,2 @@ 124s - | gitsubmodule2 = [git]../gitsubmodule 124s - | +gamma = [git]../gitsubmodule 124s - | diff --git a/.hgsubstate b/.hgsubstate 124s - | --- a/.hgsubstate 124s - | +++ b/.hgsubstate 124s - | @@ -1,1 +1,2 @@ 124s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gamma 124s - | 5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 124s - | diff --git a/gamma b/gamma-new 124s - | rename from gamma 124s - | rename to gamma-new 124s - | 124s - o 6 62c1a4b07240b53a71be1b1a46e94e99132c5391 beta renamed back 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/beta b/beta 124s - | old mode 120000 124s - | new mode 100644 124s - | --- a/beta 124s - | +++ b/beta 124s - | @@ -1,1 +1,12 @@ 124s - | -beta-new 124s - | \ No newline at end of file 124s - | +1 124s - | +2 124s - | +3 124s - | +4 124s - | +5 124s - | +6 124s - | +7 124s - | +8 124s - | +9 124s - | +10 124s - | +11 124s - | +12 124s - | diff --git a/beta-new b/beta-new 124s - | deleted file mode 100644 124s - | --- a/beta-new 124s - | +++ /dev/null 124s - | @@ -1,12 +0,0 @@ 124s - | -1 124s - | -2 124s - | -3 124s - | -4 124s - | -5 124s - | -6 124s - | -7 124s - | -8 124s - | -9 124s - | -10 124s - | -11 124s - | -12 124s - | 124s - o 5 f93fefed957cff2220d3f0d11182398350b5fa9a beta renamed 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/beta b/beta 124s - | old mode 100644 124s - | new mode 120000 124s - | --- a/beta 124s - | +++ b/beta 124s - | @@ -1,12 +1,1 @@ 124s - | -1 124s - | -2 124s - | -3 124s - | -4 124s - | -5 124s - | -6 124s - | -7 124s - | -8 124s - | -9 124s - | -10 124s - | -11 124s - | -12 124s - | +beta-new 124s - | \ No newline at end of file 124s - | diff --git a/beta b/beta-new 124s - | copy from beta 124s - | copy to beta-new 124s - | 124s - o 4 b9e63d96abc2783afc59246e798a6936cf05a35e move submodule 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/.hgsub b/.hgsub 124s - | --- a/.hgsub 124s - | +++ b/.hgsub 124s - | @@ -1,1 +1,1 @@ 124s - | -gitsubmodule = [git]../gitsubmodule 124s - | +gitsubmodule2 = [git]../gitsubmodule 124s - | diff --git a/.hgsubstate b/.hgsubstate 124s - | --- a/.hgsubstate 124s - | +++ b/.hgsubstate 124s - | @@ -1,1 +1,1 @@ 124s - | -5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule 124s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule2 124s - | 124s - o 3 55537ea256c28be1b5637f4f93a601fdde8a9a7f add submodule 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/.hgsub b/.hgsub 124s - | new file mode 100644 124s - | --- /dev/null 124s - | +++ b/.hgsub 124s - | @@ -0,0 +1,1 @@ 124s - | +gitsubmodule = [git]../gitsubmodule 124s - | diff --git a/.hgsubstate b/.hgsubstate 124s - | new file mode 100644 124s - | --- /dev/null 124s - | +++ b/.hgsubstate 124s - | @@ -0,0 +1,1 @@ 124s - | +5944b31ff85b415573d1a43eb942e2dea30ab8be gitsubmodule 124s - | 124s - o 2 20f9e56b6d006d0403f853245e483d0892b8ac48 gamma 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/beta b/beta 124s - | --- a/beta 124s - | +++ b/beta 124s - | @@ -9,3 +9,4 @@ 124s - | 9 124s - | 10 124s - | 11 124s - | +12 124s - | diff --git a/beta b/gamma 124s - | copy from beta 124s - | copy to gamma 124s - | --- a/beta 124s - | +++ b/gamma 124s - | @@ -9,3 +9,4 @@ 124s - | 9 124s - | 10 124s - | 11 124s - | +13 124s - | 124s - o 1 9f7744e68def81da3b394f11352f602ca9c8ab68 beta 124s - | branch=default hg-git-rename-source=git 124s - | 124s - | diff --git a/alpha b/beta 124s - | rename from alpha 124s - | rename to beta 124s - | --- a/alpha 124s - | +++ b/beta 124s - | @@ -8,3 +8,4 @@ 124s - | 8 124s - | 9 124s - | 10 124s - | +11 124s - | 124s - o 0 7bc844166f76e49562f81eacd54ea954d01a9e42 alpha 124s - branch=default hg-git-rename-source=git 124s - 124s - diff --git a/alpha b/alpha 124s - new file mode 100644 124s - --- /dev/null 124s - +++ b/alpha 124s - @@ -0,0 +1,10 @@ 124s - +1 124s - +2 124s - +3 124s - +4 124s - +5 124s - +6 124s - +7 124s - +8 124s - +9 124s - +10 124s - 124s - 124s -Make a new ordinary commit in Mercurial (no extra metadata) 124s - $ echo 14 >> gamma 124s - $ hg ci -m "gamma2" 124s - 124s -Make a new commit with a copy and a rename in Mercurial 124s - $ hg cp gamma delta 124s - $ echo 15 >> delta 124s - $ hg mv beta epsilon 124s - $ echo 16 >> epsilon 124s - $ hg ci -m "delta/epsilon" 124s - $ hg export . 124s - # HG changeset patch 124s - # User test 124s - # Date 0 0 124s - # Thu Jan 01 00:00:00 1970 +0000 124s - # Node ID ea6414fab78622fd53679e0593eddad96ff4178d 124s - # Parent ee9ec792d5866c313a4cb7a2f8772f2cffa90df4 124s - delta/epsilon 124s - 124s - diff --git a/gamma b/delta 124s - copy from gamma 124s - copy to delta 124s - --- a/gamma 124s - +++ b/delta 124s - @@ -11,3 +11,4 @@ 124s - 11 124s - 13 124s - 14 124s - +15 124s - diff --git a/beta b/epsilon 124s - rename from beta 124s - rename to epsilon 124s - --- a/beta 124s - +++ b/epsilon 124s - @@ -10,3 +10,4 @@ 124s - 10 124s - 11 124s - 12 124s - +16 124s - $ hg push 124s - pushing to $TESTTMP/repo.git 124s - searching for changes 124s - adding objects 124s - remote: found 0 deltas to reuse 124s - added 2 commits with 2 trees and 3 blobs 124s - updating reference refs/heads/master 124s - 124s - $ cd ../repo.git 124s - $ git log master --pretty=oneline 124s - 5f2948d029693346043f320620af99a615930dc4 delta/epsilon 124s - bbd2ec050f7fbc64f772009844f7d58a556ec036 gamma2 124s - 50d116676a308b7c22935137d944e725d2296f2a remove submodule and rename back 124s - 59fb8e82ea18f79eab99196f588e8948089c134f rename and add submodule 124s - f95497455dfa891b4cd9b524007eb9514c3ab654 beta renamed back 124s - 055f482277da6cd3dd37c7093d06983bad68f782 beta renamed 124s - d7f31298f27df8a9226eddb1e4feb96922c46fa5 move submodule 124s - c610256cb6959852d9e70d01902a06726317affc add submodule 124s - e1348449e0c3a417b086ed60fc13f068d4aa8b26 gamma 124s - cc83241f39927232f690d370894960b0d1943a0e beta 124s - 938bb65bb322eb4a3558bec4cdc8a680c4d1794c alpha 124s - 124s -Make sure the right metadata is stored 124s - $ git cat-file commit master^ 124s - tree 0adbde18545845f3b42ad1a18939ed60a9dec7a8 124s - parent 50d116676a308b7c22935137d944e725d2296f2a 124s - author test 0 +0000 124s - committer test 0 +0000 124s - HG:rename-source hg 124s - 124s - gamma2 124s - $ git cat-file commit master 124s - tree f8f32f4e20b56a5a74582c6a5952c175bf9ec155 124s - parent bbd2ec050f7fbc64f772009844f7d58a556ec036 124s - author test 0 +0000 124s - committer test 0 +0000 124s - HG:rename gamma:delta 124s - HG:rename beta:epsilon 124s - 124s - delta/epsilon 124s - 124s -Now make another clone and compare the hashes 124s - 124s - $ cd .. 124s - $ hg clone -q repo.git hgrepo2 124s - $ cd hgrepo2 124s - $ hg book master -qf 124s - $ hg export master 124s - # HG changeset patch 124s - # User test 124s - # Date 0 0 124s - # Thu Jan 01 00:00:00 1970 +0000 124s - # Node ID ea6414fab78622fd53679e0593eddad96ff4178d 124s - # Parent ee9ec792d5866c313a4cb7a2f8772f2cffa90df4 124s - delta/epsilon 124s - 124s - diff --git a/gamma b/delta 124s - copy from gamma 124s - copy to delta 124s - --- a/gamma 124s - +++ b/delta 124s - @@ -11,3 +11,4 @@ 124s - 11 124s - 13 124s - 14 124s - +15 124s - diff --git a/beta b/epsilon 124s - rename from beta 124s - rename to epsilon 124s - --- a/beta 124s - +++ b/epsilon 124s - @@ -10,3 +10,4 @@ 124s - 10 124s - 11 124s - 12 124s - +16 124s - 124s -Regenerate the Git metadata and compare the hashes 124s - $ hg debug-remove-hggit-state 124s - clearing out the git cache data 124s - $ hg gexport 124s - $ cd .hg/git 124s - $ git log master --pretty=oneline 124s - f3f6592447685566af9447c03ae262aa5432511d delta/epsilon (dulwich-rust !) 124s - c51ce14ec367c5ea72bf428dee3f8576f2fe1bb0 gamma2 (dulwich-rust !) 124s - df749cae534e3c7a0ad664cd0f214dd36e0ac259 remove submodule and rename back (dulwich-rust !) 124s - 8f9ec605ad0cc2532202f73cef8e35d3241797ee rename and add submodule (dulwich-rust !) 124s - 8a00d0fb75377c51c9a46e92ff154c919007f0e2 delta/epsilon (no-dulwich-rust !) 124s - dd7d4f1adb942a8d349dce585019f6949184bc64 gamma2 (no-dulwich-rust !) 124s - 3f1cdaf8b603816fcda02bd29e75198ae4cb13db remove submodule and rename back (no-dulwich-rust !) 124s - 2a4abf1178a999e2054158ceb0c7768079665d03 rename and add submodule (no-dulwich-rust !) 124s - 88c416e8d5e0e9dd1187d45ebafaa46111764196 beta renamed back 124s - 027d2a6e050705bf6f7e226e7e97f02ce5ae3200 beta renamed 124s - dc70e620634887e70ac5dd108bcc7ebd99c60ec3 move submodule 124s - c610256cb6959852d9e70d01902a06726317affc add submodule 124s - e1348449e0c3a417b086ed60fc13f068d4aa8b26 gamma 124s - cc83241f39927232f690d370894960b0d1943a0e beta 124s - 938bb65bb322eb4a3558bec4cdc8a680c4d1794c alpha 124s - 124s -Test findcopiesharder 124s - 124s - $ cd $TESTTMP 124s - $ git init -q gitcopyharder 124s - $ cd gitcopyharder 124s - $ cat >> file0 << EOF 124s - > 1 124s - > 2 124s - > 3 124s - > 4 124s - > 5 124s - > EOF 124s - $ git add file0 124s - $ fn_git_commit -m file0 124s - $ cp file0 file1 124s - $ git add file1 124s - $ fn_git_commit -m file1 124s - $ cp file0 file2 124s - $ echo 6 >> file2 124s - $ git add file2 124s - $ fn_git_commit -m file2 124s - 124s - $ cd .. 124s - 124s -Clone without findcopiesharder does not find copies from unmodified files 124s - 124s - $ hg clone gitcopyharder hgnocopyharder 124s - importing 3 git commits 124s - new changesets b45d023c6842:ec77ccdbefe0 (3 drafts) 124s - updating to bookmark master 124s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 124s - $ hg -R hgnocopyharder export 1::2 124s - # HG changeset patch 124s - # User test 124s - # Date 1167609621 0 124s - # Mon Jan 01 00:00:21 2007 +0000 124s - # Node ID 555831c93e2a250e5ba42efad45bf7ba71da13e4 124s - # Parent b45d023c6842337ffe694663a44aa672d311081c 124s - file1 124s - 124s - diff --git a/file1 b/file1 124s - new file mode 100644 124s - --- /dev/null 124s - +++ b/file1 124s - @@ -0,0 +1,5 @@ 124s - +1 124s - +2 124s - +3 124s - +4 124s - +5 124s - # HG changeset patch 124s - # User test 124s - # Date 1167609622 0 124s - # Mon Jan 01 00:00:22 2007 +0000 124s - # Node ID ec77ccdbefe023eb9898b0399f84f670c8c0f5fc 124s - # Parent 555831c93e2a250e5ba42efad45bf7ba71da13e4 124s - file2 124s - 124s - diff --git a/file2 b/file2 124s - new file mode 100644 124s - --- /dev/null 124s - +++ b/file2 124s - @@ -0,0 +1,6 @@ 124s - +1 124s - +2 124s - +3 124s - +4 124s - +5 124s - +6 124s - 124s -findcopiesharder finds copies from unmodified files if similarity is met 124s - 124s - $ hg --config git.findcopiesharder=true clone gitcopyharder hgcopyharder0 124s - importing 3 git commits 124s - new changesets b45d023c6842:9b3099834272 (3 drafts) 124s - updating to bookmark master 124s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 124s - $ hg -R hgcopyharder0 export 1::2 124s - # HG changeset patch 124s - # User test 124s - # Date 1167609621 0 124s - # Mon Jan 01 00:00:21 2007 +0000 124s - # Node ID cd05a87103eed9d270fc05b62b00f48e174ab960 124s - # Parent b45d023c6842337ffe694663a44aa672d311081c 124s - file1 124s - 124s - diff --git a/file0 b/file1 124s - copy from file0 124s - copy to file1 124s - # HG changeset patch 124s - # User test 124s - # Date 1167609622 0 124s - # Mon Jan 01 00:00:22 2007 +0000 124s - # Node ID 9b30998342729c7357d418bebed7399986cfe643 124s - # Parent cd05a87103eed9d270fc05b62b00f48e174ab960 124s - file2 124s - 124s - diff --git a/file0 b/file2 124s - copy from file0 124s - copy to file2 124s - --- a/file0 124s - +++ b/file2 124s - @@ -3,3 +3,4 @@ 124s - 3 124s - 4 124s - 5 124s - +6 124s - 124s - $ hg --config git.findcopiesharder=true --config git.similarity=95 clone gitcopyharder hgcopyharder1 124s - importing 3 git commits 124s - new changesets b45d023c6842:d9d2e8cbf050 (3 drafts) 124s - updating to bookmark master 124s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 124s - $ hg -R hgcopyharder1 export 1::2 124s - # HG changeset patch 124s - # User test 124s - # Date 1167609621 0 124s - # Mon Jan 01 00:00:21 2007 +0000 124s - # Node ID cd05a87103eed9d270fc05b62b00f48e174ab960 124s - # Parent b45d023c6842337ffe694663a44aa672d311081c 124s - file1 124s - 124s - diff --git a/file0 b/file1 124s - copy from file0 124s - copy to file1 124s - # HG changeset patch 124s - # User test 124s - # Date 1167609622 0 124s - # Mon Jan 01 00:00:22 2007 +0000 124s - # Node ID d9d2e8cbf050772be31dccf78851f71dc547d139 124s - # Parent cd05a87103eed9d270fc05b62b00f48e174ab960 124s - file2 124s - 124s - diff --git a/file2 b/file2 124s - new file mode 100644 124s - --- /dev/null 124s - +++ b/file2 124s - @@ -0,0 +1,6 @@ 124s - +1 124s - +2 124s - +3 124s - +4 124s - +5 124s - +6 124s - 124s -Config values out of range 124s - $ hg --config git.similarity=999 clone gitcopyharder hgcopyharder2 124s - importing 3 git commits 124s - abort: git.similarity must be between 0 and 100 124s - [255] 124s -Left-over on Windows with some pack files 124s - $ rm -rf hgcopyharder2 124s - $ hg --config git.renamelimit=-5 clone gitcopyharder hgcopyharder2 124s - importing 3 git commits 124s - abort: git.renamelimit must be non-negative 124s - [255] 124s 124s ERROR: test-renames.t output changed 125s !s 125s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-tags.t 125s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-tags.t#draft.err 125s @@ -42,336 +42,103 @@ 125s 125s $ hg clone repo.git hgrepo 125s importing 2 git commits 125s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 125s - updating to bookmark master 125s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 125s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 125s + ** which supports versions 6.9 of Mercurial. 125s + ** Please disable "hggit" and try your action again. 125s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 125s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 125s + ** Mercurial Distributed SCM (version 7.0.1) 125s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 125s + Traceback (most recent call last): 125s + File "/usr/bin/hg", line 51, in 125s + dispatch.run() 125s + ~~~~~~~~~~~~^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 125s + status = dispatch(req) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 125s + status = _rundispatch(req) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 125s + ret = _runcatch(req) or 0 125s + ~~~~~~~~~^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 125s + return _callcatch(ui, _runcatchfunc) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 125s + return scmutil.callcatch(ui, func) 125s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 125s + return func() 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 125s + return _dispatch(req) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 125s + return runcommand( 125s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 125s + ) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 125s + ret = _runcommand(ui, options, cmd, d) 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 125s + return cmdfunc() 125s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 125s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 125s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 125s + return func(*args, **kwargs) 125s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 125s + r = hg.clone( 125s + ui, 125s + ...<11 lines>... 125s + depth=opts.get('depth') or None, 125s + ) 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 125s + srcpeer, destpeer = orig(*args, **opts) 125s + ~~~~^^^^^^^^^^^^^^^ 125s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 125s + exchange.pull( 125s + ~~~~~~~~~~~~~^ 125s + local, 125s + ^^^^^^ 125s + ...<5 lines>... 125s + depth=depth, 125s + ^^^^^^^^^^^^ 125s + ) 125s + ^ 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 125s + return f(*args, **kwargs) 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 125s + pullop.cgresult = repo.githandler.fetch(remote, heads) 125s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 125s + imported = self.import_git_objects( 125s + b'pull', 125s + ...<2 lines>... 125s + heads=heads, 125s + ) 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 125s + self.import_git_commit( 125s + ~~~~~~~~~~~~~~~~~~~~~~^ 125s + command, 125s + ^^^^^^^^ 125s + self.git[commit.sha], 125s + ^^^^^^^^^^^^^^^^^^^^^ 125s + commit.phase, 125s + ^^^^^^^^^^^^^ 125s + ) 125s + ^ 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 125s + files, gitlinks, git_renames = self.get_files_changed( 125s + ~~~~~~~~~~~~~~~~~~~~~~^ 125s + commit, detect_renames 125s + ^^^^^^^^^^^^^^^^^^^^^^ 125s + ) 125s + ^ 125s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 125s + oldfile, oldmode, oldsha = change.old 125s + ^^^^^^^^^^^^^^^^^^^^^^^^ 125s + TypeError: cannot unpack non-iterable NoneType object 125s + [1] 125s 125s $ cd hgrepo 125s + $TESTTMP.sh: 39: cd: can't cd to hgrepo 125s 125s Verify that annotated tags are unaffected by reexports: 125s 125s $ GIT_DIR=.hg/git git tag -ln 125s - beta added tag beta 125s - $ hg gexport 125s - $ GIT_DIR=.hg/git git tag -ln 125s - beta added tag beta 125s - 125s -Error checking on tag creation 125s - 125s - $ hg tag --git beta --remove 125s - abort: cannot remove git tags 125s - (the git documentation heavily discourages editing tags) 125s - [255] 125s - $ hg tag --git beta -r null 125s - abort: cannot remove git tags 125s - (the git documentation heavily discourages editing tags) 125s - [255] 125s - $ hg tag --git beta --remove -r 0 125s - abort: cannot specify both --rev and --remove 125s - [10] 125s - $ hg tag --git alpha 125s - abort: git tags require an explicit revision 125s - (please specify -r/--rev) 125s - [255] 125s - $ hg tag --git alpha alpha -r 0 125s - abort: tag names must be unique 125s - [255] 125s - $ hg tag --git alpha -r 0 -e 125s - abort: cannot specify both --git and --edit 125s - [10] 125s - $ hg tag --git alpha -r 0 -m 42 125s - abort: cannot specify both --git and --message 125s - [10] 125s - $ hg tag --git alpha -r 0 -d 42 125s - abort: cannot specify both --git and --date 125s - [10] 125s - $ hg tag --git alpha -r 0 -u user@example.com 125s - abort: cannot specify both --git and --user 125s - [10] 125s - $ hg tag --git 'with space' -r 0 125s - abort: the name 'with space' is not a valid git tag 125s - [255] 125s - $ hg tag --git ' beta' -r 0 125s - abort: the name 'beta' already exists 125s - [255] 125s - $ hg tag --git master -r 0 125s - abort: the name 'master' already exists 125s - [255] 125s - $ hg tag --git tip -r 0 125s - abort: the name 'tip' is reserved 125s - [10] 125s - 125s -Create a git tag from hg 125s - 125s - $ hg tag --git alpha --debug -r 0 125s - finding unexported changesets 125s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 125s - adding git tag alpha 125s - $ hg log --graph 125s - @ changeset: 1:7fe02317c63d 125s - | bookmark: master 125s - | tag: beta 125s - | tag: default/master 125s - | tag: tip 125s - | user: test 125s - | date: Mon Jan 01 00:00:11 2007 +0000 125s - | summary: add beta 125s - | 125s - o changeset: 0:ff7a2f2d8d70 125s - tag: alpha 125s - user: test 125s - date: Mon Jan 01 00:00:10 2007 +0000 125s - summary: add alpha 125s - 125s - $ echo beta-fix >> beta 125s - $ fn_hg_commit -m 'fix for beta' 125s -#if secret 125s - $ hg phase -d 125s -#endif 125s - $ hg push 125s - pushing to $TESTTMP/repo.git 125s - searching for changes 125s - adding objects 125s - remote: found 0 deltas to reuse 125s - added 1 commits with 1 trees and 1 blobs 125s - updating reference refs/heads/master 125s - adding reference refs/tags/alpha 125s - 125s -Verify that amending commits known to remotes doesn't break anything 125s - 125s - $ cat >> $HGRCPATH << EOF 125s - > [experimental] 125s - > evolution = createmarkers 125s - > evolution.createmarkers = yes 125s - > EOF 125s - $ hg tags 125s - tip 2:61175962e488 125s - default/master 2:61175962e488 125s - beta 1:7fe02317c63d 125s - alpha 0:ff7a2f2d8d70 125s - $ echo beta-fix-again >> beta 125s - $ fn_hg_commit --amend 125s - $ hg log -T shorttags 125s - 3:3094b9e8da41 draft tip 125s - 2:61175962e488 draft default/master X 125s - 1:7fe02317c63d draft beta 125s - 0:ff7a2f2d8d70 draft alpha 125s - $ hg tags 125s - tip 3:3094b9e8da41 125s - default/master 2:61175962e488 125s - beta 1:7fe02317c63d 125s - alpha 0:ff7a2f2d8d70 125s - $ hg push 125s - pushing to $TESTTMP/repo.git 125s - searching for changes 125s - abort: pushing refs/heads/master overwrites 3094b9e8da41 125s - [255] 125s - $ hg push -f 125s - pushing to $TESTTMP/repo.git 125s - searching for changes 125s - adding objects 125s - remote: found 0 deltas to reuse 125s - added 1 commits with 1 trees and 1 blobs 125s - updating reference refs/heads/master 125s - 125s -Now create a tag for the old, obsolete master 125s - 125s - $ cd ../repo.git 125s - $ git tag detached $(hg log -R ../hgrepo --hidden -r 2 -T '{gitnode}\n') 125s - $ git tag 125s - alpha 125s - beta 125s - detached 125s - $ cd ../hgrepo 125s - $ hg pull 125s - pulling from $TESTTMP/repo.git 125s - no changes found 125s - $ hg log -T shorttags 125s - 3:3094b9e8da41 draft default/master tip 125s - 2:61175962e488 draft detached X 125s - 1:7fe02317c63d draft beta 125s - 0:ff7a2f2d8d70 draft alpha 125s - $ hg tags 125s - tip 3:3094b9e8da41 125s - default/master 3:3094b9e8da41 125s - detached 2:61175962e488 125s - beta 1:7fe02317c63d 125s - alpha 0:ff7a2f2d8d70 125s - $ hg push 125s - pushing to $TESTTMP/repo.git 125s - searching for changes 125s - no changes found 125s - [1] 125s - 125s - $ cd .. 125s - 125s -Verify that revsets can point out git tags; for that we need an 125s -untagged commit. 125s - 125s - $ cd hgrepo 125s - $ touch gamma 125s - $ fn_hg_commit -A -m 'add gamma' 125s -#if secret 125s - $ hg phase -d 125s -#endif 125s - $ hg log -T shorttags -r 'gittag()' 125s - 0:ff7a2f2d8d70 draft alpha 125s - 1:7fe02317c63d draft beta 125s - 2:61175962e488 draft detached X 125s - $ hg log -T shorttags -r 'gittag(detached)' 125s - 2:61175962e488 draft detached X 125s - $ hg log -T shorttags -r 'gittag("re:a$")' 125s - 0:ff7a2f2d8d70 draft alpha 125s - 1:7fe02317c63d draft beta 125s - 125s -Create a git tag from hg, but pointing to a new commit: 125s - 125s - $ hg tag --git gamma --debug -r tip 125s - invalid branch cache (visible): tip differs (?) 125s - finding unexported changesets 125s - exporting 1 changesets 125s - converting revision 0eb1ab0073a885a498d4ae3dc5cf0c26e750fa3d 125s - packing 3 loose objects... 125s - packed 3 loose objects! 125s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 125s - adding git tag gamma 125s - $ hg push 125s - pushing to $TESTTMP/repo.git 125s - searching for changes 125s - adding objects 125s - remote: found 0 deltas to reuse 125s - added 1 commits with 1 trees and 1 blobs 125s - updating reference refs/heads/master 125s - adding reference refs/tags/gamma 125s - $ cd ../gitrepo 125s - $ git fetch --quiet --tags 125s - $ git tag 125s - alpha 125s - beta 125s - detached 125s - gamma 125s - $ cd .. 125s - 125s -Try to overwrite an annotated tag: 125s - 125s - $ cd hgrepo 125s - $ hg tags -v 125s - tip 4:0eb1ab0073a8 125s - gamma 4:0eb1ab0073a8 git 125s - default/master 4:0eb1ab0073a8 git-remote 125s - detached 2:61175962e488 git 125s - beta 1:7fe02317c63d git 125s - alpha 0:ff7a2f2d8d70 git 125s - $ hg book not-master 125s - $ hg tag beta 125s - abort: tag 'beta' already exists (use -f to force) 125s - [10] 125s - $ hg tag -f beta 125s -#if secret 125s - $ hg phase -d 125s -#endif 125s - $ hg push 125s - pushing to $TESTTMP/repo.git 125s - warning: not overwriting annotated tag 'beta' 125s - searching for changes 125s - adding objects 125s - remote: found 0 deltas to reuse 125s - added 1 commits with 1 trees and 1 blobs 125s - adding reference refs/heads/not-master 125s - $ hg tags 125s - tip 5:c49682c7cba4 125s - default/not-master 5:c49682c7cba4 125s - gamma 4:0eb1ab0073a8 125s - default/master 4:0eb1ab0073a8 125s - beta 4:0eb1ab0073a8 125s - detached 2:61175962e488 125s - alpha 0:ff7a2f2d8d70 125s - $ cd .. 125s - 125s -Check whether `gimport` handles tags 125s - 125s - $ cd hgrepo 125s - $ rm .hg/git-tags .hg/git-mapfile 125s - $ hg gimport 125s - importing 6 git commits 125s - $ hg tags -q 125s - tip 125s - default/not-master 125s - gamma 125s - default/master 125s - beta 125s - detached 125s - alpha 125s - $ cd .. 125s - 125s -Test how pulling an explicit branch with an annotated tag: 125s - 125s - $ hg clone -r master repo.git hgrepo-2 125s - importing 4 git commits 125s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 125s - updating to branch default 125s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 125s - $ hg log -r 'ancestors(master) and tagged()' -T shorttags -R hgrepo-2 125s - 0:ff7a2f2d8d70 draft alpha 125s - 1:7fe02317c63d draft beta 125s - 3:0eb1ab0073a8 draft default/master gamma tip 125s - $ hg tags -v -R hgrepo-2 125s - tip 3:0eb1ab0073a8 125s - gamma 3:0eb1ab0073a8 git 125s - default/master 3:0eb1ab0073a8 git-remote 125s - beta 1:7fe02317c63d git 125s - alpha 0:ff7a2f2d8d70 git 125s - $ GIT_DIR=hgrepo-2/.hg/git git fetch --quiet repo.git 125s - $ rm -rf hgrepo-2 125s - 125s - $ hg clone -r master repo.git hgrepo-2 125s - importing 4 git commits 125s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 125s - updating to branch default 125s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 125s - $ hg log -r 'tagged()' -T shorttags -R hgrepo-2 125s - 0:ff7a2f2d8d70 draft alpha 125s - 1:7fe02317c63d draft beta 125s - 3:0eb1ab0073a8 draft default/master gamma tip 125s -This used to die: 125s - $ hg -R hgrepo-2 gexport 125s -This used to fail, since we didn't actually pull the annotated tag: 125s - $ hg -R hgrepo-2 push 125s - pushing to $TESTTMP/repo.git 125s - searching for changes 125s - no changes found 125s - [1] 125s - $ rm -rf hgrepo-2 125s - 125s -Check that pulling will update phases only: 125s - 125s - $ cd hgrepo 125s - $ hg phase -fs gamma detached 125s - $ hg pull 125s - pulling from $TESTTMP/repo.git 125s - no changes found 125s - $ hg log -T shorttags -r gamma -r detached 125s - 4:0eb1ab0073a8 draft beta default/master gamma 125s - 2:61175962e488 draft detached X 125s - $ cd .. 125s - 125s -Check that we pull new tags to existing commits: 125s - $ cd gitrepo 125s - $ git tag 125s - alpha 125s - beta 125s - detached 125s - gamma 125s - $ fn_git_tag extra-simple-tag 125s - $ fn_git_tag -m annotated extra-annotated-tag 125s - $ git push --tags 125s - To $TESTTMP/repo.git 125s - * [new tag] extra-annotated-tag -> extra-annotated-tag 125s - * [new tag] extra-simple-tag -> extra-simple-tag 125s - $ cd ../hgrepo 125s - $ hg pull -r master 125s - pulling from $TESTTMP/repo.git 125s - no changes found 125s - $ hg tags -v | grep extra 125s - extra-simple-tag 1:7fe02317c63d git 125s - extra-annotated-tag 1:7fe02317c63d git 125s 125s ERROR: test-git-tags.t#draft output changed 126s !. 126s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-tags.t 126s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-tags.t#secret.err 126s @@ -42,336 +42,103 @@ 126s 126s $ hg clone repo.git hgrepo 126s importing 2 git commits 126s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 126s - updating to bookmark master 126s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 126s + ** which supports versions 6.9 of Mercurial. 126s + ** Please disable "hggit" and try your action again. 126s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 126s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 126s + ** Mercurial Distributed SCM (version 7.0.1) 126s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 126s + Traceback (most recent call last): 126s + File "/usr/bin/hg", line 51, in 126s + dispatch.run() 126s + ~~~~~~~~~~~~^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 126s + status = dispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 126s + status = _rundispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 126s + ret = _runcatch(req) or 0 126s + ~~~~~~~~~^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 126s + return _callcatch(ui, _runcatchfunc) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 126s + return scmutil.callcatch(ui, func) 126s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 126s + return func() 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 126s + return _dispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 126s + return runcommand( 126s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 126s + ) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 126s + ret = _runcommand(ui, options, cmd, d) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 126s + return cmdfunc() 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 126s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 126s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 126s + return func(*args, **kwargs) 126s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 126s + r = hg.clone( 126s + ui, 126s + ...<11 lines>... 126s + depth=opts.get('depth') or None, 126s + ) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 126s + srcpeer, destpeer = orig(*args, **opts) 126s + ~~~~^^^^^^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 126s + exchange.pull( 126s + ~~~~~~~~~~~~~^ 126s + local, 126s + ^^^^^^ 126s + ...<5 lines>... 126s + depth=depth, 126s + ^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 126s + return f(*args, **kwargs) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 126s + pullop.cgresult = repo.githandler.fetch(remote, heads) 126s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 126s + imported = self.import_git_objects( 126s + b'pull', 126s + ...<2 lines>... 126s + heads=heads, 126s + ) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 126s + self.import_git_commit( 126s + ~~~~~~~~~~~~~~~~~~~~~~^ 126s + command, 126s + ^^^^^^^^ 126s + self.git[commit.sha], 126s + ^^^^^^^^^^^^^^^^^^^^^ 126s + commit.phase, 126s + ^^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 126s + files, gitlinks, git_renames = self.get_files_changed( 126s + ~~~~~~~~~~~~~~~~~~~~~~^ 126s + commit, detect_renames 126s + ^^^^^^^^^^^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 126s + oldfile, oldmode, oldsha = change.old 126s + ^^^^^^^^^^^^^^^^^^^^^^^^ 126s + TypeError: cannot unpack non-iterable NoneType object 126s + [1] 126s 126s $ cd hgrepo 126s + $TESTTMP.sh: 44: cd: can't cd to hgrepo 126s 126s Verify that annotated tags are unaffected by reexports: 126s 126s $ GIT_DIR=.hg/git git tag -ln 126s - beta added tag beta 126s - $ hg gexport 126s - $ GIT_DIR=.hg/git git tag -ln 126s - beta added tag beta 126s - 126s -Error checking on tag creation 126s - 126s - $ hg tag --git beta --remove 126s - abort: cannot remove git tags 126s - (the git documentation heavily discourages editing tags) 126s - [255] 126s - $ hg tag --git beta -r null 126s - abort: cannot remove git tags 126s - (the git documentation heavily discourages editing tags) 126s - [255] 126s - $ hg tag --git beta --remove -r 0 126s - abort: cannot specify both --rev and --remove 126s - [10] 126s - $ hg tag --git alpha 126s - abort: git tags require an explicit revision 126s - (please specify -r/--rev) 126s - [255] 126s - $ hg tag --git alpha alpha -r 0 126s - abort: tag names must be unique 126s - [255] 126s - $ hg tag --git alpha -r 0 -e 126s - abort: cannot specify both --git and --edit 126s - [10] 126s - $ hg tag --git alpha -r 0 -m 42 126s - abort: cannot specify both --git and --message 126s - [10] 126s - $ hg tag --git alpha -r 0 -d 42 126s - abort: cannot specify both --git and --date 126s - [10] 126s - $ hg tag --git alpha -r 0 -u user@example.com 126s - abort: cannot specify both --git and --user 126s - [10] 126s - $ hg tag --git 'with space' -r 0 126s - abort: the name 'with space' is not a valid git tag 126s - [255] 126s - $ hg tag --git ' beta' -r 0 126s - abort: the name 'beta' already exists 126s - [255] 126s - $ hg tag --git master -r 0 126s - abort: the name 'master' already exists 126s - [255] 126s - $ hg tag --git tip -r 0 126s - abort: the name 'tip' is reserved 126s - [10] 126s - 126s -Create a git tag from hg 126s - 126s - $ hg tag --git alpha --debug -r 0 126s - finding unexported changesets 126s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 126s - adding git tag alpha 126s - $ hg log --graph 126s - @ changeset: 1:7fe02317c63d 126s - | bookmark: master 126s - | tag: beta 126s - | tag: default/master 126s - | tag: tip 126s - | user: test 126s - | date: Mon Jan 01 00:00:11 2007 +0000 126s - | summary: add beta 126s - | 126s - o changeset: 0:ff7a2f2d8d70 126s - tag: alpha 126s - user: test 126s - date: Mon Jan 01 00:00:10 2007 +0000 126s - summary: add alpha 126s - 126s - $ echo beta-fix >> beta 126s - $ fn_hg_commit -m 'fix for beta' 126s -#if secret 126s - $ hg phase -d 126s -#endif 126s - $ hg push 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - updating reference refs/heads/master 126s - adding reference refs/tags/alpha 126s - 126s -Verify that amending commits known to remotes doesn't break anything 126s - 126s - $ cat >> $HGRCPATH << EOF 126s - > [experimental] 126s - > evolution = createmarkers 126s - > evolution.createmarkers = yes 126s - > EOF 126s - $ hg tags 126s - tip 2:61175962e488 126s - default/master 2:61175962e488 126s - beta 1:7fe02317c63d 126s - alpha 0:ff7a2f2d8d70 126s - $ echo beta-fix-again >> beta 126s - $ fn_hg_commit --amend 126s - $ hg log -T shorttags 126s - 3:3094b9e8da41 draft tip 126s - 2:61175962e488 draft default/master X 126s - 1:7fe02317c63d draft beta 126s - 0:ff7a2f2d8d70 draft alpha 126s - $ hg tags 126s - tip 3:3094b9e8da41 126s - default/master 2:61175962e488 126s - beta 1:7fe02317c63d 126s - alpha 0:ff7a2f2d8d70 126s - $ hg push 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - abort: pushing refs/heads/master overwrites 3094b9e8da41 126s - [255] 126s - $ hg push -f 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - updating reference refs/heads/master 126s - 126s -Now create a tag for the old, obsolete master 126s - 126s - $ cd ../repo.git 126s - $ git tag detached $(hg log -R ../hgrepo --hidden -r 2 -T '{gitnode}\n') 126s - $ git tag 126s - alpha 126s - beta 126s - detached 126s - $ cd ../hgrepo 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - $ hg log -T shorttags 126s - 3:3094b9e8da41 draft default/master tip 126s - 2:61175962e488 draft detached X 126s - 1:7fe02317c63d draft beta 126s - 0:ff7a2f2d8d70 draft alpha 126s - $ hg tags 126s - tip 3:3094b9e8da41 126s - default/master 3:3094b9e8da41 126s - detached 2:61175962e488 126s - beta 1:7fe02317c63d 126s - alpha 0:ff7a2f2d8d70 126s - $ hg push 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - no changes found 126s - [1] 126s - 126s - $ cd .. 126s - 126s -Verify that revsets can point out git tags; for that we need an 126s -untagged commit. 126s - 126s - $ cd hgrepo 126s - $ touch gamma 126s - $ fn_hg_commit -A -m 'add gamma' 126s -#if secret 126s - $ hg phase -d 126s -#endif 126s - $ hg log -T shorttags -r 'gittag()' 126s - 0:ff7a2f2d8d70 draft alpha 126s - 1:7fe02317c63d draft beta 126s - 2:61175962e488 draft detached X 126s - $ hg log -T shorttags -r 'gittag(detached)' 126s - 2:61175962e488 draft detached X 126s - $ hg log -T shorttags -r 'gittag("re:a$")' 126s - 0:ff7a2f2d8d70 draft alpha 126s - 1:7fe02317c63d draft beta 126s - 126s -Create a git tag from hg, but pointing to a new commit: 126s - 126s - $ hg tag --git gamma --debug -r tip 126s - invalid branch cache (visible): tip differs (?) 126s - finding unexported changesets 126s - exporting 1 changesets 126s - converting revision 0eb1ab0073a885a498d4ae3dc5cf0c26e750fa3d 126s - packing 3 loose objects... 126s - packed 3 loose objects! 126s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 126s - adding git tag gamma 126s - $ hg push 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - updating reference refs/heads/master 126s - adding reference refs/tags/gamma 126s - $ cd ../gitrepo 126s - $ git fetch --quiet --tags 126s - $ git tag 126s - alpha 126s - beta 126s - detached 126s - gamma 126s - $ cd .. 126s - 126s -Try to overwrite an annotated tag: 126s - 126s - $ cd hgrepo 126s - $ hg tags -v 126s - tip 4:0eb1ab0073a8 126s - gamma 4:0eb1ab0073a8 git 126s - default/master 4:0eb1ab0073a8 git-remote 126s - detached 2:61175962e488 git 126s - beta 1:7fe02317c63d git 126s - alpha 0:ff7a2f2d8d70 git 126s - $ hg book not-master 126s - $ hg tag beta 126s - abort: tag 'beta' already exists (use -f to force) 126s - [10] 126s - $ hg tag -f beta 126s -#if secret 126s - $ hg phase -d 126s -#endif 126s - $ hg push 126s - pushing to $TESTTMP/repo.git 126s - warning: not overwriting annotated tag 'beta' 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - adding reference refs/heads/not-master 126s - $ hg tags 126s - tip 5:c49682c7cba4 126s - default/not-master 5:c49682c7cba4 126s - gamma 4:0eb1ab0073a8 126s - default/master 4:0eb1ab0073a8 126s - beta 4:0eb1ab0073a8 126s - detached 2:61175962e488 126s - alpha 0:ff7a2f2d8d70 126s - $ cd .. 126s - 126s -Check whether `gimport` handles tags 126s - 126s - $ cd hgrepo 126s - $ rm .hg/git-tags .hg/git-mapfile 126s - $ hg gimport 126s - importing 6 git commits 126s - $ hg tags -q 126s - tip 126s - default/not-master 126s - gamma 126s - default/master 126s - beta 126s - detached 126s - alpha 126s - $ cd .. 126s - 126s -Test how pulling an explicit branch with an annotated tag: 126s - 126s - $ hg clone -r master repo.git hgrepo-2 126s - importing 4 git commits 126s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 126s - updating to branch default 126s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ hg log -r 'ancestors(master) and tagged()' -T shorttags -R hgrepo-2 126s - 0:ff7a2f2d8d70 draft alpha 126s - 1:7fe02317c63d draft beta 126s - 3:0eb1ab0073a8 draft default/master gamma tip 126s - $ hg tags -v -R hgrepo-2 126s - tip 3:0eb1ab0073a8 126s - gamma 3:0eb1ab0073a8 git 126s - default/master 3:0eb1ab0073a8 git-remote 126s - beta 1:7fe02317c63d git 126s - alpha 0:ff7a2f2d8d70 git 126s - $ GIT_DIR=hgrepo-2/.hg/git git fetch --quiet repo.git 126s - $ rm -rf hgrepo-2 126s - 126s - $ hg clone -r master repo.git hgrepo-2 126s - importing 4 git commits 126s - new changesets ff7a2f2d8d70:0eb1ab0073a8 (4 drafts) 126s - updating to branch default 126s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ hg log -r 'tagged()' -T shorttags -R hgrepo-2 126s - 0:ff7a2f2d8d70 draft alpha 126s - 1:7fe02317c63d draft beta 126s - 3:0eb1ab0073a8 draft default/master gamma tip 126s -This used to die: 126s - $ hg -R hgrepo-2 gexport 126s -This used to fail, since we didn't actually pull the annotated tag: 126s - $ hg -R hgrepo-2 push 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - no changes found 126s - [1] 126s - $ rm -rf hgrepo-2 126s - 126s -Check that pulling will update phases only: 126s - 126s - $ cd hgrepo 126s - $ hg phase -fs gamma detached 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - $ hg log -T shorttags -r gamma -r detached 126s - 4:0eb1ab0073a8 draft beta default/master gamma 126s - 2:61175962e488 draft detached X 126s - $ cd .. 126s - 126s -Check that we pull new tags to existing commits: 126s - $ cd gitrepo 126s - $ git tag 126s - alpha 126s - beta 126s - detached 126s - gamma 126s - $ fn_git_tag extra-simple-tag 126s - $ fn_git_tag -m annotated extra-annotated-tag 126s - $ git push --tags 126s - To $TESTTMP/repo.git 126s - * [new tag] extra-annotated-tag -> extra-annotated-tag 126s - * [new tag] extra-simple-tag -> extra-simple-tag 126s - $ cd ../hgrepo 126s - $ hg pull -r master 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - $ hg tags -v | grep extra 126s - extra-simple-tag 1:7fe02317c63d git 126s - extra-annotated-tag 1:7fe02317c63d git 126s 126s ERROR: test-git-tags.t#secret output changed 126s ! 126s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull-after-rebase.t 126s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull-after-rebase.t.err 126s @@ -39,274 +39,99 @@ 126s 126s $ hg clone -U repo.git hgrepo 126s importing 3 git commits 126s - new changesets ff7a2f2d8d70:205a004356ef (3 drafts) 126s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 126s + ** which supports versions 6.9 of Mercurial. 126s + ** Please disable "hggit" and try your action again. 126s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 126s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 126s + ** Mercurial Distributed SCM (version 7.0.1) 126s + ** Extensions loaded: hggit unknown (dulwich 0.24.10), rebase 126s + Traceback (most recent call last): 126s + File "/usr/bin/hg", line 51, in 126s + dispatch.run() 126s + ~~~~~~~~~~~~^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 126s + status = dispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 126s + status = _rundispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 126s + ret = _runcatch(req) or 0 126s + ~~~~~~~~~^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 126s + return _callcatch(ui, _runcatchfunc) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 126s + return scmutil.callcatch(ui, func) 126s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 126s + return func() 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 126s + return _dispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 126s + return runcommand( 126s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 126s + ) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 126s + ret = _runcommand(ui, options, cmd, d) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 126s + return cmdfunc() 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 126s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 126s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 126s + return func(*args, **kwargs) 126s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 126s + r = hg.clone( 126s + ui, 126s + ...<11 lines>... 126s + depth=opts.get('depth') or None, 126s + ) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 126s + srcpeer, destpeer = orig(*args, **opts) 126s + ~~~~^^^^^^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 126s + exchange.pull( 126s + ~~~~~~~~~~~~~^ 126s + local, 126s + ^^^^^^ 126s + ...<5 lines>... 126s + depth=depth, 126s + ^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 126s + return f(*args, **kwargs) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 126s + pullop.cgresult = repo.githandler.fetch(remote, heads) 126s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 126s + imported = self.import_git_objects( 126s + b'pull', 126s + ...<2 lines>... 126s + heads=heads, 126s + ) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 126s + self.import_git_commit( 126s + ~~~~~~~~~~~~~~~~~~~~~~^ 126s + command, 126s + ^^^^^^^^ 126s + self.git[commit.sha], 126s + ^^^^^^^^^^^^^^^^^^^^^ 126s + commit.phase, 126s + ^^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 126s + files, gitlinks, git_renames = self.get_files_changed( 126s + ~~~~~~~~~~~~~~~~~~~~~~^ 126s + commit, detect_renames 126s + ^^^^^^^^^^^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 126s + oldfile, oldmode, oldsha = change.old 126s + ^^^^^^^^^^^^^^^^^^^^^^^^ 126s + TypeError: cannot unpack non-iterable NoneType object 126s + [1] 126s $ cd hgrepo 126s + $TESTTMP.sh: 48: cd: can't cd to hgrepo 126s $ hg state 126s - o branch default/branch tip 2:205a004356ef32b8da782afb89d9179d12ca31e9 126s - | add gamma 126s - | o master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 126s - |/ add beta 126s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 126s - add alpha 126s - $ hg up branch 126s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - (activating bookmark branch) 126s - $ hg rebase --quiet -d master 126s - $ hg state 126s - @ branch tip 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 126s - | add gamma 126s - | x default/branch 2:205a004356ef32b8da782afb89d9179d12ca31e9 126s - | | add gamma 126s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 126s - |/ add beta 126s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 126s - add alpha 126s - 126s - $ hg push -fr tip 126s - pushing to $TESTTMP/repo.git 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - updating reference refs/heads/branch 126s - $ cd .. 126s - 126s -Now switch back to git and create a new commit based on what we just rebased 126s - 126s - $ cd gitrepo 126s - $ git checkout --quiet -b otherbranch branch 126s - $ git log --oneline --graph --all --decorate 126s - * e5023f9 (HEAD -> otherbranch, origin/branch, branch) add gamma 126s - | * 9497a4e (origin/master, master) add beta 126s - |/ 126s - * 7eeab2e add alpha 126s - $ echo delta > delta 126s - $ git add delta 126s - $ fn_git_commit -m 'add delta' 126s - $ git push --quiet --set-upstream origin otherbranch 126s - Branch 'otherbranch' set up to track remote branch 'otherbranch' from 'origin'. (?) 126s - $ git log --oneline --graph --all --decorate 126s - * bba0011 (HEAD -> otherbranch, origin/otherbranch) add delta 126s - * e5023f9 (origin/branch, branch) add gamma 126s - | * 9497a4e (origin/master, master) add beta 126s - |/ 126s - * 7eeab2e add alpha 126s - $ cd .. 126s - 126s -Pull that 126s - 126s - $ cd hgrepo 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - importing 1 git commits 126s - adding bookmark otherbranch 126s - 1 new orphan changesets 126s - new changesets 075302705298 (1 drafts) 126s - (run 'hg heads' to see heads, 'hg merge' to merge) 126s - $ hg state 126s - * otherbranch default/otherbranch tip 4:0753027052980aef9c9c37adb7d76d5719e8d818 126s - | add delta 126s - | @ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 126s - | | add gamma 126s - x | 2:205a004356ef32b8da782afb89d9179d12ca31e9 126s - | | add gamma 126s - | o master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 126s - |/ add beta 126s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 126s - add alpha 126s - 126s - $ cd .. 126s - 126s -To reproduce bug #386, do like github and save the old commit in a 126s -ref, and create a clone containing just the converted git commits: 126s - 126s - $ cd repo.git 126s - $ git update-ref refs/pr/1 otherbranch 126s - $ cd .. 126s - $ hg clone -U repo.git hgrepo-issue386 126s - importing 5 git commits 126s - new changesets ff7a2f2d8d70:075302705298 (5 drafts) 126s - 126s -Now try rebasing that branch, from the Git side of things 126s - 126s - $ cd gitrepo 126s - $ git checkout -q otherbranch 126s - $ git log --oneline --graph --all --decorate 126s - * bba0011 (HEAD -> otherbranch, origin/otherbranch) add delta 126s - * e5023f9 (origin/branch, branch) add gamma 126s - | * 9497a4e (origin/master, master) add beta 126s - |/ 126s - * 7eeab2e add alpha 126s - $ fn_git_rebase --onto master branch otherbranch 126s - $ git log --oneline --graph --all --decorate 126s - * 9c58139 (HEAD -> otherbranch) add delta 126s - * 9497a4e (origin/master, master) add beta 126s - | * bba0011 (origin/otherbranch) add delta 126s - | * e5023f9 (origin/branch, branch) add gamma 126s - |/ 126s - * 7eeab2e add alpha 126s - $ git push -f 126s - To $TESTTMP/repo.git 126s - + bba0011...9c58139 otherbranch -> otherbranch (forced update) 126s - $ git log --oneline --graph --all --decorate 126s - * 9c58139 (HEAD -> otherbranch, origin/otherbranch) add delta 126s - * 9497a4e (origin/master, master) add beta 126s - | * e5023f9 (origin/branch, branch) add gamma 126s - |/ 126s - * 7eeab2e add alpha 126s - $ cd .. 126s - 126s -Now strip the old commit 126s - 126s - $ cd hgrepo-issue386 126s - $ hg up null 126s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ hg id -qr otherbranch 126s - 075302705298 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - importing 1 git commits 126s - not updating diverged bookmark otherbranch 126s - new changesets d64bf0521af6 (1 drafts) 126s - (run 'hg heads .' to see heads, 'hg merge' to merge) 126s - $ hg debugstrip --hidden --no-backup otherbranch 126s - $ hg book -d otherbranch 126s - $ hg git-cleanup 126s - git commit map cleaned 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - adding bookmark otherbranch 126s - $ cd .. 126s - 126s -And check that pulling something else doesn't delete that branch. 126s - 126s - $ cd hgrepo 126s - $ hg pull -r master 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - $ cd .. 126s - 126s -A special case, is that we can pull into a repository, where a commit 126s -corresponding to the new branch exists, but that commit is obsolete. 126s -In order to avoid “pinning” the obsolete commit, and thereby making it 126s -visible, we first pull from Git as an unnamed remote. 126s - 126s - $ hg clone --config phases.publish=no hgrepo hgrepo-clone 126s - updating to branch default 126s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ cd hgrepo-clone 126s - $ hg pull ../repo.git 126s - pulling from ../repo.git 126s - importing 4 git commits 126s - not updating diverged bookmark otherbranch 126s - new changesets d64bf0521af6 (1 drafts) 126s - (run 'hg heads .' to see heads, 'hg merge' to merge) 126s - $ hg debugobsolete d64bf0521af68fe2160791a1b4ab9baf282a3879 126s - 1 new obsolescence markers 126s - obsoleted 1 changesets 126s - $ cp ../hgrepo/.hg/hgrc .hg 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - not updating diverged bookmark otherbranch 126s - $ cd .. 126s - $ rm -rf hgrepo-clone 126s - 126s -Another special case, is that we should update commits over obsolete boundaries: 126s - 126s - $ hg clone --config phases.publish=no hgrepo hgrepo-clone 126s - updating to branch default 126s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ cd hgrepo-clone 126s - $ hg pull ../repo.git 126s - pulling from ../repo.git 126s - importing 4 git commits 126s - not updating diverged bookmark otherbranch 126s - new changesets d64bf0521af6 (1 drafts) 126s - (run 'hg heads .' to see heads, 'hg merge' to merge) 126s - $ hg debugobsolete 0753027052980aef9c9c37adb7d76d5719e8d818 d64bf0521af68fe2160791a1b4ab9baf282a3879 126s - 1 new obsolescence markers 126s - obsoleted 1 changesets 126s - $ hg book -r 075302705298 otherbranch 126s - $ cp ../hgrepo/.hg/hgrc .hg 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - updating bookmark otherbranch 126s - $ cd .. 126s - $ rm -rf hgrepo-clone 126s - 126s -Now just pull it: 126s - 126s - $ cd hgrepo 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - importing 1 git commits 126s - not updating diverged bookmark otherbranch 126s - new changesets d64bf0521af6 (1 drafts) 126s - (run 'hg heads .' to see heads, 'hg merge' to merge) 126s - $ hg state 126s - o default/otherbranch tip 5:d64bf0521af68fe2160791a1b4ab9baf282a3879 126s - | add delta 126s - | * otherbranch 4:0753027052980aef9c9c37adb7d76d5719e8d818 126s - | | add delta 126s - +---@ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 126s - | | add gamma 126s - | x 2:205a004356ef32b8da782afb89d9179d12ca31e9 126s - | | add gamma 126s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 126s - |/ add beta 126s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 126s - add alpha 126s - $ cd .. 126s - 126s -And finally, delete it: 126s - 126s - $ cd gitrepo 126s - $ git push origin :otherbranch 126s - To $TESTTMP/repo.git 126s - - [deleted] otherbranch 126s - $ cd .. 126s - 126s -And pull that: 126s - 126s - $ cd hgrepo 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - not deleting diverged bookmark otherbranch 126s - $ hg state 126s - o tip 5:d64bf0521af68fe2160791a1b4ab9baf282a3879 126s - | add delta 126s - | * otherbranch 4:0753027052980aef9c9c37adb7d76d5719e8d818 126s - | | add delta 126s - +---@ branch default/branch 3:52def9937d74e43b83dfded6ce0e5adf731b9d22 126s - | | add gamma 126s - | x 2:205a004356ef32b8da782afb89d9179d12ca31e9 126s - | | add gamma 126s - o | master default/master 1:7fe02317c63d9ee324d4b5df7c9296085162da1b 126s - |/ add beta 126s - o 0:ff7a2f2d8d7099694ae1e8b03838d40575bebb63 126s - add alpha 126s - $ cd .. 126s - 126s -We only get that message once: 126s - 126s - $ hg -R hgrepo pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - 126s -Now try deleting one already gone locally, which shouldn't output 126s -anything: 126s - 126s - $ cd gitrepo 126s - $ git push origin :branch 126s - To $TESTTMP/repo.git 126s - - [deleted] branch 126s - $ cd ../hgrepo 126s - $ hg book -d branch 126s - $ hg pull 126s - pulling from $TESTTMP/repo.git 126s - no changes found 126s - $ cd .. 126s 126s ERROR: test-pull-after-rebase.t output changed 126s ! 126s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push.t 126s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push.t.err 126s @@ -13,286 +13,100 @@ 126s $ cd .. 126s $ hg clone -u tip gitrepo hgrepo 126s importing 1 git commits 126s - new changesets ff7a2f2d8d70 (1 drafts) 126s - updating to branch default 126s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 126s + ** which supports versions 6.9 of Mercurial. 126s + ** Please disable "hggit" and try your action again. 126s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 126s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 126s + ** Mercurial Distributed SCM (version 7.0.1) 126s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 126s + Traceback (most recent call last): 126s + File "/usr/bin/hg", line 51, in 126s + dispatch.run() 126s + ~~~~~~~~~~~~^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 126s + status = dispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 126s + status = _rundispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 126s + ret = _runcatch(req) or 0 126s + ~~~~~~~~~^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 126s + return _callcatch(ui, _runcatchfunc) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 126s + return scmutil.callcatch(ui, func) 126s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 126s + return func() 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 126s + return _dispatch(req) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 126s + return runcommand( 126s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 126s + ) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 126s + ret = _runcommand(ui, options, cmd, d) 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 126s + return cmdfunc() 126s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 126s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 126s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 126s + return func(*args, **kwargs) 126s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 126s + r = hg.clone( 126s + ui, 126s + ...<11 lines>... 126s + depth=opts.get('depth') or None, 126s + ) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 126s + srcpeer, destpeer = orig(*args, **opts) 126s + ~~~~^^^^^^^^^^^^^^^ 126s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 126s + exchange.pull( 126s + ~~~~~~~~~~~~~^ 126s + local, 126s + ^^^^^^ 126s + ...<5 lines>... 126s + depth=depth, 126s + ^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 126s + return f(*args, **kwargs) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 126s + pullop.cgresult = repo.githandler.fetch(remote, heads) 126s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 126s + imported = self.import_git_objects( 126s + b'pull', 126s + ...<2 lines>... 126s + heads=heads, 126s + ) 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 126s + self.import_git_commit( 126s + ~~~~~~~~~~~~~~~~~~~~~~^ 126s + command, 126s + ^^^^^^^^ 126s + self.git[commit.sha], 126s + ^^^^^^^^^^^^^^^^^^^^^ 126s + commit.phase, 126s + ^^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 126s + files, gitlinks, git_renames = self.get_files_changed( 126s + ~~~~~~~~~~~~~~~~~~~~~~^ 126s + commit, detect_renames 126s + ^^^^^^^^^^^^^^^^^^^^^^ 126s + ) 126s + ^ 126s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 126s + oldfile, oldmode, oldsha = change.old 126s + ^^^^^^^^^^^^^^^^^^^^^^^^ 126s + TypeError: cannot unpack non-iterable NoneType object 126s + [1] 126s 126s $ cd hgrepo 126s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 126s $ hg bookmark -q master 126s - $ echo beta > beta 126s - $ hg add beta 126s - $ fn_hg_commit -m 'add beta' 126s - 126s - 126s - $ echo gamma > gamma 126s - $ hg add gamma 126s - $ fn_hg_commit -m 'add gamma' 126s - 126s - $ hg book -r 1 beta 126s - $ hg push -r beta 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - adding reference refs/heads/beta 126s - 126s - $ cd .. 126s - 126s -should have two different branches 126s - $ cd gitrepo 126s - $ git branch -v 126s - beta 0f378ab add beta 126s - master 7eeab2e add alpha 126s - * not-master 7eeab2e add alpha 126s - 126s -some more work on master from git 126s - $ git checkout master 2>&1 | sed s/\'/\"/g 126s - Switched to branch "master" 126s - $ echo delta > delta 126s - $ git add delta 126s - $ fn_git_commit -m "add delta" 126s - $ git checkout not-master 2>&1 | sed s/\'/\"/g 126s - Switched to branch "not-master" 126s - 126s - $ cd .. 126s - 126s - $ cd hgrepo 126s -this should fail 126s - $ hg push -r master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 126s - [255] 126s - 126s -... even with -f 126s - $ hg push -fr master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 126s - [255] 126s - 126s - $ hg pull 2>&1 | grep -v 'divergent bookmark' 126s - pulling from $TESTTMP/gitrepo 126s - importing 1 git commits 126s - not updating diverged bookmark master 126s - new changesets 25eed24f5e8f (1 drafts) 126s - (run 'hg heads' to see heads, 'hg merge' to merge) 126s -TODO shouldn't need to do this since we're (in theory) pushing master explicitly, 126s -which should not implicitly also push the not-master ref. 126s - $ hg book not-master -r default/not-master --force 126s -master and default/master should be diferent 126s - $ hg log -r master 126s - changeset: 2:953796e1cfd8 126s - bookmark: master 126s - user: test 126s - date: Mon Jan 01 00:00:12 2007 +0000 126s - summary: add gamma 126s - 126s - $ hg log -r default/master 126s - changeset: 3:25eed24f5e8f 126s - tag: default/master 126s - tag: tip 126s - parent: 0:ff7a2f2d8d70 126s - user: test 126s - date: Mon Jan 01 00:00:13 2007 +0000 126s - summary: add delta 126s - 126s - 126s -this should also fail 126s - $ hg push -r master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - abort: pushing refs/heads/master overwrites 953796e1cfd8 126s - [255] 126s - 126s -... but succeed with -f 126s - $ hg push -fr master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - updating reference refs/heads/master 126s - 126s -this should fail, no changes to push 126s - $ hg push -r master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - no changes found 126s - [1] 126s - 126s -hg-git issue103 -- directories can lose information at hg-git export time 126s - 126s - $ hg up master 126s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ mkdir dir1 126s - $ echo alpha > dir1/alpha 126s - $ hg add dir1/alpha 126s - $ fn_hg_commit -m 'add dir1/alpha' 126s - $ hg push -r master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 2 trees and 0 blobs 126s - updating reference refs/heads/master 126s - 126s - $ echo beta > dir1/beta 126s - $ hg add dir1/beta 126s - $ fn_hg_commit -m 'add dir1/beta' 126s - $ hg push -r master 126s - pushing to $TESTTMP/gitrepo 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 2 trees and 0 blobs 126s - updating reference refs/heads/master 126s - $ hg log -r master 126s - changeset: 5:ba0476ff1899 126s - bookmark: master 126s - tag: default/master 126s - tag: tip 126s - user: test 126s - date: Mon Jan 01 00:00:15 2007 +0000 126s - summary: add dir1/beta 126s - 126s - 126s - $ cat >> .hg/hgrc << EOF 126s - > [paths] 126s - > default:pushurl = file:///$TESTTMP/gitrepo 126s - > EOF 126s -NB: the triple slashes are intentional, due to windows 126s - $ hg push -r master 126s - pushing to file:///$TESTTMP/gitrepo 126s - searching for changes 126s - no changes found 126s - [1] 126s - 126s - $ cd .. 126s - 126s - $ hg clone -u tip gitrepo hgrepo-test 126s - importing 5 git commits 126s - new changesets ff7a2f2d8d70:ba0476ff1899 (5 drafts) 126s - updating to branch default 126s - 5 files updated, 0 files merged, 0 files removed, 0 files unresolved 126s - $ hg -R hgrepo-test log -r master 126s - changeset: 4:ba0476ff1899 126s - bookmark: master 126s - tag: default/master 126s - tag: tip 126s - user: test 126s - date: Mon Jan 01 00:00:15 2007 +0000 126s - summary: add dir1/beta 126s - 126s - $ hg tags -R hgrepo-test | grep ^default/ 126s - default/master 4:ba0476ff1899 126s - default/beta 1:47580592d3d6 126s - default/not-master 0:ff7a2f2d8d70 126s - 126s -Push a fast-forward to a currently checked out branch, which sometimes 126s -fails: 126s - 126s - $ cd hgrepo 126s - $ hg book -r master not-master 126s - moving bookmark 'not-master' forward from ff7a2f2d8d70 126s - $ hg push 126s - pushing to file:///$TESTTMP/gitrepo 126s - searching for changes 126s - warning: failed to update HEAD; unable to set b'HEAD' to b'7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03' (?) 126s - updating reference refs/heads/not-master 126s -That should have updated the tag: 126s - $ hg tags | grep ^default/ 126s - default/not-master 5:ba0476ff1899 126s - default/master 5:ba0476ff1899 126s - default/beta 1:47580592d3d6 126s - $ cd .. 126s - 126s -We can push only one of two bookmarks on the same revision: 126s - 126s - $ cd hgrepo 126s - $ hg book -r 0 also-not-master really-not-master 126s - $ hg push -B also-not-master 126s - pushing to file:///$TESTTMP/gitrepo 126s - searching for changes 126s - adding reference refs/heads/also-not-master 126s - 126s -We can also push another bookmark to a path with another revision 126s -specified: 126s - 126s - $ hg book -r 3 also-not-master 126s - moving bookmark 'also-not-master' forward from ff7a2f2d8d70 126s - $ hg push -B also-not-master "file:///$TESTTMP/gitrepo#master" 126s - pushing to file:///$TESTTMP/gitrepo 126s - searching for changes 126s - adding objects 126s - remote: found 0 deltas to reuse 126s - added 1 commits with 1 trees and 1 blobs 126s - updating reference refs/heads/also-not-master 126s - 126s -And we can delete them again afterwards: 126s - 126s - $ hg book -d also-not-master really-not-master 126s - $ hg push -B also-not-master -B really-not-master 126s - pushing to file:///$TESTTMP/gitrepo 126s - searching for changes 126s - warning: unable to delete 'refs/heads/really-not-master' as it does not exist on the remote repository 126s - deleting reference refs/heads/also-not-master 126s - 126s -Push empty Hg repo to empty Git repo (issue #58) 126s - $ hg init hgrepo2 126s - $ git init -q --bare repo.git 126s - $ hg -R hgrepo2 push repo.git 126s - pushing to repo.git 126s - searching for changes 126s - abort: no bookmarks or tags to push to git 126s - (see "hg help bookmarks" for details on creating them) 126s - [255] 126s - 126s -The remote repo is empty and the local one doesn't have any bookmarks/tags 126s - $ cd hgrepo2 126s - $ echo init >> test.txt 126s - $ hg addremove 126s - adding test.txt 126s - $ fn_hg_commit -m init 126s - $ hg update null 126s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 126s - $ hg push ../repo.git 126s - pushing to ../repo.git 126s - searching for changes 126s - abort: no bookmarks or tags to push to git 126s - (see "hg help bookmarks" for details on creating them) 126s - [255] 126s - $ hg summary 126s - parent: -1:000000000000 (no revision checked out) 126s - branch: default 126s - commit: (clean) 126s - update: 1 new changesets (update) 126s - phases: 1 draft 126s -That should not create any bookmarks 126s - $ hg bookmarks 126s - no bookmarks set 126s -And no tags for the remotes either: 126s - $ hg tags 126s - tip 0:8aded40be5af 126s - 126s -test for ssh vulnerability 126s - 126s - $ cat >> $HGRCPATH << EOF 126s - > [ui] 126s - > ssh = ssh -o ConnectTimeout=1 126s - > EOF 126s - $ hg push -q 'git+ssh://-oProxyCommand=rm${IFS}nonexistent/path' 126s - abort: potentially unsafe hostname: '-oProxyCommand=rm${IFS}nonexistent' 126s - [255] 126s - $ hg push -q 'git+ssh://-oProxyCommand=rm%20nonexistent/path' 126s - abort: potentially unsafe hostname: '-oProxyCommand=rm nonexistent' 126s - [255] 126s - $ hg push -q 'git+ssh://fakehost|rm%20nonexistent/path' 126s - ssh: * fakehost%7?rm%20nonexistent* (glob) 126s - abort: git remote error: The remote server unexpectedly closed the connection. 126s - [255] 126s - $ hg push -q 'git+ssh://fakehost%7Crm%20nonexistent/path' 126s - ssh: * fakehost%7?rm%20nonexistent* (glob) 126s - abort: git remote error: The remote server unexpectedly closed the connection. 126s - [255] 126s 126s ERROR: test-push.t output changed 133s ! 133s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-clone.t 133s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-clone.t#draft.err 133s @@ -39,59 +39,218 @@ 133s 133s $ hg clone -r alpha gitrepo hgrepo-a 133s importing 1 git commits 133s - new changesets ff7a2f2d8d70 (1 drafts) 133s - updating to branch default 133s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ hg -R hgrepo-a bookmarks 133s - master 0:ff7a2f2d8d70 133s + abort: repository hgrepo-a not found 133s + [255] 133s $ hg -R hgrepo-a log --graph --template=phases 133s - @ changeset: 0:ff7a2f2d8d70 133s - bookmark: master 133s - tag: alpha 133s - tag: default/master 133s - tag: tip 133s - phase: draft 133s - user: test 133s - date: Mon Jan 01 00:00:10 2007 +0000 133s - summary: add alpha 133s - 133s + abort: repository hgrepo-a not found 133s + [255] 133s $ git --git-dir hgrepo-a/.hg/git for-each-ref 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 133s + fatal: not a git repository: 'hgrepo-a/.hg/git' 133s + [128] 133s Make sure this is still draft since we didn't pull remote's HEAD 133s $ hg -R hgrepo-a phase -r alpha 133s - 0: draft 133s + abort: repository hgrepo-a not found 133s + [255] 133s 133s clone a branch 133s $ hg clone -r beta gitrepo hgrepo-b 133s importing 2 git commits 133s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 133s - updating to branch default 133s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ hg -R hgrepo-b bookmarks 133s - * beta 1:7fe02317c63d 133s - master 0:ff7a2f2d8d70 133s + abort: repository hgrepo-b not found 133s + [255] 133s $ hg -R hgrepo-b log --graph 133s - @ changeset: 1:7fe02317c63d 133s - | bookmark: beta 133s - | tag: default/beta 133s - | tag: tip 133s - | user: test 133s - | date: Mon Jan 01 00:00:11 2007 +0000 133s - | summary: add beta 133s - | 133s - o changeset: 0:ff7a2f2d8d70 133s - bookmark: master 133s - tag: alpha 133s - tag: default/master 133s - user: test 133s - date: Mon Jan 01 00:00:10 2007 +0000 133s - summary: add alpha 133s - 133s + abort: repository hgrepo-b not found 133s + [255] 133s $ git --git-dir hgrepo-b/.hg/git for-each-ref 133s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 133s + fatal: not a git repository: 'hgrepo-b/.hg/git' 133s + [128] 133s 133s Make sure that a deleted .hgsubstate does not confuse hg-git 133s 133s @@ -105,47 +264,224 @@ 133s 133s $ hg clone -r beta gitrepo hgrepo-c 133s importing 4 git commits 133s - new changesets ff7a2f2d8d70:47d12948785d (4 drafts) 133s - updating to branch default 133s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ hg -R hgrepo-c bookmarks 133s - * beta 3:47d12948785d 133s - master 0:ff7a2f2d8d70 133s + abort: repository hgrepo-c not found 133s + [255] 133s $ hg --cwd hgrepo-c status 133s + abort: No such file or directory: 'hgrepo-c' 133s + [255] 133s $ git --git-dir hgrepo-c/.hg/git for-each-ref 133s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 133s + fatal: not a git repository: 'hgrepo-c/.hg/git' 133s + [128] 133s 133s test shared repositories 133s 133s $ hg clone gitrepo hgrepo-base 133s importing 5 git commits 133s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 133s - updating to bookmark beta 133s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ hg -R hgrepo-base bookmarks 133s - * beta 4:47d12948785d 133s - gamma 2:ca33a262eb46 133s - master 0:ff7a2f2d8d70 133s + abort: repository hgrepo-base not found 133s + [255] 133s $ hg --config extensions.share= share hgrepo-base hgrepo-shared 133s - updating working directory 133s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + abort: repository hgrepo-base not found 133s + [255] 133s $ hg -R hgrepo-shared pull gitrepo 133s - pulling from gitrepo 133s - no changes found 133s - adding bookmark beta 133s - adding bookmark gamma 133s - adding bookmark master 133s + abort: repository hgrepo-shared not found 133s + [255] 133s $ hg -R hgrepo-shared push gitrepo 133s - pushing to gitrepo 133s - searching for changes 133s - no changes found 133s - [1] 133s + abort: repository hgrepo-shared not found 133s + [255] 133s $ ls hgrepo-shared/.hg | grep git 133s + ls: cannot access 'hgrepo-shared/.hg': No such file or directory 133s [1] 133s $ hg -R hgrepo-shared git-cleanup 133s - git commit map cleaned 133s + abort: repository hgrepo-shared not found 133s + [255] 133s $ rm -rf hgrepo-base hgrepo-shared 133s 133s test cloning HEAD 133s @@ -155,14 +491,102 @@ 133s $ cd .. 133s $ hg clone gitrepo hgrepo-2 133s importing 5 git commits 133s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 133s - updating to bookmark master 133s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ git --git-dir hgrepo-2/.hg/git for-each-ref 133s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 133s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 133s + fatal: not a git repository: 'hgrepo-2/.hg/git' 133s + [128] 133s $ rm -rf hgrepo-2 133s 133s clone empty repo 133s @@ -181,24 +605,108 @@ 133s $ cd .. 133s $ hg clone gitrepo hgrepo-2 133s importing 5 git commits 133s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 133s - updating to bookmark master 133s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ hg -R hgrepo-2 book 133s - beta 4:47d12948785d 133s - gamma 2:ca33a262eb46 133s - * master 0:ff7a2f2d8d70 133s + abort: repository hgrepo-2 not found 133s + [255] 133s $ hg -R hgrepo-2 tags -v 133s - tip 4:47d12948785d 133s - default/beta 4:47d12948785d git-remote 133s - default/gamma 2:ca33a262eb46 git-remote 133s - default/master 0:ff7a2f2d8d70 git-remote 133s - alpha 0:ff7a2f2d8d70 git 133s + abort: repository hgrepo-2 not found 133s + [255] 133s $ git --git-dir hgrepo-2/.hg/git for-each-ref 133s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 133s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 133s + fatal: not a git repository: 'hgrepo-2/.hg/git' 133s + [128] 133s $ rm -rf hgrepo-2 133s 133s test cloning fully detached HEAD; we don't convert the 133s @@ -213,22 +721,108 @@ 133s $ cd .. 133s $ hg clone gitrepo hgrepo-2 133s importing 5 git commits 133s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 133s - warning: the git source repository has a detached head 133s - (you may want to update to a bookmark) 133s - updating to branch default 133s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 133s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 133s + ** which supports versions 6.9 of Mercurial. 133s + ** Please disable "hggit" and try your action again. 133s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 133s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 133s + ** Mercurial Distributed SCM (version 7.0.1) 133s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 133s + Traceback (most recent call last): 133s + File "/usr/bin/hg", line 51, in 133s + dispatch.run() 133s + ~~~~~~~~~~~~^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 133s + status = dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 133s + status = _rundispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 133s + ret = _runcatch(req) or 0 133s + ~~~~~~~~~^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 133s + return _callcatch(ui, _runcatchfunc) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 133s + return scmutil.callcatch(ui, func) 133s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 133s + return func() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 133s + return _dispatch(req) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 133s + return runcommand( 133s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 133s + ) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 133s + ret = _runcommand(ui, options, cmd, d) 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 133s + return cmdfunc() 133s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 133s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 133s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 133s + return func(*args, **kwargs) 133s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 133s + r = hg.clone( 133s + ui, 133s + ...<11 lines>... 133s + depth=opts.get('depth') or None, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 133s + srcpeer, destpeer = orig(*args, **opts) 133s + ~~~~^^^^^^^^^^^^^^^ 133s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 133s + exchange.pull( 133s + ~~~~~~~~~~~~~^ 133s + local, 133s + ^^^^^^ 133s + ...<5 lines>... 133s + depth=depth, 133s + ^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 133s + return f(*args, **kwargs) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 133s + pullop.cgresult = repo.githandler.fetch(remote, heads) 133s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 133s + imported = self.import_git_objects( 133s + b'pull', 133s + ...<2 lines>... 133s + heads=heads, 133s + ) 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 133s + self.import_git_commit( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + command, 133s + ^^^^^^^^ 133s + self.git[commit.sha], 133s + ^^^^^^^^^^^^^^^^^^^^^ 133s + commit.phase, 133s + ^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 133s + files, gitlinks, git_renames = self.get_files_changed( 133s + ~~~~~~~~~~~~~~~~~~~~~~^ 133s + commit, detect_renames 133s + ^^^^^^^^^^^^^^^^^^^^^^ 133s + ) 133s + ^ 133s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 133s + oldfile, oldmode, oldsha = change.old 133s + ^^^^^^^^^^^^^^^^^^^^^^^^ 133s + TypeError: cannot unpack non-iterable NoneType object 133s + [1] 133s $ hg -R hgrepo-2 book 133s - beta 4:47d12948785d 133s - gamma 2:ca33a262eb46 133s - master 0:ff7a2f2d8d70 133s + abort: repository hgrepo-2 not found 133s + [255] 133s $ hg -R hgrepo-2 id --tags 133s - default/beta tip 133s + abort: repository hgrepo-2 not found 133s + [255] 133s $ git --git-dir hgrepo-2/.hg/git for-each-ref 133s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 133s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 133s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 133s + fatal: not a git repository: 'hgrepo-2/.hg/git' 133s + [128] 133s $ rm -rf hgrepo-2 133s 133s test that cloning a regular mercurial repository does not introduce 133s 133s ERROR: test-clone.t#draft output changed 134s ! 134s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-clone.t 134s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-clone.t#secret.err 134s @@ -39,59 +39,218 @@ 134s 134s $ hg clone -r alpha gitrepo hgrepo-a 134s importing 1 git commits 134s - new changesets ff7a2f2d8d70 (1 drafts) 134s - updating to branch default 134s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ hg -R hgrepo-a bookmarks 134s - master 0:ff7a2f2d8d70 134s + abort: repository hgrepo-a not found 134s + [255] 134s $ hg -R hgrepo-a log --graph --template=phases 134s - @ changeset: 0:ff7a2f2d8d70 134s - bookmark: master 134s - tag: alpha 134s - tag: default/master 134s - tag: tip 134s - phase: draft 134s - user: test 134s - date: Mon Jan 01 00:00:10 2007 +0000 134s - summary: add alpha 134s - 134s + abort: repository hgrepo-a not found 134s + [255] 134s $ git --git-dir hgrepo-a/.hg/git for-each-ref 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 134s + fatal: not a git repository: 'hgrepo-a/.hg/git' 134s + [128] 134s Make sure this is still draft since we didn't pull remote's HEAD 134s $ hg -R hgrepo-a phase -r alpha 134s - 0: draft 134s + abort: repository hgrepo-a not found 134s + [255] 134s 134s clone a branch 134s $ hg clone -r beta gitrepo hgrepo-b 134s importing 2 git commits 134s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 134s - updating to branch default 134s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ hg -R hgrepo-b bookmarks 134s - * beta 1:7fe02317c63d 134s - master 0:ff7a2f2d8d70 134s + abort: repository hgrepo-b not found 134s + [255] 134s $ hg -R hgrepo-b log --graph 134s - @ changeset: 1:7fe02317c63d 134s - | bookmark: beta 134s - | tag: default/beta 134s - | tag: tip 134s - | user: test 134s - | date: Mon Jan 01 00:00:11 2007 +0000 134s - | summary: add beta 134s - | 134s - o changeset: 0:ff7a2f2d8d70 134s - bookmark: master 134s - tag: alpha 134s - tag: default/master 134s - user: test 134s - date: Mon Jan 01 00:00:10 2007 +0000 134s - summary: add alpha 134s - 134s + abort: repository hgrepo-b not found 134s + [255] 134s $ git --git-dir hgrepo-b/.hg/git for-each-ref 134s - 9497a4ee62e16ee641860d7677cdb2589ea15554 commit refs/remotes/default/beta 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 134s + fatal: not a git repository: 'hgrepo-b/.hg/git' 134s + [128] 134s 134s Make sure that a deleted .hgsubstate does not confuse hg-git 134s 134s @@ -105,47 +264,224 @@ 134s 134s $ hg clone -r beta gitrepo hgrepo-c 134s importing 4 git commits 134s - new changesets ff7a2f2d8d70:47d12948785d (4 drafts) 134s - updating to branch default 134s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ hg -R hgrepo-c bookmarks 134s - * beta 3:47d12948785d 134s - master 0:ff7a2f2d8d70 134s + abort: repository hgrepo-c not found 134s + [255] 134s $ hg --cwd hgrepo-c status 134s + abort: No such file or directory: 'hgrepo-c' 134s + [255] 134s $ git --git-dir hgrepo-c/.hg/git for-each-ref 134s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 134s + fatal: not a git repository: 'hgrepo-c/.hg/git' 134s + [128] 134s 134s test shared repositories 134s 134s $ hg clone gitrepo hgrepo-base 134s importing 5 git commits 134s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 134s - updating to bookmark beta 134s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ hg -R hgrepo-base bookmarks 134s - * beta 4:47d12948785d 134s - gamma 2:ca33a262eb46 134s - master 0:ff7a2f2d8d70 134s + abort: repository hgrepo-base not found 134s + [255] 134s $ hg --config extensions.share= share hgrepo-base hgrepo-shared 134s - updating working directory 134s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + abort: repository hgrepo-base not found 134s + [255] 134s $ hg -R hgrepo-shared pull gitrepo 134s - pulling from gitrepo 134s - no changes found 134s - adding bookmark beta 134s - adding bookmark gamma 134s - adding bookmark master 134s + abort: repository hgrepo-shared not found 134s + [255] 134s $ hg -R hgrepo-shared push gitrepo 134s - pushing to gitrepo 134s - searching for changes 134s - no changes found 134s - [1] 134s + abort: repository hgrepo-shared not found 134s + [255] 134s $ ls hgrepo-shared/.hg | grep git 134s + ls: cannot access 'hgrepo-shared/.hg': No such file or directory 134s [1] 134s $ hg -R hgrepo-shared git-cleanup 134s - git commit map cleaned 134s + abort: repository hgrepo-shared not found 134s + [255] 134s $ rm -rf hgrepo-base hgrepo-shared 134s 134s test cloning HEAD 134s @@ -155,14 +491,102 @@ 134s $ cd .. 134s $ hg clone gitrepo hgrepo-2 134s importing 5 git commits 134s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 134s - updating to bookmark master 134s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ git --git-dir hgrepo-2/.hg/git for-each-ref 134s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 134s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 134s + fatal: not a git repository: 'hgrepo-2/.hg/git' 134s + [128] 134s $ rm -rf hgrepo-2 134s 134s clone empty repo 134s @@ -181,24 +605,108 @@ 134s $ cd .. 134s $ hg clone gitrepo hgrepo-2 134s importing 5 git commits 134s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 134s - updating to bookmark master 134s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ hg -R hgrepo-2 book 134s - beta 4:47d12948785d 134s - gamma 2:ca33a262eb46 134s - * master 0:ff7a2f2d8d70 134s + abort: repository hgrepo-2 not found 134s + [255] 134s $ hg -R hgrepo-2 tags -v 134s - tip 4:47d12948785d 134s - default/beta 4:47d12948785d git-remote 134s - default/gamma 2:ca33a262eb46 git-remote 134s - default/master 0:ff7a2f2d8d70 git-remote 134s - alpha 0:ff7a2f2d8d70 git 134s + abort: repository hgrepo-2 not found 134s + [255] 134s $ git --git-dir hgrepo-2/.hg/git for-each-ref 134s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 134s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 134s + fatal: not a git repository: 'hgrepo-2/.hg/git' 134s + [128] 134s $ rm -rf hgrepo-2 134s 134s test cloning fully detached HEAD; we don't convert the 134s @@ -213,22 +721,108 @@ 134s $ cd .. 134s $ hg clone gitrepo hgrepo-2 134s importing 5 git commits 134s - new changesets ff7a2f2d8d70:47d12948785d (5 drafts) 134s - warning: the git source repository has a detached head 134s - (you may want to update to a bookmark) 134s - updating to branch default 134s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 134s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 134s + ** which supports versions 6.9 of Mercurial. 134s + ** Please disable "hggit" and try your action again. 134s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 134s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 134s + ** Mercurial Distributed SCM (version 7.0.1) 134s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 134s + Traceback (most recent call last): 134s + File "/usr/bin/hg", line 51, in 134s + dispatch.run() 134s + ~~~~~~~~~~~~^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 134s + status = dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 134s + status = _rundispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 134s + ret = _runcatch(req) or 0 134s + ~~~~~~~~~^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 134s + return _callcatch(ui, _runcatchfunc) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 134s + return scmutil.callcatch(ui, func) 134s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 134s + return func() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 134s + return _dispatch(req) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 134s + return runcommand( 134s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 134s + ) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 134s + ret = _runcommand(ui, options, cmd, d) 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 134s + return cmdfunc() 134s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 134s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 134s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 134s + return func(*args, **kwargs) 134s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 134s + r = hg.clone( 134s + ui, 134s + ...<11 lines>... 134s + depth=opts.get('depth') or None, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 134s + srcpeer, destpeer = orig(*args, **opts) 134s + ~~~~^^^^^^^^^^^^^^^ 134s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 134s + exchange.pull( 134s + ~~~~~~~~~~~~~^ 134s + local, 134s + ^^^^^^ 134s + ...<5 lines>... 134s + depth=depth, 134s + ^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 134s + return f(*args, **kwargs) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 134s + pullop.cgresult = repo.githandler.fetch(remote, heads) 134s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 134s + imported = self.import_git_objects( 134s + b'pull', 134s + ...<2 lines>... 134s + heads=heads, 134s + ) 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 134s + self.import_git_commit( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + command, 134s + ^^^^^^^^ 134s + self.git[commit.sha], 134s + ^^^^^^^^^^^^^^^^^^^^^ 134s + commit.phase, 134s + ^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 134s + files, gitlinks, git_renames = self.get_files_changed( 134s + ~~~~~~~~~~~~~~~~~~~~~~^ 134s + commit, detect_renames 134s + ^^^^^^^^^^^^^^^^^^^^^^ 134s + ) 134s + ^ 134s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 134s + oldfile, oldmode, oldsha = change.old 134s + ^^^^^^^^^^^^^^^^^^^^^^^^ 134s + TypeError: cannot unpack non-iterable NoneType object 134s + [1] 134s $ hg -R hgrepo-2 book 134s - beta 4:47d12948785d 134s - gamma 2:ca33a262eb46 134s - master 0:ff7a2f2d8d70 134s + abort: repository hgrepo-2 not found 134s + [255] 134s $ hg -R hgrepo-2 id --tags 134s - default/beta tip 134s + abort: repository hgrepo-2 not found 134s + [255] 134s $ git --git-dir hgrepo-2/.hg/git for-each-ref 134s - b5329119ed77cb37a31fe523621d684eb55779a4 commit refs/remotes/default/beta 134s - d338971a96e20113bb980a5dc4355ba77eed3714 commit refs/remotes/default/gamma 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/remotes/default/master 134s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 commit refs/tags/alpha 134s + fatal: not a git repository: 'hgrepo-2/.hg/git' 134s + [128] 134s $ rm -rf hgrepo-2 134s 134s test that cloning a regular mercurial repository does not introduce 134s 134s ERROR: test-clone.t#secret output changed 138s ! 138s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-branch-bookmark-suffix.t 138s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-branch-bookmark-suffix.t#with-path.err 138s @@ -49,31 +49,102 @@ 138s 138s $ hg push ../repo.git 138s pushing to ../repo.git 138s - searching for changes 138s - adding objects 138s - remote: found 0 deltas to reuse 138s - added 2 commits with 2 trees and 2 blobs 138s - adding reference refs/heads/branch1 138s - adding reference refs/heads/branch2 138s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 138s + ** which supports versions 6.9 of Mercurial. 138s + ** Please disable "hggit" and try your action again. 138s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 138s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 138s + ** Mercurial Distributed SCM (version 7.0.1) 138s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 138s + Traceback (most recent call last): 138s + File "/usr/bin/hg", line 51, in 138s + dispatch.run() 138s + ~~~~~~~~~~~~^^ 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 138s + status = dispatch(req) 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 138s + status = _rundispatch(req) 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 138s + ret = _runcatch(req) or 0 138s + ~~~~~~~~~^^^^^ 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 138s + return _callcatch(ui, _runcatchfunc) 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 138s + return scmutil.callcatch(ui, func) 138s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 138s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 138s + return func() 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 138s + return _dispatch(req) 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 138s + return runcommand( 138s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 138s + ) 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 138s + ret = _runcommand(ui, options, cmd, d) 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 138s + return cmdfunc() 138s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 138s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 138s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 138s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 138s + return func(*args, **kwargs) 138s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 138s + pushop = exchange.push( 138s + repo, 138s + ...<6 lines>... 138s + opargs=opargs, 138s + ) 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 138s + return f(*args, **kwargs) 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 138s + pushop.cgresult = repo.githandler.push( 138s + ~~~~~~~~~~~~~~~~~~~~^ 138s + remote.path, revs, bookmarks, force 138s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 138s + ) 138s + ^ 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 138s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 138s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 138s + all_exportable = self.export_commits() 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 138s + self.export_git_objects() 138s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 138s + packer.pack(synchronous=True) 138s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 138s + _process_batch(self.ui, self.object_store, todo) 138s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 138s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 138s + object_store._remove_loose_object(obj.id) 138s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 138s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 138s + [1] 138s 138s $ cd .. 138s 138s $ cd repo.git 138s $ git symbolic-ref HEAD refs/heads/branch1 138s $ git branch 138s - * branch1 138s - branch2 138s $ cd .. 138s 138s $ git clone repo.git gitrepo 138s Cloning into 'gitrepo'... 138s + warning: You appear to have cloned an empty repository. 138s done. 138s $ cd gitrepo 138s $ git checkout -q branch1 138s + error: pathspec 'branch1' did not match any file(s) known to git 138s + [1] 138s $ echo g1 >> f1 138s $ git add f1 138s $ fn_git_commit -m "append f1" 138s $ git checkout -q branch2 138s + error: pathspec 'branch2' did not match any file(s) known to git 138s + [1] 138s $ echo g2 >> f2 138s $ git add f2 138s $ fn_git_commit -m "append f2" 138s @@ -83,18 +154,13 @@ 138s $ git add f3 138s $ fn_git_commit -m "append f3" 138s $ git push origin branch1 branch2 branch3 138s - To $TESTTMP/repo.git 138s - bbfe79a..d8aef79 branch1 -> branch1 138s - 288e92b..f8f8de5 branch2 -> branch2 138s - * [new branch] branch3 -> branch3 138s + error: src refspec branch2 does not match any 138s + error: failed to push some refs to '$TESTTMP/repo.git' 138s + [1] 138s make sure the commit doesn't have an HG:rename-source annotation 138s $ git cat-file commit d8aef79 138s - tree b5644d8071b8a5963b8d1fd089fb3fdfb14b1203 138s - parent bbfe79acf62dcd6a97763e2a67424a6de8a96941 138s - author test 1167609612 +0000 138s - committer test 1167609612 +0000 138s - 138s - append f1 138s + fatal: Not a valid object name d8aef79 138s + [128] 138s $ cd .. 138s 138s $ cd hgrepo 138s @@ -102,45 +168,18 @@ 138s default = $TESTTMP/repo.git (with-path !) 138s $ hg pull ../repo.git 138s pulling from ../repo.git 138s - importing 3 git commits 138s - updating bookmark branch1_bookmark 138s - updating bookmark branch2_bookmark 138s - adding bookmark branch3_bookmark 138s - new changesets 8211cade99e4:faf44fc3a4e8 (3 drafts) 138s - (run 'hg heads' to see heads) 138s $ hg log --graph 138s - o changeset: 4:faf44fc3a4e8 138s - | bookmark: branch3_bookmark 138s - | tag: default/branch3 (with-path !) 138s + @ changeset: 1:600de9b6d498 138s + | branch: branch2 138s + | bookmark: branch2_bookmark 138s | tag: tip 138s - | user: test 138s - | date: Mon Jan 01 00:00:14 2007 +0000 138s - | summary: append f3 138s - | 138s - o changeset: 3:ae8eb55f7090 138s - | bookmark: branch2_bookmark 138s - | tag: default/branch2 (with-path !) 138s - | parent: 1:600de9b6d498 138s - | user: test 138s - | date: Mon Jan 01 00:00:13 2007 +0000 138s - | summary: append f2 138s - | 138s - | o changeset: 2:8211cade99e4 138s - | | bookmark: branch1_bookmark 138s - | | tag: default/branch1 (with-path !) 138s - | | parent: 0:40a840c1f8ae 138s - | | user: test 138s - | | date: Mon Jan 01 00:00:12 2007 +0000 138s - | | summary: append f1 138s - | | 138s - @ | changeset: 1:600de9b6d498 138s - |/ branch: branch2 138s - | user: test 138s - | date: Mon Jan 01 00:00:11 2007 +0000 138s - | summary: add f2 138s + | user: test 138s + | date: Mon Jan 01 00:00:11 2007 +0000 138s + | summary: add f2 138s | 138s o changeset: 0:40a840c1f8ae 138s branch: branch1 138s + bookmark: branch1_bookmark 138s user: test 138s date: Mon Jan 01 00:00:10 2007 +0000 138s summary: add f1 138s @@ -151,145 +190,8 @@ 138s 138s $ rm -r hgrepo 138s $ hg clone -r branch3 repo.git hgrepo 138s - importing 4 git commits 138s - new changesets 40a840c1f8ae:faf44fc3a4e8 (4 drafts) 138s - updating to bookmark branch3_bookmark 138s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 138s + abort: unknown revision 'branch3' 138s + [10] 138s $ cd hgrepo 138s + $TESTTMP.sh: 100: cd: can't cd to hgrepo 138s $ hg bookmarks 138s - branch2_bookmark 2:ae8eb55f7090 138s - * branch3_bookmark 3:faf44fc3a4e8 138s - $ hg log --graph 138s - @ changeset: 3:faf44fc3a4e8 138s - | bookmark: branch3_bookmark 138s - | tag: default/branch3 138s - | tag: tip 138s - | user: test 138s - | date: Mon Jan 01 00:00:14 2007 +0000 138s - | summary: append f3 138s - | 138s - o changeset: 2:ae8eb55f7090 138s - | bookmark: branch2_bookmark 138s - | tag: default/branch2 138s - | user: test 138s - | date: Mon Jan 01 00:00:13 2007 +0000 138s - | summary: append f2 138s - | 138s - o changeset: 1:600de9b6d498 138s - | branch: branch2 138s - | user: test 138s - | date: Mon Jan 01 00:00:11 2007 +0000 138s - | summary: add f2 138s - | 138s - o changeset: 0:40a840c1f8ae 138s - branch: branch1 138s - user: test 138s - date: Mon Jan 01 00:00:10 2007 +0000 138s - summary: add f1 138s - 138s - $ cd .. 138s - 138s -Try cloning something that's both a bookmark and a branch, and see the 138s -results. They're a bit suprising as the bookmark does get activated, 138s -but the branch get checked out. Although this does seem a bit odd, so 138s -does the scenario. 138s - 138s - $ rm -r hgrepo 138s - $ hg clone -r branch1 repo.git hgrepo 138s - importing 2 git commits 138s - new changesets 40a840c1f8ae:8211cade99e4 (2 drafts) 138s - updating to branch branch1 138s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 138s - $ cd hgrepo 138s - $ hg bookmarks 138s - * branch1_bookmark 1:8211cade99e4 138s - $ hg log --graph 138s - o changeset: 1:8211cade99e4 138s - | bookmark: branch1_bookmark 138s - | tag: default/branch1 138s - | tag: tip 138s - | user: test 138s - | date: Mon Jan 01 00:00:12 2007 +0000 138s - | summary: append f1 138s - | 138s - @ changeset: 0:40a840c1f8ae 138s - branch: branch1 138s - user: test 138s - date: Mon Jan 01 00:00:10 2007 +0000 138s - summary: add f1 138s - 138s - 138s - $ cd .. 138s - 138s -Now try pulling a diverged bookmark: 138s - 138s - $ rm -r hgrepo 138s -#if with-path 138s - $ hg clone -U repo.git hgrepo 138s - importing 5 git commits 138s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 138s -#else 138s - $ hg init hgrepo 138s - $ hg -R hgrepo pull repo.git 138s - pulling from repo.git 138s - importing 5 git commits 138s - adding bookmark branch1_bookmark 138s - adding bookmark branch2_bookmark 138s - adding bookmark branch3_bookmark 138s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 138s - (run 'hg heads' to see heads, 'hg merge' to merge) 138s -#endif 138s - $ cd gitrepo 138s - $ git checkout -q branch1 138s - $ fn_git_rebase branch3 138s - $ git push -f 138s - To $TESTTMP/repo.git 138s - + d8aef79...ce1d1c5 branch1 -> branch1 (forced update) 138s - $ cd ../hgrepo 138s - $ hg pull ../repo.git 138s - pulling from ../repo.git 138s - importing 1 git commits 138s - not updating diverged bookmark branch1_bookmark 138s - new changesets 895d0307f8b7 (1 drafts) 138s - (run 'hg update' to get a working copy) 138s - $ hg log --graph 138s - o changeset: 5:895d0307f8b7 138s - | tag: default/branch1 (with-path !) 138s - | tag: tip 138s - | user: test 138s - | date: Mon Jan 01 00:00:12 2007 +0000 138s - | summary: append f1 138s - | 138s - o changeset: 4:faf44fc3a4e8 138s - | bookmark: branch3_bookmark 138s - | tag: default/branch3 (with-path !) 138s - | user: test 138s - | date: Mon Jan 01 00:00:14 2007 +0000 138s - | summary: append f3 138s - | 138s - o changeset: 3:ae8eb55f7090 138s - | bookmark: branch2_bookmark 138s - | tag: default/branch2 (with-path !) 138s - | user: test 138s - | date: Mon Jan 01 00:00:13 2007 +0000 138s - | summary: append f2 138s - | 138s - o changeset: 2:600de9b6d498 138s - | branch: branch2 138s - | parent: 0:40a840c1f8ae 138s - | user: test 138s - | date: Mon Jan 01 00:00:11 2007 +0000 138s - | summary: add f2 138s - | 138s - | o changeset: 1:8211cade99e4 138s - |/ bookmark: branch1_bookmark 138s - | user: test 138s - | date: Mon Jan 01 00:00:12 2007 +0000 138s - | summary: append f1 138s - | 138s - o changeset: 0:40a840c1f8ae 138s - branch: branch1 138s - user: test 138s - date: Mon Jan 01 00:00:10 2007 +0000 138s - summary: add f1 138s - 138s 138s ERROR: test-branch-bookmark-suffix.t#with-path output changed 139s ! 139s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-branch-bookmark-suffix.t 139s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-branch-bookmark-suffix.t#without-path.err 139s @@ -49,31 +49,102 @@ 139s 139s $ hg push ../repo.git 139s pushing to ../repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 2 commits with 2 trees and 2 blobs 139s - adding reference refs/heads/branch1 139s - adding reference refs/heads/branch2 139s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 139s + ** which supports versions 6.9 of Mercurial. 139s + ** Please disable "hggit" and try your action again. 139s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 139s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 139s + ** Mercurial Distributed SCM (version 7.0.1) 139s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 139s + Traceback (most recent call last): 139s + File "/usr/bin/hg", line 51, in 139s + dispatch.run() 139s + ~~~~~~~~~~~~^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 139s + status = dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 139s + status = _rundispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 139s + ret = _runcatch(req) or 0 139s + ~~~~~~~~~^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 139s + return _callcatch(ui, _runcatchfunc) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 139s + return scmutil.callcatch(ui, func) 139s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 139s + return func() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 139s + return _dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 139s + return runcommand( 139s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 139s + ) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 139s + ret = _runcommand(ui, options, cmd, d) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 139s + return cmdfunc() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 139s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 139s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 139s + return func(*args, **kwargs) 139s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 139s + pushop = exchange.push( 139s + repo, 139s + ...<6 lines>... 139s + opargs=opargs, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 139s + return f(*args, **kwargs) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 139s + pushop.cgresult = repo.githandler.push( 139s + ~~~~~~~~~~~~~~~~~~~~^ 139s + remote.path, revs, bookmarks, force 139s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 139s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 139s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 139s + all_exportable = self.export_commits() 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 139s + self.export_git_objects() 139s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 139s + packer.pack(synchronous=True) 139s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 139s + _process_batch(self.ui, self.object_store, todo) 139s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 139s + object_store._remove_loose_object(obj.id) 139s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 139s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 139s + [1] 139s 139s $ cd .. 139s 139s $ cd repo.git 139s $ git symbolic-ref HEAD refs/heads/branch1 139s $ git branch 139s - * branch1 139s - branch2 139s $ cd .. 139s 139s $ git clone repo.git gitrepo 139s Cloning into 'gitrepo'... 139s + warning: You appear to have cloned an empty repository. 139s done. 139s $ cd gitrepo 139s $ git checkout -q branch1 139s + error: pathspec 'branch1' did not match any file(s) known to git 139s + [1] 139s $ echo g1 >> f1 139s $ git add f1 139s $ fn_git_commit -m "append f1" 139s $ git checkout -q branch2 139s + error: pathspec 'branch2' did not match any file(s) known to git 139s + [1] 139s $ echo g2 >> f2 139s $ git add f2 139s $ fn_git_commit -m "append f2" 139s @@ -83,18 +154,13 @@ 139s $ git add f3 139s $ fn_git_commit -m "append f3" 139s $ git push origin branch1 branch2 branch3 139s - To $TESTTMP/repo.git 139s - bbfe79a..d8aef79 branch1 -> branch1 139s - 288e92b..f8f8de5 branch2 -> branch2 139s - * [new branch] branch3 -> branch3 139s + error: src refspec branch2 does not match any 139s + error: failed to push some refs to '$TESTTMP/repo.git' 139s + [1] 139s make sure the commit doesn't have an HG:rename-source annotation 139s $ git cat-file commit d8aef79 139s - tree b5644d8071b8a5963b8d1fd089fb3fdfb14b1203 139s - parent bbfe79acf62dcd6a97763e2a67424a6de8a96941 139s - author test 1167609612 +0000 139s - committer test 1167609612 +0000 139s - 139s - append f1 139s + fatal: Not a valid object name d8aef79 139s + [128] 139s $ cd .. 139s 139s $ cd hgrepo 139s @@ -102,194 +168,33 @@ 139s default = $TESTTMP/repo.git (with-path !) 139s $ hg pull ../repo.git 139s pulling from ../repo.git 139s - importing 3 git commits 139s - updating bookmark branch1_bookmark 139s - updating bookmark branch2_bookmark 139s - adding bookmark branch3_bookmark 139s - new changesets 8211cade99e4:faf44fc3a4e8 (3 drafts) 139s - (run 'hg heads' to see heads) 139s $ hg log --graph 139s - o changeset: 4:faf44fc3a4e8 139s - | bookmark: branch3_bookmark 139s + @ changeset: 1:600de9b6d498 139s + | branch: branch2 139s | tag: default/branch3 (with-path !) 139s + | bookmark: branch2_bookmark 139s | tag: tip 139s - | user: test 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: append f3 139s - | 139s - o changeset: 3:ae8eb55f7090 139s - | bookmark: branch2_bookmark 139s - | tag: default/branch2 (with-path !) 139s - | parent: 1:600de9b6d498 139s - | user: test 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: append f2 139s - | 139s - | o changeset: 2:8211cade99e4 139s - | | bookmark: branch1_bookmark 139s - | | tag: default/branch1 (with-path !) 139s - | | parent: 0:40a840c1f8ae 139s - | | user: test 139s - | | date: Mon Jan 01 00:00:12 2007 +0000 139s - | | summary: append f1 139s - | | 139s - @ | changeset: 1:600de9b6d498 139s - |/ branch: branch2 139s - | user: test 139s - | date: Mon Jan 01 00:00:11 2007 +0000 139s - | summary: add f2 139s - | 139s - o changeset: 0:40a840c1f8ae 139s - branch: branch1 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add f1 139s - 139s - $ cd .. 139s - 139s -Try cloning a bookmark, and make sure it gets checked out: 139s - 139s - $ rm -r hgrepo 139s - $ hg clone -r branch3 repo.git hgrepo 139s - importing 4 git commits 139s - new changesets 40a840c1f8ae:faf44fc3a4e8 (4 drafts) 139s - updating to bookmark branch3_bookmark 139s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ cd hgrepo 139s - $ hg bookmarks 139s - branch2_bookmark 2:ae8eb55f7090 139s - * branch3_bookmark 3:faf44fc3a4e8 139s - $ hg log --graph 139s - @ changeset: 3:faf44fc3a4e8 139s - | bookmark: branch3_bookmark 139s - | tag: default/branch3 139s - | tag: tip 139s - | user: test 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: append f3 139s - | 139s - o changeset: 2:ae8eb55f7090 139s - | bookmark: branch2_bookmark 139s - | tag: default/branch2 139s - | user: test 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: append f2 139s - | 139s - o changeset: 1:600de9b6d498 139s - | branch: branch2 139s | user: test 139s | date: Mon Jan 01 00:00:11 2007 +0000 139s | summary: add f2 139s | 139s o changeset: 0:40a840c1f8ae 139s + | tag: default/branch2 (with-path !) 139s branch: branch1 139s + bookmark: branch1_bookmark 139s user: test 139s date: Mon Jan 01 00:00:10 2007 +0000 139s summary: add f1 139s 139s - $ cd .. 139s - 139s -Try cloning something that's both a bookmark and a branch, and see the 139s -results. They're a bit suprising as the bookmark does get activated, 139s -but the branch get checked out. Although this does seem a bit odd, so 139s -does the scenario. 139s + | | tag: default/branch1 (with-path !) 139s + $ cd .. 139s + 139s +Try cloning a bookmark, and make sure it gets checked out: 139s 139s $ rm -r hgrepo 139s - $ hg clone -r branch1 repo.git hgrepo 139s - importing 2 git commits 139s - new changesets 40a840c1f8ae:8211cade99e4 (2 drafts) 139s - updating to branch branch1 139s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s + $ hg clone -r branch3 repo.git hgrepo 139s + abort: unknown revision 'branch3' 139s + [10] 139s $ cd hgrepo 139s + $TESTTMP.sh: 102: cd: can't cd to hgrepo 139s $ hg bookmarks 139s - * branch1_bookmark 1:8211cade99e4 139s - $ hg log --graph 139s - o changeset: 1:8211cade99e4 139s - | bookmark: branch1_bookmark 139s - | tag: default/branch1 139s - | tag: tip 139s - | user: test 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: append f1 139s - | 139s - @ changeset: 0:40a840c1f8ae 139s - branch: branch1 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add f1 139s - 139s - 139s - $ cd .. 139s - 139s -Now try pulling a diverged bookmark: 139s - 139s - $ rm -r hgrepo 139s -#if with-path 139s - $ hg clone -U repo.git hgrepo 139s - importing 5 git commits 139s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 139s -#else 139s - $ hg init hgrepo 139s - $ hg -R hgrepo pull repo.git 139s - pulling from repo.git 139s - importing 5 git commits 139s - adding bookmark branch1_bookmark 139s - adding bookmark branch2_bookmark 139s - adding bookmark branch3_bookmark 139s - new changesets 40a840c1f8ae:faf44fc3a4e8 (5 drafts) 139s - (run 'hg heads' to see heads, 'hg merge' to merge) 139s -#endif 139s - $ cd gitrepo 139s - $ git checkout -q branch1 139s - $ fn_git_rebase branch3 139s - $ git push -f 139s - To $TESTTMP/repo.git 139s - + d8aef79...ce1d1c5 branch1 -> branch1 (forced update) 139s - $ cd ../hgrepo 139s - $ hg pull ../repo.git 139s - pulling from ../repo.git 139s - importing 1 git commits 139s - not updating diverged bookmark branch1_bookmark 139s - new changesets 895d0307f8b7 (1 drafts) 139s - (run 'hg update' to get a working copy) 139s - $ hg log --graph 139s - o changeset: 5:895d0307f8b7 139s - | tag: default/branch1 (with-path !) 139s - | tag: tip 139s - | user: test 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: append f1 139s - | 139s - o changeset: 4:faf44fc3a4e8 139s - | bookmark: branch3_bookmark 139s - | tag: default/branch3 (with-path !) 139s - | user: test 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: append f3 139s - | 139s - o changeset: 3:ae8eb55f7090 139s - | bookmark: branch2_bookmark 139s - | tag: default/branch2 (with-path !) 139s - | user: test 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: append f2 139s - | 139s - o changeset: 2:600de9b6d498 139s - | branch: branch2 139s - | parent: 0:40a840c1f8ae 139s - | user: test 139s - | date: Mon Jan 01 00:00:11 2007 +0000 139s - | summary: add f2 139s - | 139s - | o changeset: 1:8211cade99e4 139s - |/ bookmark: branch1_bookmark 139s - | user: test 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: append f1 139s - | 139s - o changeset: 0:40a840c1f8ae 139s - branch: branch1 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add f1 139s - 139s 139s ERROR: test-branch-bookmark-suffix.t#without-path output changed 139s ! 139s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-bundle.t 139s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-bundle.t.err 139s @@ -37,246 +37,102 @@ 139s 139s $ hg clone gitrepo hgrepo 139s importing 3 git commits 139s - new changesets ff7a2f2d8d70:ca33a262eb46 (3 drafts) 139s - updating to bookmark master 139s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 139s + ** which supports versions 6.9 of Mercurial. 139s + ** Please disable "hggit" and try your action again. 139s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 139s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 139s + ** Mercurial Distributed SCM (version 7.0.1) 139s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 139s + Traceback (most recent call last): 139s + File "/usr/bin/hg", line 51, in 139s + dispatch.run() 139s + ~~~~~~~~~~~~^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 139s + status = dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 139s + status = _rundispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 139s + ret = _runcatch(req) or 0 139s + ~~~~~~~~~^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 139s + return _callcatch(ui, _runcatchfunc) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 139s + return scmutil.callcatch(ui, func) 139s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 139s + return func() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 139s + return _dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 139s + return runcommand( 139s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 139s + ) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 139s + ret = _runcommand(ui, options, cmd, d) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 139s + return cmdfunc() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 139s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 139s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 139s + return func(*args, **kwargs) 139s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 139s + r = hg.clone( 139s + ui, 139s + ...<11 lines>... 139s + depth=opts.get('depth') or None, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 139s + srcpeer, destpeer = orig(*args, **opts) 139s + ~~~~^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 139s + exchange.pull( 139s + ~~~~~~~~~~~~~^ 139s + local, 139s + ^^^^^^ 139s + ...<5 lines>... 139s + depth=depth, 139s + ^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 139s + return f(*args, **kwargs) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 139s + pullop.cgresult = repo.githandler.fetch(remote, heads) 139s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 139s + imported = self.import_git_objects( 139s + b'pull', 139s + ...<2 lines>... 139s + heads=heads, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 139s + self.import_git_commit( 139s + ~~~~~~~~~~~~~~~~~~~~~~^ 139s + command, 139s + ^^^^^^^^ 139s + self.git[commit.sha], 139s + ^^^^^^^^^^^^^^^^^^^^^ 139s + commit.phase, 139s + ^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 139s + files, gitlinks, git_renames = self.get_files_changed( 139s + ~~~~~~~~~~~~~~~~~~~~~~^ 139s + commit, detect_renames 139s + ^^^^^^^^^^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 139s + oldfile, oldmode, oldsha = change.old 139s + ^^^^^^^^^^^^^^^^^^^^^^^^ 139s + TypeError: cannot unpack non-iterable NoneType object 139s + [1] 139s $ cd hgrepo 139s + $TESTTMP.sh: 45: cd: can't cd to hgrepo 139s 139s Create a bundle with our metadata, and inspect it: 139s 139s $ hg bundle --all ../bundle-w-git.hg 139s - 3 changesets found 139s - $ hg debugbundle --all ../bundle-w-git.hg | grep hg-git 139s - exp-hg-git-map -- {} (mandatory: False) 139s - exp-hg-git-tags -- {} (mandatory: False) 139s - $ hg debugbundle --all ../bundle-w-git.hg > bundle-w-git.out 139s - 139s -Create a bundle without our metadata, and inspect it: 139s - 139s - $ hg bundle --all ../bundle-wo-git.hg --config experimental.hg-git-bundle=no 139s - 3 changesets found 139s - $ hg debugbundle --all ../bundle-wo-git.hg | grep hg-git 139s - [1] 139s - 139s -Verify that those are different: 139s - 139s - $ hg debugbundle --all ../bundle-wo-git.hg > bundle-wo-git.out 139s - $ cmp -s bundle-w-git.out bundle-wo-git.out 139s - [1] 139s - 139s -Now create a bundle without hg-git enabled at all, which should be 139s -exactly similar to what you get when you disable metadata embedding; 139s -this verifies we don't accidentally pollute bundles. 139s - 139s - $ hg bundle --all --config extensions.hggit=! ../bundle-wo-hggit.hg 139s - 3 changesets found 139s - $ hg debugbundle --all ../bundle-wo-hggit.hg > bundle-wo-hggit.out 139s - $ cmp -s bundle-wo-git.hg bundle-wo-hggit.hg 139s - [2] 139s - $ cmp -s bundle-wo-git.out bundle-wo-hggit.out 139s - $ cd .. 139s - $ rm -r hgrepo 139s - 139s -Does unbundling transfer state? 139s - 139s - $ hg init hgrepo 139s - $ hg -R hgrepo unbundle bundle-w-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 3 changesets with 3 changes to 3 files 139s - new changesets * (glob) 139s - (run 'hg update' to get a working copy) 139s - $ hg -R hgrepo log -T git 139s - 2:ca33a262eb46 | d338971a96e2 | tip | 139s - 1:7fe02317c63d | 9497a4ee62e1 | theothertag | 139s - 0:ff7a2f2d8d70 | 7eeab2ea75ec | thetag | 139s - $ hg -R hgrepo pull gitrepo 139s - pulling from gitrepo 139s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 139s - no changes found 139s - adding bookmark master 139s - $ rm -r hgrepo 139s - 139s -Can we unbundle something without git state? 139s - 139s - $ hg init hgrepo 139s - $ hg -R hgrepo unbundle bundle-wo-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 3 changesets with 3 changes to 3 files 139s - new changesets * (glob) 139s - (run 'hg update' to get a working copy) 139s - $ hg -R hgrepo log -T git 139s - 2:ca33a262eb46 | | tip | 139s - 1:7fe02317c63d | | | 139s - 0:ff7a2f2d8d70 | | | 139s - $ hg -R hgrepo pull gitrepo 139s - pulling from gitrepo 139s - importing 3 git commits 139s - adding bookmark master 139s - (run 'hg update' to get a working copy) 139s - $ rm -r hgrepo 139s - 139s -Regular mercurial shouldn't choke on our bundle 139s - 139s - $ hg init hgrepo 139s - $ cat >> hgrepo/.hg/hgrc < [extensions] 139s - > hggit = ! 139s - > EOF 139s - $ hg -R hgrepo unbundle bundle-wo-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 3 changesets with 3 changes to 3 files 139s - new changesets * (glob) 139s - (run 'hg update' to get a working copy) 139s - $ hg -R hgrepo log -T git 139s - 2:ca33a262eb46 | | tip | 139s - 1:7fe02317c63d | | | 139s - 0:ff7a2f2d8d70 | | | 139s - $ hg -R hgrepo pull gitrepo 139s - pulling from gitrepo 139s - abort: repository gitrepo not found!? (re) 139s - [255] 139s - $ rm -r hgrepo 139s - 139s - 139s -What happens if we unbundle twice? 139s - 139s - $ hg init hgrepo 139s - $ hg -R hgrepo unbundle bundle-w-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 3 changesets with 3 changes to 3 files 139s - new changesets * (glob) 139s - (run 'hg update' to get a working copy) 139s - $ hg -R hgrepo unbundle bundle-w-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 0 changesets with 0 changes to 3 files 139s - (run 'hg update' to get a working copy) 139s - $ hg -R hgrepo log -T git 139s - 2:ca33a262eb46 | d338971a96e2 | tip | 139s - 1:7fe02317c63d | 9497a4ee62e1 | theothertag | 139s - 0:ff7a2f2d8d70 | 7eeab2ea75ec | thetag | 139s - $ hg -R hgrepo pull gitrepo 139s - pulling from gitrepo 139s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 139s - no changes found 139s - adding bookmark master 139s - $ rm -r hgrepo 139s - 139s -Alas, cloning a bundle doesn't work yet: 139s - 139s -(Mercurial is apparently quite dumb here, so we won't try to fix this 139s -for now, but this test mostly exists so that we notice if ever starts 139s -working, or breaks entirely.) 139s - 139s - $ hg clone bundle-w-git.hg hgrepo 139s - requesting all changes 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 3 changesets with 3 changes to 3 files 139s - new changesets * (glob) 139s - updating to branch default 139s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ hg -R hgrepo log -T git 139s - 2:ca33a262eb46 | | tip | 139s - 1:7fe02317c63d | | | 139s - 0:ff7a2f2d8d70 | | | 139s - $ rm -r hgrepo 139s - 139s -Now, lets try to be a bit evil. How does pulling partial state work? 139s - 139s -First, more git happenings: 139s - 139s - $ cd gitrepo 139s - $ git checkout -b otherbranch thetag 139s - Switched to a new branch 'otherbranch' 139s - $ echo 42 > baz 139s - $ git add baz 139s - $ fn_git_commit -m 3 139s - $ cd .. 139s - 139s -Pull, 'em, and create a partial bundle: 139s - 139s - $ hg clone gitrepo hgrepo 139s - importing 4 git commits 139s - new changesets ff7a2f2d8d70:d87bf3ef6a53 (4 drafts) 139s - updating to bookmark otherbranch 139s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ hg -R hgrepo bundle --base 'p1(tip)' -r tip bundle-w-git-2.hg 139s - 1 changesets found 139s - $ rm -r hgrepo 139s - 139s -Now, load only that bundle into a repository without any git state 139s - 139s - $ hg clone -r 1 bundle-w-git.hg hgrepo --config extensions.hggit=! 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 2 changesets with 2 changes to 2 files 139s - new changesets * (glob) 139s - updating to branch default 139s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ cd hgrepo 139s - $ hg unbundle ../bundle-w-git-2.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 1 changesets with 1 changes to 1 files (+1 heads) 139s - new changesets * (glob) 139s - (run 'hg heads' to see heads, 'hg merge' to merge) 139s - $ hg pull ../gitrepo 139s - pulling from ../gitrepo 139s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 139s - importing 3 git commits 139s - adding bookmark master 139s - adding bookmark otherbranch 139s - new changesets ca33a262eb46 (1 drafts) 139s - (run 'hg update' to get a working copy) 139s - $ cd .. 139s - $ rm -r hgrepo 139s - 139s -Now, try pushing with only the metadata: 139s - 139s - $ hg init hgrepo 139s - $ cd hgrepo 139s - $ hg unbundle -u ../bundle-w-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 3 changesets with 3 changes to 3 files 139s - new changesets * (glob) 139s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ echo kaflaflibob > bajizmo 139s - $ fn_hg_commit -A -m 4 139s - $ hg book -r tip master 139s - $ hg push ../gitrepo 139s - pushing to ../gitrepo 139s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 139s - abort: cannot push git commit d338971a96e2 as it is not present locally 139s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 139s - [255] 139s - 139s -Try to repopulate the git state from a bundle 139s - 139s - $ hg debug-remove-hggit-state 139s - clearing out the git cache data 139s - $ hg log -qr 'fromgit()' 139s - $ hg unbundle -u ../bundle-w-git.hg 139s - adding changesets 139s - adding manifests 139s - adding file changes 139s - added 0 changesets with 0 changes to 3 files 139s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ hg log -qr 'fromgit()' 139s - 0:ff7a2f2d8d70 139s - 1:7fe02317c63d 139s - 2:ca33a262eb46 139s 139s ERROR: test-bundle.t output changed 139s ! 139s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-file-removal.t 139s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-file-removal.t.err 139s @@ -99,191 +99,99 @@ 139s 139s $ hg clone gitrepo hgrepo 139s importing 9 git commits 139s - new changesets ff7a2f2d8d70:0995b8a0a943 (9 drafts) 139s - updating to bookmark master 139s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 139s + ** which supports versions 6.9 of Mercurial. 139s + ** Please disable "hggit" and try your action again. 139s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 139s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 139s + ** Mercurial Distributed SCM (version 7.0.1) 139s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 139s + Traceback (most recent call last): 139s + File "/usr/bin/hg", line 51, in 139s + dispatch.run() 139s + ~~~~~~~~~~~~^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 139s + status = dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 139s + status = _rundispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 139s + ret = _runcatch(req) or 0 139s + ~~~~~~~~~^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 139s + return _callcatch(ui, _runcatchfunc) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 139s + return scmutil.callcatch(ui, func) 139s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 139s + return func() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 139s + return _dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 139s + return runcommand( 139s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 139s + ) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 139s + ret = _runcommand(ui, options, cmd, d) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 139s + return cmdfunc() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 139s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 139s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 139s + return func(*args, **kwargs) 139s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 139s + r = hg.clone( 139s + ui, 139s + ...<11 lines>... 139s + depth=opts.get('depth') or None, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 139s + srcpeer, destpeer = orig(*args, **opts) 139s + ~~~~^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 139s + exchange.pull( 139s + ~~~~~~~~~~~~~^ 139s + local, 139s + ^^^^^^ 139s + ...<5 lines>... 139s + depth=depth, 139s + ^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 139s + return f(*args, **kwargs) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 139s + pullop.cgresult = repo.githandler.fetch(remote, heads) 139s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 139s + imported = self.import_git_objects( 139s + b'pull', 139s + ...<2 lines>... 139s + heads=heads, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 139s + self.import_git_commit( 139s + ~~~~~~~~~~~~~~~~~~~~~~^ 139s + command, 139s + ^^^^^^^^ 139s + self.git[commit.sha], 139s + ^^^^^^^^^^^^^^^^^^^^^ 139s + commit.phase, 139s + ^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 139s + files, gitlinks, git_renames = self.get_files_changed( 139s + ~~~~~~~~~~~~~~~~~~~~~~^ 139s + commit, detect_renames 139s + ^^^^^^^^^^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 139s + oldfile, oldmode, oldsha = change.old 139s + ^^^^^^^^^^^^^^^^^^^^^^^^ 139s + TypeError: cannot unpack non-iterable NoneType object 139s + [1] 139s $ cd hgrepo 139s + $TESTTMP.sh: 72: cd: can't cd to hgrepo 139s $ hg log --graph 139s - @ changeset: 8:0995b8a0a943 139s - | bookmark: master 139s - | tag: default/master 139s - | tag: tip 139s - | user: test 139s - | date: Mon Jan 01 00:00:18 2007 +0000 139s - | summary: remove betalink 139s - | 139s - o changeset: 7:a316d3a96c89 139s - | user: test 139s - | date: Mon Jan 01 00:00:17 2007 +0000 139s - | summary: replace file with symlink 139s - | 139s - o changeset: 6:1804acb71f3e 139s - | user: test 139s - | date: Mon Jan 01 00:00:16 2007 +0000 139s - | summary: replace symlink with file 139s - | 139s - o changeset: 5:e19c85becc87 139s - | user: test 139s - | date: Mon Jan 01 00:00:15 2007 +0000 139s - | summary: add symlink to beta 139s - | 139s - o changeset: 4:0d3086c3f8c3 139s - | user: test 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: remove foo/bar 139s - | 139s - o changeset: 3:b2406125ef5c 139s - | user: test 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: remove alpha 139s - | 139s - o changeset: 2:8b3b2f4b4158 139s - | user: test 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: add foo 139s - | 139s - o changeset: 1:7fe02317c63d 139s - | user: test 139s - | date: Mon Jan 01 00:00:11 2007 +0000 139s - | summary: add beta 139s - | 139s - o changeset: 0:ff7a2f2d8d70 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add alpha 139s - 139s - 139s -make sure alpha is not in this manifest 139s - $ hg manifest -r 3 139s - beta 139s - foo/bar 139s - 139s -make sure that only beta is in the manifest 139s - $ hg manifest 139s - beta 139s - 139s - $ hg debug-remove-hggit-state 139s - clearing out the git cache data 139s - $ ls .hg | grep git 139s - [1] 139s - $ hg push ../repo.git 139s - pushing to ../repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 9 commits with 8 trees and 5 blobs 139s - adding reference refs/heads/master 139s - 139s - $ cd .. 139s - $ git --git-dir=repo.git log --pretty=medium 139s - commit 5ee11eeae239d6a99df5a99901ec00ffafbcc46b 139s - Author: test 139s - Date: Mon Jan 1 00:00:18 2007 +0000 139s - 139s - remove betalink 139s - 139s - commit 2c7b324faeccb1acf89c35b7ad38e7956f5705fa 139s - Author: test 139s - Date: Mon Jan 1 00:00:17 2007 +0000 139s - 139s - replace file with symlink 139s - 139s - commit ff0478d2ecc2571d01eb6d406ac29e4e63e5d3d5 139s - Author: test 139s - Date: Mon Jan 1 00:00:16 2007 +0000 139s - 139s - replace symlink with file 139s - 139s - commit 5492e6e410e42df527956be945286cd1ae45acb8 139s - Author: test 139s - Date: Mon Jan 1 00:00:15 2007 +0000 139s - 139s - add symlink to beta 139s - 139s - commit b991de8952c482a7cd51162674ffff8474862218 139s - Author: test 139s - Date: Mon Jan 1 00:00:14 2007 +0000 139s - 139s - remove foo/bar 139s - 139s - commit b0edaf0adac19392cf2867498b983bc5192b41dd 139s - Author: test 139s - Date: Mon Jan 1 00:00:13 2007 +0000 139s - 139s - remove alpha 139s - 139s - commit f2d0d5bfa905e12dee728b509b96cf265bb6ee43 139s - Author: test 139s - Date: Mon Jan 1 00:00:12 2007 +0000 139s - 139s - add foo 139s - 139s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 139s - Author: test 139s - Date: Mon Jan 1 00:00:11 2007 +0000 139s - 139s - add beta 139s - 139s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 139s - Author: test 139s - Date: Mon Jan 1 00:00:10 2007 +0000 139s - 139s - add alpha 139s - 139s -test with rename detection enabled 139s - $ hg --config git.similarity=100 clone gitrepo hgreporenames 139s - importing 9 git commits 139s - new changesets ff7a2f2d8d70:0995b8a0a943 (9 drafts) 139s - updating to bookmark master 139s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - 139s - $ cd hgreporenames 139s - $ hg log --graph 139s - @ changeset: 8:0995b8a0a943 139s - | bookmark: master 139s - | tag: default/master 139s - | tag: tip 139s - | user: test 139s - | date: Mon Jan 01 00:00:18 2007 +0000 139s - | summary: remove betalink 139s - | 139s - o changeset: 7:a316d3a96c89 139s - | user: test 139s - | date: Mon Jan 01 00:00:17 2007 +0000 139s - | summary: replace file with symlink 139s - | 139s - o changeset: 6:1804acb71f3e 139s - | user: test 139s - | date: Mon Jan 01 00:00:16 2007 +0000 139s - | summary: replace symlink with file 139s - | 139s - o changeset: 5:e19c85becc87 139s - | user: test 139s - | date: Mon Jan 01 00:00:15 2007 +0000 139s - | summary: add symlink to beta 139s - | 139s - o changeset: 4:0d3086c3f8c3 139s - | user: test 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: remove foo/bar 139s - | 139s - o changeset: 3:b2406125ef5c 139s - | user: test 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: remove alpha 139s - | 139s - o changeset: 2:8b3b2f4b4158 139s - | user: test 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: add foo 139s - | 139s - o changeset: 1:7fe02317c63d 139s - | user: test 139s - | date: Mon Jan 01 00:00:11 2007 +0000 139s - | summary: add beta 139s - | 139s - o changeset: 0:ff7a2f2d8d70 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add alpha 139s - 139s 139s ERROR: test-file-removal.t output changed 139s ! 139s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-author.t 139s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-author.t.err 139s @@ -17,255 +17,100 @@ 139s $ cd .. 139s $ hg clone repo.git hgrepo 139s importing 1 git commits 139s - new changesets ff7a2f2d8d70 (1 drafts) 139s - updating to bookmark master 139s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 139s + ** which supports versions 6.9 of Mercurial. 139s + ** Please disable "hggit" and try your action again. 139s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 139s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 139s + ** Mercurial Distributed SCM (version 7.0.1) 139s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 139s + Traceback (most recent call last): 139s + File "/usr/bin/hg", line 51, in 139s + dispatch.run() 139s + ~~~~~~~~~~~~^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 139s + status = dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 139s + status = _rundispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 139s + ret = _runcatch(req) or 0 139s + ~~~~~~~~~^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 139s + return _callcatch(ui, _runcatchfunc) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 139s + return scmutil.callcatch(ui, func) 139s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 139s + return func() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 139s + return _dispatch(req) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 139s + return runcommand( 139s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 139s + ) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 139s + ret = _runcommand(ui, options, cmd, d) 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 139s + return cmdfunc() 139s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 139s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 139s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 139s + return func(*args, **kwargs) 139s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 139s + r = hg.clone( 139s + ui, 139s + ...<11 lines>... 139s + depth=opts.get('depth') or None, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 139s + srcpeer, destpeer = orig(*args, **opts) 139s + ~~~~^^^^^^^^^^^^^^^ 139s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 139s + exchange.pull( 139s + ~~~~~~~~~~~~~^ 139s + local, 139s + ^^^^^^ 139s + ...<5 lines>... 139s + depth=depth, 139s + ^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 139s + return f(*args, **kwargs) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 139s + pullop.cgresult = repo.githandler.fetch(remote, heads) 139s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 139s + imported = self.import_git_objects( 139s + b'pull', 139s + ...<2 lines>... 139s + heads=heads, 139s + ) 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 139s + self.import_git_commit( 139s + ~~~~~~~~~~~~~~~~~~~~~~^ 139s + command, 139s + ^^^^^^^^ 139s + self.git[commit.sha], 139s + ^^^^^^^^^^^^^^^^^^^^^ 139s + commit.phase, 139s + ^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 139s + files, gitlinks, git_renames = self.get_files_changed( 139s + ~~~~~~~~~~~~~~~~~~~~~~^ 139s + commit, detect_renames 139s + ^^^^^^^^^^^^^^^^^^^^^^ 139s + ) 139s + ^ 139s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 139s + oldfile, oldmode, oldsha = change.old 139s + ^^^^^^^^^^^^^^^^^^^^^^^^ 139s + TypeError: cannot unpack non-iterable NoneType object 139s + [1] 139s 139s $ cd hgrepo 139s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 139s $ hg book master 139s - $ echo beta > beta 139s - $ hg add beta 139s - $ fn_hg_commit -u "test" -m 'add beta' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ echo gamma >> beta 139s - $ fn_hg_commit -u "test (comment)" -m 'modify beta' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ echo gamma > gamma 139s - $ hg add gamma 139s - $ fn_hg_commit -u "" -m 'add gamma' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ echo delta > delta 139s - $ hg add delta 139s - $ fn_hg_commit -u "name" -m 'add delta' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ echo epsilon > epsilon 139s - $ hg add epsilon 139s - $ fn_hg_commit -u "name zeta 139s - $ hg add zeta 139s - $ fn_hg_commit -u " test " -m 'add zeta' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ echo eta > eta 139s - $ hg add eta 139s - $ fn_hg_commit -u "test < test@example.com >" -m 'add eta' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ echo theta > theta 139s - $ hg add theta 139s - $ fn_hg_commit -u "test >test@example.com>" -m 'add theta' 139s - $ hg push 139s - pushing to $TESTTMP/repo.git 139s - searching for changes 139s - adding objects 139s - remote: found 0 deltas to reuse 139s - added 1 commits with 1 trees and 1 blobs 139s - updating reference refs/heads/master 139s - 139s - $ hg log --graph 139s - @ changeset: 8:c5d1976ab12c 139s - | bookmark: master 139s - | tag: default/master 139s - | tag: tip 139s - | user: test >test@example.com> 139s - | date: Mon Jan 01 00:00:18 2007 +0000 139s - | summary: add theta 139s - | 139s - o changeset: 7:0e2fb4d21667 139s - | user: test < test@example.com > 139s - | date: Mon Jan 01 00:00:17 2007 +0000 139s - | summary: add eta 139s - | 139s - o changeset: 6:faa3aae96199 139s - | user: test 139s - | date: Mon Jan 01 00:00:16 2007 +0000 139s - | summary: add zeta 139s - | 139s - o changeset: 5:2cf6ad5a1afc 139s - | user: name 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: add delta 139s - | 139s - o changeset: 3:6b854d65d0d6 139s - | user: 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: add gamma 139s - | 139s - o changeset: 2:46303c652e79 139s - | user: test (comment) 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: modify beta 139s - | 139s - o changeset: 1:47580592d3d6 139s - | user: test 139s - | date: Mon Jan 01 00:00:11 2007 +0000 139s - | summary: add beta 139s - | 139s - o changeset: 0:ff7a2f2d8d70 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add alpha 139s - 139s - 139s - $ cd .. 139s - $ hg clone repo.git hgrepo2 139s - importing 9 git commits 139s - new changesets ff7a2f2d8d70:1fbf3aa91221 (9 drafts) 139s - updating to bookmark master 139s - 8 files updated, 0 files merged, 0 files removed, 0 files unresolved 139s - $ hg -R hgrepo2 log --graph 139s - @ changeset: 8:1fbf3aa91221 139s - | bookmark: master 139s - | tag: default/master 139s - | tag: tip 139s - | user: test ?test@example.com 139s - | date: Mon Jan 01 00:00:18 2007 +0000 139s - | summary: add theta 139s - | 139s - o changeset: 7:20310508f06d 139s - | user: test 139s - | date: Mon Jan 01 00:00:17 2007 +0000 139s - | summary: add eta 139s - | 139s - o changeset: 6:e3d81af8a8c1 139s - | user: test 139s - | date: Mon Jan 01 00:00:16 2007 +0000 139s - | summary: add zeta 139s - | 139s - o changeset: 5:78f609fd208f 139s - | user: name 139s - | date: Mon Jan 01 00:00:15 2007 +0000 139s - | summary: add epsilon 139s - | 139s - o changeset: 4:42fa61d57718 139s - | user: name 139s - | date: Mon Jan 01 00:00:14 2007 +0000 139s - | summary: add delta 139s - | 139s - o changeset: 3:6b854d65d0d6 139s - | user: 139s - | date: Mon Jan 01 00:00:13 2007 +0000 139s - | summary: add gamma 139s - | 139s - o changeset: 2:46303c652e79 139s - | user: test (comment) 139s - | date: Mon Jan 01 00:00:12 2007 +0000 139s - | summary: modify beta 139s - | 139s - o changeset: 1:47580592d3d6 139s - | user: test 139s - | date: Mon Jan 01 00:00:11 2007 +0000 139s - | summary: add beta 139s - | 139s - o changeset: 0:ff7a2f2d8d70 139s - user: test 139s - date: Mon Jan 01 00:00:10 2007 +0000 139s - summary: add alpha 139s - 139s - $ git --git-dir=repo.git log --pretty=medium master 139s - commit 2fe60ba69727981e6ede78be70354c3a9e30e21d 139s - Author: test ?test@example.com 139s - Date: Mon Jan 1 00:00:18 2007 +0000 139s - 139s - add theta 139s - 139s - commit 9f2f7cafdbf2e467928db98de8275141001d3081 139s - Author: test 139s - Date: Mon Jan 1 00:00:17 2007 +0000 139s - 139s - add eta 139s - 139s - commit 172a6f8d8064d73dff7013e395a9fe3cfc3ff807 139s - Author: test 139s - Date: Mon Jan 1 00:00:16 2007 +0000 139s - 139s - add zeta 139s - 139s - commit 71badb8e343a7da391a9b5d98909fbd2ca7d78f2 139s - Author: name 139s - Date: Mon Jan 1 00:00:15 2007 +0000 139s - 139s - add epsilon 139s - 139s - commit 9a9ae7b7f310d4a1a3e732a747ca26f06934f8d8 139s - Author: name 139s - Date: Mon Jan 1 00:00:14 2007 +0000 139s - 139s - add delta 139s - 139s - commit e4149a32e81e380193f59aa8773349201b8ed7f7 139s - Author: 139s - Date: Mon Jan 1 00:00:13 2007 +0000 139s - 139s - add gamma 140s - 140s - commit fae95aef5889a80103c2fbd5d14ff6eb8c9daf93 140s - Author: test ext:(%20%28comment%29) 140s - Date: Mon Jan 1 00:00:12 2007 +0000 140s - 140s - modify beta 140s - 140s - commit 0f378ab6c2c6b5514bd873d3faf8ac4b8095b001 140s - Author: test 140s - Date: Mon Jan 1 00:00:11 2007 +0000 140s - 140s - add beta 140s - 140s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 140s - Author: test 140s - Date: Mon Jan 1 00:00:10 2007 +0000 140s - 140s - add alpha 140s 140s ERROR: test-hg-author.t output changed 140s ! 140s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos.t 140s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos.t.err 140s @@ -35,164 +35,98 @@ 140s Ensure gitlinks are transformed to .hgsubstate on hg pull from git 140s $ hg clone -u tip repo.git hgrepo 2>&1 | grep -E -v '^(Cloning into|done)' 140s importing 3 git commits 140s - new changesets e532b2bfda10:3c4fd561cbeb (3 drafts) 140s - updating to branch default 140s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 140s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 140s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 140s + return f(*args, **kwargs) 140s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 140s + pullop.cgresult = repo.githandler.fetch(remote, heads) 140s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 140s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ cd hgrepo 140s + $TESTTMP.sh: 42: cd: can't cd to hgrepo 140s $ hg bookmarks -f -r default master 140s -1. Ensure gitlinks are transformed to .hgsubstate on hg <- git pull 140s -.hgsub shall list two [git] subrepos 140s - $ cat .hgsub 140s - subrepo1 = [git]../gitsubrepo 140s - xyz/subrepo2 = [git]../gitsubrepo 140s -.hgsubstate shall list two idenitcal revisions 140s - $ cat .hgsubstate 140s - 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 140s - 56f0304c5250308f14cfbafdc27bd12d40154d17 xyz/subrepo2 140s -hg status shall NOT report .hgsub and .hgsubstate as untracked - either ignored or unmodified 140s - $ hg status --unknown .hgsub .hgsubstate 140s - $ hg status --modified .hgsub .hgsubstate 140s - $ cd .. 140s - 140s -2. Check gitmodules are preserved during hg -> git push 140s - $ cd gitsubrepo 140s - $ echo gamma > gamma 140s - $ git add gamma 140s - $ fn_git_commit -m 'add gamma' 140s - $ cd .. 140s - $ cd hgrepo 140s - $ cd xyz/subrepo2 140s - $ git pull --ff-only | sed 's/files/file/;s/insertions/insertion/;s/, 0 deletions.*//' | sed 's/| */| /' 140s - From $TESTTMP/gitsubrepo 140s - 56f0304..aabf7cd master -> origin/master 140s - Updating 56f0304..aabf7cd 140s - Fast-forward 140s - gamma | 1 + 140s - 1 file changed, 1 insertion(+) 140s - create mode 100644 gamma 140s - $ cd ../.. 140s - $ echo xxx >> alpha 140s - $ fn_hg_commit -m 'Update subrepo2 from hg' | grep -v "committing subrepository" || true 140s - $ hg push 140s - pushing to $TESTTMP/repo.git 140s - searching for changes 140s - adding objects 140s - remote: found 0 deltas to reuse 140s - added 1 commits with 2 trees and 1 blobs 140s - updating reference refs/heads/master 140s - $ cd .. 140s - $ cd gitrepo 140s - $ git pull --ff-only 140s - From $TESTTMP/repo 140s - 89c22d7..275b0a5 master -> origin/master 140s - Fetching submodule xyz/subrepo2 140s - From $TESTTMP/gitsubrepo 140s - 56f0304..aabf7cd master -> origin/master 140s - Updating 89c22d7..275b0a5 140s - Fast-forward 140s - alpha | 1 + 140s - xyz/subrepo2 | 2 +- 140s - 2 files changed, 2 insertions(+), 1 deletion(-) 140s -there shall be two gitlink entries, with values matching that in .hgsubstate 140s - $ git ls-tree -r HEAD^{tree} | grep 'commit' 140s - 160000 commit 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 140s - 160000 commit aabf7cd015089aff0b84596e69aa37b24a3d090a xyz/subrepo2 140s -bring working copy to HEAD state (it's not bare repo) 140s - $ git reset --hard 140s - HEAD is now at 275b0a5 Update subrepo2 from hg 140s - $ cd .. 140s - 140s -3. Check .hgsub and .hgsubstate from git repository are merged, not overwritten 140s - $ hg init hgsub 140s - $ cd hgsub 140s - $ echo delta > delta 140s - $ hg add delta 140s - $ fn_hg_commit -m "add delta" 140s - $ hg tip --template '{node} hgsub\n' > ../gitrepo/.hgsubstate 140s - $ cat > ../gitrepo/.hgsub < hgsub = ../hgsub 140s - > EOF 140s - $ cd ../gitrepo 140s - $ git add .hgsubstate .hgsub 140s - $ fn_git_commit -m "Test3. Prepare .hgsub and .hgsubstate sources" 140s - $ git push 140s - To $TESTTMP/repo.git 140s - 275b0a5..e31d576 master -> master 140s - 140s - $ cd ../hgrepo 140s - $ hg pull 140s - pulling from $TESTTMP/repo.git 140s - importing 1 git commits 140s - updating bookmark master 140s - new changesets [0-9a-f]{12,12} \(1 drafts\) (re) 140s - (run 'hg update' to get a working copy) 140s - $ hg checkout -C 140s - updating to active bookmark master 140s - cloning subrepo hgsub from $TESTTMP/hgsub 140s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 140s - $ cd .. 140s -pull shall bring .hgsub entry which was added to the git repo 140s - $ cat hgrepo/.hgsub 140s - hgsub = ../hgsub 140s - subrepo1 = [git]../gitsubrepo 140s - xyz/subrepo2 = [git]../gitsubrepo 140s -.hgsubstate shall list revision of the subrepo added through git repo 140s - $ cat hgrepo/.hgsubstate 140s - 481ec30d580f333ae3a77f94c973ce37b69d5bda hgsub 140s - 56f0304c5250308f14cfbafdc27bd12d40154d17 subrepo1 140s - aabf7cd015089aff0b84596e69aa37b24a3d090a xyz/subrepo2 140s - 140s -4. Try changing the subrepos from the Mercurial side 140s - 140s - $ cd hgrepo 140s - $ cat >> .hgsub < subrepo2 = [git]../gitsubrepo 140s - > EOF 140s - $ git clone ../gitsubrepo subrepo2 140s - Cloning into 'subrepo2'... 140s - done. 140s - $ fn_hg_commit -m 'some stuff' 140s - $ hg push 140s - pushing to $TESTTMP/repo.git 140s - no changes made to subrepo hgsub since last push to $TESTTMP/hgsub 140s - searching for changes 140s - adding objects 140s - remote: found 0 deltas to reuse 140s - added 1 commits with 1 trees and 1 blobs 140s - updating reference refs/heads/master 140s - $ cd .. 140s - 140s -5. But we actually do something quite weird in this case: If a 140s -.gitmodules file exists in the repository, it always wins! In this 140s -case, we break the bidirectional convention, and modify the repository 140s -data. That's odd, so show it: 140s - 140s - $ hg id hgrepo 140s - 42c46c7eef3a default/master/tip master 140s - $ hg clone -U repo.git hgrepo2 140s - importing 6 git commits 140s - new changesets e532b2bfda10:42c46c7eef3a (6 drafts) 140s - $ hg -R hgrepo2 up :master 140s - Cloning into '$TESTTMP/hgrepo2/subrepo1'... 140s - done. 140s - cloning subrepo hgsub from $TESTTMP/hgsub 140s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 140s - checking out detached HEAD in subrepository "subrepo1" 140s - check out a git branch if you intend to make changes 140s - Cloning into '$TESTTMP/hgrepo2/subrepo2'... 140s - done. 140s - Cloning into '$TESTTMP/hgrepo2/xyz/subrepo2'... 140s - done. 140s - cloning subrepo subrepo2 from $TESTTMP/gitsubrepo 140s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 140s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 140s - 140s -We retained bidirectionality! 140s - 140s - $ git diff --stat hgrepo/.hgsub hgrepo2/.hgsub 140s - $ hg id hgrepo 140s - 42c46c7eef3a default/master/tip master 140s - $ hg id hgrepo2 140s - 42c46c7eef3a default/master/tip master 140s 140s ERROR: test-subrepos.t output changed 141s ! 141s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-extra.t 141s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-extra.t.err 141s @@ -13,189 +13,99 @@ 141s $ cd .. 141s $ hg clone gitrepo hgrepo 141s importing 1 git commits 141s - new changesets aa9eb6424386 (1 drafts) 141s - updating to bookmark not-master 141s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 141s + return f(*args, **kwargs) 141s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 141s + pullop.cgresult = repo.githandler.fetch(remote, heads) 141s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 141s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ cd hgrepo 141s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 141s $ hg mv a b 141s - $ fn_hg_commit -mb 141s - $ hg up 0 141s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 141s - (leaving bookmark not-master) 141s - $ touch c 141s - $ hg add c 141s - $ fn_hg_commit -mc 141s - 141s -Rebase will add a rebase_source 141s - 141s - $ hg --config extensions.rebase= rebase -s 1 -d 2 141s - rebasing 1:4c7da7adf18b * (glob) 141s - saved backup bundle to $TESTTMP/*.hg (glob) 141s - $ hg up 2 141s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 141s - 141s -Add a commit with multiple extra fields 141s - $ hg bookmark b1 141s - $ touch d 141s - $ hg add d 141s - $ fn_hg_commitextra --field zzzzzzz=datazzz --field aaaaaaa=dataaaa 141s - $ hg log --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 141s - @ 3 f01651cfcc9337fbd9700d5018ca637a2911ed28 141s - | aaaaaaa=dataaaa branch=default zzzzzzz=datazzz 141s - | 141s - o 2 03f4cf3c429050e2204fb2bda3a0f93329bdf4fd b 141s - | branch=default rebase_source=4c7da7adf18b785726a7421ef0d585bb5762990d 141s - | 141s - o 1 a735dc0cd7cc0ccdbc16cfa4326b19c707c360f4 c 141s - | branch=default 141s - | 141s - o 0 aa9eb6424386df2b0638fe6f480c3767fdd0e6fd a 141s - branch=default hg-git-rename-source=git 141s - 141s - 141s - $ hg push -r b1 141s - pushing to $TESTTMP/gitrepo 141s - searching for changes 141s - adding objects 141s - remote: found 0 deltas to reuse 141s - added 3 commits with 3 trees and 0 blobs 141s - adding reference refs/heads/b1 141s - 141s - $ hg bookmark b2 141s - $ hg mv c c2 141s - $ hg mv d d2 141s - $ fn_hg_commitextra --field yyyyyyy=datayyy --field bbbbbbb=databbb 141s - 141s -Test some nutty filenames 141s - $ hg book b3 141s -#if windows 141s - $ hg mv c2 'c2 => c3' 141s - abort: filename contains '>', which is reserved on Windows: "c2 => c3" 141s - [255] 141s - $ hg mv c2 c3 141s - $ fn_hg_commit -m 'dummy commit' 141s - $ hg mv c3 c4 141s - $ fn_hg_commit -m 'dummy commit' 141s -#else 141s - $ hg mv c2 'c2 => c3' 141s - warning: filename contains '>', which is reserved on Windows: 'c2 => c3' 141s - $ fn_hg_commit -m 'test filename with arrow' 141s - $ hg mv 'c2 => c3' 'c3 => c4' 141s - warning: filename contains '>', which is reserved on Windows: 'c3 => c4' 141s - $ fn_hg_commit -m 'test filename with arrow 2' 141s - $ hg log --graph --template "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" -l 3 --config "experimental.graphstyle.missing=|" 141s - @ 6 bca4ba69a6844c133b069e227dfa043d41e3c197 test filename with arrow 2 141s - | branch=default 141s - | 141s - o 5 864caad1f3493032f8d06f44a89dc9f1c039b09f test filename with arrow 141s - | branch=default 141s - | 141s - o 4 58f855ae26f4930ce857e648d3dd949901cce817 141s - | bbbbbbb=databbb branch=default yyyyyyy=datayyy 141s - | 141s -#endif 141s - $ hg push -r b2 -r b3 141s - pushing to $TESTTMP/gitrepo 141s - searching for changes 141s - adding objects 141s - remote: found 0 deltas to reuse 141s - added 3 commits with 3 trees and 0 blobs 141s - adding reference refs/heads/b2 141s - adding reference refs/heads/b3 141s - 141s - $ cd ../gitrepo 141s - $ git cat-file commit b1 141s - tree 1b773a2eb70f29397356f8069c285394835ff85a 141s - parent 54776dace5849bdf273fb26737a48ef64804909d 141s - author test 1167609613 +0000 141s - committer test 1167609613 +0000 141s - HG:extra aaaaaaa:dataaaa 141s - HG:extra zzzzzzz:datazzz 141s - 141s - 141s - 141s - $ git cat-file commit b2 141s - tree 34ad62c6d6ad9464bfe62db5b3d2fa16aaa9fa9e 141s - parent 15beadd92324c9b88060a4ec4ffb350f988d7075 141s - author test 1167609614 +0000 141s - committer test 1167609614 +0000 141s - HG:rename c:c2 141s - HG:rename d:d2 141s - HG:extra bbbbbbb:databbb 141s - HG:extra yyyyyyy:datayyy 141s - 141s - 141s - 141s -#if no-windows 141s - $ git cat-file commit b3 141s - tree e63df52695f9b06e54b37e7ef60d0c43994de620 141s - parent 5cafe2555a0666fcf661a3943277a9812a694a98 141s - author test 1167609616 +0000 141s - committer test 1167609616 +0000 141s - HG:rename c2%20%3D%3E%20c3:c3%20%3D%3E%20c4 141s - 141s - test filename with arrow 2 141s -#endif 141s - $ cd ../gitrepo 141s - $ git checkout b1 141s - Switched to branch 'b1' 141s - $ commit_sha=$(git rev-parse HEAD) 141s - $ tree_sha=$(git rev-parse HEAD^{tree}) 141s - 141s -There's no way to create a Git repo with extra metadata via the CLI. Dulwich 141s -lets you do that, though. 141s - 141s - >>> from dulwich.objects import Commit 141s - >>> from dulwich.porcelain import open_repo 141s - >>> repo = open_repo('.') 141s - >>> c = Commit() 141s - >>> c.author = b'test ' 141s - >>> c.author_time = 0 141s - >>> c.author_timezone = 0 141s - >>> c.committer = c.author 141s - >>> c.commit_time = 0 141s - >>> c.commit_timezone = 0 141s - >>> c.parents = [b'$commit_sha'] 141s - >>> c.tree = b'$tree_sha' 141s - >>> c.message = b'extra commit\n' 141s - >>> c.extra.extend([(b'zzz:zzz', b'data:zzz'), (b'aaa:aaa', b'data:aaa'), 141s - ... (b'HG:extra', b'hgaaa:dataaaa'), 141s - ... (b'HG:extra', b'hgzzz:datazzz')]) 141s - >>> repo.object_store.add_object(c) 141s - >>> repo.refs.set_if_equals(b'refs/heads/master', None, c.id) 141s - True 141s - 141s - $ git cat-file commit master 141s - tree 1b773a2eb70f29397356f8069c285394835ff85a 141s - parent 15beadd92324c9b88060a4ec4ffb350f988d7075 141s - author test 0 +0000 141s - committer test 0 +0000 141s - zzz:zzz data:zzz 141s - aaa:aaa data:aaa 141s - HG:extra hgaaa:dataaaa 141s - HG:extra hgzzz:datazzz 141s - 141s - extra commit 141s - 141s - $ cd .. 141s - $ hg clone -qU gitrepo hgrepo2 141s - $ cd hgrepo2 141s - $ hg log -G -r :5 -T "{rev} {node} {desc|firstline}\n{join(extras, ' ')}\n\n" 141s - o 5 58f855ae26f4930ce857e648d3dd949901cce817 141s - | bbbbbbb=databbb branch=default yyyyyyy=datayyy 141s - | 141s - | o 4 90acc8c23fcfaeb0930c03c849923a696fd9013c extra commit 141s - |/ GIT0-zzz%3Azzz=data%3Azzz GIT1-aaa%3Aaaa=data%3Aaaa branch=default hgaaa=dataaaa hgzzz=datazzz 141s - | 141s - o 3 f01651cfcc9337fbd9700d5018ca637a2911ed28 141s - | aaaaaaa=dataaaa branch=default zzzzzzz=datazzz 141s - | 141s - o 2 03f4cf3c429050e2204fb2bda3a0f93329bdf4fd b 141s - | branch=default rebase_source=4c7da7adf18b785726a7421ef0d585bb5762990d 141s - | 141s - o 1 a735dc0cd7cc0ccdbc16cfa4326b19c707c360f4 c 141s - | branch=default 141s - | 141s - o 0 aa9eb6424386df2b0638fe6f480c3767fdd0e6fd a 141s - branch=default hg-git-rename-source=git 141s - 141s 141s ERROR: test-extra.t output changed 144s ! 144s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-bookmark-workflow.t 144s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-bookmark-workflow.t.err 144s @@ -77,149 +77,99 @@ 144s 0 3442585be8a6 "add alpha" bookmarks: [] 144s $ cd .. 144s $ hg clone -q gitremoterepo hggitlocalrepo --config hggit.usephases=True 144s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 144s + ** which supports versions 6.9 of Mercurial. 144s + ** Please disable "hggit" and try your action again. 144s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 144s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 144s + ** Mercurial Distributed SCM (version 7.0.1) 144s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 144s + Traceback (most recent call last): 144s + File "/usr/bin/hg", line 51, in 144s + dispatch.run() 144s + ~~~~~~~~~~~~^^ 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 144s + status = dispatch(req) 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 144s + status = _rundispatch(req) 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 144s + ret = _runcatch(req) or 0 144s + ~~~~~~~~~^^^^^ 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 144s + return _callcatch(ui, _runcatchfunc) 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 144s + return scmutil.callcatch(ui, func) 144s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 144s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 144s + return func() 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 144s + return _dispatch(req) 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 144s + return runcommand( 144s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 144s + ) 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 144s + ret = _runcommand(ui, options, cmd, d) 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 144s + return cmdfunc() 144s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 144s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 144s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 144s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 144s + return func(*args, **kwargs) 144s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 144s + r = hg.clone( 144s + ui, 144s + ...<11 lines>... 144s + depth=opts.get('depth') or None, 144s + ) 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 144s + srcpeer, destpeer = orig(*args, **opts) 144s + ~~~~^^^^^^^^^^^^^^^ 144s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 144s + exchange.pull( 144s + ~~~~~~~~~~~~~^ 144s + local, 144s + ^^^^^^ 144s + ...<5 lines>... 144s + depth=depth, 144s + ^^^^^^^^^^^^ 144s + ) 144s + ^ 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 144s + return f(*args, **kwargs) 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 144s + pullop.cgresult = repo.githandler.fetch(remote, heads) 144s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 144s + imported = self.import_git_objects( 144s + b'pull', 144s + ...<2 lines>... 144s + heads=heads, 144s + ) 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 144s + self.import_git_commit( 144s + ~~~~~~~~~~~~~~~~~~~~~~^ 144s + command, 144s + ^^^^^^^^ 144s + self.git[commit.sha], 144s + ^^^^^^^^^^^^^^^^^^^^^ 144s + commit.phase, 144s + ^^^^^^^^^^^^^ 144s + ) 144s + ^ 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 144s + files, gitlinks, git_renames = self.get_files_changed( 144s + ~~~~~~~~~~~~~~~~~~~~~~^ 144s + commit, detect_renames 144s + ^^^^^^^^^^^^^^^^^^^^^^ 144s + ) 144s + ^ 144s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 144s + oldfile, oldmode, oldsha = change.old 144s + ^^^^^^^^^^^^^^^^^^^^^^^^ 144s + TypeError: cannot unpack non-iterable NoneType object 144s + [1] 144s $ cd hggitlocalrepo 144s + $TESTTMP.sh: 78: cd: can't cd to hggitlocalrepo 144s $ hggitstate 144s - 3 03769a650ded 55b133e1d558 "add delta" bookmarks: [master] 144s - 2 ca33a262eb46 d338971a96e2 "add gamma" bookmarks: [] 144s - 1 7fe02317c63d 9497a4ee62e1 "add beta" bookmarks: [b1] 144s - 0 ff7a2f2d8d70 7eeab2ea75ec "add alpha" bookmarks: [] 144s - 144s -Make sure that master is public 144s - $ hg phase -r master 144s - 3: public 144s - $ cd .. 144s - 144s -No changes 144s - $ cd purehglocalrepo 144s - $ hg incoming -B 144s - comparing with $TESTTMP/hgremoterepo 144s - searching for changed bookmarks 144s - no changed bookmarks found 144s - [1] 144s - $ hg outgoing 144s - comparing with $TESTTMP/hgremoterepo 144s - searching for changes 144s - no changes found 144s - [1] 144s - $ hg outgoing -B 144s - comparing with $TESTTMP/hgremoterepo 144s - searching for changed bookmarks 144s - no changed bookmarks found 144s - [1] 144s - $ hg push 144s - pushing to $TESTTMP/hgremoterepo 144s - searching for changes 144s - no changes found 144s - [1] 144s - $ cd .. 144s - $ cd hggitlocalrepo 144s - $ hg incoming -B 144s - comparing with $TESTTMP/gitremoterepo 144s - searching for changed bookmarks 144s - no changed bookmarks found 144s - [1] 144s - $ hg outgoing 144s - comparing with $TESTTMP/gitremoterepo 144s - searching for changes 144s - no changes found 144s - [1] 144s - $ hg outgoing -B 144s - comparing with $TESTTMP/gitremoterepo 144s - searching for changed bookmarks 144s - no changed bookmarks found 144s - [1] 144s - $ hg push 144s - pushing to $TESTTMP/gitremoterepo 144s - searching for changes 144s - no changes found 144s - [1] 144s - $ cd .. 144s - 144s -Bookmarks on existing revs: 144s -- change b1 on local repo 144s -- introduce b2 on local repo 144s -- introduce b3 on remote repo 144s -Bookmarks on new revs 144s -- introduce b4 on a new rev on the remote 144s - $ cd hgremoterepo 144s - $ hg bookmark -r master b3 144s - $ hg bookmark -r master b4 144s - $ hg update -q b4 144s - $ echo epsilon > epsilon; hg add epsilon; hgcommit -m 'add epsilon' 144s - $ hgstate 144s - 4 d979bb8e0fbb "add epsilon" bookmarks: [b4] 144s - 3 fc2664cac217 "add delta" bookmarks: [b3 master] 144s - 2 d85ced7ae9d6 "add gamma" bookmarks: [] 144s - 1 7bcd915dc873 "add beta" bookmarks: [b1] 144s - 0 3442585be8a6 "add alpha" bookmarks: [] 144s - $ cd .. 144s - $ cd purehglocalrepo 144s - $ hg bookmark -fr 2 b1 144s - $ hg bookmark -r 0 b2 144s - $ hgstate 144s - 3 fc2664cac217 "add delta" bookmarks: [master] 144s - 2 d85ced7ae9d6 "add gamma" bookmarks: [b1] 144s - 1 7bcd915dc873 "add beta" bookmarks: [] 144s - 0 3442585be8a6 "add alpha" bookmarks: [b2] 144s - $ hg incoming -B 144s - comparing with $TESTTMP/hgremoterepo 144s - searching for changed bookmarks 144s - b3 fc2664cac217 144s - b4 d979bb8e0fbb 144s - $ hg outgoing 144s - comparing with $TESTTMP/hgremoterepo 144s - searching for changes 144s - no changes found 144s - [1] 144s -As of 2.3, Mercurial's outgoing -B doesn't actually show changed bookmarks 144s -It only shows "new" bookmarks. Thus, b1 doesn't show up. 144s -This changed in 3.4 to start showing changed and deleted bookmarks again. 144s - $ hg outgoing -B | grep -v -E -w 'b1|b3|b4' 144s - comparing with $TESTTMP/hgremoterepo 144s - searching for changed bookmarks 144s - b2 3442585be8a6 144s - $ cd .. 144s - 144s - $ cd gitremoterepo 144s - $ git branch b3 master 144s - $ git checkout -b b4 master 144s - Switched to a new branch 'b4' 144s - $ echo epsilon > epsilon 144s - $ git add epsilon 144s - $ gitcommit -m 'add epsilon' 144s - $ gitstate 144s - fcfd2c0 "add epsilon" refs: (*b4) (glob) 144s - 55b133e "add delta" refs: (master, b3) 144s - d338971 "add gamma" refs: 144s - 9497a4e "add beta" refs: (b1) 144s - 7eeab2e "add alpha" refs: 144s - $ cd .. 144s - $ cd hggitlocalrepo 144s - $ hg bookmark -fr 2 b1 144s - $ hg bookmark -r 0 b2 144s - $ hgstate 144s - 3 03769a650ded "add delta" bookmarks: [master] 144s - 2 ca33a262eb46 "add gamma" bookmarks: [b1] 144s - 1 7fe02317c63d "add beta" bookmarks: [] 144s - 0 ff7a2f2d8d70 "add alpha" bookmarks: [b2] 144s - $ hg incoming -B 144s - comparing with $TESTTMP/gitremoterepo 144s - searching for changed bookmarks 144s - b3 03769a650ded 144s - b4 fcfd2c0262db 144s - $ hg outgoing 144s - comparing with $TESTTMP/gitremoterepo 144s - searching for changes 144s - no changes found 144s - [1] 144s -As of 2.3, Mercurial's outgoing -B doesn't actually show changed bookmarks 144s -It only shows "new" bookmarks. Thus, b1 doesn't show up. 144s -This changed in 3.4 to start showing changed and deleted bookmarks again. 144s - $ hg outgoing -B 144s - comparing with $TESTTMP/gitremoterepo 144s - searching for changed bookmarks 144s - b1 ca33a262eb46 144s - b2 ff7a2f2d8d70 144s - b3 144s - b4 144s - $ cd .. 144s 144s ERROR: test-bookmark-workflow.t output changed 151s ! 151s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-illegal-contents.t 151s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-illegal-contents.t.err 151s @@ -23,19 +23,132 @@ 151s warning: skipping invalid path '.git/hooks/post-update' 151s warning: skipping invalid path 'bar/.gi\xe2\x80\x8ct/wut' 151s warning: skipping invalid path 'foo/git~100/wat' 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 151s + repo.githandler.export_commits() 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 151s + self.export_git_objects() 151s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 151s + packer.pack(synchronous=True) 151s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 151s + _process_batch(self.ui, self.object_store, todo) 151s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 151s + object_store._remove_loose_object(obj.id) 151s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 151s + [1] 151s $ GIT_DIR=.hg/git git ls-tree -r --name-only master 151s - this/is/safe 151s + fatal: Not a valid object name master 151s + [128] 151s $ hg debug-remove-hggit-state 151s clearing out the git cache data 151s $ hg gexport --config hggit.invalidpaths=keep 151s warning: path '.git/hooks/post-update' contains an invalid path component 151s warning: path 'bar/.gi\xe2\x80\x8ct/wut' contains an invalid path component 151s warning: path 'foo/git~100/wat' contains an invalid path component 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 151s + repo.githandler.export_commits() 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 151s + self.export_git_objects() 151s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 151s + packer.pack(synchronous=True) 151s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 151s + _process_batch(self.ui, self.object_store, todo) 151s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 151s + object_store._remove_loose_object(obj.id) 151s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 151s + [1] 151s $ GIT_DIR=.hg/git git ls-tree -r --name-only master 151s - .git/hooks/post-update 151s - "bar/.gi\342\200\214t/wut" 151s - foo/git~100/wat 151s - this/is/safe 151s + fatal: Not a valid object name master 151s + [128] 151s $ cd .. 151s 151s $ rm -rf hg 151s @@ -53,8 +166,66 @@ 151s $ hg book master 151s $ hg gexport 151s warning: skipping invalid path 'nested/.git/hooks/post-update' 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 151s + repo.githandler.export_commits() 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 151s + self.export_git_objects() 151s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 151s + packer.pack(synchronous=True) 151s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 151s + _process_batch(self.ui, self.object_store, todo) 151s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 151s + object_store._remove_loose_object(obj.id) 151s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 151s + [1] 151s $ git clone .hg/git git 151s Cloning into 'git'... 151s + warning: You appear to have cloned an empty repository. 151s done. 151s $ rm -rf git 151s 151s @@ -70,17 +241,74 @@ 151s 151s $ hg --config hggit.invalidpaths=keep gexport 151s warning: path 'nested/.git/hooks/post-update' contains an invalid path component 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 151s + repo.githandler.export_commits() 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 151s + self.export_git_objects() 151s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 151s + packer.pack(synchronous=True) 151s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 151s + _process_batch(self.ui, self.object_store, todo) 151s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 151s + object_store._remove_loose_object(obj.id) 151s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 151s + [1] 151s $ cd .. 151s $ # different git versions give different return codes 151s $ git clone hg/.hg/git git || true 151s Cloning into 'git'... 151s - done. 151s - error: [Ii]nvalid path 'nested/\.git/hooks/post-update' (re) 151s + warning: You appear to have cloned an empty repository. 151s fatal: unable to checkout working tree (?) 151s warning: Clone succeeded, but checkout failed. (?) 151s You can inspect what was checked out with 'git status' (?) 151s and retry( the checkout)? with '.*' (re) (?) 151s (?) 151s + done. 151s 151s Now check something that case-folds to .git, which might let you own 151s Mac users: 151s @@ -100,6 +328,63 @@ 151s $ hg ci -m "also refuse to export this" 151s $ hg book master 151s $ hg gexport 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 151s + repo.githandler.export_commits() 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 151s + self.export_git_objects() 151s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 151s + packer.pack(synchronous=True) 151s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 151s + _process_batch(self.ui, self.object_store, todo) 151s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 151s + object_store._remove_loose_object(obj.id) 151s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 151s + [1] 151s $ cd .. 151s 151s And the NTFS case: 151s @@ -119,6 +404,63 @@ 151s $ hg book master 151s $ hg gexport 151s warning: skipping invalid path 'GIT~1/hooks/post-checkout' 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 151s + repo.githandler.export_commits() 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 151s + self.export_git_objects() 151s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 151s + packer.pack(synchronous=True) 151s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 151s + _process_batch(self.ui, self.object_store, todo) 151s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 151s + object_store._remove_loose_object(obj.id) 151s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 151s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 151s + [1] 151s $ cd .. 151s 151s Now check a Git repository containing a Mercurial repository, which 151s @@ -134,29 +476,294 @@ 151s $ cd .. 151s $ hg clone --config hggit.invalidpaths=abort git hg 151s importing 1 git commits 151s - abort: invalid path 'nested/.hg/00changelog.i' rejected by configuration 151s - (see 'hg help config.hggit.invalidpaths for details) 151s - [255] 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s $ rm -rf hg 151s $ hg clone --config hggit.invalidpaths=keep git hg 151s importing 1 git commits 151s - warning: path 'nested/.hg/00changelog.i' contains an invalid path component 151s - warning: path 'nested/.hg/requires' contains an invalid path component 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s warning: path 'nested/.hg/store/requires' contains an invalid path component (?) 151s - new changesets [0-9a-f]{12,12} \(1 drafts\) (re) 151s warning: path 'nested/.hg/store/requires' is within a nested repository, which Mercurial cannot check out. (?) 151s - updating to bookmark master 151s - abort: path 'nested/.hg/00changelog.i' is inside nested repo 'nested' 151s - [10] 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s $ rm -rf hg 151s $ hg clone git hg 151s importing 1 git commits 151s - warning: skipping invalid path 'nested/.hg/00changelog.i' 151s - warning: skipping invalid path 'nested/.hg/requires' 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s warning: skipping invalid path 'nested/.hg/store/requires' (?) 151s - new changesets 3ea18a67c0e6 (1 drafts) 151s - updating to bookmark master 151s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s $ cd .. 151s 151s Now check a Git repository containing paths with carriage return and 151s @@ -172,22 +779,288 @@ 151s $ cd .. 151s $ hg clone --config hggit.invalidpaths=abort git hg 151s importing 1 git commits 151s - abort: invalid path 'Icon\r' rejected by configuration 151s - (see 'hg help config.hggit.invalidpaths for details) 151s - [255] 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s $ hg clone --config hggit.invalidpaths=keep git hg 151s importing 1 git commits 151s - warning: skipping invalid path 'Icon\r' 151s - warning: skipping invalid path 'the\nfile' 151s - new changesets 8354c06a5842 (1 drafts) 151s - updating to bookmark master 151s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s $ rm -rf hg 151s $ hg clone git hg 151s importing 1 git commits 151s - warning: skipping invalid path 'Icon\r' 151s - warning: skipping invalid path 'the\nfile' 151s - new changesets 8354c06a5842 (1 drafts) 151s - updating to bookmark master 151s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 151s - 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s + 151s 151s ERROR: test-illegal-contents.t output changed 151s ! 151s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-remote.t 151s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-remote.t.err 151s @@ -27,192 +27,100 @@ 151s 151s $ hg clone --config hggit.usephases=True -U gitrepo hgrepo 151s importing 4 git commits 151s - new changesets ff7a2f2d8d70:25eed24f5e8f (1 drafts) 151s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 151s + ** which supports versions 6.9 of Mercurial. 151s + ** Please disable "hggit" and try your action again. 151s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 151s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 151s + ** Mercurial Distributed SCM (version 7.0.1) 151s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 151s + Traceback (most recent call last): 151s + File "/usr/bin/hg", line 51, in 151s + dispatch.run() 151s + ~~~~~~~~~~~~^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 151s + status = dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 151s + status = _rundispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 151s + ret = _runcatch(req) or 0 151s + ~~~~~~~~~^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 151s + return _callcatch(ui, _runcatchfunc) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 151s + return scmutil.callcatch(ui, func) 151s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 151s + return func() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 151s + return _dispatch(req) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 151s + return runcommand( 151s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 151s + ) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 151s + ret = _runcommand(ui, options, cmd, d) 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 151s + return cmdfunc() 151s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 151s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 151s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 151s + return func(*args, **kwargs) 151s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 151s + r = hg.clone( 151s + ui, 151s + ...<11 lines>... 151s + depth=opts.get('depth') or None, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 151s + srcpeer, destpeer = orig(*args, **opts) 151s + ~~~~^^^^^^^^^^^^^^^ 151s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 151s + exchange.pull( 151s + ~~~~~~~~~~~~~^ 151s + local, 151s + ^^^^^^ 151s + ...<5 lines>... 151s + depth=depth, 151s + ^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 151s + return f(*args, **kwargs) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 151s + pullop.cgresult = repo.githandler.fetch(remote, heads) 151s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 151s + imported = self.import_git_objects( 151s + b'pull', 151s + ...<2 lines>... 151s + heads=heads, 151s + ) 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 151s + self.import_git_commit( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + command, 151s + ^^^^^^^^ 151s + self.git[commit.sha], 151s + ^^^^^^^^^^^^^^^^^^^^^ 151s + commit.phase, 151s + ^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 151s + files, gitlinks, git_renames = self.get_files_changed( 151s + ~~~~~~~~~~~~~~~~~~~~~~^ 151s + commit, detect_renames 151s + ^^^^^^^^^^^^^^^^^^^^^^ 151s + ) 151s + ^ 151s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 151s + oldfile, oldmode, oldsha = change.old 151s + ^^^^^^^^^^^^^^^^^^^^^^^^ 151s + TypeError: cannot unpack non-iterable NoneType object 151s + [1] 151s 151s $ cd hgrepo 151s + $TESTTMP.sh: 48: cd: can't cd to hgrepo 151s $ hg log -G -T '{rev}|{phase}|{bookmarks}|{tags}\n' 151s - o 3|public||thetag tip 151s - | 151s - | o 2|draft|not-master|default/not-master 151s - |/ 151s - | o 1|public|master|default/master 151s - |/ 151s - o 0|public|| 151s - 151s - $ hg phase -r 'all()' | tee $TESTTMP/after-clone 151s - 0: public 151s - 1: public 151s - 2: draft 151s - 3: public 151s - $ cat >> .hg/hgrc < [paths] 151s - > other = $TESTTMP/gitrepo/.git 151s - > other:hg-git.publish = no 151s - > EOF 151s - $ cd .. 151s - 151s -that disables publishing from that remote 151s - 151s - $ cd hgrepo 151s - $ hg phase -fd 'all()' 151s - $ hg pull other 151s - pulling from $TESTTMP/gitrepo/.git 151s - no changes found 151s - $ hg log -qr 'public()' 151s - $ hg pull -v --config hggit.usephases=True other 151s - pulling from $TESTTMP/gitrepo/.git 151s - no changes found 151s - processing commits in batches of 1000 151s - bookmark master is up-to-date 151s - bookmark not-master is up-to-date 151s - $ hg log -qr 'public()' 151s - $ cd .. 151s - 151s -but not default when enable by the global setting 151s - 151s - $ cd hgrepo 151s - $ hg phase -fd 'all()' 151s - no phases changed 151s - $ hg pull -v --config hggit.usephases=True 151s - pulling from $TESTTMP/gitrepo 151s - publishing remote HEAD 151s - publishing tag thetag 151s - no changes found 151s - processing commits in batches of 1000 151s - bookmark master is up-to-date 151s - bookmark not-master is up-to-date 151s - publishing remote HEAD 151s - publishing tag thetag 151s - 3 local changesets published 151s - $ hg phase -r 'all()' > $TESTTMP/after-pull 151s - $ cmp $TESTTMP/after-clone $TESTTMP/after-pull 151s - $ cd .. 151s - 151s -or the path option 151s - 151s - $ cd hgrepo 151s - $ hg phase -fd 'all()' 151s - $ hg pull -v --config paths.default:hg-git.publish=yes 151s - pulling from $TESTTMP/gitrepo 151s - publishing remote HEAD 151s - publishing tag thetag 151s - no changes found 151s - processing commits in batches of 1000 151s - bookmark master is up-to-date 151s - bookmark not-master is up-to-date 151s - publishing remote HEAD 151s - publishing tag thetag 151s - 3 local changesets published 151s - $ hg phase -r 'all()' > $TESTTMP/after-pull 151s - $ cmp $TESTTMP/after-clone $TESTTMP/after-pull 151s - $ cd .. 151s - 151s -but we can specify individual branches 151s - 151s - $ cd hgrepo 151s - $ hg phase -fd 'all()' 151s - $ hg pull -v --config paths.default:hg-git.publish=not-master 151s - pulling from $TESTTMP/gitrepo 151s - publishing branch not-master 151s - no changes found 151s - processing commits in batches of 1000 151s - bookmark master is up-to-date 151s - bookmark not-master is up-to-date 151s - publishing branch not-master 151s - 2 local changesets published 151s - $ hg phase -r master -r not-master -r thetag 151s - 1: draft 151s - 2: public 151s - 3: draft 151s - $ cd .. 151s - 151s -and we can also specify the tag 151s - 151s - $ cd hgrepo 151s - $ hg phase -fd 'all()' 151s - $ hg pull -v --config paths.default:hg-git.publish=thetag 151s - pulling from $TESTTMP/gitrepo 151s - publishing tag thetag 151s - no changes found 151s - processing commits in batches of 1000 151s - bookmark master is up-to-date 151s - bookmark not-master is up-to-date 151s - publishing tag thetag 151s - 2 local changesets published 151s - $ hg phase -r master -r not-master -r thetag 151s - 1: draft 151s - 2: draft 151s - 3: public 151s - $ cd .. 151s - 151s - 151s -Check multiple paths behavior 151s -============================= 151s - 151s - 151s - $ cd hgrepo 151s - $ cat >> .hg/hgrc < [paths] 151s - > multi:multi-urls = yes 151s - > multi = path://other, path://default 151s - > recursive:multi-urls = yes 151s - > recursive = path://multi, default 151s - > EOF 151s - 151s -Using multiple path works fine: 151s - 151s - 151s - $ hg pull multi --config paths.default:hg-git.publish=yes 151s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 151s - [255] 151s - 151s -Recursive multiple path are tricker, but Mercurial don't work with them either. 151s -This test exist to make sure we bail out on our own. 151s - 151s - 151s -`yes` should abort (until we implement it) 151s - 151s - $ hg pull multi --config paths.default:hg-git.publish=yes 151s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 151s - [255] 151s - 151s -`some-value` should abort (until we implement it) 151s - 151s - $ hg pull multi --config paths.default:hg-git.publish=thetag 151s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 151s - [255] 151s - 151s -`no` is fine 151s - 151s - $ hg pull multi --config paths.default:hg-git.publish=no 151s - abort: cannot use `path://multi`, "multi" is also defined as a `path://` 151s - [255] 151s - 151s - $ cd .. 151s - 151s -Check conflicting paths behavior 151s -================================ 151s - 151s - $ cd hgrepo 151s - $ cat > .hg/hgrc < [paths] 151s - > default = $TESTTMP/gitrepo 151s - > default:hg-git.publish = yes 151s - > also-default = $TESTTMP/gitrepo 151s - > EOF 151s - $ hg pull also-default 151s - pulling from $TESTTMP/gitrepo 151s - abort: different publishing configurations for the same remote location 151s - (conflicting paths: also-default, default) 151s - [255] 151s - $ hg pull --config paths.also-default:hg-git.publish=no 151s - pulling from $TESTTMP/gitrepo 151s - abort: different publishing configurations for the same remote location 151s - (conflicting paths: also-default, default) 151s - [255] 151s - $ hg pull --config paths.also-default:hg-git.publish=true 151s - pulling from $TESTTMP/gitrepo 151s - no changes found 151s - 1 local changesets published 151s - $ cd .. 151s - 151s 151s ERROR: test-phases-remote.t output changed 156s !. 156s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-octopus.t 156s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-octopus.t.err 156s @@ -63,110 +63,99 @@ 156s 156s $ hg clone gitrepo hgrepo 156s importing 8 git commits 156s - new changesets ff7a2f2d8d70:307506d6ae8a (10 drafts) 156s - updating to bookmark master 156s - 6 files updated, 0 files merged, 0 files removed, 0 files unresolved 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 156s + return f(*args, **kwargs) 156s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 156s + pullop.cgresult = repo.githandler.fetch(remote, heads) 156s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 156s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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: 64: cd: can't cd to hgrepo 156s $ hg log --graph --style compact | sed 's/\[.*\]//g' 156s - @ 9:7,8 307506d6ae8a 2007-01-01 00:00 +0000 test 156s - |\ Merge branches 'branch3' and 'branch4' 156s - | | 156s - | o 8:3,4 2b07220e422e 2007-01-01 00:00 +0000 test 156s - | |\ Merge branches 'branch3' and 'branch4' 156s - | | | 156s - o | | 7:5,6 ccf2d65d982c 2007-01-01 00:00 +0000 test 156s - |\ \ \ Merge branches 'branch1' and 'branch2' 156s - | | | | 156s - | o | | 6:1,2 690b40256117 2007-01-01 00:00 +0000 test 156s - | |\ \ \ Merge branches 'branch1' and 'branch2' 156s - | | | | | 156s - o | | | | 5:0 e459c0629ca4 2007-01-01 00:00 +0000 test 156s - | | | | | add delta 156s - | | | | | 156s - +-------o 4:0 e857c9a04474 2007-01-01 00:00 +0000 test 156s - | | | | add zeta 156s - | | | | 156s - +-----o 3:0 0071dec0de0e 2007-01-01 00:00 +0000 test 156s - | | | add epsilon 156s - | | | 156s - +---o 2:0 205a004356ef 2007-01-01 00:00 +0000 test 156s - | | add gamma 156s - | | 156s - | o 1 7fe02317c63d 2007-01-01 00:00 +0000 test 156s - |/ add beta 156s - | 156s - o 0 ff7a2f2d8d70 2007-01-01 00:00 +0000 test 156s - add alpha 156s - 156s - $ hg gverify -r 9 156s - verifying rev 307506d6ae8a against git commit b32ff845df61df998206b630e4370a44f9b36845 156s - $ hg gverify -r 8 156s - abort: no git commit found for rev 2b07220e422e 156s - (if this is an octopus merge, verify against the last rev) 156s - [255] 156s - 156s - $ hg debug-remove-hggit-state 156s - clearing out the git cache data 156s - $ hg push ../repo.git 156s - pushing to ../repo.git 156s - searching for changes 156s - adding objects 156s - remote: found 0 deltas to reuse 156s - added 8 commits with 8 trees and 6 blobs 156s - adding reference refs/heads/branch1 156s - adding reference refs/heads/branch2 156s - adding reference refs/heads/branch3 156s - adding reference refs/heads/branch4 156s - adding reference refs/heads/master 156s - $ cd .. 156s - 156s - $ git --git-dir=repo.git log --pretty=medium | sed s/\\.\\.\\.//g 156s - commit b32ff845df61df998206b630e4370a44f9b36845 156s - Merge: 9ac68f9 7e9cd9f e695849 156s - Author: test 156s - Date: Mon Jan 1 00:00:15 2007 +0000 156s - 156s - Merge branches 'branch3' and 'branch4' 156s - 156s - commit 9ac68f982ae7426d9597ff16c74afb4e6053c582 156s - Merge: d40f375 9497a4e e5023f9 156s - Author: test 156s - Date: Mon Jan 1 00:00:15 2007 +0000 156s - 156s - Merge branches 'branch1' and 'branch2' 156s - 156s - commit d40f375a81b7d033e92cbad89487115fe2dd472f 156s - Author: test 156s - Date: Mon Jan 1 00:00:15 2007 +0000 156s - 156s - add delta 156s - 156s - commit e695849087f6c320c1a447620492b29a82ca41b1 156s - Author: test 156s - Date: Mon Jan 1 00:00:14 2007 +0000 156s - 156s - add zeta 156s - 156s - commit 7e9cd9f90b6d2c60579375eb796ce706d2d8bbe6 156s - Author: test 156s - Date: Mon Jan 1 00:00:13 2007 +0000 156s - 156s - add epsilon 156s - 156s - commit e5023f9e5cb24fdcec7b6c127cec45d8888e35a9 156s - Author: test 156s - Date: Mon Jan 1 00:00:12 2007 +0000 156s - 156s - add gamma 156s - 156s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 156s - Author: test 156s - Date: Mon Jan 1 00:00:11 2007 +0000 156s - 156s - add beta 156s - 156s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 156s - Author: test 156s - Date: Mon Jan 1 00:00:10 2007 +0000 156s - 156s - add alpha 156s 156s ERROR: test-octopus.t output changed 159s ! 159s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hook.t 159s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hook.t.err 159s @@ -41,27 +41,89 @@ 159s | preoutgoing.url=$TESTTMP/repo.git 159s | gitexport.nodes=[b'cc0ffa47c67ebcb08dc50f69afaecb5d622cc777'] 159s | gitexport.git=True 159s - searching for changes 159s - | prechangegroup.source=push 159s - | prechangegroup.git=True 159s - | prechangegroup.url=$TESTTMP/repo.git 159s - | outgoing.source=push 159s - | outgoing.git=True 159s - | outgoing.url=$TESTTMP/repo.git 159s - | outgoing.node=cc0ffa47c67ebcb08dc50f69afaecb5d622cc777 159s - | outgoing.git_node=681fb452693218a33986174228560272a6fad87a 159s - adding objects 159s - remote: found 0 deltas to reuse 159s - added 1 commits with 1 trees and 1 blobs 159s - adding reference refs/heads/master 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 5567, in push 159s + pushop = exchange.push( 159s + repo, 159s + ...<6 lines>... 159s + opargs=opargs, 159s + ) 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 159s + return f(*args, **kwargs) 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 159s + pushop.cgresult = repo.githandler.push( 159s + ~~~~~~~~~~~~~~~~~~~~^ 159s + remote.path, revs, bookmarks, force 159s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + ) 159s + ^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 159s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 159s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 159s + all_exportable = self.export_commits() 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 159s + self.export_git_objects() 159s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 159s + packer.pack(synchronous=True) 159s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 159s + _process_batch(self.ui, self.object_store, todo) 159s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 159s + object_store._remove_loose_object(obj.id) 159s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 159s + [1] 159s 159s $ git clone -q ../repo.git ../gitrepo 159s + warning: You appear to have cloned an empty repository. 159s $ cd ../gitrepo 159s $ fn_commit git b 159s $ fn_commit git c 159s $ git push 159s To $TESTTMP/hgrepo/../repo.git 159s - 681fb45..1dab31e master -> master 159s + * [new branch] master -> master 159s $ cd ../hgrepo 159s 159s Hooks on pull? 159s @@ -71,27 +133,93 @@ 159s | gitimport.source=pull 159s | gitimport.git=True 159s | gitimport.names=[b'default'] 159s - | gitimport.refs={b'HEAD': b'1dab31e7bc9691ba42a2fe7b14680694770bc527', b'refs/heads/master': b'1dab31e7bc9691ba42a2fe7b14680694770bc527'} 159s + | gitimport.refs={b'HEAD': b'073d1514b9b792cb98ce11d76b6caa87c4887f5b', b'refs/heads/master': b'073d1514b9b792cb98ce11d76b6caa87c4887f5b'} 159s | gitimport.heads=None 159s importing 2 git commits 159s - : pretxncommit 159s - | incoming.git=True 159s - | incoming.source=pull 159s - | incoming.node=382ad5fa1d7727210384d40fa1539af52ca632c5 159s - | incoming.git_node=92150d1529ccaea34a6b36fe4144993193080499 159s - : pretxncommit 159s - | incoming.git=True 159s - | incoming.source=pull 159s - | incoming.node=892115eea5c32152e09ae4013c9a119d7b534049 159s - | incoming.git_node=1dab31e7bc9691ba42a2fe7b14680694770bc527 159s - updating bookmark master 159s - | changegroup.source=push 159s - | changegroup.git=True 159s - | changegroup.node=382ad5fa1d7727210384d40fa1539af52ca632c5 159s - | changegroup.node_last=892115eea5c32152e09ae4013c9a119d7b534049 159s - new changesets 382ad5fa1d77:892115eea5c3 (2 drafts) 159s - updating to active bookmark master 159s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 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 5235, in pull 159s + modheads = exchange.pull( 159s + ~~~~~~~~~~~~~^ 159s + repo, 159s + ^^^^^ 159s + ...<6 lines>... 159s + confirm=opts.get('confirm'), 159s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + ).cgresult 159s + ^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 159s + return f(*args, **kwargs) 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 159s + pullop.cgresult = repo.githandler.fetch(remote, heads) 159s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 159s Hooks on push? 159s 159s @@ -102,16 +230,82 @@ 159s | preoutgoing.git=True 159s | preoutgoing.source=push 159s | preoutgoing.url=$TESTTMP/repo.git 159s - | gitexport.nodes=[b'cc6164a17449d58d7811ff3918f33f89c2c83fa5', b'46737f6a4c9d8307b681cbb2e9e2e5419cc87f82'] 159s + | gitexport.nodes=[b'eb13ee910fa61c332b2d3b5eca9f0c08e6c75893', b'450aa114da3b128c1174f32eccdd55539853d173'] 159s | gitexport.git=True 159s - searching for changes 159s - | prechangegroup.source=push 159s - | prechangegroup.git=True 159s - | prechangegroup.url=$TESTTMP/repo.git 159s - adding objects 159s - remote: found 0 deltas to reuse 159s - added 2 commits with 2 trees and 2 blobs 159s - updating reference refs/heads/master 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 5567, in push 159s + pushop = exchange.push( 159s + repo, 159s + ...<6 lines>... 159s + opargs=opargs, 159s + ) 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 159s + return f(*args, **kwargs) 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 159s + pushop.cgresult = repo.githandler.push( 159s + ~~~~~~~~~~~~~~~~~~~~^ 159s + remote.path, revs, bookmarks, force 159s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + ) 159s + ^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 159s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 159s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 159s + all_exportable = self.export_commits() 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 159s + self.export_git_objects() 159s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 159s + packer.pack(synchronous=True) 159s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 159s + _process_batch(self.ui, self.object_store, todo) 159s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 159s + object_store._remove_loose_object(obj.id) 159s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 159s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 159s + [1] 159s 159s 159s And what does Mercurial do? 159s @@ -133,7 +327,7 @@ 159s adding changesets 159s adding manifests 159s adding file changes 159s - added 5 changesets with 5 changes to 5 files 159s + added 3 changesets with 3 changes to 3 files 159s 159s With more than one head: 159s 159s @@ -154,7 +348,7 @@ 159s adding changesets 159s adding manifests 159s adding file changes 159s - added 7 changesets with 7 changes to 7 files (+1 heads) 159s + added 5 changesets with 5 changes to 5 files (+1 heads) 159s 159s On pull: 159s 159s @@ -171,16 +365,16 @@ 159s adding manifests 159s adding file changes 159s added 1 changesets with 1 changes to 1 files (+1 heads) 159s - new changesets d4097d98a390 159s + new changesets 11a693974ec5 159s | changegroup.txnname=pull 159s file://$TESTTMP/hgrepo-copy 159s | changegroup.source=pull 159s | changegroup.url=file:$TESTTMP/hgrepo-copy 159s - | changegroup.node=d4097d98a3905be88e8a566039b1fdcca06e0d2e 159s - | changegroup.node_last=d4097d98a3905be88e8a566039b1fdcca06e0d2e 159s + | changegroup.node=11a693974ec530e32672629628dde90793335199 159s + | changegroup.node_last=11a693974ec530e32672629628dde90793335199 159s | incoming.txnname=pull 159s file://$TESTTMP/hgrepo-copy 159s | incoming.source=pull 159s | incoming.url=file:$TESTTMP/hgrepo-copy 159s - | incoming.node=d4097d98a3905be88e8a566039b1fdcca06e0d2e 159s + | incoming.node=11a693974ec530e32672629628dde90793335199 159s (run 'hg heads' to see heads) 159s 159s ERROR: test-hook.t output changed 163s ! 163s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-transactions.t 163s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-transactions.t.err 163s @@ -42,7 +42,104 @@ 163s 163s $ hg clone gitrepo hgrepo --config hggit.mapsavefrequency=10 --debug \ 163s > | grep -c saving 163s - 1 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 + 0 163s + [1] 163s $ rm -rf hgrepo 163s 163s pull with mapsavefreq set 163s @@ -54,7 +151,95 @@ 163s > EOF 163s $ hg -R hgrepo --config hggit.mapsavefrequency=10 pull --debug \ 163s > | grep -c saving 163s - 10 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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 5235, in pull 163s + modheads = exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + repo, 163s + ^^^^^ 163s + ...<6 lines>... 163s + confirm=opts.get('confirm'), 163s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 163s + ).cgresult 163s + ^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 + 0 163s + [1] 163s $ rm -rf hgrepo 163s 163s The user experience 163s @@ -77,16 +262,100 @@ 163s $ hg --config hggit.mapsavefrequency=25 pull 163s pulling from $TESTTMP/gitrepo 163s importing 100 git commits 163s - new changesets 1c8407413fa3:abc468b9e51b (25 drafts) 163s - new changesets 217c308baf47:d5d14eeedd08 (25 drafts) 163s - new changesets d9807ef6abcb:4678067bd500 (25 drafts) 163s - adding bookmark master 163s - new changesets c31a154888bb:eda59117ba04 (25 drafts) 163s - (run 'hg update' to get a working copy) 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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 5235, in pull 163s + modheads = exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + repo, 163s + ^^^^^ 163s + ...<6 lines>... 163s + confirm=opts.get('confirm'), 163s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 163s + ).cgresult 163s + ^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 Reset the repository 163s 163s $ hg debugstrip --no-backup 'all()' 163s + abort: empty revision set 163s + [255] 163s $ hg debug-remove-hggit-state 163s clearing out the git cache data 163s 163s @@ -96,16 +365,100 @@ 163s $ hg --config hggit.mapsavefrequency=25 --config hggit.usephases=yes pull 163s pulling from $TESTTMP/gitrepo 163s importing 100 git commits 163s - new changesets 1c8407413fa3:abc468b9e51b 163s - new changesets 217c308baf47:d5d14eeedd08 163s - new changesets d9807ef6abcb:4678067bd500 163s - updating bookmark master 163s - new changesets c31a154888bb:eda59117ba04 163s - (run 'hg update' to get a working copy) 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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 5235, in pull 163s + modheads = exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + repo, 163s + ^^^^^ 163s + ...<6 lines>... 163s + confirm=opts.get('confirm'), 163s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 163s + ).cgresult 163s + ^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 Reset the repository 163s 163s $ hg debugstrip --no-backup 'all()' 163s + abort: empty revision set 163s + [255] 163s $ hg debug-remove-hggit-state 163s clearing out the git cache data 163s 163s @@ -123,10 +476,94 @@ 163s $ ABORT_AFTER=99 hg pull 163s pulling from $TESTTMP/gitrepo 163s importing 100 git commits 163s - transaction abort! 163s - rollback completed 163s - abort: aborted after 99 commits! 163s - [255] 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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 5235, in pull 163s + modheads = exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + repo, 163s + ^^^^^ 163s + ...<6 lines>... 163s + confirm=opts.get('confirm'), 163s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 163s + ).cgresult 163s + ^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ hg log -l 10 -T '{rev} {gitnode}\n' 163s 163s Test the user exiting in the first transaction: 163s @@ -134,10 +571,94 @@ 163s $ EXIT_AFTER=5 hg --config hggit.mapsavefrequency=10 pull 163s pulling from $TESTTMP/gitrepo 163s importing 100 git commits 163s - transaction abort! 163s - rollback completed 163s - interrupted! 163s - [255] 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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 5235, in pull 163s + modheads = exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + repo, 163s + ^^^^^ 163s + ...<6 lines>... 163s + confirm=opts.get('confirm'), 163s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 163s + ).cgresult 163s + ^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ hg log -l 10 -T '{rev} {gitnode}\n' 163s 163s Check that we have no state, but clear it just in case 163s @@ -153,22 +674,95 @@ 163s $ EXIT_AFTER=15 hg --config hggit.mapsavefrequency=10 pull 163s pulling from $TESTTMP/gitrepo 163s importing 100 git commits 163s - new changesets 1c8407413fa3:7c8c534a5fbe (10 drafts) 163s - transaction abort! 163s - rollback completed 163s - interrupted! 163s - [255] 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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 5235, in pull 163s + modheads = exchange.pull( 163s + ~~~~~~~~~~~~~^ 163s + repo, 163s + ^^^^^ 163s + ...<6 lines>... 163s + confirm=opts.get('confirm'), 163s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 163s + ).cgresult 163s + ^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 $ hg log -l 10 -T '{rev} {gitnode}\n' 163s - 9 7cbb16ec981b308e1e2b181f8e1f22c8f409f44e 163s - 8 42da70ed92bbecf9f348ba59c93646be723d0bf2 163s - 7 17e841146e5744b81af9959634d82c20a5d7df52 163s - 6 c31065bf97bf014815e37cdfbdef2c32c687f314 163s - 5 fcf21b8e0520ec1cced1d7593d13f9ee54721269 163s - 4 46acd02d0352e4b92bd6a099bb0490305d847a18 163s - 3 61eeda444b37b8aa3892d5f04c66c5441d21dd66 163s - 2 e55db11bb0472791c7af3fc636772174cdea4a36 163s - 1 17a2672b3c24c02d568f99d8d55ccae2bf362d5c 163s - 0 4e195b4c6e77604b70a8ad3b01306adbb9b1c7e7 163s $ cd .. 163s $ rm -rf hgrepo 163s 163s @@ -184,10 +778,103 @@ 163s > --cwd hgrepo \ 163s > clone -U $TESTTMP/gitrepo . 163s importing 100 git commits 163s - transaction abort! 163s - rollback completed 163s - interrupted! 163s - [255] 163s + ** Unknown exception encountered with possibly-broken third-party extension "breakage" (version N/A) 163s + ** which supports versions unknown of Mercurial. 163s + ** Please disable "breakage" and try your action again. 163s + ** If that fixes the bug please report it to the extension author. 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: breakage, 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 163s + return f(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 163s + pullop.cgresult = repo.githandler.fetch(remote, heads) 163s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 "/usr/lib/python3/dist-packages/mercurial/extensions.py", line 528, in closure 163s + return func(*(args + a), **kw) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/tests/testlib/ext-break-git-import.py", line 25, in wrap 163s + return orig(*args, **kwargs) 163s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 the leftover below appeared in Mercurial 5.9+; it is unintentional 163s $ ls -A hgrepo 163s .git 163s 163s ERROR: test-transactions.t output changed 164s ! 164s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-outgoing.t 164s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-outgoing.t.err 164s @@ -15,165 +15,100 @@ 164s $ cd .. 164s $ hg clone gitrepo hgrepo 164s importing 1 git commits 164s - new changesets ff7a2f2d8d70 (1 drafts) 164s - updating to bookmark master 164s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 164s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 164s + ** which supports versions 6.9 of Mercurial. 164s + ** Please disable "hggit" and try your action again. 164s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 164s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 164s + ** Mercurial Distributed SCM (version 7.0.1) 164s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 164s + Traceback (most recent call last): 164s + File "/usr/bin/hg", line 51, in 164s + dispatch.run() 164s + ~~~~~~~~~~~~^^ 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 164s + status = dispatch(req) 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 164s + status = _rundispatch(req) 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 164s + ret = _runcatch(req) or 0 164s + ~~~~~~~~~^^^^^ 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 164s + return _callcatch(ui, _runcatchfunc) 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 164s + return scmutil.callcatch(ui, func) 164s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 164s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 164s + return func() 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 164s + return _dispatch(req) 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 164s + return runcommand( 164s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 164s + ) 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 164s + ret = _runcommand(ui, options, cmd, d) 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 164s + return cmdfunc() 164s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 164s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 164s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 164s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 164s + return func(*args, **kwargs) 164s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 164s + r = hg.clone( 164s + ui, 164s + ...<11 lines>... 164s + depth=opts.get('depth') or None, 164s + ) 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 164s + srcpeer, destpeer = orig(*args, **opts) 164s + ~~~~^^^^^^^^^^^^^^^ 164s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 164s + exchange.pull( 164s + ~~~~~~~~~~~~~^ 164s + local, 164s + ^^^^^^ 164s + ...<5 lines>... 164s + depth=depth, 164s + ^^^^^^^^^^^^ 164s + ) 164s + ^ 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 164s + return f(*args, **kwargs) 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 164s + pullop.cgresult = repo.githandler.fetch(remote, heads) 164s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 164s + imported = self.import_git_objects( 164s + b'pull', 164s + ...<2 lines>... 164s + heads=heads, 164s + ) 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 164s + self.import_git_commit( 164s + ~~~~~~~~~~~~~~~~~~~~~~^ 164s + command, 164s + ^^^^^^^^ 164s + self.git[commit.sha], 164s + ^^^^^^^^^^^^^^^^^^^^^ 164s + commit.phase, 164s + ^^^^^^^^^^^^^ 164s + ) 164s + ^ 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 164s + files, gitlinks, git_renames = self.get_files_changed( 164s + ~~~~~~~~~~~~~~~~~~~~~~^ 164s + commit, detect_renames 164s + ^^^^^^^^^^^^^^^^^^^^^^ 164s + ) 164s + ^ 164s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 164s + oldfile, oldmode, oldsha = change.old 164s + ^^^^^^^^^^^^^^^^^^^^^^^^ 164s + TypeError: cannot unpack non-iterable NoneType object 164s + [1] 164s 164s $ cd hgrepo 164s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 164s $ hg book 164s - alpha 0:ff7a2f2d8d70 164s - * master 0:ff7a2f2d8d70 164s - $ hg update -q master 164s - $ echo beta > beta 164s - $ hg add beta 164s - $ fn_hg_commit -m 'add beta' 164s - 164s - 164s - $ echo gamma > gamma 164s - $ hg add gamma 164s - $ fn_hg_commit -m 'add gamma' 164s - 164s - $ hg book -r 1 beta 164s - 164s - $ hg outgoing | grep -v 'searching for changes' 164s - comparing with $TESTTMP/gitrepo 164s - changeset: 1:47580592d3d6 164s - bookmark: beta 164s - user: test 164s - date: Mon Jan 01 00:00:11 2007 +0000 164s - summary: add beta 164s - 164s - changeset: 2:953796e1cfd8 164s - bookmark: master 164s - tag: tip 164s - user: test 164s - date: Mon Jan 01 00:00:12 2007 +0000 164s - summary: add gamma 164s - 164s - $ hg outgoing -r beta 164s - comparing with $TESTTMP/gitrepo 164s - searching for changes 164s - changeset: 1:47580592d3d6 164s - bookmark: beta 164s - user: test 164s - date: Mon Jan 01 00:00:11 2007 +0000 164s - summary: add beta 164s - 164s - $ hg outgoing -r master 164s - comparing with $TESTTMP/gitrepo 164s - searching for changes 164s - changeset: 1:47580592d3d6 164s - bookmark: beta 164s - user: test 164s - date: Mon Jan 01 00:00:11 2007 +0000 164s - summary: add beta 164s - 164s - changeset: 2:953796e1cfd8 164s - bookmark: master 164s - tag: tip 164s - user: test 164s - date: Mon Jan 01 00:00:12 2007 +0000 164s - summary: add gamma 164s - 164s - 164s - $ cd .. 164s - 164s -some more work on master from git 164s - $ cd gitrepo 164s - 164s -Check state of refs after outgoing 164s - $ git show-ref 164s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 refs/heads/alpha 164s - 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 refs/heads/master 164s - 164s - $ git checkout master 2>&1 | sed s/\'/\"/g 164s - Already on "master" 164s - $ echo delta > delta 164s - $ git add delta 164s - $ fn_git_commit -m "add delta" 164s - 164s - $ cd .. 164s - 164s - $ cd hgrepo 164s -this will fail # maybe we should try to make it work 164s - $ hg outgoing 164s - comparing with $TESTTMP/gitrepo 164s - abort: branch 'refs/heads/master' changed on the server, please pull and merge before pushing 164s - [255] 164s -let's pull and try again 164s - $ hg pull 164s - pulling from */gitrepo (glob) 164s - importing 1 git commits 164s - not updating diverged bookmark master 164s - new changesets 25eed24f5e8f (1 drafts) 164s - (run 'hg heads' to see heads, 'hg merge' to merge) 164s - $ hg log --graph 164s - o changeset: 3:25eed24f5e8f 164s - | tag: default/master 164s - | tag: tip 164s - | parent: 0:ff7a2f2d8d70 164s - | user: test 164s - | date: Mon Jan 01 00:00:13 2007 +0000 164s - | summary: add delta 164s - | 164s - | @ changeset: 2:953796e1cfd8 164s - | | bookmark: master 164s - | | user: test 164s - | | date: Mon Jan 01 00:00:12 2007 +0000 164s - | | summary: add gamma 164s - | | 164s - | o changeset: 1:47580592d3d6 164s - |/ bookmark: beta 164s - | user: test 164s - | date: Mon Jan 01 00:00:11 2007 +0000 164s - | summary: add beta 164s - | 164s - o changeset: 0:ff7a2f2d8d70 164s - bookmark: alpha 164s - tag: default/alpha 164s - user: test 164s - date: Mon Jan 01 00:00:10 2007 +0000 164s - summary: add alpha 164s - 164s - $ hg outgoing 164s - comparing with $TESTTMP/gitrepo 164s - searching for changes 164s - changeset: 1:47580592d3d6 164s - bookmark: beta 164s - user: test 164s - date: Mon Jan 01 00:00:11 2007 +0000 164s - summary: add beta 164s - 164s - changeset: 2:953796e1cfd8 164s - bookmark: master 164s - user: test 164s - date: Mon Jan 01 00:00:12 2007 +0000 164s - summary: add gamma 164s - 164s - $ hg outgoing -r beta 164s - comparing with $TESTTMP/gitrepo 164s - searching for changes 164s - changeset: 1:47580592d3d6 164s - bookmark: beta 164s - user: test 164s - date: Mon Jan 01 00:00:11 2007 +0000 164s - summary: add beta 164s - 164s - $ hg outgoing -r master 164s - comparing with $TESTTMP/gitrepo 164s - searching for changes 164s - changeset: 1:47580592d3d6 164s - bookmark: beta 164s - user: test 164s - date: Mon Jan 01 00:00:11 2007 +0000 164s - summary: add beta 164s - 164s - changeset: 2:953796e1cfd8 164s - bookmark: master 164s - user: test 164s - date: Mon Jan 01 00:00:12 2007 +0000 164s - summary: add gamma 164s - 164s - 164s - 164s - $ cd .. 164s 164s ERROR: test-outgoing.t output changed 165s ! 165s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gc.t 165s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gc.t.err 165s @@ -26,187 +26,99 @@ 165s $ cd .. 165s $ hg clone -U gitrepo hgrepo 165s importing 100 git commits 165s - new changesets 1c8407413fa3:eda59117ba04 (100 drafts) 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 166s + ) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 166s + ret = _runcommand(ui, options, cmd, d) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 166s + return cmdfunc() 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 166s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 166s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 166s + return func(*args, **kwargs) 166s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 166s + r = hg.clone( 166s + ui, 166s + ...<11 lines>... 166s + depth=opts.get('depth') or None, 166s + ) 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 166s + srcpeer, destpeer = orig(*args, **opts) 166s + ~~~~^^^^^^^^^^^^^^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 166s + exchange.pull( 166s + ~~~~~~~~~~~~~^ 166s + local, 166s + ^^^^^^ 166s + ...<5 lines>... 166s + depth=depth, 166s + ^^^^^^^^^^^^ 166s + ) 166s + ^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 166s + return f(*args, **kwargs) 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 166s + pullop.cgresult = repo.githandler.fetch(remote, heads) 166s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 166s + imported = self.import_git_objects( 166s + b'pull', 166s + ...<2 lines>... 166s + heads=heads, 166s + ) 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 166s + self.import_git_commit( 166s + ~~~~~~~~~~~~~~~~~~~~~~^ 166s + command, 166s + ^^^^^^^^ 166s + self.git[commit.sha], 166s + ^^^^^^^^^^^^^^^^^^^^^ 166s + commit.phase, 166s + ^^^^^^^^^^^^^ 166s + ) 166s + ^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 166s + files, gitlinks, git_renames = self.get_files_changed( 166s + ~~~~~~~~~~~~~~~~~~~~~~^ 166s + commit, detect_renames 166s + ^^^^^^^^^^^^^^^^^^^^^^ 166s + ) 166s + ^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 166s + oldfile, oldmode, oldsha = change.old 166s + ^^^^^^^^^^^^^^^^^^^^^^^^ 166s + TypeError: cannot unpack non-iterable NoneType object 166s + [1] 166s $ cd hgrepo 166s + $TESTTMP.sh: 24: cd: can't cd to hgrepo 166s $ hg debug-remove-hggit-state 166s - clearing out the git cache data 166s - 166s ------------ 166s - 166s -Test garbage collection of loose objects into packs. We first test 166s -this with two threads, which is closest to the expected usage 166s -scenario, as almost all computers have at least two cores these days. 166s -The main downside is that this makes the output order unreliable, so 166s -we just sort it. 166s - 166s - $ hg gexport --config hggit.mapsavefrequency=33 --config hggit.threads=2 --debug | grep pack | sort 166s - packed 3 loose objects! 166s - packed 75 loose objects! 166s - packed 78 loose objects! 166s - packed 86 loose objects! 166s - packing 3 loose objects... 166s - packing 75 loose objects... 166s - packing 78 loose objects... 166s - packing 86 loose objects... 166s - $ hg debug-remove-hggit-state 166s - clearing out the git cache data 166s - 166s -Test the actual order of operations -- this uses a single thread, 166s -which means that the packing happens synchronously in the main thread, 166s -giving us a reliable output order. 166s - 166s -In addition, the transaction size is set up such that we happen to do 166s -nothing in the final, synchronous packing that happens on every pull. 166s -Lots of other tests have a map save frequency higher than the total 166s -amount of commits pulled, but let's just trigger that other odd 166s -occurence here. 166s - 166s - $ hg gexport --debug \ 166s - > --config hggit.mapsavefrequency=10 --config hggit.threads=1 | \ 166s - > sed 's/^converting revision.*/./' 166s - finding unexported changesets 166s - exporting 100 changesets 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 30 loose objects... 166s - packed 30 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 25 loose objects... 166s - packed 25 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 25 loose objects... 166s - packed 25 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 24 loose objects... 166s - packed 24 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 24 loose objects... 166s - packed 24 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 24 loose objects... 166s - packed 24 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 24 loose objects... 166s - packed 24 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 23 loose objects... 166s - packed 23 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 22 loose objects... 166s - packed 22 loose objects! 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - . 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - packing 21 loose objects... 166s - packed 21 loose objects! 166s - packing 0 loose objects... 166s - packed 0 loose objects! 166s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 166s - $ find .hg/git/objects -type f | grep -Fv .idx | sort 166s - .hg/git/objects/pack/pack-33903607b479000b976a29a349fe0f4dffb0aaac.pack 166s - .hg/git/objects/pack/pack-40d9440e392d9eab62fa38a2ed66cc763d77aca3.pack 166s - .hg/git/objects/pack/pack-4ab2dac268f94e407788d52d6ba087b626c41651.pack 166s - .hg/git/objects/pack/pack-543e3b37bd36218a4dc6611a96d7c218afb78429.pack 166s - .hg/git/objects/pack/pack-5fc80292253ee10d1b86b5c4d9c51b29d2b4ba47.pack 166s - .hg/git/objects/pack/pack-9c636f5f16302fc5fadf0cc4ed42aeb67fc51f6a.pack 166s - .hg/git/objects/pack/pack-ae74b1f0197dfb45cfb13889453860a40103969a.pack 166s - .hg/git/objects/pack/pack-b432e2f477cb765fc0aeaa850d56e04b10392e6c.pack 166s - .hg/git/objects/pack/pack-cf7023660ce10ede2896d1be117f6ba93a261ff9.pack 166s - .hg/git/objects/pack/pack-e601b2af6a91a9cf6817d71f4eb660d2218d4094.pack 166s 166s ERROR: test-gc.t output changed 166s ! 166s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-public.t 166s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-public.t#publish-defaults.err 166s @@ -25,148 +25,100 @@ 166s cloning with hggit.usephases publishes cloned HEAD 166s $ hg --config hggit.usephases=True clone -U gitrepo hgrepo 166s importing 1 git commits 166s - new changesets ff7a2f2d8d70 166s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 166s + ** which supports versions 6.9 of Mercurial. 166s + ** Please disable "hggit" and try your action again. 166s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 166s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 166s + ** Mercurial Distributed SCM (version 7.0.1) 166s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 166s + Traceback (most recent call last): 166s + File "/usr/bin/hg", line 51, in 166s + dispatch.run() 166s + ~~~~~~~~~~~~^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 166s + status = dispatch(req) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 166s + status = _rundispatch(req) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 166s + ret = _runcatch(req) or 0 166s + ~~~~~~~~~^^^^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 166s + return _callcatch(ui, _runcatchfunc) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 166s + return scmutil.callcatch(ui, func) 166s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 166s + return func() 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 166s + return _dispatch(req) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 166s + return runcommand( 166s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 166s + ) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 166s + ret = _runcommand(ui, options, cmd, d) 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 166s + return cmdfunc() 166s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 166s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 166s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 166s + return func(*args, **kwargs) 166s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 166s + r = hg.clone( 166s + ui, 166s + ...<11 lines>... 166s + depth=opts.get('depth') or None, 166s + ) 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 166s + srcpeer, destpeer = orig(*args, **opts) 166s + ~~~~^^^^^^^^^^^^^^^ 166s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 166s + exchange.pull( 166s + ~~~~~~~~~~~~~^ 166s + local, 166s + ^^^^^^ 166s + ...<5 lines>... 166s + depth=depth, 166s + ^^^^^^^^^^^^ 166s + ) 166s + ^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 166s + return f(*args, **kwargs) 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 166s + pullop.cgresult = repo.githandler.fetch(remote, heads) 166s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 166s + imported = self.import_git_objects( 166s + b'pull', 166s + ...<2 lines>... 166s + heads=heads, 166s + ) 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 166s + self.import_git_commit( 166s + ~~~~~~~~~~~~~~~~~~~~~~^ 166s + command, 166s + ^^^^^^^^ 166s + self.git[commit.sha], 166s + ^^^^^^^^^^^^^^^^^^^^^ 166s + commit.phase, 166s + ^^^^^^^^^^^^^ 166s + ) 166s + ^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 166s + files, gitlinks, git_renames = self.get_files_changed( 166s + ~~~~~~~~~~~~~~~~~~~~~~^ 166s + commit, detect_renames 166s + ^^^^^^^^^^^^^^^^^^^^^^ 166s + ) 166s + ^ 166s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 166s + oldfile, oldmode, oldsha = change.old 166s + ^^^^^^^^^^^^^^^^^^^^^^^^ 166s + TypeError: cannot unpack non-iterable NoneType object 166s + [1] 166s 166s $ cd hgrepo 166s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 166s $ hg phase -r master 166s - 0: public 166s - $ cd .. 166s - 166s -pulled changesets are public 166s - $ cd gitrepo 166s - $ git checkout -q master 166s - $ echo beta > beta 166s - $ git add beta 166s - $ fn_git_commit -m 'add beta' 166s - $ git checkout -b not-master 166s - Switched to a new branch 'not-master' 166s - $ echo gamma > gamma 166s - $ git add gamma 166s - $ fn_git_commit -m 'add gamma' 166s - $ git tag thetag 166s - $ echo delta > delta 166s - $ git add delta 166s - $ fn_git_commit -m 'add delta' 166s - $ git checkout master 166s - Switched to branch 'master' 166s - $ cd .. 166s - 166s - $ cd hgrepo 166s - $ cat >>$HGRCPATH < [paths] 166s - > other = $TESTTMP/gitrepo/.git 166s - > [hggit] 166s - > usephases = True 166s - > EOF 166s - 166s - $ hg phase -fd 'all()' 166s - 166s -we can restrict publishing to the remote HEAD and that tag, which 166s -happens to be the same thing here 166s - 166s -#if publish-specific 166s - $ cat >>$HGRCPATH < [git] 166s - > public = default/master, thetag 166s - > EOF 166s -#endif 166s - 166s -pulling publishes the branch 166s - 166s - $ hg phase -r master 166s - 0: draft 166s -#if publish-defaults 166s - $ hg pull -r master other 166s - pulling from $TESTTMP/gitrepo/.git 166s - importing 1 git commits 166s - updating bookmark master 166s - new changesets 7fe02317c63d 166s - 1 local changesets published 166s - (run 'hg update' to get a working copy) 166s -#else 166s - $ hg pull -r master other 166s - pulling from $TESTTMP/gitrepo/.git 166s - importing 1 git commits 166s - updating bookmark master 166s - new changesets 7fe02317c63d (1 drafts) 166s - (run 'hg update' to get a working copy) 166s -#endif 166s - $ hg phase -r master 166s - 1: draft (publish-specific !) 166s - 1: public (publish-defaults !) 166s -#if publish-defaults 166s - $ hg phase -fd master 166s - $ hg pull 166s - pulling from $TESTTMP/gitrepo 166s - importing 2 git commits 166s - adding bookmark not-master 166s - new changesets ca33a262eb46:03769a650ded (1 drafts) 166s - 1 local changesets published 166s - (run 'hg update' to get a working copy) 166s -#else 166s - $ hg pull 166s - pulling from $TESTTMP/gitrepo 166s - importing 2 git commits 166s - adding bookmark not-master 166s - new changesets ca33a262eb46:03769a650ded (1 drafts) 166s - 2 local changesets published 166s - (run 'hg update' to get a working copy) 166s -#endif 166s - $ hg phase -r master -r not-master -r thetag 166s - 1: public 166s - 3: draft 166s - 2: public 166s - 166s -public bookmark not pushed is not published after pull 166s - 166s - $ hg update 0 166s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 166s - $ echo delta > delta 166s - $ hg bookmark not-pushed 166s - $ hg add delta 166s - $ hg commit -m 'add delta' 166s - created new head 166s - $ hg phase -r 'all()' > $TESTTMP/before 166s - $ hg pull --config git.public=master,not-pushed 166s - pulling from $TESTTMP/gitrepo 166s - no changes found 166s - $ hg phase -r 'all()' > $TESTTMP/after 166s - $ cmp -s $TESTTMP/before $TESTTMP/after 166s - $ hg phase -r not-pushed 166s - 4: draft 166s - $ rm $TESTTMP/before $TESTTMP/after 166s - 166s -pushing public bookmark publishes local changesets, but only those 166s -actually pushed 166s - 166s - $ hg update master 166s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 166s - (activating bookmark master) 166s - $ echo epsilon > epsilon 166s - $ hg add epsilon 166s - $ hg commit -m 'add epsilon' 166s - created new head 166s - $ hg phase -r 'all() - master' > $TESTTMP/before 166s - $ hg push -B not-pushed 166s - pushing to $TESTTMP/gitrepo 166s - searching for changes 166s - adding objects 166s - remote: found 0 deltas to reuse 166s - added 1 commits with 1 trees and 1 blobs 166s - adding reference refs/heads/not-pushed 166s - $ hg phase -r 'all() - master' > $TESTTMP/after 166s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 166s - $ hg phase -r not-pushed -r master 166s - 4: draft 166s - 5: draft 166s - $ hg push -B master 166s - pushing to $TESTTMP/gitrepo 166s - searching for changes 166s - adding objects 166s - remote: found 0 deltas to reuse 166s - added 1 commits with 1 trees and 1 blobs 166s - updating reference refs/heads/master 166s - $ hg phase -r 'all() - master' > $TESTTMP/after 166s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 166s - $ hg phase -r master 166s - 5: public 166s 166s ERROR: test-phases-public.t#publish-defaults output changed 167s ! 167s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-public.t 167s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-public.t#publish-specific.err 167s @@ -25,148 +25,100 @@ 167s cloning with hggit.usephases publishes cloned HEAD 167s $ hg --config hggit.usephases=True clone -U gitrepo hgrepo 167s importing 1 git commits 167s - new changesets ff7a2f2d8d70 167s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 167s + ** which supports versions 6.9 of Mercurial. 167s + ** Please disable "hggit" and try your action again. 167s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 167s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 167s + ** Mercurial Distributed SCM (version 7.0.1) 167s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 167s + Traceback (most recent call last): 167s + File "/usr/bin/hg", line 51, in 167s + dispatch.run() 167s + ~~~~~~~~~~~~^^ 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 167s + status = dispatch(req) 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 167s + status = _rundispatch(req) 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 167s + ret = _runcatch(req) or 0 167s + ~~~~~~~~~^^^^^ 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 167s + return _callcatch(ui, _runcatchfunc) 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 167s + return scmutil.callcatch(ui, func) 167s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 167s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 167s + return func() 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 167s + return _dispatch(req) 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 167s + return runcommand( 167s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 167s + ) 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 167s + ret = _runcommand(ui, options, cmd, d) 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 167s + return cmdfunc() 167s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 167s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 167s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 167s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 167s + return func(*args, **kwargs) 167s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 167s + r = hg.clone( 167s + ui, 167s + ...<11 lines>... 167s + depth=opts.get('depth') or None, 167s + ) 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 167s + srcpeer, destpeer = orig(*args, **opts) 167s + ~~~~^^^^^^^^^^^^^^^ 167s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 167s + exchange.pull( 167s + ~~~~~~~~~~~~~^ 167s + local, 167s + ^^^^^^ 167s + ...<5 lines>... 167s + depth=depth, 167s + ^^^^^^^^^^^^ 167s + ) 167s + ^ 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 167s + return f(*args, **kwargs) 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 167s + pullop.cgresult = repo.githandler.fetch(remote, heads) 167s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 167s + imported = self.import_git_objects( 167s + b'pull', 167s + ...<2 lines>... 167s + heads=heads, 167s + ) 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 167s + self.import_git_commit( 167s + ~~~~~~~~~~~~~~~~~~~~~~^ 167s + command, 167s + ^^^^^^^^ 167s + self.git[commit.sha], 167s + ^^^^^^^^^^^^^^^^^^^^^ 167s + commit.phase, 167s + ^^^^^^^^^^^^^ 167s + ) 167s + ^ 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 167s + files, gitlinks, git_renames = self.get_files_changed( 167s + ~~~~~~~~~~~~~~~~~~~~~~^ 167s + commit, detect_renames 167s + ^^^^^^^^^^^^^^^^^^^^^^ 167s + ) 167s + ^ 167s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 167s + oldfile, oldmode, oldsha = change.old 167s + ^^^^^^^^^^^^^^^^^^^^^^^^ 167s + TypeError: cannot unpack non-iterable NoneType object 167s + [1] 167s 167s $ cd hgrepo 167s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 167s $ hg phase -r master 167s - 0: public 167s - $ cd .. 167s - 167s -pulled changesets are public 167s - $ cd gitrepo 167s - $ git checkout -q master 167s - $ echo beta > beta 167s - $ git add beta 167s - $ fn_git_commit -m 'add beta' 167s - $ git checkout -b not-master 167s - Switched to a new branch 'not-master' 167s - $ echo gamma > gamma 167s - $ git add gamma 167s - $ fn_git_commit -m 'add gamma' 167s - $ git tag thetag 167s - $ echo delta > delta 167s - $ git add delta 167s - $ fn_git_commit -m 'add delta' 167s - $ git checkout master 167s - Switched to branch 'master' 167s - $ cd .. 167s - 167s - $ cd hgrepo 167s - $ cat >>$HGRCPATH < [paths] 167s - > other = $TESTTMP/gitrepo/.git 167s - > [hggit] 167s - > usephases = True 167s - > EOF 167s - 167s - $ hg phase -fd 'all()' 167s - 167s -we can restrict publishing to the remote HEAD and that tag, which 167s -happens to be the same thing here 167s - 167s -#if publish-specific 167s - $ cat >>$HGRCPATH < [git] 167s - > public = default/master, thetag 167s - > EOF 167s -#endif 167s - 167s -pulling publishes the branch 167s - 167s - $ hg phase -r master 167s - 0: draft 167s -#if publish-defaults 167s - $ hg pull -r master other 167s - pulling from $TESTTMP/gitrepo/.git 167s - importing 1 git commits 167s - updating bookmark master 167s - new changesets 7fe02317c63d 167s - 1 local changesets published 167s - (run 'hg update' to get a working copy) 167s -#else 167s - $ hg pull -r master other 167s - pulling from $TESTTMP/gitrepo/.git 167s - importing 1 git commits 167s - updating bookmark master 167s - new changesets 7fe02317c63d (1 drafts) 167s - (run 'hg update' to get a working copy) 167s -#endif 167s - $ hg phase -r master 167s - 1: draft (publish-specific !) 167s - 1: public (publish-defaults !) 167s -#if publish-defaults 167s - $ hg phase -fd master 167s - $ hg pull 167s - pulling from $TESTTMP/gitrepo 167s - importing 2 git commits 167s - adding bookmark not-master 167s - new changesets ca33a262eb46:03769a650ded (1 drafts) 167s - 1 local changesets published 167s - (run 'hg update' to get a working copy) 167s -#else 167s - $ hg pull 167s - pulling from $TESTTMP/gitrepo 167s - importing 2 git commits 167s - adding bookmark not-master 167s - new changesets ca33a262eb46:03769a650ded (1 drafts) 167s - 2 local changesets published 167s - (run 'hg update' to get a working copy) 167s -#endif 167s - $ hg phase -r master -r not-master -r thetag 167s - 1: public 167s - 3: draft 167s - 2: public 167s - 167s -public bookmark not pushed is not published after pull 167s - 167s - $ hg update 0 167s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 167s - $ echo delta > delta 167s - $ hg bookmark not-pushed 167s - $ hg add delta 167s - $ hg commit -m 'add delta' 167s - created new head 167s - $ hg phase -r 'all()' > $TESTTMP/before 167s - $ hg pull --config git.public=master,not-pushed 167s - pulling from $TESTTMP/gitrepo 167s - no changes found 167s - $ hg phase -r 'all()' > $TESTTMP/after 167s - $ cmp -s $TESTTMP/before $TESTTMP/after 167s - $ hg phase -r not-pushed 167s - 4: draft 167s - $ rm $TESTTMP/before $TESTTMP/after 167s - 167s -pushing public bookmark publishes local changesets, but only those 167s -actually pushed 167s - 167s - $ hg update master 167s - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved 167s - (activating bookmark master) 167s - $ echo epsilon > epsilon 167s - $ hg add epsilon 167s - $ hg commit -m 'add epsilon' 167s - created new head 167s - $ hg phase -r 'all() - master' > $TESTTMP/before 167s - $ hg push -B not-pushed 167s - pushing to $TESTTMP/gitrepo 167s - searching for changes 167s - adding objects 167s - remote: found 0 deltas to reuse 167s - added 1 commits with 1 trees and 1 blobs 167s - adding reference refs/heads/not-pushed 167s - $ hg phase -r 'all() - master' > $TESTTMP/after 167s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 167s - $ hg phase -r not-pushed -r master 167s - 4: draft 167s - 5: draft 167s - $ hg push -B master 167s - pushing to $TESTTMP/gitrepo 167s - searching for changes 167s - adding objects 167s - remote: found 0 deltas to reuse 167s - added 1 commits with 1 trees and 1 blobs 167s - updating reference refs/heads/master 167s - $ hg phase -r 'all() - master' > $TESTTMP/after 167s - $ diff $TESTTMP/before $TESTTMP/after | tr '<>' '-+' 167s - $ hg phase -r master 167s - 5: public 167s 167s ERROR: test-phases-public.t#publish-specific output changed 172s !.s 172s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-invalid-refs.t 172s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-invalid-refs.t.err 172s @@ -13,114 +13,100 @@ 172s $ cd .. 172s $ hg clone -U gitrepo hgrepo 172s importing 1 git commits 172s - new changesets ff7a2f2d8d70 (1 drafts) 172s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 172s + ** which supports versions 6.9 of Mercurial. 172s + ** Please disable "hggit" and try your action again. 172s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 172s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 172s + ** Mercurial Distributed SCM (version 7.0.1) 172s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 172s + Traceback (most recent call last): 172s + File "/usr/bin/hg", line 51, in 172s + dispatch.run() 172s + ~~~~~~~~~~~~^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 172s + status = dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 172s + status = _rundispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 172s + ret = _runcatch(req) or 0 172s + ~~~~~~~~~^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 172s + return _callcatch(ui, _runcatchfunc) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 172s + return scmutil.callcatch(ui, func) 172s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 172s + return func() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 172s + return _dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 172s + return runcommand( 172s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 172s + ) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 172s + ret = _runcommand(ui, options, cmd, d) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 172s + return cmdfunc() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 172s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 172s + return func(*args, **kwargs) 172s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 172s + r = hg.clone( 172s + ui, 172s + ...<11 lines>... 172s + depth=opts.get('depth') or None, 172s + ) 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 172s + srcpeer, destpeer = orig(*args, **opts) 172s + ~~~~^^^^^^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 172s + exchange.pull( 172s + ~~~~~~~~~~~~~^ 172s + local, 172s + ^^^^^^ 172s + ...<5 lines>... 172s + depth=depth, 172s + ^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 172s + return f(*args, **kwargs) 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 172s + pullop.cgresult = repo.githandler.fetch(remote, heads) 172s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 172s + imported = self.import_git_objects( 172s + b'pull', 172s + ...<2 lines>... 172s + heads=heads, 172s + ) 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 172s + self.import_git_commit( 172s + ~~~~~~~~~~~~~~~~~~~~~~^ 172s + command, 172s + ^^^^^^^^ 172s + self.git[commit.sha], 172s + ^^^^^^^^^^^^^^^^^^^^^ 172s + commit.phase, 172s + ^^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 172s + files, gitlinks, git_renames = self.get_files_changed( 172s + ~~~~~~~~~~~~~~~~~~~~~~^ 172s + commit, detect_renames 172s + ^^^^^^^^^^^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 172s + oldfile, oldmode, oldsha = change.old 172s + ^^^^^^^^^^^^^^^^^^^^^^^^ 172s + TypeError: cannot unpack non-iterable NoneType object 172s + [1] 172s 172s $ cd hgrepo 172s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 172s $ hg up master 172s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 172s - (activating bookmark master) 172s - $ fn_hg_tag alph#a 172s - $ fn_hg_tag bet*a 172s - $ fn_hg_tag 'gamm a' 172s - $ hg book -r . delt#a 172s - $ hg book -r . epsil*on 172s - 172s - $ hg gexport 172s - warning: not exporting tag 'bet*a' due to invalid name 172s - warning: not exporting bookmark 'epsil*on' due to invalid name 172s - 172s - $ hg push 172s - pushing to $TESTTMP/gitrepo 172s - warning: not exporting tag 'bet*a' due to invalid name 172s - warning: not exporting bookmark 'epsil*on' due to invalid name 172s - searching for changes 172s - adding objects 172s - remote: found 0 deltas to reuse 172s - added 3 commits with 3 trees and 3 blobs 172s - adding reference refs/heads/delt#a 172s - updating reference refs/heads/master 172s - adding reference refs/tags/alph#a 172s - adding reference refs/tags/gamm_a 172s - 172s - $ hg log --graph 172s - @ changeset: 3:0950ab44ea23 172s - | bookmark: delt#a 172s - | bookmark: epsil*on 172s - | bookmark: master 172s - | tag: default/delt#a 172s - | tag: default/master 172s - | tag: tip 172s - | user: test 172s - | date: Mon Jan 01 00:00:13 2007 +0000 172s - | summary: Added tag gamm a for changeset 0b27ab2b3df6 172s - | 172s - o changeset: 2:0b27ab2b3df6 172s - | tag: gamm a 172s - | user: test 172s - | date: Mon Jan 01 00:00:12 2007 +0000 172s - | summary: Added tag bet*a for changeset 491ceeb1b0f1 172s - | 172s - o changeset: 1:491ceeb1b0f1 172s - | tag: bet*a 172s - | user: test 172s - | date: Mon Jan 01 00:00:11 2007 +0000 172s - | summary: Added tag alph#a for changeset ff7a2f2d8d70 172s - | 172s - o changeset: 0:ff7a2f2d8d70 172s - bookmark: not-master 172s - tag: alph#a 172s - tag: default/not-master 172s - user: test 172s - date: Mon Jan 01 00:00:10 2007 +0000 172s - summary: add alpha 172s - 172s - 172s - $ cd .. 172s - $ cd gitrepo 172s -git should have only the valid tag alph#a but have full commit log including the missing invalid bet*a tag commit 172s - $ git tag -l 172s - alph#a 172s - gamm_a 172s - 172s - $ cd .. 172s - $ hg clone -U gitrepo hgrepo2 172s - importing 4 git commits 172s - new changesets ff7a2f2d8d70:0950ab44ea23 (4 drafts) 172s - $ hg -R hgrepo2 log --graph 172s - o changeset: 3:0950ab44ea23 172s - | bookmark: delt#a 172s - | bookmark: master 172s - | tag: default/delt#a 172s - | tag: default/master 172s - | tag: tip 172s - | user: test 172s - | date: Mon Jan 01 00:00:13 2007 +0000 172s - | summary: Added tag gamm a for changeset 0b27ab2b3df6 172s - | 172s - o changeset: 2:0b27ab2b3df6 172s - | tag: gamm a 172s - | tag: gamm_a 172s - | user: test 172s - | date: Mon Jan 01 00:00:12 2007 +0000 172s - | summary: Added tag bet*a for changeset 491ceeb1b0f1 172s - | 172s - o changeset: 1:491ceeb1b0f1 172s - | tag: bet*a 172s - | user: test 172s - | date: Mon Jan 01 00:00:11 2007 +0000 172s - | summary: Added tag alph#a for changeset ff7a2f2d8d70 172s - | 172s - o changeset: 0:ff7a2f2d8d70 172s - bookmark: not-master 172s - tag: alph#a 172s - tag: default/not-master 172s - user: test 172s - date: Mon Jan 01 00:00:10 2007 +0000 172s - summary: add alpha 172s - 172s - 172s -the tag should be in .hgtags 172s - $ hg cat -r master hgrepo2/.hgtags 172s - ff7a2f2d8d7099694ae1e8b03838d40575bebb63 alph#a 172s - 491ceeb1b0f10d65d956dfcdd3470ac2bc2c96a8 bet*a 172s - 0b27ab2b3df69c6f7defd7040b93e539136db5be gamm a 172s 172s ERROR: test-invalid-refs.t output changed 172s ! 172s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-workflow.t 172s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-workflow.t.err 172s @@ -39,11 +39,68 @@ 172s $ hg debuggitdir 172s $TESTTMP/gitrepo/.git 172s $ hg gexport 172s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 172s + ** which supports versions 6.9 of Mercurial. 172s + ** Please disable "hggit" and try your action again. 172s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 172s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 172s + ** Mercurial Distributed SCM (version 7.0.1) 172s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 172s + Traceback (most recent call last): 172s + File "/usr/bin/hg", line 51, in 172s + dispatch.run() 172s + ~~~~~~~~~~~~^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 172s + status = dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 172s + status = _rundispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 172s + ret = _runcatch(req) or 0 172s + ~~~~~~~~~^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 172s + return _callcatch(ui, _runcatchfunc) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 172s + return scmutil.callcatch(ui, func) 172s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 172s + return func() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 172s + return _dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 172s + return runcommand( 172s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 172s + ) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 172s + ret = _runcommand(ui, options, cmd, d) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 172s + return cmdfunc() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 172s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 172s + return func(*args, **kwargs) 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 172s + repo.githandler.export_commits() 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 172s + self.export_git_objects() 172s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 172s + packer.pack(synchronous=True) 172s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 172s + _process_batch(self.ui, self.object_store, todo) 172s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 172s + object_store._remove_loose_object(obj.id) 172s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 172s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 172s + [1] 172s 172s do some work 172s $ git config core.bare false 172s $ git checkout master 2>&1 | sed s/\'/\"/g 172s - Already on "master" 172s + error: pathspec "master" did not match any file(s) known to git 172s $ echo beta > beta 172s $ git add beta 172s $ fn_git_commit -m 'add beta' 172s @@ -51,25 +108,79 @@ 172s get things back to hg 172s $ hg gimport 172s importing 1 git commits 172s - updating bookmark master 172s - new changesets 9f124f3c1fc2 (1 drafts) 172s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 172s + ** which supports versions 6.9 of Mercurial. 172s + ** Please disable "hggit" and try your action again. 172s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 172s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 172s + ** Mercurial Distributed SCM (version 7.0.1) 172s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 172s + Traceback (most recent call last): 172s + File "/usr/bin/hg", line 51, in 172s + dispatch.run() 172s + ~~~~~~~~~~~~^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 172s + status = dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 172s + status = _rundispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 172s + ret = _runcatch(req) or 0 172s + ~~~~~~~~~^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 172s + return _callcatch(ui, _runcatchfunc) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 172s + return scmutil.callcatch(ui, func) 172s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 172s + return func() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 172s + return _dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 172s + return runcommand( 172s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 172s + ) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 172s + ret = _runcommand(ui, options, cmd, d) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 172s + return cmdfunc() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 172s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 172s + return func(*args, **kwargs) 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 46, in gimport 172s + repo.githandler.import_commits(remote_name) 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 388, in import_commits 172s + self.import_git_objects(b'gimport', remote_names, refs) 172s + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 172s + self.import_git_commit( 172s + ~~~~~~~~~~~~~~~~~~~~~~^ 172s + command, 172s + ^^^^^^^^ 172s + self.git[commit.sha], 172s + ^^^^^^^^^^^^^^^^^^^^^ 172s + commit.phase, 172s + ^^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 172s + files, gitlinks, git_renames = self.get_files_changed( 172s + ~~~~~~~~~~~~~~~~~~~~~~^ 172s + commit, detect_renames 172s + ^^^^^^^^^^^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 172s + oldfile, oldmode, oldsha = change.old 172s + ^^^^^^^^^^^^^^^^^^^^^^^^ 172s + TypeError: cannot unpack non-iterable NoneType object 172s + [1] 172s $ hg log --graph --debug | grep -v phase: 172s - o changeset: 1:9f124f3c1fc29a14f5eb027c24811b0ac9d5ff10 172s - | bookmark: master 172s - | tag: tip 172s - | parent: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2 172s - | parent: -1:0000000000000000000000000000000000000000 172s - | manifest: 1:f0bd6fbafbaebe4bb59c35108428f6fce152431d 172s - | user: test 172s - | date: Mon Jan 01 00:00:11 2007 +0000 172s - | files+: beta 172s - | extra: branch=default 172s - | extra: hg-git-rename-source=git 172s - | description: 172s - | add beta 172s - | 172s - | 172s o changeset: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2 172s + bookmark: master 172s + tag: tip 172s parent: -1:0000000000000000000000000000000000000000 172s parent: -1:0000000000000000000000000000000000000000 172s manifest: 0:8b8a0e87dfd7a0706c0524afa8ba67e20544cbf0 172s @@ -83,7 +194,7 @@ 172s 172s gimport should have updated the bookmarks as well 172s $ hg bookmarks 172s - master 1:9f124f3c1fc2 172s + master 0:0221c246a567 172s 172s gimport support for git.mindate 172s $ cat >> .hg/hgrc << EOF 172s @@ -98,14 +209,9 @@ 172s $ hg gimport 172s no changes found 172s $ hg log --graph 172s - o changeset: 1:9f124f3c1fc2 172s - | bookmark: master 172s - | tag: tip 172s - | user: test 172s - | date: Mon Jan 01 00:00:11 2007 +0000 172s - | summary: add beta 172s - | 172s o changeset: 0:0221c246a567 172s + bookmark: master 172s + tag: tip 172s user: test 172s date: Mon Jan 01 00:00:10 2007 +0000 172s summary: add alpha 172s @@ -117,28 +223,80 @@ 172s > GIT_COMMITTER_DATE="2014-01-02 00:00:00 +0000" \ 172s > git commit -m newcommit > /dev/null || echo "git commit error" 172s $ hg gimport 172s - importing 2 git commits 172s - updating bookmark master 172s - new changesets befdecd14df5:3d10b7289d79 (2 drafts) 172s + importing 3 git commits 172s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 172s + ** which supports versions 6.9 of Mercurial. 172s + ** Please disable "hggit" and try your action again. 172s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 172s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 172s + ** Mercurial Distributed SCM (version 7.0.1) 172s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 172s + Traceback (most recent call last): 172s + File "/usr/bin/hg", line 51, in 172s + dispatch.run() 172s + ~~~~~~~~~~~~^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 172s + status = dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 172s + status = _rundispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 172s + ret = _runcatch(req) or 0 172s + ~~~~~~~~~^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 172s + return _callcatch(ui, _runcatchfunc) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 172s + return scmutil.callcatch(ui, func) 172s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 172s + return func() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 172s + return _dispatch(req) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 172s + return runcommand( 172s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 172s + ) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 172s + ret = _runcommand(ui, options, cmd, d) 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 172s + return cmdfunc() 172s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 172s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 172s + return func(*args, **kwargs) 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 46, in gimport 172s + repo.githandler.import_commits(remote_name) 172s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 388, in import_commits 172s + self.import_git_objects(b'gimport', remote_names, refs) 172s + ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 172s + self.import_git_commit( 172s + ~~~~~~~~~~~~~~~~~~~~~~^ 172s + command, 172s + ^^^^^^^^ 172s + self.git[commit.sha], 172s + ^^^^^^^^^^^^^^^^^^^^^ 172s + commit.phase, 172s + ^^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 172s + files, gitlinks, git_renames = self.get_files_changed( 172s + ~~~~~~~~~~~~~~~~~~~~~~^ 172s + commit, detect_renames 172s + ^^^^^^^^^^^^^^^^^^^^^^ 172s + ) 172s + ^ 172s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 172s + oldfile, oldmode, oldsha = change.old 172s + ^^^^^^^^^^^^^^^^^^^^^^^^ 172s + TypeError: cannot unpack non-iterable NoneType object 172s + [1] 172s $ hg log --graph 172s - o changeset: 3:3d10b7289d79 172s - | bookmark: master 172s - | tag: tip 172s - | user: test 172s - | date: Wed Jan 01 00:00:00 2014 +0000 172s - | summary: newcommit 172s - | 172s - o changeset: 2:befdecd14df5 172s - | user: test 172s - | date: Sat Mar 01 00:00:00 2014 +0000 172s - | summary: oldcommit 172s - | 172s - o changeset: 1:9f124f3c1fc2 172s - | user: test 172s - | date: Mon Jan 01 00:00:11 2007 +0000 172s - | summary: add beta 172s - | 172s o changeset: 0:0221c246a567 172s + bookmark: master 172s + tag: tip 172s user: test 172s date: Mon Jan 01 00:00:10 2007 +0000 172s summary: add alpha 172s 172s ERROR: test-git-workflow.t output changed 173s ! 173s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-serve-hg.t 173s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-serve-hg.t#with-hggit.err 173s @@ -32,10 +32,101 @@ 173s 173s $ hg clone gitrepo hgrepo 173s importing 2 git commits 173s - new changesets f488b65fa424:c61c38c3d614 (2 drafts) 173s - updating to bookmark master 173s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 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 2046, in clone 173s + r = hg.clone( 173s + ui, 173s + ...<11 lines>... 173s + depth=opts.get('depth') or None, 173s + ) 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 173s + srcpeer, destpeer = orig(*args, **opts) 173s + ~~~~^^^^^^^^^^^^^^^ 173s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 173s + exchange.pull( 173s + ~~~~~~~~~~~~~^ 173s + local, 173s + ^^^^^^ 173s + ...<5 lines>... 173s + depth=depth, 173s + ^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 173s + return f(*args, **kwargs) 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 173s + pullop.cgresult = repo.githandler.fetch(remote, heads) 173s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 173s + imported = self.import_git_objects( 173s + b'pull', 173s + ...<2 lines>... 173s + heads=heads, 173s + ) 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 173s + self.import_git_commit( 173s + ~~~~~~~~~~~~~~~~~~~~~~^ 173s + command, 173s + ^^^^^^^^ 173s + self.git[commit.sha], 173s + ^^^^^^^^^^^^^^^^^^^^^ 173s + commit.phase, 173s + ^^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 173s + files, gitlinks, git_renames = self.get_files_changed( 173s + ~~~~~~~~~~~~~~~~~~~~~~^ 173s + commit, detect_renames 173s + ^^^^^^^^^^^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 173s + oldfile, oldmode, oldsha = change.old 173s + ^^^^^^^^^^^^^^^^^^^^^^^^ 173s + TypeError: cannot unpack non-iterable NoneType object 173s + [1] 173s $ cd hgrepo 173s + $TESTTMP.sh: 41: cd: can't cd to hgrepo 173s $ cat >> .hg/hgrc < [push] 173s > pushvars.server = true 173s @@ -45,81 +136,3 @@ 173s > [hooks] 173s > pretxnchangegroup = env | grep HG_USERVAR_ || true 173s > EOF 173s - $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log 173s - $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid 173s - 173s -Test server address cannot be reused 173s - 173s -#if windows 173s - $ hg serve -p $HGPORT1 2>&1 173s - abort: cannot start server at '*:$HGPORT1': * (glob) 173s - [255] 173s -#else 173s - $ hg serve -p $HGPORT1 2>&1 173s - abort: cannot start server at '*:$HGPORT1': Address* in use (glob) 173s - [255] 173s -#endif 173s - $ cd .. 173s - $ cat hg1.pid hg2.pid >> $DAEMON_PIDS 173s - 173s -Make sure that clone regular mercurial repos over http doesn't break, 173s -and that we can transfer the hg-git metadata 173s - 173s - $ hg clone http://localhost:$HGPORT/ copy 2>&1 173s - requesting all changes 173s - adding changesets 173s - adding manifests 173s - adding file changes 173s - added 2 changesets with 4 changes to 4 files 173s - new changesets f488b65fa424:c61c38c3d614 (?) 173s - updating to branch default 173s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 173s - 173s -And it shouldn't create a Git repository needlessly: 173s - $ test -e copy/git 173s - [1] 173s - $ cd copy 173s - 173s -#if without-hggit 173s - $ hg tags 173s - tip 1:c61c38c3d614 173s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 173s - 1:c61c38c3d614 | master | | 173s - 0:f488b65fa424 | | | 173s - $ hg pull -u ../gitrepo 173s - pulling from ../gitrepo 173s - importing 2 git commits 173s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 173s -#else 173s - $ hg tags 173s - tip 1:c61c38c3d614 173s - thetag 0:f488b65fa424 173s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 173s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 173s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 173s - $ hg pull -u ../gitrepo 173s - pulling from ../gitrepo 173s - warning: created new git repository at $TESTTMP/copy/.hg/git 173s - no changes found 173s -#endif 173s - 173s - $ hg tags 173s - tip 1:c61c38c3d614 173s - thetag 0:f488b65fa424 173s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 173s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 173s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 173s - 173s -Furthermore, make sure that we pass all arguments when pushing: 173s - 173s - $ echo baz > baz 173s - $ fn_hg_commit -A -m baz 173s - $ hg push --pushvars FOO=BAR 173s - pushing to http://localhost:$HGPORT/ 173s - searching for changes 173s - remote: adding changesets 173s - remote: adding manifests 173s - remote: adding file changes 173s - remote: HG_USERVAR_FOO=BAR 173s - remote: added 1 changesets with 1 changes to 1 files 173s - $ cd .. 173s 173s ERROR: test-serve-hg.t#with-hggit output changed 173s ! 173s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-serve-hg.t 173s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-serve-hg.t#without-hggit.err 173s @@ -32,10 +32,101 @@ 173s 173s $ hg clone gitrepo hgrepo 173s importing 2 git commits 173s - new changesets f488b65fa424:c61c38c3d614 (2 drafts) 173s - updating to bookmark master 173s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 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 2046, in clone 173s + r = hg.clone( 173s + ui, 173s + ...<11 lines>... 173s + depth=opts.get('depth') or None, 173s + ) 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 173s + srcpeer, destpeer = orig(*args, **opts) 173s + ~~~~^^^^^^^^^^^^^^^ 173s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 173s + exchange.pull( 173s + ~~~~~~~~~~~~~^ 173s + local, 173s + ^^^^^^ 173s + ...<5 lines>... 173s + depth=depth, 173s + ^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 173s + return f(*args, **kwargs) 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 173s + pullop.cgresult = repo.githandler.fetch(remote, heads) 173s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 173s + imported = self.import_git_objects( 173s + b'pull', 173s + ...<2 lines>... 173s + heads=heads, 173s + ) 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 173s + self.import_git_commit( 173s + ~~~~~~~~~~~~~~~~~~~~~~^ 173s + command, 173s + ^^^^^^^^ 173s + self.git[commit.sha], 173s + ^^^^^^^^^^^^^^^^^^^^^ 173s + commit.phase, 173s + ^^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 173s + files, gitlinks, git_renames = self.get_files_changed( 173s + ~~~~~~~~~~~~~~~~~~~~~~^ 173s + commit, detect_renames 173s + ^^^^^^^^^^^^^^^^^^^^^^ 173s + ) 173s + ^ 173s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 173s + oldfile, oldmode, oldsha = change.old 173s + ^^^^^^^^^^^^^^^^^^^^^^^^ 173s + TypeError: cannot unpack non-iterable NoneType object 173s + [1] 173s $ cd hgrepo 173s + $TESTTMP.sh: 36: cd: can't cd to hgrepo 173s $ cat >> .hg/hgrc < [push] 173s > pushvars.server = true 173s @@ -45,81 +136,3 @@ 173s > [hooks] 173s > pretxnchangegroup = env | grep HG_USERVAR_ || true 173s > EOF 173s - $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log 173s - $ hg --config server.uncompressed=False serve -p $HGPORT1 -d --pid-file=../hg2.pid 173s - 173s -Test server address cannot be reused 173s - 173s -#if windows 173s - $ hg serve -p $HGPORT1 2>&1 173s - abort: cannot start server at '*:$HGPORT1': * (glob) 173s - [255] 173s -#else 173s - $ hg serve -p $HGPORT1 2>&1 173s - abort: cannot start server at '*:$HGPORT1': Address* in use (glob) 173s - [255] 173s -#endif 173s - $ cd .. 173s - $ cat hg1.pid hg2.pid >> $DAEMON_PIDS 173s - 173s -Make sure that clone regular mercurial repos over http doesn't break, 173s -and that we can transfer the hg-git metadata 173s - 173s - $ hg clone http://localhost:$HGPORT/ copy 2>&1 173s - requesting all changes 173s - adding changesets 173s - adding manifests 173s - adding file changes 173s - added 2 changesets with 4 changes to 4 files 173s - new changesets f488b65fa424:c61c38c3d614 (?) 173s - updating to branch default 173s - 4 files updated, 0 files merged, 0 files removed, 0 files unresolved 173s - 173s -And it shouldn't create a Git repository needlessly: 173s - $ test -e copy/git 173s - [1] 173s - $ cd copy 173s - 173s -#if without-hggit 173s - $ hg tags 173s - tip 1:c61c38c3d614 173s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 173s - 1:c61c38c3d614 | master | | 173s - 0:f488b65fa424 | | | 173s - $ hg pull -u ../gitrepo 173s - pulling from ../gitrepo 173s - importing 2 git commits 173s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 173s -#else 173s - $ hg tags 173s - tip 1:c61c38c3d614 173s - thetag 0:f488b65fa424 173s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 173s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 173s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 173s - $ hg pull -u ../gitrepo 173s - pulling from ../gitrepo 173s - warning: created new git repository at $TESTTMP/copy/.hg/git 173s - no changes found 173s -#endif 173s - 173s - $ hg tags 173s - tip 1:c61c38c3d614 173s - thetag 0:f488b65fa424 173s - $ hg log -T '{rev}:{node|short} | {bookmarks} | {gitnode} |\n' 173s - 1:c61c38c3d614 | master | 95bcbb72932335c132c10950b5e5dc1066138ea1 | 173s - 0:f488b65fa424 | | a874aa4c9506ed30ef2c2c7313abd2c518e9e71e | 173s - 173s -Furthermore, make sure that we pass all arguments when pushing: 173s - 173s - $ echo baz > baz 173s - $ fn_hg_commit -A -m baz 173s - $ hg push --pushvars FOO=BAR 173s - pushing to http://localhost:$HGPORT/ 173s - searching for changes 173s - remote: adding changesets 173s - remote: adding manifests 173s - remote: adding file changes 173s - remote: HG_USERVAR_FOO=BAR 173s - remote: added 1 changesets with 1 changes to 1 files 173s - $ cd .. 173s 173s ERROR: test-serve-hg.t#without-hggit output changed 178s ! 178s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-authors.t 178s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-authors.t.err 178s @@ -73,11 +73,80 @@ 178s 178s $ hg push 178s pushing to $TESTTMP/repo.git 178s - searching for changes 178s - adding objects 178s - remote: found 0 deltas to reuse 178s - added 6 commits with 6 trees and 1 blobs 178s - adding reference refs/heads/master 178s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 178s + ** which supports versions 6.9 of Mercurial. 178s + ** Please disable "hggit" and try your action again. 178s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 178s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 178s + ** Mercurial Distributed SCM (version 7.0.1) 178s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 178s + Traceback (most recent call last): 178s + File "/usr/bin/hg", line 51, in 178s + dispatch.run() 178s + ~~~~~~~~~~~~^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 178s + status = dispatch(req) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 178s + status = _rundispatch(req) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 178s + ret = _runcatch(req) or 0 178s + ~~~~~~~~~^^^^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 178s + return _callcatch(ui, _runcatchfunc) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 178s + return scmutil.callcatch(ui, func) 178s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 178s + return func() 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 178s + return _dispatch(req) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 178s + return runcommand( 178s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 178s + ) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 178s + ret = _runcommand(ui, options, cmd, d) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 178s + return cmdfunc() 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 178s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 178s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 178s + return func(*args, **kwargs) 178s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 178s + pushop = exchange.push( 178s + repo, 178s + ...<6 lines>... 178s + opargs=opargs, 178s + ) 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 178s + return f(*args, **kwargs) 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 178s + pushop.cgresult = repo.githandler.push( 178s + ~~~~~~~~~~~~~~~~~~~~^ 178s + remote.path, revs, bookmarks, force 178s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 178s + ) 178s + ^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 178s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 178s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 178s + all_exportable = self.export_commits() 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 178s + self.export_git_objects() 178s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 178s + packer.pack(synchronous=True) 178s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 178s + _process_batch(self.ui, self.object_store, todo) 178s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 178s + object_store._remove_loose_object(obj.id) 178s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 178s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 178s + [1] 178s 178s Check the results: 178s 178s @@ -107,28 +176,6 @@ 178s User #3 = user3@example.com 178s user4 = 178s $ git log --pretty='tformat:Commit: %H%nAuthor: %an <%ae>%nCommitter: %cn <%ce>%n---' 178s - Commit: 869e310765d5d7ad92f83bf036e12b0341922a65 178s - Author: test 178s - Committer: test 178s - --- 178s - Commit: b5c0fcb75f876b158ece64859400d36b07570ce9 178s - Author: User #5 178s - Committer: User #5 178s - --- 178s - Commit: 2833824a870810915f7a7a27c05cccad0448bfd7 178s - Author: 178s - Committer: 178s - --- 178s - Commit: fe63bf29ef0bd4af50e85b8aec8d2fbeff255845 178s - Author: user3@example.com 178s - Committer: user3@example.com 178s - --- 178s - Commit: eba936dd13172a2f17936785e3604845aed9170d 178s - Author: user2 178s - Committer: user2 178s - --- 178s - Commit: 796162e5747a7ba57f31fb828b88319caf7b1f7b 178s - Author: User no. 1 178s - Committer: User no. 1 178s - --- 178s + fatal: your current branch 'master' does not have any commits yet 178s + [128] 178s $ cd .. 178s 178s ERROR: test-push-authors.t output changed 178s ! 178s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-verify-fail.t 178s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-verify-fail.t.err 178s @@ -74,6 +74,63 @@ 178s $ hg debug-remove-hggit-state 178s clearing out the git cache data 178s $ hg gexport 178s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 178s + ** which supports versions 6.9 of Mercurial. 178s + ** Please disable "hggit" and try your action again. 178s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 178s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 178s + ** Mercurial Distributed SCM (version 7.0.1) 178s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 178s + Traceback (most recent call last): 178s + File "/usr/bin/hg", line 51, in 178s + dispatch.run() 178s + ~~~~~~~~~~~~^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 178s + status = dispatch(req) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 178s + status = _rundispatch(req) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 178s + ret = _runcatch(req) or 0 178s + ~~~~~~~~~^^^^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 178s + return _callcatch(ui, _runcatchfunc) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 178s + return scmutil.callcatch(ui, func) 178s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 178s + return func() 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 178s + return _dispatch(req) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 178s + return runcommand( 178s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 178s + ) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 178s + ret = _runcommand(ui, options, cmd, d) 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 178s + return cmdfunc() 178s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 178s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 178s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 178s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 178s + return func(*args, **kwargs) 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 178s + repo.githandler.export_commits() 178s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 178s + self.export_git_objects() 178s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 178s + packer.pack(synchronous=True) 178s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 178s + _process_batch(self.ui, self.object_store, todo) 178s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 178s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 178s + object_store._remove_loose_object(obj.id) 178s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 178s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 178s + [1] 178s $ mv .hg/git/objects/pack $TESTTMP/pack-old 178s $ for packfile in $TESTTMP/pack-old/*.pack 178s > do 178s 178s ERROR: test-verify-fail.t output changed 179s ! 179s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-to-head.t 179s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-to-head.t.err 179s @@ -15,64 +15,99 @@ 179s 179s $ hg clone gitrepo hgrepo 179s importing 1 git commits 179s - new changesets ff7a2f2d8d70 (1 drafts) 179s - updating to bookmark master 179s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 179s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 179s + ** which supports versions 6.9 of Mercurial. 179s + ** Please disable "hggit" and try your action again. 179s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 179s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 179s + ** Mercurial Distributed SCM (version 7.0.1) 179s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 179s + Traceback (most recent call last): 179s + File "/usr/bin/hg", line 51, in 179s + dispatch.run() 179s + ~~~~~~~~~~~~^^ 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 179s + status = dispatch(req) 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 179s + status = _rundispatch(req) 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 179s + ret = _runcatch(req) or 0 179s + ~~~~~~~~~^^^^^ 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 179s + return _callcatch(ui, _runcatchfunc) 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 179s + return scmutil.callcatch(ui, func) 179s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 179s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 179s + return func() 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 179s + return _dispatch(req) 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 179s + return runcommand( 179s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 179s + ) 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 179s + ret = _runcommand(ui, options, cmd, d) 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 179s + return cmdfunc() 179s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 179s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 179s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 179s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 179s + return func(*args, **kwargs) 179s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 179s + r = hg.clone( 179s + ui, 179s + ...<11 lines>... 179s + depth=opts.get('depth') or None, 179s + ) 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 179s + srcpeer, destpeer = orig(*args, **opts) 179s + ~~~~^^^^^^^^^^^^^^^ 179s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 179s + exchange.pull( 179s + ~~~~~~~~~~~~~^ 179s + local, 179s + ^^^^^^ 179s + ...<5 lines>... 179s + depth=depth, 179s + ^^^^^^^^^^^^ 179s + ) 179s + ^ 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 179s + return f(*args, **kwargs) 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 179s + pullop.cgresult = repo.githandler.fetch(remote, heads) 179s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 179s + imported = self.import_git_objects( 179s + b'pull', 179s + ...<2 lines>... 179s + heads=heads, 179s + ) 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 179s + self.import_git_commit( 179s + ~~~~~~~~~~~~~~~~~~~~~~^ 179s + command, 179s + ^^^^^^^^ 179s + self.git[commit.sha], 179s + ^^^^^^^^^^^^^^^^^^^^^ 179s + commit.phase, 179s + ^^^^^^^^^^^^^ 179s + ) 179s + ^ 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 179s + files, gitlinks, git_renames = self.get_files_changed( 179s + ~~~~~~~~~~~~~~~~~~~~~~^ 179s + commit, detect_renames 179s + ^^^^^^^^^^^^^^^^^^^^^^ 179s + ) 179s + ^ 179s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 179s + oldfile, oldmode, oldsha = change.old 179s + ^^^^^^^^^^^^^^^^^^^^^^^^ 179s + TypeError: cannot unpack non-iterable NoneType object 179s + [1] 179s $ cd hgrepo 179s + $TESTTMP.sh: 18: cd: can't cd to hgrepo 179s $ echo beta > beta 179s - $ fn_hg_commit -A -m "add beta" 179s - 179s -The output is confusing, and this even more-so: 179s - 179s - $ hg push 179s - pushing to $TESTTMP/gitrepo 179s - searching for changes 179s - adding objects 179s - remote: found 0 deltas to reuse 179s - remote: error: refusing to update checked out branch: refs/heads/master 179s - remote: error: By default, updating the current branch in a non-bare repository 179s - remote: is denied, because it will make the index and work tree inconsistent 179s - remote: with what you pushed, and will require 'git reset --hard' to match 179s - remote: the work tree to HEAD. 179s - remote: 179s - remote: You can set the 'receive.denyCurrentBranch' configuration variable 179s - remote: to 'ignore' or 'warn' in the remote repository to allow pushing into 179s - remote: its current branch; however, this is not recommended unless you 179s - remote: arranged to update its work tree to match what you pushed in some 179s - remote: other way. 179s - remote: 179s - remote: To squelch this message and still keep the default behaviour, set 179s - remote: 'receive.denyCurrentBranch' configuration variable to 'refuse'. 179s - added 1 commits with 1 trees and 1 blobs 179s - warning: failed to update refs/heads/master; branch is currently checked out 179s - 179s - $ hg push 179s - pushing to $TESTTMP/gitrepo 179s - searching for changes 179s - adding objects 179s - remote: found 0 deltas to reuse 179s - remote: error: refusing to update checked out branch: refs/heads/master 179s - remote: error: By default, updating the current branch in a non-bare repository 179s - remote: is denied, because it will make the index and work tree inconsistent 179s - remote: with what you pushed, and will require 'git reset --hard' to match 179s - remote: the work tree to HEAD. 179s - remote: 179s - remote: You can set the 'receive.denyCurrentBranch' configuration variable 179s - remote: to 'ignore' or 'warn' in the remote repository to allow pushing into 179s - remote: its current branch; however, this is not recommended unless you 179s - remote: arranged to update its work tree to match what you pushed in some 179s - remote: other way. 179s - remote: 179s - remote: To squelch this message and still keep the default behaviour, set 179s - remote: 'receive.denyCurrentBranch' configuration variable to 'refuse'. 179s - added 1 commits with 1 trees and 1 blobs 179s - warning: failed to update refs/heads/master; branch is currently checked out 179s - 179s -Show that it really didn't get pushed: 179s - 179s - $ hg tags 179s - tip 1:47580592d3d6 179s - default/master 0:ff7a2f2d8d70 179s - $ cd ../gitrepo 179s - $ git log --all --oneline --decorate 179s - 7eeab2e (HEAD -> master) add alpha 179s 179s ERROR: test-push-to-head.t output changed 180s ! 180s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-orphan-tags.t 180s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-orphan-tags.t.err 180s @@ -62,16 +62,105 @@ 180s 180s $ hg clone -U repo.git hgrepo 180s importing 4 git commits 180s - new changesets b8e77484829b:387d03400596 (4 drafts) 180s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 180s + ** which supports versions 6.9 of Mercurial. 180s + ** Please disable "hggit" and try your action again. 180s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 180s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 180s + ** Mercurial Distributed SCM (version 7.0.1) 180s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 180s + Traceback (most recent call last): 180s + File "/usr/bin/hg", line 51, in 180s + dispatch.run() 180s + ~~~~~~~~~~~~^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 180s + status = dispatch(req) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 180s + status = _rundispatch(req) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 180s + ret = _runcatch(req) or 0 180s + ~~~~~~~~~^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 180s + return _callcatch(ui, _runcatchfunc) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 180s + return scmutil.callcatch(ui, func) 180s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 180s + return func() 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 180s + return _dispatch(req) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 180s + return runcommand( 180s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 180s + ) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 180s + ret = _runcommand(ui, options, cmd, d) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 180s + return cmdfunc() 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 180s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 180s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 180s + return func(*args, **kwargs) 180s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 180s + r = hg.clone( 180s + ui, 180s + ...<11 lines>... 180s + depth=opts.get('depth') or None, 180s + ) 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 180s + srcpeer, destpeer = orig(*args, **opts) 180s + ~~~~^^^^^^^^^^^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 180s + exchange.pull( 180s + ~~~~~~~~~~~~~^ 180s + local, 180s + ^^^^^^ 180s + ...<5 lines>... 180s + depth=depth, 180s + ^^^^^^^^^^^^ 180s + ) 180s + ^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 180s + return f(*args, **kwargs) 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 180s + pullop.cgresult = repo.githandler.fetch(remote, heads) 180s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 180s + imported = self.import_git_objects( 180s + b'pull', 180s + ...<2 lines>... 180s + heads=heads, 180s + ) 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 180s + self.import_git_commit( 180s + ~~~~~~~~~~~~~~~~~~~~~~^ 180s + command, 180s + ^^^^^^^^ 180s + self.git[commit.sha], 180s + ^^^^^^^^^^^^^^^^^^^^^ 180s + commit.phase, 180s + ^^^^^^^^^^^^^ 180s + ) 180s + ^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 180s + files, gitlinks, git_renames = self.get_files_changed( 180s + ~~~~~~~~~~~~~~~~~~~~~~^ 180s + commit, detect_renames 180s + ^^^^^^^^^^^^^^^^^^^^^^ 180s + ) 180s + ^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 180s + oldfile, oldmode, oldsha = change.old 180s + ^^^^^^^^^^^^^^^^^^^^^^^^ 180s + TypeError: cannot unpack non-iterable NoneType object 180s + [1] 180s $ hg outgoing -R hgrepo 180s - comparing with $TESTTMP/repo.git 180s - searching for changes 180s - no changes found 180s + abort: repository hgrepo not found 180s + [255] 180s + $ hg push --debug -R hgrepo | grep -e reference -e found 180s + abort: repository hgrepo not found 180s [1] 180s - $ hg push --debug -R hgrepo | grep -e reference -e found 180s - unchanged reference default::refs/heads/master => GIT:996e5084 180s - unchanged reference default::refs/tags/the_tag => GIT:e4338156 180s - no changes found 180s 180s Verify that we can push this tag, and that outgoing doesn't report 180s them (#358) 180s @@ -83,33 +172,5 @@ 180s To $TESTTMP/repo.git 180s - [deleted] the_tag 180s $ cd ../hgrepo 180s + $TESTTMP.sh: 72: cd: can't cd to ../hgrepo 180s $ hg outgoing 180s - comparing with $TESTTMP/repo.git 180s - searching for changes 180s - changeset: 2:7b35eb0afb3f 180s - tag: the_tag 180s - user: test 180s - date: Mon Jan 01 00:00:12 2007 +0000 180s - summary: add foo3 180s - 180s - $ hg push --debug 180s - pushing to $TESTTMP/repo.git 180s - finding unexported changesets 180s - saving git map to $TESTTMP/hgrepo/.hg/git-mapfile 180s - searching for changes 180s - remote: counting objects: 5, done. 180s - 1 commits found 180s - list of commits: 180s - e12852326ef72772e9696b008ad6546b5266ff13 180s - adding objects 180s - remote: counting objects: 5, done. 180s - remote: found 0 deltas to reuse 180s - added 1 commits with 1 trees and 0 blobs 180s - unchanged reference default::refs/heads/master => GIT:996e5084 180s - adding reference default::refs/tags/the_tag => GIT:e4338156 180s - $ cd ../gitrepo 180s - $ git fetch 180s - From $TESTTMP/repo 180s - * [new tag] the_tag -> the_tag 180s - $ git tag -ln 180s - the_tag Tag message 180s 180s ERROR: test-orphan-tags.t output changed 180s ! 180s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-missing-commit.t 180s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-missing-commit.t.err 180s @@ -23,74 +23,99 @@ 180s 180s $ hg clone -U repo.git hgrepo 180s importing 1 git commits 180s - new changesets fb68c5a534ce (1 drafts) 180s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 180s + ** which supports versions 6.9 of Mercurial. 180s + ** Please disable "hggit" and try your action again. 180s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 180s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 180s + ** Mercurial Distributed SCM (version 7.0.1) 180s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 180s + Traceback (most recent call last): 180s + File "/usr/bin/hg", line 51, in 180s + dispatch.run() 180s + ~~~~~~~~~~~~^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 180s + status = dispatch(req) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 180s + status = _rundispatch(req) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 180s + ret = _runcatch(req) or 0 180s + ~~~~~~~~~^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 180s + return _callcatch(ui, _runcatchfunc) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 180s + return scmutil.callcatch(ui, func) 180s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 180s + return func() 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 180s + return _dispatch(req) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 180s + return runcommand( 180s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 180s + ) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 180s + ret = _runcommand(ui, options, cmd, d) 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 180s + return cmdfunc() 180s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 180s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 180s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 180s + return func(*args, **kwargs) 180s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 180s + r = hg.clone( 180s + ui, 180s + ...<11 lines>... 180s + depth=opts.get('depth') or None, 180s + ) 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 180s + srcpeer, destpeer = orig(*args, **opts) 180s + ~~~~^^^^^^^^^^^^^^^ 180s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 180s + exchange.pull( 180s + ~~~~~~~~~~~~~^ 180s + local, 180s + ^^^^^^ 180s + ...<5 lines>... 180s + depth=depth, 180s + ^^^^^^^^^^^^ 180s + ) 180s + ^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 180s + return f(*args, **kwargs) 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 180s + pullop.cgresult = repo.githandler.fetch(remote, heads) 180s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 180s + imported = self.import_git_objects( 180s + b'pull', 180s + ...<2 lines>... 180s + heads=heads, 180s + ) 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 180s + self.import_git_commit( 180s + ~~~~~~~~~~~~~~~~~~~~~~^ 180s + command, 180s + ^^^^^^^^ 180s + self.git[commit.sha], 180s + ^^^^^^^^^^^^^^^^^^^^^ 180s + commit.phase, 180s + ^^^^^^^^^^^^^ 180s + ) 180s + ^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 180s + files, gitlinks, git_renames = self.get_files_changed( 180s + ~~~~~~~~~~~~~~~~~~~~~~^ 180s + commit, detect_renames 180s + ^^^^^^^^^^^^^^^^^^^^^^ 180s + ) 180s + ^ 180s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 180s + oldfile, oldmode, oldsha = change.old 180s + ^^^^^^^^^^^^^^^^^^^^^^^^ 180s + TypeError: cannot unpack non-iterable NoneType object 180s + [1] 180s $ cd hgrepo 180s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 180s $ hg up -q master 180s - $ echo other > thefile 180s - $ fn_hg_commit -m 'change thefile' 180s - $ cd .. 180s - 180s -now remove the git commit from the cache repository used internally by 180s -hg-git — actually, changing `git.intree` is equivalent to this, and how 180s -a user noticed it in #376. 180s - 180s - $ rm -rf hgrepo/.hg/git 180s - 180s -what happens when we push it? 180s - 180s - $ hg -R hgrepo push 180s - pushing to $TESTTMP/repo.git 180s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 180s - abort: cannot push git commit 533d4e670a8b as it is not present locally 180s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 180s - [255] 180s - 180s -try to follow the hint: 180s - 180s -(and just to see that the warning is useful, try re-resetting first) 180s - 180s - $ rm -rf hgrepo/.hg/git hgrepo/.git 180s - $ hg -R hgrepo pull 180s - pulling from $TESTTMP/repo.git 180s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 180s - no changes found 180s - not updating diverged bookmark master 180s - $ hg -R hgrepo push 180s - pushing to $TESTTMP/repo.git 180s - searching for changes 180s - adding objects 180s - remote: found 0 deltas to reuse 180s - added 1 commits with 1 trees and 1 blobs 180s - updating reference refs/heads/master 180s - 180s -and as an extra test, what if we want to push a commit that's 180s -converted, but gone? 180s - 180s -simply pushing doesn't suffice: 180s - 180s - $ cd hgrepo 180s - $ rm -rf .hg/git 180s - $ hg push 180s - pushing to $TESTTMP/repo.git 180s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 180s - searching for changes 180s - no changes found 180s - [1] 180s - $ cd .. 180s - 180s -but we can't create another commit building on the git history, export 180s -it, and push: 180s - 180s - $ cd hgrepo 180s - $ echo not that > thefile 180s - $ fn_hg_commit -m 'change thefile again' 180s - $ hg gexport 180s - $ rm -rf .hg/git 180s - $ hg push 180s - pushing to $TESTTMP/repo.git 180s - warning: created new git repository at $TESTTMP/hgrepo/.hg/git 180s - searching for changes 180s - abort: cannot push git commit 61619410916a as it is not present locally 180s - (please try pulling first, or as a fallback run git-cleanup to re-export the missing commits) 180s - [255] 180s - $ cd .. 180s 180s ERROR: test-push-missing-commit.t output changed 181s ! 181s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-branch.t 181s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-branch.t.err 181s @@ -13,81 +13,100 @@ 181s $ cd .. 181s $ hg clone gitrepo hgrepo 181s importing 1 git commits 181s - new changesets ff7a2f2d8d70 (1 drafts) 181s - updating to bookmark not-master 181s - 1 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 181s + return f(*args, **kwargs) 181s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 181s + pullop.cgresult = repo.githandler.fetch(remote, heads) 181s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 181s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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 181s $ cd hgrepo 181s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 181s $ hg co master 181s - 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 181s - (activating bookmark master) 181s - $ hg mv alpha beta 181s - $ fn_hg_commit -m 'rename alpha to beta' 181s - $ hg push 181s - pushing to $TESTTMP/gitrepo 181s - searching for changes 181s - adding objects 181s - remote: found 0 deltas to reuse 181s - added 1 commits with 1 trees and 0 blobs 181s - updating reference refs/heads/master 181s - 181s - $ hg branch gamma | grep -v 'permanent and global' 181s - marked working directory as branch gamma 181s - $ fn_hg_commit -m 'started branch gamma' 181s - $ hg push 181s - pushing to $TESTTMP/gitrepo 181s - searching for changes 181s - adding objects 181s - remote: found 0 deltas to reuse 181s - added 1 commits with 1 trees and 0 blobs 181s - updating reference refs/heads/master 181s - 181s - $ hg log --graph 181s - @ changeset: 2:400db38f4f64 181s - | branch: gamma 181s - | bookmark: master 181s - | tag: default/master 181s - | tag: tip 181s - | user: test 181s - | date: Mon Jan 01 00:00:12 2007 +0000 181s - | summary: started branch gamma 181s - | 181s - o changeset: 1:3baa67317a4d 181s - | user: test 181s - | date: Mon Jan 01 00:00:11 2007 +0000 181s - | summary: rename alpha to beta 181s - | 181s - o changeset: 0:ff7a2f2d8d70 181s - bookmark: not-master 181s - tag: default/not-master 181s - user: test 181s - date: Mon Jan 01 00:00:10 2007 +0000 181s - summary: add alpha 181s - 181s - 181s - $ cd .. 181s - $ hg clone -U gitrepo hgrepo2 181s - importing 3 git commits 181s - new changesets ff7a2f2d8d70:400db38f4f64 (3 drafts) 181s - $ hg -R hgrepo2 log --graph 181s - o changeset: 2:400db38f4f64 181s - | branch: gamma 181s - | bookmark: master 181s - | tag: default/master 181s - | tag: tip 181s - | user: test 181s - | date: Mon Jan 01 00:00:12 2007 +0000 181s - | summary: started branch gamma 181s - | 181s - o changeset: 1:3baa67317a4d 181s - | user: test 181s - | date: Mon Jan 01 00:00:11 2007 +0000 181s - | summary: rename alpha to beta 181s - | 181s - o changeset: 0:ff7a2f2d8d70 181s - bookmark: not-master 181s - tag: default/not-master 181s - user: test 181s - date: Mon Jan 01 00:00:10 2007 +0000 181s - summary: add alpha 181s - 181s 181s ERROR: test-hg-branch.t output changed 182s ! 182s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull-after-strip.t 182s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull-after-strip.t.err 182s @@ -16,81 +16,99 @@ 182s $ cd .. 182s $ hg clone -U gitrepo hgrepo 182s importing 2 git commits 182s - new changesets ff7a2f2d8d70:7fe02317c63d (2 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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 182s + return f(*args, **kwargs) 182s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 182s + pullop.cgresult = repo.githandler.fetch(remote, heads) 182s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 182s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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: 26: cd: can't cd to hgrepo 182s $ hg up master 182s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 182s - (activating bookmark master) 182s - $ hg log --graph 182s - @ changeset: 1:7fe02317c63d 182s - | bookmark: master 182s - | tag: default/master 182s - | tag: thetag 182s - | tag: tip 182s - | user: test 182s - | date: Mon Jan 01 00:00:11 2007 +0000 182s - | summary: add beta 182s - | 182s - o changeset: 0:ff7a2f2d8d70 182s - user: test 182s - date: Mon Jan 01 00:00:10 2007 +0000 182s - summary: add alpha 182s - 182s - $ cd ../gitrepo 182s - $ echo beta line 2 >> beta 182s - $ git add beta 182s - $ fn_git_commit -m 'add to beta' 182s - 182s - $ cd .. 182s - $ cd hgrepo 182s - $ hg debugstrip --no-backup tip 182s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 182s - $ hg pull 182s - pulling from $TESTTMP/gitrepo 182s - importing 1 git commits 182s - abort: you appear to have run strip - please run hg git-cleanup 182s - [255] 182s - $ hg tags 182s - tip 0:ff7a2f2d8d70 182s - $ hg git-cleanup 182s - git commit map cleaned 182s - 182s -pull works after 'hg git-cleanup' 182s - 182s - $ hg pull 182s - pulling from $TESTTMP/gitrepo 182s - importing 2 git commits 182s - updating bookmark master 182s - new changesets 7fe02317c63d:cc1e605d90db (2 drafts) 182s - (run 'hg update' to get a working copy) 182s - $ hg log --graph 182s - o changeset: 2:cc1e605d90db 182s - | bookmark: master 182s - | tag: default/master 182s - | tag: tip 182s - | user: test 182s - | date: Mon Jan 01 00:00:12 2007 +0000 182s - | summary: add to beta 182s - | 182s - o changeset: 1:7fe02317c63d 182s - | tag: thetag 182s - | user: test 182s - | date: Mon Jan 01 00:00:11 2007 +0000 182s - | summary: add beta 182s - | 182s - @ changeset: 0:ff7a2f2d8d70 182s - user: test 182s - date: Mon Jan 01 00:00:10 2007 +0000 182s - summary: add alpha 182s - 182s - 182s - $ cd .. 182s - 182s -Check that we also remove bad refs: 182s - 182s - $ cd hgrepo 182s - $ echo e93b671cb24bff41779187edff99178e2597c2 > .hg/git/refs/tags/bad-tag 182s - $ hg git-cleanup 182s - git commit map cleaned 182s - $ test -e .hg/git/refs/tags/bad-tag 182s - [1] 182s 182s ERROR: test-pull-after-strip.t output changed 182s ! 182s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-syntax.t 182s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-syntax.t.err 182s @@ -39,53 +39,99 @@ 182s 182s $ hg clone -U repo.git hgrepo 182s importing 3 git commits 182s - new changesets e532b2bfda10:3c4fd561cbeb (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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 182s + return f(*args, **kwargs) 182s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 182s + pullop.cgresult = repo.githandler.fetch(remote, heads) 182s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 182s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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: 42: cd: can't cd to hgrepo 182s $ hg up master 182s - Cloning into '$TESTTMP/hgrepo/subrepo1'... 182s - done. 182s - Cloning into '$TESTTMP/hgrepo/xyz/subrepo2'... 182s - done. 182s - cloning subrepo subrepo1 from $TESTTMP/gitsubrepo 182s - cloning subrepo xyz/subrepo2 from $TESTTMP/gitsubrepo 182s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 182s - (activating bookmark master) 182s - $ cat >> .hgsub < # this is a comment 182s - > [subpaths] 182s - > flaf = blyf 182s - > EOF 182s - $ fn_hg_commit -m 'add comment & subsection' 182s - $ hg push 182s - pushing to $TESTTMP/repo.git 182s - searching for changes 182s - adding objects 182s - remote: found 0 deltas to reuse 182s - added 1 commits with 1 trees and 0 blobs 182s - updating reference refs/heads/master 182s - $ cd .. 182s - 182s - $ cd gitrepo 182s - $ git pull --ff-only 182s - From $TESTTMP/repo 182s - 89c22d7..106b34e master -> origin/master 182s - Updating 89c22d7..106b34e 182s - Fast-forward 182s - $ cat .gitmodules 182s - [submodule "subrepo1"] 182s - path = subrepo1 182s - url = ../gitsubrepo 182s - [submodule "xyz/subrepo2"] 182s - path = xyz/subrepo2 182s - url = ../gitsubrepo 182s - $ cd .. 182s - 182s -We broke bidirectionality: 182s - 182s - $ hg clone -U repo.git hgrepo2 182s - importing 4 git commits 182s - new changesets e532b2bfda10:cbf584fe001b (4 drafts) 182s - $ hg id -r tip hgrepo 182s - c58a542b18bc default/master/tip master 182s - $ hg id -r tip hgrepo2 182s - cbf584fe001b default/master/tip master 182s 182s ERROR: test-subrepos-syntax.t output changed 185s ! 185s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-multiple-remotes.t 185s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-multiple-remotes.t.err 185s @@ -28,50 +28,175 @@ 185s $ hg pull 185s pulling from $TESTTMP/gitrepo 185s importing 1 git commits 185s - adding bookmark master 185s - adding bookmark not-master 185s - new changesets ff7a2f2d8d70 (1 drafts) 185s - (run 'hg update' to get a working copy) 185s - pulling from $TESTTMP/repo.git 185s - no changes found 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 5235, in pull 185s + modheads = exchange.pull( 185s + ~~~~~~~~~~~~~^ 185s + repo, 185s + ^^^^^ 185s + ...<6 lines>... 185s + confirm=opts.get('confirm'), 185s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + ).cgresult 185s + ^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 185s + return f(*args, **kwargs) 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 185s + pullop.cgresult = repo.githandler.fetch(remote, heads) 185s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 185s + imported = self.import_git_objects( 185s + b'pull', 185s + ...<2 lines>... 185s + heads=heads, 185s + ) 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 185s + self.import_git_commit( 185s + ~~~~~~~~~~~~~~~~~~~~~~^ 185s + command, 185s + ^^^^^^^^ 185s + self.git[commit.sha], 185s + ^^^^^^^^^^^^^^^^^^^^^ 185s + commit.phase, 185s + ^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 185s + files, gitlinks, git_renames = self.get_files_changed( 185s + ~~~~~~~~~~~~~~~~~~~~~~^ 185s + commit, detect_renames 185s + ^^^^^^^^^^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 185s + oldfile, oldmode, oldsha = change.old 185s + ^^^^^^^^^^^^^^^^^^^^^^^^ 185s + TypeError: cannot unpack non-iterable NoneType object 185s + [1] 185s $ hg tags 185s - tip 0:ff7a2f2d8d70 185s - git/not-master 0:ff7a2f2d8d70 185s - git/master 0:ff7a2f2d8d70 185s - bare/not-master 0:ff7a2f2d8d70 185s - bare/master 0:ff7a2f2d8d70 185s - also-git/not-master 0:ff7a2f2d8d70 185s - also-git/master 0:ff7a2f2d8d70 185s - also-bare/not-master 0:ff7a2f2d8d70 185s - also-bare/master 0:ff7a2f2d8d70 185s + tip -1:000000000000 185s 185s $ hg up master 185s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 185s - (activating bookmark master) 185s + abort: unknown revision 'master' 185s + [10] 185s $ echo beta > beta 185s $ fn_hg_commit -A -m "add beta" 185s $ hg push 185s pushing to $TESTTMP/gitrepo 185s - searching for changes 185s - adding objects 185s - remote: found 0 deltas to reuse 185s - added 1 commits with 1 trees and 1 blobs 185s - updating reference refs/heads/master 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 1 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.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 185s + return f(*args, **kwargs) 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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.UPNtUL/build.0dG/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.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 185s + all_exportable = self.export_commits() 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 185s + self.export_git_objects() 185s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 185s + packer.pack(synchronous=True) 185s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 185s + _process_batch(self.ui, self.object_store, todo) 185s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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 $ hg tags 185s - tip 1:47580592d3d6 185s - git/master 1:47580592d3d6 185s - bare/master 1:47580592d3d6 185s - also-git/master 1:47580592d3d6 185s - also-bare/master 1:47580592d3d6 185s - git/not-master 0:ff7a2f2d8d70 185s - bare/not-master 0:ff7a2f2d8d70 185s - also-git/not-master 0:ff7a2f2d8d70 185s - also-bare/not-master 0:ff7a2f2d8d70 185s - 185s + tip 0:59e1f63242de 185s + 185s 185s ERROR: test-multiple-remotes.t output changed 185s ! 185s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gitignore.t 185s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gitignore.t.err 185s @@ -27,6 +27,63 @@ 185s it's gone: 185s 185s $ hg gexport 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 "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 185s + repo.githandler.export_commits() 185s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 185s + self.export_git_objects() 185s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 185s + packer.pack(synchronous=True) 185s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 185s + _process_batch(self.ui, self.object_store, todo) 185s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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 $ hg status 185s ? .gitignore 185s ? bar 185s 185s ERROR: test-gitignore.t output changed 185s ! 185s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-merge.t 185s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-merge.t.err 185s @@ -31,59 +31,101 @@ 185s 185s $ hg clone gitrepo hgrepo 185s importing 4 git commits 185s - new changesets ff7a2f2d8d70:89ca4a68d6b9 (4 drafts) 185s - updating to bookmark master 185s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 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 2046, in clone 185s + r = hg.clone( 185s + ui, 185s + ...<11 lines>... 185s + depth=opts.get('depth') or None, 185s + ) 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 185s + srcpeer, destpeer = orig(*args, **opts) 185s + ~~~~^^^^^^^^^^^^^^^ 185s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 185s + exchange.pull( 185s + ~~~~~~~~~~~~~^ 185s + local, 185s + ^^^^^^ 185s + ...<5 lines>... 185s + depth=depth, 185s + ^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 185s + return f(*args, **kwargs) 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 185s + pullop.cgresult = repo.githandler.fetch(remote, heads) 185s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 185s + imported = self.import_git_objects( 185s + b'pull', 185s + ...<2 lines>... 185s + heads=heads, 185s + ) 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 185s + self.import_git_commit( 185s + ~~~~~~~~~~~~~~~~~~~~~~^ 185s + command, 185s + ^^^^^^^^ 185s + self.git[commit.sha], 185s + ^^^^^^^^^^^^^^^^^^^^^ 185s + commit.phase, 185s + ^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 185s + files, gitlinks, git_renames = self.get_files_changed( 185s + ~~~~~~~~~~~~~~~~~~~~~~^ 185s + commit, detect_renames 185s + ^^^^^^^^^^^^^^^^^^^^^^ 185s + ) 185s + ^ 185s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 185s + oldfile, oldmode, oldsha = change.old 185s + ^^^^^^^^^^^^^^^^^^^^^^^^ 185s + TypeError: cannot unpack non-iterable NoneType object 185s + [1] 185s $ cd hgrepo 185s + $TESTTMP.sh: 40: cd: can't cd to hgrepo 185s 185s clear the cache to be sure it is regenerated correctly 185s $ hg debug-remove-hggit-state 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 4 commits with 4 trees and 3 blobs 185s - adding reference refs/heads/beta 185s - adding reference refs/heads/master 185s - 185s - $ cd .. 185s -git log in repo pushed from hg 185s - $ git --git-dir=repo.git log --pretty=medium master | sed 's/\.\.\.//g' 185s - commit 5806851511aaf3bfe813ae3a86c5027165fa9b96 185s - Merge: e5023f9 9497a4e 185s - Author: test 185s - Date: Mon Jan 1 00:00:12 2007 +0000 185s - 185s - Merge branch 'beta' 185s - 185s - commit e5023f9e5cb24fdcec7b6c127cec45d8888e35a9 185s - Author: test 185s - Date: Mon Jan 1 00:00:12 2007 +0000 185s - 185s - add gamma 185s - 185s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 185s - Author: test 185s - Date: Mon Jan 1 00:00:11 2007 +0000 185s - 185s - add beta 185s - 185s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 185s - Author: test 185s - Date: Mon Jan 1 00:00:10 2007 +0000 185s - 185s - add alpha 185s - $ git --git-dir=repo.git log --pretty=medium beta | sed 's/\.\.\.//g' 185s - commit 9497a4ee62e16ee641860d7677cdb2589ea15554 185s - Author: test 185s - Date: Mon Jan 1 00:00:11 2007 +0000 185s - 185s - add beta 185s - 185s - commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 185s - Author: test 185s - Date: Mon Jan 1 00:00:10 2007 +0000 185s - 185s - add alpha 185s 185s ERROR: test-merge.t output changed 186s ! 186s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-tags.t 186s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-tags.t.err 186s @@ -17,68 +17,100 @@ 186s $ cd .. 186s $ hg clone -U repo.git hgrepo 186s importing 1 git commits 186s - new changesets ff7a2f2d8d70 (1 drafts) 186s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 186s + ** which supports versions 6.9 of Mercurial. 186s + ** Please disable "hggit" and try your action again. 186s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 186s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 186s + ** Mercurial Distributed SCM (version 7.0.1) 186s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 186s + Traceback (most recent call last): 186s + File "/usr/bin/hg", line 51, in 186s + dispatch.run() 186s + ~~~~~~~~~~~~^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 186s + status = dispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 186s + status = _rundispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 186s + ret = _runcatch(req) or 0 186s + ~~~~~~~~~^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 186s + return _callcatch(ui, _runcatchfunc) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 186s + return scmutil.callcatch(ui, func) 186s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 186s + return func() 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 186s + return _dispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 186s + return runcommand( 186s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 186s + ) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 186s + ret = _runcommand(ui, options, cmd, d) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 186s + return cmdfunc() 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 186s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 186s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 186s + return func(*args, **kwargs) 186s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 186s + r = hg.clone( 186s + ui, 186s + ...<11 lines>... 186s + depth=opts.get('depth') or None, 186s + ) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 186s + srcpeer, destpeer = orig(*args, **opts) 186s + ~~~~^^^^^^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 186s + exchange.pull( 186s + ~~~~~~~~~~~~~^ 186s + local, 186s + ^^^^^^ 186s + ...<5 lines>... 186s + depth=depth, 186s + ^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 186s + return f(*args, **kwargs) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 186s + pullop.cgresult = repo.githandler.fetch(remote, heads) 186s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 186s + imported = self.import_git_objects( 186s + b'pull', 186s + ...<2 lines>... 186s + heads=heads, 186s + ) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 186s + self.import_git_commit( 186s + ~~~~~~~~~~~~~~~~~~~~~~^ 186s + command, 186s + ^^^^^^^^ 186s + self.git[commit.sha], 186s + ^^^^^^^^^^^^^^^^^^^^^ 186s + commit.phase, 186s + ^^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 186s + files, gitlinks, git_renames = self.get_files_changed( 186s + ~~~~~~~~~~~~~~~~~~~~~~^ 186s + commit, detect_renames 186s + ^^^^^^^^^^^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 186s + oldfile, oldmode, oldsha = change.old 186s + ^^^^^^^^^^^^^^^^^^^^^^^^ 186s + TypeError: cannot unpack non-iterable NoneType object 186s + [1] 186s 186s $ cd hgrepo 186s + $TESTTMP.sh: 22: cd: can't cd to hgrepo 186s $ hg co master 186s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 186s - (activating bookmark master) 186s - $ fn_hg_tag alpha 186s - $ hg push 186s - pushing to $TESTTMP/repo.git 186s - searching for changes 186s - adding objects 186s - remote: found 0 deltas to reuse 186s - added 1 commits with 1 trees and 1 blobs 186s - updating reference refs/heads/master 186s - adding reference refs/tags/alpha 186s - 186s - $ hg log --graph 186s - @ changeset: 1:e8b150f84560 186s - | bookmark: master 186s - | tag: default/master 186s - | tag: tip 186s - | user: test 186s - | date: Mon Jan 01 00:00:11 2007 +0000 186s - | summary: Added tag alpha for changeset ff7a2f2d8d70 186s - | 186s - o changeset: 0:ff7a2f2d8d70 186s - tag: alpha 186s - user: test 186s - date: Mon Jan 01 00:00:10 2007 +0000 186s - summary: add alpha 186s - 186s - 186s - $ cd .. 186s - $ cd gitrepo 186s -git should have the tag alpha 186s - $ git fetch origin 186s - From $TESTTMP/repo 186s - 7eeab2e..bbae830 master -> origin/master 186s - * [new tag] alpha -> alpha 186s - $ cd .. 186s - 186s - $ hg clone repo.git hgrepo2 186s - importing 2 git commits 186s - new changesets ff7a2f2d8d70:e8b150f84560 (2 drafts) 186s - updating to bookmark master 186s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 186s - $ hg -R hgrepo2 log --graph 186s - @ changeset: 1:e8b150f84560 186s - | bookmark: master 186s - | tag: default/master 186s - | tag: tip 186s - | user: test 186s - | date: Mon Jan 01 00:00:11 2007 +0000 186s - | summary: Added tag alpha for changeset ff7a2f2d8d70 186s - | 186s - o changeset: 0:ff7a2f2d8d70 186s - tag: alpha 186s - user: test 186s - date: Mon Jan 01 00:00:10 2007 +0000 186s - summary: add alpha 186s - 186s - 186s -the tag should be in .hgtags 186s - $ cat hgrepo2/.hgtags 186s - ff7a2f2d8d7099694ae1e8b03838d40575bebb63 alpha 186s 186s ERROR: test-hg-tags.t output changed 186s ! 186s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-clone.t 186s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-hg-clone.t.err 186s @@ -12,87 +12,106 @@ 186s 186s $ hg clone -U gitrepo hgrepo 186s importing 1 git commits 186s - new changesets ff7a2f2d8d70 (1 drafts) 186s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 186s + ** which supports versions 6.9 of Mercurial. 186s + ** Please disable "hggit" and try your action again. 186s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 186s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 186s + ** Mercurial Distributed SCM (version 7.0.1) 186s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 186s + Traceback (most recent call last): 186s + File "/usr/bin/hg", line 51, in 186s + dispatch.run() 186s + ~~~~~~~~~~~~^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 186s + status = dispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 186s + status = _rundispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 186s + ret = _runcatch(req) or 0 186s + ~~~~~~~~~^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 186s + return _callcatch(ui, _runcatchfunc) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 186s + return scmutil.callcatch(ui, func) 186s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 186s + return func() 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 186s + return _dispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 186s + return runcommand( 186s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 186s + ) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 186s + ret = _runcommand(ui, options, cmd, d) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 186s + return cmdfunc() 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 186s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 186s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 186s + return func(*args, **kwargs) 186s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 186s + r = hg.clone( 186s + ui, 186s + ...<11 lines>... 186s + depth=opts.get('depth') or None, 186s + ) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 186s + srcpeer, destpeer = orig(*args, **opts) 186s + ~~~~^^^^^^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 186s + exchange.pull( 186s + ~~~~~~~~~~~~~^ 186s + local, 186s + ^^^^^^ 186s + ...<5 lines>... 186s + depth=depth, 186s + ^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 186s + return f(*args, **kwargs) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 186s + pullop.cgresult = repo.githandler.fetch(remote, heads) 186s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 186s + imported = self.import_git_objects( 186s + b'pull', 186s + ...<2 lines>... 186s + heads=heads, 186s + ) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 186s + self.import_git_commit( 186s + ~~~~~~~~~~~~~~~~~~~~~~^ 186s + command, 186s + ^^^^^^^^ 186s + self.git[commit.sha], 186s + ^^^^^^^^^^^^^^^^^^^^^ 186s + commit.phase, 186s + ^^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 186s + files, gitlinks, git_renames = self.get_files_changed( 186s + ~~~~~~~~~~~~~~~~~~~~~~^ 186s + commit, detect_renames 186s + ^^^^^^^^^^^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 186s + oldfile, oldmode, oldsha = change.old 186s + ^^^^^^^^^^^^^^^^^^^^^^^^ 186s + TypeError: cannot unpack non-iterable NoneType object 186s + [1] 186s 186s By default, the Git state isn't preserved across a copying/linking 186s clone 186s 186s $ hg clone -U hgrepo otherhgrepo 186s + abort: repository hgrepo not found 186s + [255] 186s $ cd otherhgrepo 186s + $TESTTMP.sh: 22: cd: can't cd to otherhgrepo 186s $ find .hg -name 'git*' | sort 186s - $ hg tags -v 186s - tip 0:ff7a2f2d8d70 186s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 186s - $ cd .. 186s - $ rm -r otherhgrepo 186s - 186s -Nor using a pull clone 186s - 186s - $ hg clone -U --pull hgrepo otherhgrepo 186s - requesting all changes 186s - adding changesets 186s - adding manifests 186s - adding file changes 186s - added 1 changesets with 1 changes to 1 files 186s - new changesets ff7a2f2d8d70 186s - $ cd otherhgrepo 186s - $ find .hg -name 'git*' | sort 186s - $ hg tags -v 186s - tip 0:ff7a2f2d8d70 186s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 186s - $ cd .. 186s - $ rm -r otherhgrepo 186s - 186s -But we can enable it! 186s - 186s - $ cat >> $HGRCPATH < [experimental] 186s - > hg-git-serve = yes 186s - > EOF 186s - 186s -Check transferring between Mercurial repositories using a 186s -copying/linking clone 186s - 186s - $ hg clone -U hgrepo otherhgrepo 186s - $ cd otherhgrepo 186s - $ find .hg -name 'git*' | sort 186s - $ hg tags -q 186s - tip 186s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 186s - $ cd .. 186s - 186s -Checking using a pull clone 186s - 186s - $ rm -rf otherhgrepo 186s - $ hg clone -U --pull hgrepo otherhgrepo 186s - requesting all changes 186s - adding changesets 186s - adding manifests 186s - adding file changes 186s - added 1 changesets with 1 changes to 1 files 186s - new changesets ff7a2f2d8d70 186s - $ cd otherhgrepo 186s - $ hg tags -q 186s - tip 186s - alpha 186s - $ hg log -r 'fromgit()' -T '{rev}:{node|short} {gitnode|short}\n' 186s - 0:ff7a2f2d8d70 7eeab2ea75ec 186s - $ cd .. 186s - 186s -Can we repopulate the state from a Mercurial repository? 186s - 186s - $ cd otherhgrepo 186s - $ hg debug-remove-hggit-state 186s - clearing out the git cache data 186s - $ hg log -qr 'fromgit()' 186s - $ hg tags 186s - tip 0:ff7a2f2d8d70 186s - $ hg pull 186s - pulling from $TESTTMP/hgrepo 186s - searching for changes 186s - no changes found 186s - $ hg log -qr 'fromgit()' 186s - $ hg tags 186s - tip 0:ff7a2f2d8d70 186s - 186s -Sadly, no. 186s 186s ERROR: test-hg-clone.t output changed 186s ! 186s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-detached.t 186s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-detached.t.err 186s @@ -41,36 +41,99 @@ 186s 186s $ hg clone gitrepo hgrepo 186s importing 1 git commits 186s - new changesets ff7a2f2d8d70 (1 drafts) 186s - updating to bookmark master 186s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 186s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 186s + ** which supports versions 6.9 of Mercurial. 186s + ** Please disable "hggit" and try your action again. 186s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 186s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 186s + ** Mercurial Distributed SCM (version 7.0.1) 186s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 186s + Traceback (most recent call last): 186s + File "/usr/bin/hg", line 51, in 186s + dispatch.run() 186s + ~~~~~~~~~~~~^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 186s + status = dispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 186s + status = _rundispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 186s + ret = _runcatch(req) or 0 186s + ~~~~~~~~~^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 186s + return _callcatch(ui, _runcatchfunc) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 186s + return scmutil.callcatch(ui, func) 186s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 186s + return func() 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 186s + return _dispatch(req) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 186s + return runcommand( 186s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 186s + ) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 186s + ret = _runcommand(ui, options, cmd, d) 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 186s + return cmdfunc() 186s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 186s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 186s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 186s + return func(*args, **kwargs) 186s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 186s + r = hg.clone( 186s + ui, 186s + ...<11 lines>... 186s + depth=opts.get('depth') or None, 186s + ) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 186s + srcpeer, destpeer = orig(*args, **opts) 186s + ~~~~^^^^^^^^^^^^^^^ 186s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 186s + exchange.pull( 186s + ~~~~~~~~~~~~~^ 186s + local, 186s + ^^^^^^ 186s + ...<5 lines>... 186s + depth=depth, 186s + ^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 186s + return f(*args, **kwargs) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 186s + pullop.cgresult = repo.githandler.fetch(remote, heads) 186s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 186s + imported = self.import_git_objects( 186s + b'pull', 186s + ...<2 lines>... 186s + heads=heads, 186s + ) 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 186s + self.import_git_commit( 186s + ~~~~~~~~~~~~~~~~~~~~~~^ 186s + command, 186s + ^^^^^^^^ 186s + self.git[commit.sha], 186s + ^^^^^^^^^^^^^^^^^^^^^ 186s + commit.phase, 186s + ^^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 186s + files, gitlinks, git_renames = self.get_files_changed( 186s + ~~~~~~~~~~~~~~~~~~~~~~^ 186s + commit, detect_renames 186s + ^^^^^^^^^^^^^^^^^^^^^^ 186s + ) 186s + ^ 186s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 186s + oldfile, oldmode, oldsha = change.old 186s + ^^^^^^^^^^^^^^^^^^^^^^^^ 186s + TypeError: cannot unpack non-iterable NoneType object 186s + [1] 186s $ cd hgrepo 186s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 186s $ echo beta > beta 186s - $ hg add beta 186s - $ fn_hg_commit -m "add beta" 186s - 186s -Pushing that changeset, with phases, publishes the detached HEAD. 186s -Whether this should happen is debatable, but it's a side effect from 186s -the fact that pushing to the remote HEAD, with HEAD being the usual 186s -symref, should publish it. 186s - 186s - $ hg push -v --config hggit.usephases=yes 186s - pushing to $TESTTMP/gitrepo 186s - finding unexported changesets 186s - exporting 1 changesets 186s - converting revision 47580592d3d6492421a1e6cebc5c2d701a2e858b 186s - packing 3 loose objects... 186s - searching for changes 186s - remote: counting objects: 5, done. 186s - 1 commits found 186s - adding objects 186s - remote: counting objects: 5, done. 186s - remote: found 0 deltas to reuse 186s - added 1 commits with 1 trees and 1 blobs 186s - updating reference default::refs/heads/master => GIT:0f378ab6 186s - publishing remote HEAD 186s - $ hg phase 'all()' 186s - 0: public 186s - 1: draft 186s - $ cd .. 186s - 186s 186s ERROR: test-push-detached.t output changed 187s ! 187s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-serve-git.t 187s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-serve-git.t.err 187s @@ -48,13 +48,104 @@ 187s \r (no-eol) (esc) 187s \r (no-eol) (esc) 187s importing commits 1/2 b23744d34f97 [======> ]\r (no-eol) (esc) 187s - importing commits 2/2 3af9773036a9 [=============>]\r (no-eol) (esc) 187s \r (no-eol) (esc) 187s importing 2 git commits 187s - new changesets c4d188f6e13d:221dd250e933 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 "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 187s + r = hg.clone( 187s + ui, 187s + ...<11 lines>... 187s + depth=opts.get('depth') or None, 187s + ) 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 187s + srcpeer, destpeer = orig(*args, **opts) 187s + ~~~~^^^^^^^^^^^^^^^ 187s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 187s + exchange.pull( 187s + ~~~~~~~~~~~~~^ 187s + local, 187s + ^^^^^^ 187s + ...<5 lines>... 187s + depth=depth, 187s + ^^^^^^^^^^^^ 187s + ) 187s + ^ 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 187s + return f(*args, **kwargs) 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 187s + pullop.cgresult = repo.githandler.fetch(remote, heads) 187s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 187s + imported = self.import_git_objects( 187s + b'pull', 187s + ...<2 lines>... 187s + heads=heads, 187s + ) 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 187s + self.import_git_commit( 187s + ~~~~~~~~~~~~~~~~~~~~~~^ 187s + command, 187s + ^^^^^^^^ 187s + self.git[commit.sha], 187s + ^^^^^^^^^^^^^^^^^^^^^ 187s + commit.phase, 187s + ^^^^^^^^^^^^^ 187s + ) 187s + ^ 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 187s + files, gitlinks, git_renames = self.get_files_changed( 187s + ~~~~~~~~~~~~~~~~~~~~~~^ 187s + commit, detect_renames 187s + ^^^^^^^^^^^^^^^^^^^^^^ 187s + ) 187s + ^ 187s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 187s + oldfile, oldmode, oldsha = change.old 187s + ^^^^^^^^^^^^^^^^^^^^^^^^ 187s + TypeError: cannot unpack non-iterable NoneType object 187s + [1] 187s $ hg log -T 'HG:{node|short} GIT:{gitnode|short}\n' -R copy 187s - HG:221dd250e933 GIT:3af9773036a9 187s - HG:c4d188f6e13d GIT:b23744d34f97 187s + abort: repository copy not found 187s + [255] 187s $ hg tags -v -R copy 187s - tip 1:221dd250e933 187s - default/master 1:221dd250e933 git-remote 187s + abort: repository copy not found 187s + [255] 187s 187s ERROR: test-serve-git.t output changed 190s ! 190s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-convergedmerge.t 190s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-convergedmerge.t.err 190s @@ -49,34 +49,88 @@ 190s $ hg bookmark -r4 master 190s $ hg push -r master ../repo.git 190s pushing to ../repo.git 190s - searching for changes 190s - adding objects 190s - remote: found 0 deltas to reuse 190s - added 5 commits with 3 trees and 3 blobs 190s - adding reference refs/heads/master 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 "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 190s + pushop = exchange.push( 190s + repo, 190s + ...<6 lines>... 190s + opargs=opargs, 190s + ) 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 190s + return f(*args, **kwargs) 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 190s + pushop.cgresult = repo.githandler.push( 190s + ~~~~~~~~~~~~~~~~~~~~^ 190s + remote.path, revs, bookmarks, force 190s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 190s + ) 190s + ^ 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 190s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 190s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 190s + all_exportable = self.export_commits() 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 190s + self.export_git_objects() 190s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 190s + packer.pack(synchronous=True) 190s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 190s + _process_batch(self.ui, self.object_store, todo) 190s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 190s + File "/tmp/autopkgtest.UPNtUL/build.0dG/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 $ cd .. 190s 190s $ hg clone repo.git hgrepo2 190s - importing 5 git commits 190s - new changesets 5d1a6b64f9d0:eaa21d002113 (5 drafts) 190s - updating to bookmark master 190s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 190s + updating to branch default 190s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 190s expect the same revision ids as above 190s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 190s - @ 4:1,3 eaa21d002113 1970-01-01 00:00 +0000 test 190s - |\ merge 190s - | | 190s - | o 3 0dbe4ac1a758 1970-01-01 00:00 +0000 test 190s - | | B->C 190s - | | 190s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 190s - | | A->B 190s - | | 190s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 190s - |/ A->C 190s - | 190s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 190s - origin 190s - 190s $ hg -R hgrepo2 gverify 190s - verifying rev eaa21d002113 against git commit fb8c9e2afe5418cfff337eeed79fad5dd58826f0 190s + abort: no git commit found for rev 000000000000 190s + (if this is an octopus merge, verify against the last rev) 190s + [255] 190s 190s ERROR: test-convergedmerge.t output changed 192s ! 192s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-conflict-2.t 192s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-conflict-2.t.err 192s @@ -47,29 +47,84 @@ 192s $ hg bookmark -r tip master 192s $ hg push -r master ../repo.git 192s pushing to ../repo.git 192s - searching for changes 192s - adding objects 192s - remote: found 0 deltas to reuse 192s - added 4 commits with 3 trees and 3 blobs 192s - adding reference refs/heads/master 192s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 192s + ** which supports versions 6.9 of Mercurial. 192s + ** Please disable "hggit" and try your action again. 192s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 192s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 192s + ** Mercurial Distributed SCM (version 7.0.1) 192s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 192s + Traceback (most recent call last): 192s + File "/usr/bin/hg", line 51, in 192s + dispatch.run() 192s + ~~~~~~~~~~~~^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 192s + status = dispatch(req) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 192s + status = _rundispatch(req) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 192s + ret = _runcatch(req) or 0 192s + ~~~~~~~~~^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 192s + return _callcatch(ui, _runcatchfunc) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 192s + return scmutil.callcatch(ui, func) 192s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 192s + return func() 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 192s + return _dispatch(req) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 192s + return runcommand( 192s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 192s + ) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 192s + ret = _runcommand(ui, options, cmd, d) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 192s + return cmdfunc() 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 192s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 192s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 192s + return func(*args, **kwargs) 192s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 192s + pushop = exchange.push( 192s + repo, 192s + ...<6 lines>... 192s + opargs=opargs, 192s + ) 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 192s + return f(*args, **kwargs) 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 192s + pushop.cgresult = repo.githandler.push( 192s + ~~~~~~~~~~~~~~~~~~~~^ 192s + remote.path, revs, bookmarks, force 192s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 192s + ) 192s + ^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 192s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 192s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 192s + all_exportable = self.export_commits() 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 192s + self.export_git_objects() 192s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 192s + packer.pack(synchronous=True) 192s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 192s + _process_batch(self.ui, self.object_store, todo) 192s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 192s + object_store._remove_loose_object(obj.id) 192s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 192s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 192s + [1] 192s $ cd .. 192s 192s $ hg clone repo.git hgrepo2 192s - importing 4 git commits 192s - new changesets 5d1a6b64f9d0:120385945d08 (4 drafts) 192s - updating to bookmark master 192s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 192s + updating to branch default 192s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 192s expect the same revision ids as above 192s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 192s - @ 3:1,2 120385945d08 1970-01-01 00:00 +0000 test 192s - |\ merge to B 192s - | | 192s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 192s - | | A->B 192s - | | 192s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 192s - |/ A->C 192s - | 192s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 192s - origin 192s - 192s 192s ERROR: test-conflict-2.t output changed 192s ! 192s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-draft.t 192s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-phases-draft.t.err 192s @@ -12,73 +12,100 @@ 192s cloning without hggit.usephases does not publish local changesets 192s $ cd .. 192s $ hg clone gitrepo hgrepo | grep -v '^updating' 192s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 192s + ** which supports versions 6.9 of Mercurial. 192s + ** Please disable "hggit" and try your action again. 192s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 192s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 192s + ** Mercurial Distributed SCM (version 7.0.1) 192s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 192s + Traceback (most recent call last): 192s + File "/usr/bin/hg", line 51, in 192s + dispatch.run() 192s + ~~~~~~~~~~~~^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 192s + status = dispatch(req) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 192s + status = _rundispatch(req) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 192s + ret = _runcatch(req) or 0 192s + ~~~~~~~~~^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 192s + return _callcatch(ui, _runcatchfunc) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 192s + return scmutil.callcatch(ui, func) 192s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 192s + return func() 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 192s + return _dispatch(req) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 192s + return runcommand( 192s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 192s + ) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 192s + ret = _runcommand(ui, options, cmd, d) 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 192s + return cmdfunc() 192s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 192s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 192s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 192s + return func(*args, **kwargs) 192s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 192s + r = hg.clone( 192s + ui, 192s + ...<11 lines>... 192s + depth=opts.get('depth') or None, 192s + ) 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 192s + srcpeer, destpeer = orig(*args, **opts) 192s + ~~~~^^^^^^^^^^^^^^^ 192s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 192s + exchange.pull( 192s + ~~~~~~~~~~~~~^ 192s + local, 192s + ^^^^^^ 192s + ...<5 lines>... 192s + depth=depth, 192s + ^^^^^^^^^^^^ 192s + ) 192s + ^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 192s + return f(*args, **kwargs) 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 192s + pullop.cgresult = repo.githandler.fetch(remote, heads) 192s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 192s + imported = self.import_git_objects( 192s + b'pull', 192s + ...<2 lines>... 192s + heads=heads, 192s + ) 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 192s + self.import_git_commit( 192s + ~~~~~~~~~~~~~~~~~~~~~~^ 192s + command, 192s + ^^^^^^^^ 192s + self.git[commit.sha], 192s + ^^^^^^^^^^^^^^^^^^^^^ 192s + commit.phase, 192s + ^^^^^^^^^^^^^ 192s + ) 192s + ^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 192s + files, gitlinks, git_renames = self.get_files_changed( 192s + ~~~~~~~~~~~~~~~~~~~~~~^ 192s + commit, detect_renames 192s + ^^^^^^^^^^^^^^^^^^^^^^ 192s + ) 192s + ^ 192s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 192s + oldfile, oldmode, oldsha = change.old 192s + ^^^^^^^^^^^^^^^^^^^^^^^^ 192s + TypeError: cannot unpack non-iterable NoneType object 192s importing 1 git commits 192s - new changesets ff7a2f2d8d70 (1 drafts) 192s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 192s 192s $ cd hgrepo 192s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 192s $ hg phase -r master 192s - 0: draft 192s - 192s -pulling advances the draft phase, though 192s - 192s - $ hg phase -fs 0 192s - $ hg pull 192s - pulling from $TESTTMP/gitrepo 192s - no changes found 192s - $ hg phase tip 192s - 0: draft 192s - 192s -even if we don't have a name? 192s - 192s - $ hg phase -fs 0 192s - $ mv .hg/hgrc .hg/hgrc.bak 192s - $ hg pull ../gitrepo 192s - pulling from ../gitrepo 192s - no changes found 192s - $ hg phase tip 192s - 0: draft 192s - $ mv .hg/hgrc.bak .hg/hgrc 192s - $ cd .. 192s - 192s - 192s -pulling without hggit.usephases does not publish local changesets 192s - $ cd gitrepo 192s - $ git checkout -q master 192s - $ echo beta > beta 192s - $ git add beta 192s - $ fn_git_commit -m 'add beta' 192s - $ cd .. 192s - 192s - $ cd hgrepo 192s - $ hg pull 192s - pulling from $TESTTMP/gitrepo 192s - importing 1 git commits 192s - updating bookmark master 192s - new changesets 7fe02317c63d (1 drafts) 192s - (run 'hg update' to get a working copy) 192s - $ hg phase -r master 192s - 1: draft 192s - 192s -pulling with git.public does not publish local changesets 192s - $ hg --config git.public=master pull 192s - pulling from $TESTTMP/gitrepo 192s - no changes found 192s - $ hg phase -r master 192s - 1: draft 192s - 192s -pushing without hggit.usephases does not publish local changesets 192s - $ hg update master 192s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 192s - $ echo gamma > gamma 192s - $ hg add gamma 192s - $ hg commit -m 'gamma' 192s - $ hg push 192s - pushing to $TESTTMP/gitrepo 192s - searching for changes 192s - adding objects 192s - remote: found 0 deltas to reuse 192s - added 1 commits with 1 trees and 1 blobs 192s - updating reference refs/heads/master 192s - $ hg phase -r master 192s - 2: draft 192s 192s ERROR: test-phases-draft.t output changed 194s ! 194s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-conflict-1.t 194s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-conflict-1.t.err 194s @@ -47,29 +47,84 @@ 194s $ hg bookmark -r tip master 194s $ hg push -r master ../repo.git 194s pushing to ../repo.git 194s - searching for changes 194s - adding objects 194s - remote: found 0 deltas to reuse 194s - added 4 commits with 3 trees and 3 blobs 194s - adding reference refs/heads/master 194s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 194s + ** which supports versions 6.9 of Mercurial. 194s + ** Please disable "hggit" and try your action again. 194s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 194s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 194s + ** Mercurial Distributed SCM (version 7.0.1) 194s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 194s + Traceback (most recent call last): 194s + File "/usr/bin/hg", line 51, in 194s + dispatch.run() 194s + ~~~~~~~~~~~~^^ 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 194s + status = dispatch(req) 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 194s + status = _rundispatch(req) 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 194s + ret = _runcatch(req) or 0 194s + ~~~~~~~~~^^^^^ 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 194s + return _callcatch(ui, _runcatchfunc) 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 194s + return scmutil.callcatch(ui, func) 194s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 194s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 194s + return func() 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 194s + return _dispatch(req) 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 194s + return runcommand( 194s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 194s + ) 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 194s + ret = _runcommand(ui, options, cmd, d) 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 194s + return cmdfunc() 194s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 194s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 194s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 194s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 194s + return func(*args, **kwargs) 194s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 194s + pushop = exchange.push( 194s + repo, 194s + ...<6 lines>... 194s + opargs=opargs, 194s + ) 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 194s + return f(*args, **kwargs) 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 194s + pushop.cgresult = repo.githandler.push( 194s + ~~~~~~~~~~~~~~~~~~~~^ 194s + remote.path, revs, bookmarks, force 194s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 194s + ) 194s + ^ 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 194s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 194s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 194s + all_exportable = self.export_commits() 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 194s + self.export_git_objects() 194s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 194s + packer.pack(synchronous=True) 194s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 194s + _process_batch(self.ui, self.object_store, todo) 194s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 194s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 194s + object_store._remove_loose_object(obj.id) 194s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 194s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 194s + [1] 194s $ cd .. 194s 194s $ hg clone repo.git hgrepo2 194s - importing 4 git commits 194s - new changesets 5d1a6b64f9d0:6c53bc0f062f (4 drafts) 194s - updating to bookmark master 194s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 194s + updating to branch default 194s + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 194s expect the same revision ids as above 194s $ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g' 194s - @ 3:1,2 6c53bc0f062f 1970-01-01 00:00 +0000 test 194s - |\ merge to C 194s - | | 194s - | o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test 194s - | | A->B 194s - | | 194s - o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test 194s - |/ A->C 194s - | 194s - o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test 194s - origin 194s - 194s 194s ERROR: test-conflict-1.t output changed 196s ! 196s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-push.t 196s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-push.t.err 196s @@ -41,11 +41,80 @@ 196s pushing subrepo hg to $TESTTMP/hgsubrepo 196s searching for changes 196s no changes found 196s - searching for changes 196s - adding objects 196s - remote: found 0 deltas to reuse 196s - added 4 commits with 2 trees and 2 blobs 196s - adding reference refs/heads/master 196s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 196s + ** which supports versions 6.9 of Mercurial. 196s + ** Please disable "hggit" and try your action again. 196s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 196s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 196s + ** Mercurial Distributed SCM (version 7.0.1) 196s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 196s + Traceback (most recent call last): 196s + File "/usr/bin/hg", line 51, in 196s + dispatch.run() 196s + ~~~~~~~~~~~~^^ 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 196s + status = dispatch(req) 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 196s + status = _rundispatch(req) 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 196s + ret = _runcatch(req) or 0 196s + ~~~~~~~~~^^^^^ 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 196s + return _callcatch(ui, _runcatchfunc) 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 196s + return scmutil.callcatch(ui, func) 196s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 196s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 196s + return func() 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 196s + return _dispatch(req) 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 196s + return runcommand( 196s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 196s + ) 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 196s + ret = _runcommand(ui, options, cmd, d) 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 196s + return cmdfunc() 196s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 196s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 196s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 196s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 196s + return func(*args, **kwargs) 196s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 196s + pushop = exchange.push( 196s + repo, 196s + ...<6 lines>... 196s + opargs=opargs, 196s + ) 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 196s + return f(*args, **kwargs) 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 196s + pushop.cgresult = repo.githandler.push( 196s + ~~~~~~~~~~~~~~~~~~~~^ 196s + remote.path, revs, bookmarks, force 196s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 196s + ) 196s + ^ 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 196s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 196s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 196s + all_exportable = self.export_commits() 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 196s + self.export_git_objects() 196s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 196s + packer.pack(synchronous=True) 196s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 196s + _process_batch(self.ui, self.object_store, todo) 196s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 196s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 196s + object_store._remove_loose_object(obj.id) 196s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 196s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 196s + [1] 196s $ cat .hgsub 196s hg = ../hgsubrepo 196s git = [git]../gitsubrepo 196s @@ -58,21 +127,14 @@ 196s 196s $ git clone --recurse-submodules repo.git gitrepo 196s Cloning into 'gitrepo'... 196s + warning: You appear to have cloned an empty repository. 196s done. 196s - Submodule 'git' ($TESTTMP/gitsubrepo) registered for path 'git' 196s - Cloning into '$TESTTMP/gitrepo/git'... 196s - done. 196s - Submodule path 'git': checked out 'aaae5224095dca7403147c0e20cbac1f450b0e95' 196s $ cd gitrepo 196s $ ls -A 196s .git 196s - .gitmodules 196s - alpha 196s - git 196s $ cat .gitmodules 196s - [submodule "git"] 196s - path = git 196s - url = ../gitsubrepo 196s + cat: .gitmodules: No such file or directory (os error 2) 196s + [1] 196s $ ls -A git 196s - .git 196s - thefile 196s + ls: cannot access 'git': No such file or directory 196s + [2] 196s 196s ERROR: test-subrepos-push.t output changed 197s ! 197s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull-after-obsolete.t 197s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-pull-after-obsolete.t.err 197s @@ -21,51 +21,99 @@ 197s $ cd .. 197s $ hg clone -U gitrepo hgrepo 197s importing 2 git commits 197s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 197s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 197s + ** which supports versions 6.9 of Mercurial. 197s + ** Please disable "hggit" and try your action again. 197s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 197s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 197s + ** Mercurial Distributed SCM (version 7.0.1) 197s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 197s + Traceback (most recent call last): 197s + File "/usr/bin/hg", line 51, in 197s + dispatch.run() 197s + ~~~~~~~~~~~~^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 197s + status = dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 197s + status = _rundispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 197s + ret = _runcatch(req) or 0 197s + ~~~~~~~~~^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 197s + return _callcatch(ui, _runcatchfunc) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 197s + return scmutil.callcatch(ui, func) 197s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 197s + return func() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 197s + return _dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 197s + return runcommand( 197s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 197s + ) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 197s + ret = _runcommand(ui, options, cmd, d) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 197s + return cmdfunc() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 197s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 197s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 197s + return func(*args, **kwargs) 197s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 197s + r = hg.clone( 197s + ui, 197s + ...<11 lines>... 197s + depth=opts.get('depth') or None, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 197s + srcpeer, destpeer = orig(*args, **opts) 197s + ~~~~^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 197s + exchange.pull( 197s + ~~~~~~~~~~~~~^ 197s + local, 197s + ^^^^^^ 197s + ...<5 lines>... 197s + depth=depth, 197s + ^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 197s + return f(*args, **kwargs) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 197s + pullop.cgresult = repo.githandler.fetch(remote, heads) 197s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 197s + imported = self.import_git_objects( 197s + b'pull', 197s + ...<2 lines>... 197s + heads=heads, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 197s + self.import_git_commit( 197s + ~~~~~~~~~~~~~~~~~~~~~~^ 197s + command, 197s + ^^^^^^^^ 197s + self.git[commit.sha], 197s + ^^^^^^^^^^^^^^^^^^^^^ 197s + commit.phase, 197s + ^^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 197s + files, gitlinks, git_renames = self.get_files_changed( 197s + ~~~~~~~~~~~~~~~~~~~~~~^ 197s + commit, detect_renames 197s + ^^^^^^^^^^^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 197s + oldfile, oldmode, oldsha = change.old 197s + ^^^^^^^^^^^^^^^^^^^^^^^^ 197s + TypeError: cannot unpack non-iterable NoneType object 197s + [1] 197s $ cd hgrepo 197s + $TESTTMP.sh: 31: cd: can't cd to hgrepo 197s $ hg up master 197s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 197s - (activating bookmark master) 197s - $ hg log --graph 197s - @ changeset: 1:7fe02317c63d 197s - | bookmark: master 197s - | tag: default/master 197s - | tag: thetag 197s - | tag: tip 197s - | user: test 197s - | date: Mon Jan 01 00:00:11 2007 +0000 197s - | summary: add beta 197s - | 197s - o changeset: 0:ff7a2f2d8d70 197s - user: test 197s - date: Mon Jan 01 00:00:10 2007 +0000 197s - summary: add alpha 197s - 197s - $ cd ../gitrepo 197s - $ echo beta line 2 >> beta 197s - $ git add beta 197s - $ fn_git_commit -m 'add to beta' 197s - 197s -Create a commit, obsolete it, and pull, to ensure that we can pull if 197s -the tipmost commit is hidden. 197s - 197s - $ cd ../hgrepo 197s - $ hg bookmark --inactive 197s - $ echo gamma > gamma 197s - $ hg add gamma 197s - $ fn_hg_commit -m 'add gamma' 197s - $ hg up master 197s - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 197s - (activating bookmark master) 197s - $ hg log -T '{rev}:{node} {desc}\n' -r tip 197s - 2:4090a1266584bc1a47ce562e9349b1e0f1b44611 add gamma 197s - $ hg debugobsolete 4090a1266584bc1a47ce562e9349b1e0f1b44611 197s - 1 new obsolescence markers 197s - obsoleted 1 changesets 197s - 197s - $ hg pull 197s - pulling from $TESTTMP/gitrepo 197s - importing 1 git commits 197s - updating bookmark master 197s - new changesets cc1e605d90db (1 drafts) 197s - (run 'hg update' to get a working copy) 197s 197s ERROR: test-pull-after-obsolete.t output changed 197s ! 197s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-clone.t 197s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-clone.t.err 197s @@ -15,29 +15,110 @@ 197s 197s $ hg clone gitrepo hgrepo 197s importing 2 git commits 197s - new changesets ff7a2f2d8d70:7fe02317c63d (2 drafts) 197s - updating to bookmark master 197s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 197s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 197s + ** which supports versions 6.9 of Mercurial. 197s + ** Please disable "hggit" and try your action again. 197s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 197s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 197s + ** Mercurial Distributed SCM (version 7.0.1) 197s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 197s + Traceback (most recent call last): 197s + File "/usr/bin/hg", line 51, in 197s + dispatch.run() 197s + ~~~~~~~~~~~~^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 197s + status = dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 197s + status = _rundispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 197s + ret = _runcatch(req) or 0 197s + ~~~~~~~~~^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 197s + return _callcatch(ui, _runcatchfunc) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 197s + return scmutil.callcatch(ui, func) 197s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 197s + return func() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 197s + return _dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 197s + return runcommand( 197s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 197s + ) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 197s + ret = _runcommand(ui, options, cmd, d) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 197s + return cmdfunc() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 197s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 197s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 197s + return func(*args, **kwargs) 197s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 197s + r = hg.clone( 197s + ui, 197s + ...<11 lines>... 197s + depth=opts.get('depth') or None, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 197s + srcpeer, destpeer = orig(*args, **opts) 197s + ~~~~^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 197s + exchange.pull( 197s + ~~~~~~~~~~~~~^ 197s + local, 197s + ^^^^^^ 197s + ...<5 lines>... 197s + depth=depth, 197s + ^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 197s + return f(*args, **kwargs) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 197s + pullop.cgresult = repo.githandler.fetch(remote, heads) 197s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 197s + imported = self.import_git_objects( 197s + b'pull', 197s + ...<2 lines>... 197s + heads=heads, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 197s + self.import_git_commit( 197s + ~~~~~~~~~~~~~~~~~~~~~~^ 197s + command, 197s + ^^^^^^^^ 197s + self.git[commit.sha], 197s + ^^^^^^^^^^^^^^^^^^^^^ 197s + commit.phase, 197s + ^^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 197s + files, gitlinks, git_renames = self.get_files_changed( 197s + ~~~~~~~~~~~~~~~~~~~~~~^ 197s + commit, detect_renames 197s + ^^^^^^^^^^^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 197s + oldfile, oldmode, oldsha = change.old 197s + ^^^^^^^^^^^^^^^^^^^^^^^^ 197s + TypeError: cannot unpack non-iterable NoneType object 197s + [1] 197s $ hg -R hgrepo log --graph 197s - @ changeset: 1:7fe02317c63d 197s - | bookmark: master 197s - | tag: default/master 197s - | tag: tip 197s - | user: test 197s - | date: Mon Jan 01 00:00:11 2007 +0000 197s - | summary: add beta 197s - | 197s - o changeset: 0:ff7a2f2d8d70 197s - user: test 197s - date: Mon Jan 01 00:00:10 2007 +0000 197s - summary: add alpha 197s - 197s + abort: repository hgrepo not found 197s + [255] 197s 197s we should have some bookmarks 197s $ hg -R hgrepo book 197s - * master 1:7fe02317c63d 197s + abort: repository hgrepo not found 197s + [255] 197s $ hg -R hgrepo gverify 197s - verifying rev 7fe02317c63d against git commit 9497a4ee62e16ee641860d7677cdb2589ea15554 197s + abort: repository hgrepo not found 197s + [255] 197s 197s test for ssh vulnerability 197s 197s @@ -53,10 +134,180 @@ 197s abort: potentially unsafe hostname: '-oProxyCommand=rm${IFS}nonexistent' 197s [255] 197s $ hg clone -q 'git+ssh://fakehost|rm${IFS}nonexistent/path' 197s - ssh: * fakehost%7?rm%24%7????%7?nonexistent* (glob) 197s - abort: git remote error: The remote server unexpectedly closed the connection. 197s - [255] 197s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 197s + ** which supports versions 6.9 of Mercurial. 197s + ** Please disable "hggit" and try your action again. 197s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 197s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 197s + ** Mercurial Distributed SCM (version 7.0.1) 197s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 197s + Traceback (most recent call last): 197s + File "/usr/bin/hg", line 51, in 197s + dispatch.run() 197s + ~~~~~~~~~~~~^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 197s + status = dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 197s + status = _rundispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 197s + ret = _runcatch(req) or 0 197s + ~~~~~~~~~^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 197s + return _callcatch(ui, _runcatchfunc) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 197s + return scmutil.callcatch(ui, func) 197s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 197s + return func() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 197s + return _dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 197s + return runcommand( 197s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 197s + ) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 197s + ret = _runcommand(ui, options, cmd, d) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 197s + return cmdfunc() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 197s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 197s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 197s + return func(*args, **kwargs) 197s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 197s + r = hg.clone( 197s + ui, 197s + ...<11 lines>... 197s + depth=opts.get('depth') or None, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 197s + srcpeer, destpeer = orig(*args, **opts) 197s + ~~~~^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 197s + exchange.pull( 197s + ~~~~~~~~~~~~~^ 197s + local, 197s + ^^^^^^ 197s + ...<5 lines>... 197s + depth=depth, 197s + ^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 197s + return f(*args, **kwargs) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 197s + pullop.cgresult = repo.githandler.fetch(remote, heads) 197s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 391, in fetch 197s + result = self.fetch_pack(remote.path, heads) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1644, in fetch_pack 197s + ret = self._call_client( 197s + remote, 197s + ...<4 lines>... 197s + progress.progress, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1680, in _call_client 197s + ret = func(path, *args, **kwargs) 197s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 197s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 197s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 197s + con = self.ssh_vendor.run_command( 197s + self.host, 197s + ...<4 lines>... 197s + **kwargs, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/_ssh.py", line 23, in run_command 197s + assert isinstance(command, str) 197s + ~~~~~~~~~~^^^^^^^^^^^^^^ 197s + AssertionError 197s + [1] 197s $ hg clone -q 'git+ssh://fakehost%7Crm${IFS}nonexistent/path' 197s - ssh: * fakehost%7?rm%24%7????%7?nonexistent* (glob) 197s - abort: git remote error: The remote server unexpectedly closed the connection. 197s - [255] 197s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 197s + ** which supports versions 6.9 of Mercurial. 197s + ** Please disable "hggit" and try your action again. 197s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 197s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 197s + ** Mercurial Distributed SCM (version 7.0.1) 197s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 197s + Traceback (most recent call last): 197s + File "/usr/bin/hg", line 51, in 197s + dispatch.run() 197s + ~~~~~~~~~~~~^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 197s + status = dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 197s + status = _rundispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 197s + ret = _runcatch(req) or 0 197s + ~~~~~~~~~^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 197s + return _callcatch(ui, _runcatchfunc) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 197s + return scmutil.callcatch(ui, func) 197s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 197s + return func() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 197s + return _dispatch(req) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 197s + return runcommand( 197s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 197s + ) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 197s + ret = _runcommand(ui, options, cmd, d) 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 197s + return cmdfunc() 197s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 197s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 197s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 197s + return func(*args, **kwargs) 197s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 197s + r = hg.clone( 197s + ui, 197s + ...<11 lines>... 197s + depth=opts.get('depth') or None, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 197s + srcpeer, destpeer = orig(*args, **opts) 197s + ~~~~^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 197s + exchange.pull( 197s + ~~~~~~~~~~~~~^ 197s + local, 197s + ^^^^^^ 197s + ...<5 lines>... 197s + depth=depth, 197s + ^^^^^^^^^^^^ 197s + ) 197s + ^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 197s + return f(*args, **kwargs) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 197s + pullop.cgresult = repo.githandler.fetch(remote, heads) 197s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 391, in fetch 197s + result = self.fetch_pack(remote.path, heads) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1644, in fetch_pack 197s + ret = self._call_client( 197s + remote, 197s + ...<4 lines>... 197s + progress.progress, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1680, in _call_client 197s + ret = func(path, *args, **kwargs) 197s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 1599, in fetch_pack 197s + proto, can_read, stderr = self._connect(b"upload-pack", path, protocol_version) 197s + ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 197s + File "/usr/lib/python3/dist-packages/dulwich/client.py", line 3139, in _connect 197s + con = self.ssh_vendor.run_command( 197s + self.host, 197s + ...<4 lines>... 197s + **kwargs, 197s + ) 197s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/_ssh.py", line 23, in run_command 197s + assert isinstance(command, str) 197s + ~~~~~~~~~~^^^^^^^^^^^^^^ 197s + AssertionError 197s + [1] 197s 197s ERROR: test-git-clone.t output changed 198s ! 198s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-gpg.t 198s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-git-gpg.t.err 198s @@ -56,22 +56,100 @@ 198s 198s $ hg clone gitrepo hgrepo 198s importing 2 git commits 198s - new changesets ab60c5e55bd6:[0-9a-f]{12,12} \(2 drafts\) (re) 198s - updating to bookmark signed 198s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 198s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 198s + ** which supports versions 6.9 of Mercurial. 198s + ** Please disable "hggit" and try your action again. 198s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 198s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 198s + ** Mercurial Distributed SCM (version 7.0.1) 198s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 198s + Traceback (most recent call last): 198s + File "/usr/bin/hg", line 51, in 198s + dispatch.run() 198s + ~~~~~~~~~~~~^^ 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 198s + status = dispatch(req) 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 198s + status = _rundispatch(req) 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 198s + ret = _runcatch(req) or 0 198s + ~~~~~~~~~^^^^^ 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 198s + return _callcatch(ui, _runcatchfunc) 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 198s + return scmutil.callcatch(ui, func) 198s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 198s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 198s + return func() 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 198s + return _dispatch(req) 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 198s + return runcommand( 198s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 198s + ) 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 198s + ret = _runcommand(ui, options, cmd, d) 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 198s + return cmdfunc() 198s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 198s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 198s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 198s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 198s + return func(*args, **kwargs) 198s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 198s + r = hg.clone( 198s + ui, 198s + ...<11 lines>... 198s + depth=opts.get('depth') or None, 198s + ) 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 198s + srcpeer, destpeer = orig(*args, **opts) 198s + ~~~~^^^^^^^^^^^^^^^ 198s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 198s + exchange.pull( 198s + ~~~~~~~~~~~~~^ 198s + local, 198s + ^^^^^^ 198s + ...<5 lines>... 198s + depth=depth, 198s + ^^^^^^^^^^^^ 198s + ) 198s + ^ 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 198s + return f(*args, **kwargs) 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 198s + pullop.cgresult = repo.githandler.fetch(remote, heads) 198s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 198s + imported = self.import_git_objects( 198s + b'pull', 198s + ...<2 lines>... 198s + heads=heads, 198s + ) 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 198s + self.import_git_commit( 198s + ~~~~~~~~~~~~~~~~~~~~~~^ 198s + command, 198s + ^^^^^^^^ 198s + self.git[commit.sha], 198s + ^^^^^^^^^^^^^^^^^^^^^ 198s + commit.phase, 198s + ^^^^^^^^^^^^^ 198s + ) 198s + ^ 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 198s + files, gitlinks, git_renames = self.get_files_changed( 198s + ~~~~~~~~~~~~~~~~~~~~~~^ 198s + commit, detect_renames 198s + ^^^^^^^^^^^^^^^^^^^^^^ 198s + ) 198s + ^ 198s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 198s + oldfile, oldmode, oldsha = change.old 198s + ^^^^^^^^^^^^^^^^^^^^^^^^ 198s + TypeError: cannot unpack non-iterable NoneType object 198s + [1] 198s 198s $ cd hgrepo 198s + $TESTTMP.sh: 46: cd: can't cd to hgrepo 198s $ hg push ../gitrepo2 -B signed 198s - pushing to ../gitrepo2 198s - searching for changes 198s - adding objects 198s - remote: found 0 deltas to reuse 198s - added 1 commits with 1 trees and 0 blobs 198s - adding reference refs/heads/signed 198s - $ cd .. 198s - 198s -Verify the commit 198s - 198s - $ cd gitrepo2 198s - $ git show --show-signature signed | grep "Good signature from" 198s - gpg: Good signature from "hgtest" [ultimate] 198s 198s ERROR: test-git-gpg.t output changed 201s ! 201s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-annotate.t 201s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-annotate.t.err 201s @@ -46,6 +46,63 @@ 201s 0* a 201s 201s $ hg gexport 201s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 201s + ** which supports versions 6.9 of Mercurial. 201s + ** Please disable "hggit" and try your action again. 201s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 201s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 201s + ** Mercurial Distributed SCM (version 7.0.1) 201s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 201s + Traceback (most recent call last): 201s + File "/usr/bin/hg", line 51, in 201s + dispatch.run() 201s + ~~~~~~~~~~~~^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 201s + status = dispatch(req) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 201s + status = _rundispatch(req) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 201s + ret = _runcatch(req) or 0 201s + ~~~~~~~~~^^^^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 201s + return _callcatch(ui, _runcatchfunc) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 201s + return scmutil.callcatch(ui, func) 201s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 201s + return func() 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 201s + return _dispatch(req) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 201s + return runcommand( 201s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 201s + ) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 201s + ret = _runcommand(ui, options, cmd, d) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 201s + return cmdfunc() 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 201s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 201s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 201s + return func(*args, **kwargs) 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 201s + repo.githandler.export_commits() 201s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 201s + self.export_git_objects() 201s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 201s + packer.pack(synchronous=True) 201s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 201s + _process_batch(self.ui, self.object_store, todo) 201s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 201s + object_store._remove_loose_object(obj.id) 201s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 201s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 201s + [1] 201s $ hg log -T '{rev}:{node} {gitnode}\n' 201s 2:beb139b96eec386addc02d48db524b7646ef1605 19388575d02e71e917e7013aa854d4a21c509819 201s 1:a9a255d66663f9216bdcf8dda69211d7280f7278 debec50a14cc4830584dd4fa1507c51cce1c098f 201s 201s ERROR: test-annotate.t output changed 201s ! 201s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-phases.t 201s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-phases.t.err 201s @@ -26,12 +26,80 @@ 201s $ hg book -r . secret 201s $ hg push 201s pushing to $TESTTMP/repo.git 201s - warning: not exporting secret bookmark 'secret' 201s - searching for changes 201s - adding objects 201s - remote: found 0 deltas to reuse 201s - added 1 commits with 1 trees and 1 blobs 201s - adding reference refs/heads/master 201s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 201s + ** which supports versions 6.9 of Mercurial. 201s + ** Please disable "hggit" and try your action again. 201s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 201s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 201s + ** Mercurial Distributed SCM (version 7.0.1) 201s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 201s + Traceback (most recent call last): 201s + File "/usr/bin/hg", line 51, in 201s + dispatch.run() 201s + ~~~~~~~~~~~~^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 201s + status = dispatch(req) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 201s + status = _rundispatch(req) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 201s + ret = _runcatch(req) or 0 201s + ~~~~~~~~~^^^^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 201s + return _callcatch(ui, _runcatchfunc) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 201s + return scmutil.callcatch(ui, func) 201s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 201s + return func() 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 201s + return _dispatch(req) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 201s + return runcommand( 201s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 201s + ) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 201s + ret = _runcommand(ui, options, cmd, d) 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 201s + return cmdfunc() 201s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 201s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 201s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 201s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 201s + return func(*args, **kwargs) 201s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 201s + pushop = exchange.push( 201s + repo, 201s + ...<6 lines>... 201s + opargs=opargs, 201s + ) 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 201s + return f(*args, **kwargs) 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 201s + pushop.cgresult = repo.githandler.push( 201s + ~~~~~~~~~~~~~~~~~~~~^ 201s + remote.path, revs, bookmarks, force 201s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 201s + ) 201s + ^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 201s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 201s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 201s + all_exportable = self.export_commits() 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 201s + self.export_git_objects() 201s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 201s + packer.pack(synchronous=True) 201s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 201s + _process_batch(self.ui, self.object_store, todo) 201s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 201s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 201s + object_store._remove_loose_object(obj.id) 201s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 201s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 201s + [1] 201s $ cd .. 201s $ hg -R hgrepo log --graph --template phases 201s @ changeset: 1:62966756ea96 201s @@ -44,8 +112,7 @@ 201s | 201s o changeset: 0:d4b83afc35d1 201s bookmark: master 201s - tag: default/master 201s - phase: public 201s + phase: draft 201s user: test 201s date: Mon Jan 01 00:00:10 2007 +0000 201s summary: alpha 201s @@ -63,14 +130,9 @@ 201s Only one changeset was pushed: 201s 201s $ GIT_DIR=repo.git git log --graph --all --decorate=short 201s - * commit 2cc4e3d19551e459a0dd606f4cf890de571c7d33 (HEAD -> master) 201s - Author: test 201s - Date: Mon Jan 1 00:00:10 2007 +0000 201s - 201s - alpha 201s 201s And this published the remote head: 201s 201s $ hg -R hgrepo phase 'all()' 201s - 0: public 201s + 0: draft 201s 1: secret 201s 201s ERROR: test-push-phases.t output changed 202s ! 202s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-keywords.t 202s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-keywords.t.err 202s @@ -22,28 +22,99 @@ 202s 202s $ hg clone gitrepo hgrepo 202s importing 3 git commits 202s - new changesets ff7a2f2d8d70:8e3f0ecc9aef (3 drafts) 202s - updating to bookmark master 202s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 202s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 202s + ** which supports versions 6.9 of Mercurial. 202s + ** Please disable "hggit" and try your action again. 202s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 202s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 202s + ** Mercurial Distributed SCM (version 7.0.1) 202s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 202s + Traceback (most recent call last): 202s + File "/usr/bin/hg", line 51, in 202s + dispatch.run() 202s + ~~~~~~~~~~~~^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 202s + status = dispatch(req) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 202s + status = _rundispatch(req) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 202s + ret = _runcatch(req) or 0 202s + ~~~~~~~~~^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 202s + return _callcatch(ui, _runcatchfunc) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 202s + return scmutil.callcatch(ui, func) 202s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 202s + return func() 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 202s + return _dispatch(req) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 202s + return runcommand( 202s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 202s + ) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 202s + ret = _runcommand(ui, options, cmd, d) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 202s + return cmdfunc() 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 202s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 202s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 202s + return func(*args, **kwargs) 202s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 202s + r = hg.clone( 202s + ui, 202s + ...<11 lines>... 202s + depth=opts.get('depth') or None, 202s + ) 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 202s + srcpeer, destpeer = orig(*args, **opts) 202s + ~~~~^^^^^^^^^^^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 202s + exchange.pull( 202s + ~~~~~~~~~~~~~^ 202s + local, 202s + ^^^^^^ 202s + ...<5 lines>... 202s + depth=depth, 202s + ^^^^^^^^^^^^ 202s + ) 202s + ^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 202s + return f(*args, **kwargs) 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 202s + pullop.cgresult = repo.githandler.fetch(remote, heads) 202s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 202s + imported = self.import_git_objects( 202s + b'pull', 202s + ...<2 lines>... 202s + heads=heads, 202s + ) 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 202s + self.import_git_commit( 202s + ~~~~~~~~~~~~~~~~~~~~~~^ 202s + command, 202s + ^^^^^^^^ 202s + self.git[commit.sha], 202s + ^^^^^^^^^^^^^^^^^^^^^ 202s + commit.phase, 202s + ^^^^^^^^^^^^^ 202s + ) 202s + ^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 202s + files, gitlinks, git_renames = self.get_files_changed( 202s + ~~~~~~~~~~~~~~~~~~~~~~^ 202s + commit, detect_renames 202s + ^^^^^^^^^^^^^^^^^^^^^^ 202s + ) 202s + ^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 202s + oldfile, oldmode, oldsha = change.old 202s + ^^^^^^^^^^^^^^^^^^^^^^^^ 202s + TypeError: cannot unpack non-iterable NoneType object 202s + [1] 202s $ cd hgrepo 202s + $TESTTMP.sh: 30: cd: can't cd to hgrepo 202s $ echo gamma > gamma 202s - $ hg add gamma 202s - $ hg commit -m 'add gamma' 202s - 202s - $ hg log --template "{rev} {node} {node|short} {gitnode} {gitnode|short}\n" 202s - 3 965bf7d08d3ac847dd8eb9e72ee0bf547d1a65d9 965bf7d08d3a 202s - 2 8e3f0ecc9aefd4ea2fdf8e2d5299cac548762a1c 8e3f0ecc9aef 7e2a5465ff4e3b992c429bb87a392620a0ac97b7 7e2a5465ff4e 202s - 1 7fe02317c63d9ee324d4b5df7c9296085162da1b 7fe02317c63d 9497a4ee62e16ee641860d7677cdb2589ea15554 9497a4ee62e1 202s - 0 ff7a2f2d8d7099694ae1e8b03838d40575bebb63 ff7a2f2d8d70 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 7eeab2ea75ec 202s - $ hg log --template "fromgit {rev}\n" --rev "fromgit()" 202s - fromgit 0 202s - fromgit 1 202s - fromgit 2 202s - $ hg log --template "gitnode_existsA {rev}\n" --rev "gitnode(9497a4ee62e16ee641860d7677cdb2589ea15554)" 202s - gitnode_existsA 1 202s - $ hg log --template "gitnode_existsB {rev}\n" --rev "gitnode(7eeab)" 202s - gitnode_existsB 0 202s - $ hg log --rev "gitnode(7e)" 202s - abort: git-mapfile@7e: ambiguous identifier!? (re) 202s - [50] 202s - $ hg log --template "gitnode_notexists {rev}\n" --rev "gitnode(1234567890ab)" 202s 202s ERROR: test-keywords.t output changed 202s ! 202s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-delete.t 202s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-delete.t.err 202s @@ -53,21 +53,99 @@ 202s 202s $ hg clone -U repo.git hgrepo 202s importing 3 git commits 202s - new changesets e532b2bfda10:cc611d35fb62 (3 drafts) 202s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 202s + ** which supports versions 6.9 of Mercurial. 202s + ** Please disable "hggit" and try your action again. 202s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 202s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 202s + ** Mercurial Distributed SCM (version 7.0.1) 202s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 202s + Traceback (most recent call last): 202s + File "/usr/bin/hg", line 51, in 202s + dispatch.run() 202s + ~~~~~~~~~~~~^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 202s + status = dispatch(req) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 202s + status = _rundispatch(req) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 202s + ret = _runcatch(req) or 0 202s + ~~~~~~~~~^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 202s + return _callcatch(ui, _runcatchfunc) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 202s + return scmutil.callcatch(ui, func) 202s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 202s + return func() 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 202s + return _dispatch(req) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 202s + return runcommand( 202s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 202s + ) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 202s + ret = _runcommand(ui, options, cmd, d) 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 202s + return cmdfunc() 202s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 202s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 202s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 202s + return func(*args, **kwargs) 202s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 202s + r = hg.clone( 202s + ui, 202s + ...<11 lines>... 202s + depth=opts.get('depth') or None, 202s + ) 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 202s + srcpeer, destpeer = orig(*args, **opts) 202s + ~~~~^^^^^^^^^^^^^^^ 202s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 202s + exchange.pull( 202s + ~~~~~~~~~~~~~^ 202s + local, 202s + ^^^^^^ 202s + ...<5 lines>... 202s + depth=depth, 202s + ^^^^^^^^^^^^ 202s + ) 202s + ^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 202s + return f(*args, **kwargs) 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 202s + pullop.cgresult = repo.githandler.fetch(remote, heads) 202s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 202s + imported = self.import_git_objects( 202s + b'pull', 202s + ...<2 lines>... 202s + heads=heads, 202s + ) 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 202s + self.import_git_commit( 202s + ~~~~~~~~~~~~~~~~~~~~~~^ 202s + command, 202s + ^^^^^^^^ 202s + self.git[commit.sha], 202s + ^^^^^^^^^^^^^^^^^^^^^ 202s + commit.phase, 202s + ^^^^^^^^^^^^^ 202s + ) 202s + ^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 202s + files, gitlinks, git_renames = self.get_files_changed( 202s + ~~~~~~~~~~~~~~~~~~~~~~^ 202s + commit, detect_renames 202s + ^^^^^^^^^^^^^^^^^^^^^^ 202s + ) 202s + ^ 202s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 202s + oldfile, oldmode, oldsha = change.old 202s + ^^^^^^^^^^^^^^^^^^^^^^^^ 202s + TypeError: cannot unpack non-iterable NoneType object 202s + [1] 202s $ cd hgrepo 202s + $TESTTMP.sh: 50: cd: can't cd to hgrepo 202s $ hg log --graph --template info 202s - o 202s - | commit: 2:cc611d35fb62 delete subrepo 202s - | added: 202s - | removed: .hgsub .hgsubstate 202s - o 202s - | commit: 1:8d549bcc5179 add subrepo 202s - | added: .hgsub .hgsubstate 202s - | removed: 202s - o 202s - commit: 0:e532b2bfda10 add alpha 202s - added: alpha 202s - removed: 202s - $ hg manifest -r tip 202s - alpha 202s - $ cd .. 202s 202s ERROR: test-subrepos-delete.t output changed 203s ! 203s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-tree-decomposition.t 203s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-tree-decomposition.t.err 203s @@ -25,44 +25,99 @@ 203s 203s $ hg clone gitrepo hgrepo 203s importing 3 git commits 203s - new changesets d4d3d2417141:541f27994b81 (3 drafts) 203s - updating to bookmark master 203s - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved 203s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 203s + ** which supports versions 6.9 of Mercurial. 203s + ** Please disable "hggit" and try your action again. 203s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 203s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 203s + ** Mercurial Distributed SCM (version 7.0.1) 203s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 203s + Traceback (most recent call last): 203s + File "/usr/bin/hg", line 51, in 203s + dispatch.run() 203s + ~~~~~~~~~~~~^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 203s + status = dispatch(req) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 203s + status = _rundispatch(req) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 203s + ret = _runcatch(req) or 0 203s + ~~~~~~~~~^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 203s + return _callcatch(ui, _runcatchfunc) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 203s + return scmutil.callcatch(ui, func) 203s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 203s + return func() 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 203s + return _dispatch(req) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 203s + return runcommand( 203s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 203s + ) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 203s + ret = _runcommand(ui, options, cmd, d) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 203s + return cmdfunc() 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 203s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 203s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 203s + return func(*args, **kwargs) 203s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 203s + r = hg.clone( 203s + ui, 203s + ...<11 lines>... 203s + depth=opts.get('depth') or None, 203s + ) 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 203s + srcpeer, destpeer = orig(*args, **opts) 203s + ~~~~^^^^^^^^^^^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 203s + exchange.pull( 203s + ~~~~~~~~~~~~~^ 203s + local, 203s + ^^^^^^ 203s + ...<5 lines>... 203s + depth=depth, 203s + ^^^^^^^^^^^^ 203s + ) 203s + ^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 203s + return f(*args, **kwargs) 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 203s + pullop.cgresult = repo.githandler.fetch(remote, heads) 203s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 203s + imported = self.import_git_objects( 203s + b'pull', 203s + ...<2 lines>... 203s + heads=heads, 203s + ) 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 203s + self.import_git_commit( 203s + ~~~~~~~~~~~~~~~~~~~~~~^ 203s + command, 203s + ^^^^^^^^ 203s + self.git[commit.sha], 203s + ^^^^^^^^^^^^^^^^^^^^^ 203s + commit.phase, 203s + ^^^^^^^^^^^^^ 203s + ) 203s + ^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 203s + files, gitlinks, git_renames = self.get_files_changed( 203s + ~~~~~~~~~~~~~~~~~~~~~~^ 203s + commit, detect_renames 203s + ^^^^^^^^^^^^^^^^^^^^^^ 203s + ) 203s + ^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 203s + oldfile, oldmode, oldsha = change.old 203s + ^^^^^^^^^^^^^^^^^^^^^^^^ 203s + TypeError: cannot unpack non-iterable NoneType object 203s + [1] 203s $ cd hgrepo 203s + $TESTTMP.sh: 38: cd: can't cd to hgrepo 203s $ hg log --template 'adds: {file_adds}\ndels: {file_dels}\n' 203s - adds: d1 203s - dels: d1/f1 203s - adds: d2/f2 203s - dels: d1/f2 203s - adds: d1/f1 d1/f2 203s - dels: 203s - 203s - $ hg debug-remove-hggit-state 203s - clearing out the git cache data 203s - $ hg push ../repo.git 203s - pushing to ../repo.git 203s - searching for changes 203s - adding objects 203s - remote: found 0 deltas to reuse 203s - added 3 commits with 6 trees and 3 blobs 203s - adding reference refs/heads/master 203s - $ cd .. 203s - 203s - $ git --git-dir=repo.git log --pretty=medium 203s - commit 6e0dbd8cd92ed4823c69cb48d8a2b81f904e6e69 203s - Author: test 203s - Date: Mon Jan 1 00:00:12 2007 +0000 203s - 203s - replace a dir with a file 203s - 203s - commit a1874d5cd0b1549ed729e36f0da4a93ed36259ee 203s - Author: test 203s - Date: Mon Jan 1 00:00:11 2007 +0000 203s - 203s - rename 203s - 203s - commit 102c17a5deda49db3f10ec5573f9378867098b7c 203s - Author: test 203s - Date: Mon Jan 1 00:00:10 2007 +0000 203s - 203s - initial 203s 203s ERROR: test-tree-decomposition.t output changed 203s ! 203s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-anonymous.t 203s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-push-anonymous.t.err 203s @@ -26,27 +26,99 @@ 203s 203s $ hg clone -U gitrepo hgrepo 203s importing 1 git commits 203s - new changesets ff7a2f2d8d70 (1 drafts) 203s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 203s + ** which supports versions 6.9 of Mercurial. 203s + ** Please disable "hggit" and try your action again. 203s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 203s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 203s + ** Mercurial Distributed SCM (version 7.0.1) 203s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 203s + Traceback (most recent call last): 203s + File "/usr/bin/hg", line 51, in 203s + dispatch.run() 203s + ~~~~~~~~~~~~^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 203s + status = dispatch(req) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 203s + status = _rundispatch(req) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 203s + ret = _runcatch(req) or 0 203s + ~~~~~~~~~^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 203s + return _callcatch(ui, _runcatchfunc) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 203s + return scmutil.callcatch(ui, func) 203s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 203s + return func() 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 203s + return _dispatch(req) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 203s + return runcommand( 203s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 203s + ) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 203s + ret = _runcommand(ui, options, cmd, d) 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 203s + return cmdfunc() 203s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 203s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 203s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 203s + return func(*args, **kwargs) 203s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 203s + r = hg.clone( 203s + ui, 203s + ...<11 lines>... 203s + depth=opts.get('depth') or None, 203s + ) 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 203s + srcpeer, destpeer = orig(*args, **opts) 203s + ~~~~^^^^^^^^^^^^^^^ 203s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 203s + exchange.pull( 203s + ~~~~~~~~~~~~~^ 203s + local, 203s + ^^^^^^ 203s + ...<5 lines>... 203s + depth=depth, 203s + ^^^^^^^^^^^^ 203s + ) 203s + ^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 203s + return f(*args, **kwargs) 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 203s + pullop.cgresult = repo.githandler.fetch(remote, heads) 203s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 203s + imported = self.import_git_objects( 203s + b'pull', 203s + ...<2 lines>... 203s + heads=heads, 203s + ) 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 203s + self.import_git_commit( 203s + ~~~~~~~~~~~~~~~~~~~~~~^ 203s + command, 203s + ^^^^^^^^ 203s + self.git[commit.sha], 203s + ^^^^^^^^^^^^^^^^^^^^^ 203s + commit.phase, 203s + ^^^^^^^^^^^^^ 203s + ) 203s + ^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 203s + files, gitlinks, git_renames = self.get_files_changed( 203s + ~~~~~~~~~~~~~~~~~~~~~~^ 203s + commit, detect_renames 203s + ^^^^^^^^^^^^^^^^^^^^^^ 203s + ) 203s + ^ 203s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 203s + oldfile, oldmode, oldsha = change.old 203s + ^^^^^^^^^^^^^^^^^^^^^^^^ 203s + TypeError: cannot unpack non-iterable NoneType object 203s + [1] 203s $ cd hgrepo 203s + $TESTTMP.sh: 20: cd: can't cd to hgrepo 203s $ hg up tip 203s - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 203s - $ echo beta > beta 203s - $ hg add beta 203s - $ fn_hg_commit -m "add beta" 203s - 203s -Pushing that changeset should print a helpful message: 203s - 203s - $ hg push 203s - pushing to $TESTTMP/gitrepo 203s - searching for changes 203s - no changes found (ignoring 1 changesets without bookmarks or tags) 203s - [1] 203s - 203s -But what about untagged, but secret changesets? 203s - 203s - $ hg phase -fs tip 203s - $ hg push 203s - pushing to $TESTTMP/gitrepo 203s - searching for changes 203s - no changes found 203s - [1] 203s 203s ERROR: test-push-anonymous.t output changed 205s ! 205s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-drop.t 205s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-subrepos-drop.t.err 205s @@ -37,11 +37,80 @@ 205s $ hg -R hgrepo push 205s pushing to $TESTTMP/repo.git 205s warning: ignoring modifications to '.gitmodules' file; please use '.hgsub' instead 205s - searching for changes 205s - adding objects 205s - remote: found 0 deltas to reuse 205s - added 2 commits with 1 trees and 1 blobs 205s - adding reference refs/heads/master 205s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 205s + ** which supports versions 6.9 of Mercurial. 205s + ** Please disable "hggit" and try your action again. 205s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 205s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 205s + ** Mercurial Distributed SCM (version 7.0.1) 205s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 205s + Traceback (most recent call last): 205s + File "/usr/bin/hg", line 51, in 205s + dispatch.run() 205s + ~~~~~~~~~~~~^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 205s + status = dispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 205s + status = _rundispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 205s + ret = _runcatch(req) or 0 205s + ~~~~~~~~~^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 205s + return _callcatch(ui, _runcatchfunc) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 205s + return scmutil.callcatch(ui, func) 205s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 205s + return func() 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 205s + return _dispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 205s + return runcommand( 205s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 205s + ) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 205s + ret = _runcommand(ui, options, cmd, d) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 205s + return cmdfunc() 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 205s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 205s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 205s + return func(*args, **kwargs) 205s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 205s + pushop = exchange.push( 205s + repo, 205s + ...<6 lines>... 205s + opargs=opargs, 205s + ) 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 205s + return f(*args, **kwargs) 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 205s + pushop.cgresult = repo.githandler.push( 205s + ~~~~~~~~~~~~~~~~~~~~^ 205s + remote.path, revs, bookmarks, force 205s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + ) 205s + ^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 205s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 205s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 205s + all_exportable = self.export_commits() 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 205s + self.export_git_objects() 205s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 205s + packer.pack(synchronous=True) 205s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 205s + _process_batch(self.ui, self.object_store, todo) 205s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 205s + object_store._remove_loose_object(obj.id) 205s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 205s + [1] 205s 205s But we don't get a warning if we don't touch .gitmodules: 205s 205s @@ -50,19 +119,87 @@ 205s $ fn_hg_commit -A -m 'add that' 205s $ hg push 205s pushing to $TESTTMP/repo.git 205s - searching for changes 205s - adding objects 205s - remote: found 0 deltas to reuse 205s - added 1 commits with 1 trees and 0 blobs 205s - updating reference refs/heads/master 205s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 205s + ** which supports versions 6.9 of Mercurial. 205s + ** Please disable "hggit" and try your action again. 205s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 205s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 205s + ** Mercurial Distributed SCM (version 7.0.1) 205s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 205s + Traceback (most recent call last): 205s + File "/usr/bin/hg", line 51, in 205s + dispatch.run() 205s + ~~~~~~~~~~~~^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 205s + status = dispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 205s + status = _rundispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 205s + ret = _runcatch(req) or 0 205s + ~~~~~~~~~^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 205s + return _callcatch(ui, _runcatchfunc) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 205s + return scmutil.callcatch(ui, func) 205s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 205s + return func() 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 205s + return _dispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 205s + return runcommand( 205s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 205s + ) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 205s + ret = _runcommand(ui, options, cmd, d) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 205s + return cmdfunc() 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 205s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 205s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 205s + return func(*args, **kwargs) 205s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 205s + pushop = exchange.push( 205s + repo, 205s + ...<6 lines>... 205s + opargs=opargs, 205s + ) 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 205s + return f(*args, **kwargs) 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 205s + pushop.cgresult = repo.githandler.push( 205s + ~~~~~~~~~~~~~~~~~~~~^ 205s + remote.path, revs, bookmarks, force 205s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + ) 205s + ^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 205s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 205s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 205s + all_exportable = self.export_commits() 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 205s + self.export_git_objects() 205s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 205s + packer.pack(synchronous=True) 205s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 205s + _process_batch(self.ui, self.object_store, todo) 205s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 205s + object_store._remove_loose_object(obj.id) 205s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 205s + [1] 205s $ cd .. 205s 205s Check that it didn't silenty come through, or something: 205s 205s $ git clone repo.git gitrepo 205s Cloning into 'gitrepo'... 205s + warning: You appear to have cloned an empty repository. 205s done. 205s $ ls -A gitrepo 205s .git 205s - that 205s - this 205s 205s ERROR: test-subrepos-drop.t output changed 205s ! 205s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-empty-working-tree.t 205s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-empty-working-tree.t.err 205s @@ -24,15 +24,81 @@ 205s clearing out the git cache data 205s $ hg push ../repo.git 205s pushing to ../repo.git 205s - searching for changes 205s - adding objects 205s - remote: found 0 deltas to reuse 205s - added 1 commits with 1 trees and 0 blobs 205s - adding reference refs/heads/master 205s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 205s + ** which supports versions 6.9 of Mercurial. 205s + ** Please disable "hggit" and try your action again. 205s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 205s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 205s + ** Mercurial Distributed SCM (version 7.0.1) 205s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 205s + Traceback (most recent call last): 205s + File "/usr/bin/hg", line 51, in 205s + dispatch.run() 205s + ~~~~~~~~~~~~^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 205s + status = dispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 205s + status = _rundispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 205s + ret = _runcatch(req) or 0 205s + ~~~~~~~~~^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 205s + return _callcatch(ui, _runcatchfunc) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 205s + return scmutil.callcatch(ui, func) 205s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 205s + return func() 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 205s + return _dispatch(req) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 205s + return runcommand( 205s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 205s + ) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 205s + ret = _runcommand(ui, options, cmd, d) 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 205s + return cmdfunc() 205s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 205s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 205s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 205s + return func(*args, **kwargs) 205s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 205s + pushop = exchange.push( 205s + repo, 205s + ...<6 lines>... 205s + opargs=opargs, 205s + ) 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 205s + return f(*args, **kwargs) 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 205s + pushop.cgresult = repo.githandler.push( 205s + ~~~~~~~~~~~~~~~~~~~~^ 205s + remote.path, revs, bookmarks, force 205s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + ) 205s + ^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 205s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 205s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 205s + all_exportable = self.export_commits() 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 205s + self.export_git_objects() 205s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 205s + packer.pack(synchronous=True) 205s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 205s + _process_batch(self.ui, self.object_store, todo) 205s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 205s + object_store._remove_loose_object(obj.id) 205s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 205s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 205s + [1] 205s $ cd .. 205s $ git --git-dir=repo.git log --pretty=medium 205s - commit 678256865a8c85ae925bf834369264193c88f8de 205s - Author: test 205s - Date: Mon Jan 1 00:00:00 2007 +0000 205s - 205s - empty 205s + fatal: your current branch 'master' does not have any commits yet 205s + [128] 205s 205s ERROR: test-empty-working-tree.t output changed 207s ! 207s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gitignore-permissions.t 207s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gitignore-permissions.t.err 207s @@ -18,6 +18,63 @@ 207s $ hg add thefile 207s $ hg ci -A -m commit 207s $ hg gexport 207s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 207s + ** which supports versions 6.9 of Mercurial. 207s + ** Please disable "hggit" and try your action again. 207s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 207s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 207s + ** Mercurial Distributed SCM (version 7.0.1) 207s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 207s + Traceback (most recent call last): 207s + File "/usr/bin/hg", line 51, in 207s + dispatch.run() 207s + ~~~~~~~~~~~~^^ 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 207s + status = dispatch(req) 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 207s + status = _rundispatch(req) 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 207s + ret = _runcatch(req) or 0 207s + ~~~~~~~~~^^^^^ 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 207s + return _callcatch(ui, _runcatchfunc) 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 207s + return scmutil.callcatch(ui, func) 207s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 207s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 207s + return func() 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 207s + return _dispatch(req) 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 207s + return runcommand( 207s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 207s + ) 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 207s + ret = _runcommand(ui, options, cmd, d) 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 207s + return cmdfunc() 207s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 207s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 207s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 207s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 207s + return func(*args, **kwargs) 207s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 207s + repo.githandler.export_commits() 207s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 207s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 207s + self.export_git_objects() 207s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 207s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 207s + packer.pack(synchronous=True) 207s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 207s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 207s + _process_batch(self.ui, self.object_store, todo) 207s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 207s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 207s + object_store._remove_loose_object(obj.id) 207s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 207s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 207s + [1] 207s 207s Create a file that we can ignore 207s 207s 207s ERROR: test-gitignore-permissions.t output changed 208s ! 208s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-ambiguousprefix.t 208s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-ambiguousprefix.t.err 208s @@ -22,12 +22,101 @@ 208s 208s $ hg clone gitrepo hgrepo 208s importing 3 git commits 208s - new changesets ff7a2f2d8d70:8e3f0ecc9aef (3 drafts) 208s - updating to bookmark master 208s - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved 208s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 208s + ** which supports versions 6.9 of Mercurial. 208s + ** Please disable "hggit" and try your action again. 208s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 208s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 208s + ** Mercurial Distributed SCM (version 7.0.1) 208s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 208s + Traceback (most recent call last): 208s + File "/usr/bin/hg", line 51, in 208s + dispatch.run() 208s + ~~~~~~~~~~~~^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 208s + status = dispatch(req) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 208s + status = _rundispatch(req) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 208s + ret = _runcatch(req) or 0 208s + ~~~~~~~~~^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 208s + return _callcatch(ui, _runcatchfunc) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 208s + return scmutil.callcatch(ui, func) 208s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 208s + return func() 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 208s + return _dispatch(req) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 208s + return runcommand( 208s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 208s + ) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 208s + ret = _runcommand(ui, options, cmd, d) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 208s + return cmdfunc() 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 208s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 208s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 208s + return func(*args, **kwargs) 208s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 208s + r = hg.clone( 208s + ui, 208s + ...<11 lines>... 208s + depth=opts.get('depth') or None, 208s + ) 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/schemes.py", line 116, in clone 208s + srcpeer, destpeer = orig(*args, **opts) 208s + ~~~~^^^^^^^^^^^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 208s + exchange.pull( 208s + ~~~~~~~~~~~~~^ 208s + local, 208s + ^^^^^^ 208s + ...<5 lines>... 208s + depth=depth, 208s + ^^^^^^^^^^^^ 208s + ) 208s + ^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 208s + return f(*args, **kwargs) 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 195, in exchangepull 208s + pullop.cgresult = repo.githandler.fetch(remote, heads) 208s + ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 397, in fetch 208s + imported = self.import_git_objects( 208s + b'pull', 208s + ...<2 lines>... 208s + heads=heads, 208s + ) 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1085, in import_git_objects 208s + self.import_git_commit( 208s + ~~~~~~~~~~~~~~~~~~~~~~^ 208s + command, 208s + ^^^^^^^^ 208s + self.git[commit.sha], 208s + ^^^^^^^^^^^^^^^^^^^^^ 208s + commit.phase, 208s + ^^^^^^^^^^^^^ 208s + ) 208s + ^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1145, in import_git_commit 208s + files, gitlinks, git_renames = self.get_files_changed( 208s + ~~~~~~~~~~~~~~~~~~~~~~^ 208s + commit, detect_renames 208s + ^^^^^^^^^^^^^^^^^^^^^^ 208s + ) 208s + ^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 2130, in get_files_changed 208s + oldfile, oldmode, oldsha = change.old 208s + ^^^^^^^^^^^^^^^^^^^^^^^^ 208s + TypeError: cannot unpack non-iterable NoneType object 208s + [1] 208s 208s $ cd hgrepo 208s + $TESTTMP.sh: 30: cd: can't cd to hgrepo 208s 208s $ hg log -r 'gitnode(7e)' 208s - abort: git-mapfile@7e: ambiguous identifier!? (re) 208s - [50] 208s 208s ERROR: test-ambiguousprefix.t output changed 208s ! 208s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gitignore-share.t 208s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-gitignore-share.t.err 208s @@ -20,11 +20,80 @@ 208s $ hg book master 208s $ hg push 208s pushing to $TESTTMP/repo.git 208s - searching for changes 208s - adding objects 208s - remote: found 0 deltas to reuse 208s - added 1 commits with 1 trees and 1 blobs 208s - adding reference refs/heads/master 208s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 208s + ** which supports versions 6.9 of Mercurial. 208s + ** Please disable "hggit" and try your action again. 208s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 208s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 208s + ** Mercurial Distributed SCM (version 7.0.1) 208s + ** Extensions loaded: hggit unknown (dulwich 0.24.10), share 208s + Traceback (most recent call last): 208s + File "/usr/bin/hg", line 51, in 208s + dispatch.run() 208s + ~~~~~~~~~~~~^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 208s + status = dispatch(req) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 208s + status = _rundispatch(req) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 208s + ret = _runcatch(req) or 0 208s + ~~~~~~~~~^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 208s + return _callcatch(ui, _runcatchfunc) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 208s + return scmutil.callcatch(ui, func) 208s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 208s + return func() 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 208s + return _dispatch(req) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 208s + return runcommand( 208s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 208s + ) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 208s + ret = _runcommand(ui, options, cmd, d) 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 208s + return cmdfunc() 208s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 208s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 208s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 208s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 208s + return func(*args, **kwargs) 208s + File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 5567, in push 208s + pushop = exchange.push( 208s + repo, 208s + ...<6 lines>... 208s + opargs=opargs, 208s + ) 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/util.py", line 98, in inner 208s + return f(*args, **kwargs) 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gitrepo.py", line 232, in exchangepush 208s + pushop.cgresult = repo.githandler.push( 208s + ~~~~~~~~~~~~~~~~~~~~^ 208s + remote.path, revs, bookmarks, force 208s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 208s + ) 208s + ^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 520, in push 208s + old_refs, new_refs = self.upload_pack(remote, revs, bookmarks, force) 208s + ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 1421, in upload_pack 208s + all_exportable = self.export_commits() 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 208s + self.export_git_objects() 208s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 208s + packer.pack(synchronous=True) 208s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 208s + _process_batch(self.ui, self.object_store, todo) 208s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 208s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 208s + object_store._remove_loose_object(obj.id) 208s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 208s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 208s + [1] 208s $ cd .. 208s 208s We should also ignore the file in a shared repository: 208s 208s ERROR: test-gitignore-share.t output changed 209s ! 209s --- /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-timezone.t 209s +++ /tmp/autopkgtest.UPNtUL/build.0dG/src/tests/test-timezone.t.err 209s @@ -30,3 +30,60 @@ 209s $ hg import patch2 209s applying patch2 209s $ hg gexport 209s + ** Unknown exception encountered with possibly-broken third-party extension "hggit" unknown (dulwich 0.24.10) 209s + ** which supports versions 6.9 of Mercurial. 209s + ** Please disable "hggit" and try your action again. 209s + ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 209s + ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 209s + ** Mercurial Distributed SCM (version 7.0.1) 209s + ** Extensions loaded: hggit unknown (dulwich 0.24.10) 209s + Traceback (most recent call last): 209s + File "/usr/bin/hg", line 51, in 209s + dispatch.run() 209s + ~~~~~~~~~~~~^^ 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 209s + status = dispatch(req) 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 209s + status = _rundispatch(req) 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 209s + ret = _runcatch(req) or 0 209s + ~~~~~~~~~^^^^^ 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 209s + return _callcatch(ui, _runcatchfunc) 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 209s + return scmutil.callcatch(ui, func) 209s + ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 209s + File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 209s + return func() 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 209s + return _dispatch(req) 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 209s + return runcommand( 209s + lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 209s + ) 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 209s + ret = _runcommand(ui, options, cmd, d) 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 209s + return cmdfunc() 209s + File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 209s + d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 209s + ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 209s + File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 209s + return func(*args, **kwargs) 209s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/commands.py", line 64, in gexport 209s + repo.githandler.export_commits() 209s + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ 209s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 465, in export_commits 209s + self.export_git_objects() 209s + ~~~~~~~~~~~~~~~~~~~~~~~^^ 209s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/git_handler.py", line 715, in export_git_objects 209s + packer.pack(synchronous=True) 209s + ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 209s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 121, in pack 209s + _process_batch(self.ui, self.object_store, todo) 209s + ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 209s + File "/tmp/autopkgtest.UPNtUL/build.0dG/src/hggit/gc.py", line 59, in _process_batch 209s + object_store._remove_loose_object(obj.id) 209s + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 209s + AttributeError: 'DiskObjectStore' object has no attribute '_remove_loose_object'. Did you mean: '_get_loose_object'? 209s + [1] 209s 209s ERROR: test-timezone.t output changed 212s !.s... 212s Skipped test-check-black.t: missing feature: the black formatter for python (>= 22.3) 212s Skipped test-check-commit.t: missing feature: running tests from repository 212s Skipped test-check-pyflakes.t: missing feature: Pyflakes python linter 212s Skipped test-check-pylint.t: missing feature: Pylint python linter 212s Skipped test-encoding.t: blacklisted 212s Skipped test-gitignore-windows.t: missing feature: Windows 212s Skipped test-incoming.t: blacklisted 212s Skipped test-serve-ci.t: skipped 212s Skipped test-serve-dulwich.t: blacklisted 212s Failed test-ambiguousprefix.t: output changed and returned error code 1 212s Failed test-annotate.t: output changed 212s Failed test-bookmark-workflow.t: output changed and returned error code 1 212s Failed test-branch-bookmark-suffix.t#with-path: output changed and returned error code 1 212s Failed test-branch-bookmark-suffix.t#without-path: output changed and returned error code 1 212s Failed test-bundle.t: output changed and returned error code 1 212s Failed test-clone.t#draft: output changed 212s Failed test-clone.t#secret: output changed 212s Failed test-conflict-1.t: output changed 212s Failed test-conflict-2.t: output changed 212s Failed test-convergedmerge.t: output changed 212s Failed test-empty-working-tree.t: output changed 212s Failed test-extra.t: output changed and returned error code 1 212s Failed test-file-removal.t: output changed and returned error code 1 212s Failed test-gc.t: output changed and returned error code 1 212s Failed test-git-clone.t: output changed 212s Failed test-git-gpg.t: output changed and returned error code 1 212s Failed test-git-submodules.t: output changed and returned error code 1 212s Failed test-git-tags.t#draft: output changed and returned error code 1 212s Failed test-git-tags.t#secret: output changed and returned error code 1 212s Failed test-git-workflow.t: output changed 212s Failed test-gitignore-permissions.t: output changed 212s Failed test-gitignore-share.t: output changed 212s Failed test-gitignore.t: output changed 212s Failed test-hg-author.t: output changed and returned error code 1 212s Failed test-hg-branch.t: output changed and returned error code 1 212s Failed test-hg-clone.t: output changed and returned error code 1 212s Failed test-hg-tags.t: output changed and returned error code 1 212s Failed test-hook.t: output changed 212s Failed test-illegal-contents.t: output changed 212s Failed test-invalid-refs.t: output changed and returned error code 1 212s Failed test-keywords.t: output changed and returned error code 1 212s Failed test-merge.t: output changed and returned error code 1 212s Failed test-multiple-remotes.t: output changed 212s Failed test-octopus.t: output changed and returned error code 1 212s Failed test-orphan-tags.t: output changed and returned error code 1 212s Failed test-outgoing.t: output changed and returned error code 1 212s Failed test-phases-draft.t: output changed and returned error code 1 212s Failed test-phases-public.t#publish-defaults: output changed and returned error code 1 212s Failed test-phases-public.t#publish-specific: output changed and returned error code 1 212s Failed test-phases-remote.t: output changed and returned error code 1 212s Failed test-pull-after-obsolete.t: output changed and returned error code 1 212s Failed test-pull-after-rebase.t: output changed and returned error code 1 212s Failed test-pull-after-strip.t: output changed and returned error code 1 212s Failed test-pull.t#draft: output changed 212s Failed test-pull.t#secret: output changed 212s Failed test-push-anonymous.t: output changed and returned error code 1 212s Failed test-push-authors.t: output changed 212s Failed test-push-detached.t: output changed and returned error code 1 212s Failed test-push-missing-commit.t: output changed and returned error code 1 212s Failed test-push-phases.t: output changed 212s Failed test-push-to-head.t: output changed and returned error code 1 212s Failed test-push.t: output changed and returned error code 1 212s Failed test-renames.t: output changed and returned error code 1 212s Failed test-serve-git.t: output changed 212s Failed test-serve-hg.t#with-hggit: output changed and returned error code 1 212s Failed test-serve-hg.t#without-hggit: output changed and returned error code 1 212s Failed test-subrepos-delete.t: output changed and returned error code 1 212s Failed test-subrepos-drop.t: output changed 212s Failed test-subrepos-push.t: output changed 212s Failed test-subrepos-syntax.t: output changed and returned error code 1 212s Failed test-subrepos.t: output changed and returned error code 1 212s Failed test-timezone.t: output changed 212s Failed test-transactions.t: output changed 212s Failed test-tree-decomposition.t: output changed and returned error code 1 212s Failed test-verify-fail.t: output changed 212s # Ran 73 tests, 9 skipped, 66 failed. 212s python hash seed: 3232570269 212s make: *** [Makefile:15: tests] Error 1 213s autopkgtest [18:25:49]: test testsuite: -----------------------] 213s autopkgtest [18:25:49]: test testsuite: - - - - - - - - - - results - - - - - - - - - - 213s testsuite FAIL non-zero exit status 2 214s autopkgtest [18:25:50]: test mercurial-git: preparing testbed 223s Creating nova instance adt-resolute-ppc64el-hg-git-20251117-182216-juju-7f2275-prod-proposed-migration-environment-2-92cbdbd3-3266-44fd-a1ac-028af474556c from image adt/ubuntu-resolute-ppc64el-server-20251117.img (UUID c6f5b741-c77a-45db-84cb-f00b40e77676)... 284s autopkgtest [18:27:00]: testbed dpkg architecture: ppc64el 284s autopkgtest [18:27:00]: testbed apt version: 3.1.11 284s autopkgtest [18:27:00]: @@@@@@@@@@@@@@@@@@@@ test bed setup 285s autopkgtest [18:27:01]: testbed release detected to be: resolute 285s autopkgtest [18:27:01]: updating testbed package index (apt update) 286s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 286s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 286s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 286s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 286s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [779 kB] 286s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 286s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [73.2 kB] 286s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9852 B] 286s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main ppc64el Packages [135 kB] 287s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted ppc64el Packages [940 B] 287s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el Packages [501 kB] 287s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse ppc64el Packages [11.0 kB] 287s Fetched 1622 kB in 1s (1435 kB/s) 287s Reading package lists... 288s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 288s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 288s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 288s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 289s Reading package lists... 289s Reading package lists... 289s Building dependency tree... 289s Reading state information... 289s Calculating upgrade... 290s The following packages will be upgraded: 290s apt libapt-pkg7.0 libcrypt-dev libcrypt1 usbutils 290s 5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 290s Need to get 3180 kB of archives. 290s After this operation, 118 kB of additional disk space will be used. 290s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcrypt-dev ppc64el 1:4.5.1-1 [162 kB] 290s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el libcrypt1 ppc64el 1:4.5.1-1 [125 kB] 290s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el libapt-pkg7.0 ppc64el 3.1.12 [1286 kB] 291s Get:4 http://ftpmaster.internal/ubuntu resolute/main ppc64el apt ppc64el 3.1.12 [1516 kB] 291s Get:5 http://ftpmaster.internal/ubuntu resolute/main ppc64el usbutils ppc64el 1:019-1 [91.5 kB] 291s dpkg-preconfigure: unable to re-open stdin: No such file or directory 291s Fetched 3180 kB in 1s (2208 kB/s) 292s (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 ... 81022 files and directories currently installed.) 292s Preparing to unpack .../libcrypt-dev_1%3a4.5.1-1_ppc64el.deb ... 292s Unpacking libcrypt-dev:ppc64el (1:4.5.1-1) over (1:4.4.38-1build1) ... 292s Preparing to unpack .../libcrypt1_1%3a4.5.1-1_ppc64el.deb ... 292s Unpacking libcrypt1:ppc64el (1:4.5.1-1) over (1:4.4.38-1build1) ... 292s Setting up libcrypt1:ppc64el (1:4.5.1-1) ... 292s (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 ... 81022 files and directories currently installed.) 292s Preparing to unpack .../libapt-pkg7.0_3.1.12_ppc64el.deb ... 292s Unpacking libapt-pkg7.0:ppc64el (3.1.12) over (3.1.11) ... 292s Preparing to unpack .../apt_3.1.12_ppc64el.deb ... 293s Unpacking apt (3.1.12) over (3.1.11) ... 293s Preparing to unpack .../usbutils_1%3a019-1_ppc64el.deb ... 293s Unpacking usbutils (1:019-1) over (1:018-2) ... 293s Setting up usbutils (1:019-1) ... 293s Setting up libcrypt-dev:ppc64el (1:4.5.1-1) ... 293s Setting up libapt-pkg7.0:ppc64el (3.1.12) ... 293s Setting up apt (3.1.12) ... 294s Processing triggers for man-db (2.13.1-1) ... 298s Processing triggers for libc-bin (2.42-2ubuntu2) ... 298s autopkgtest [18:27:14]: upgrading testbed (apt dist-upgrade and autopurge) 299s Reading package lists... 299s Building dependency tree... 299s Reading state information... 299s Calculating upgrade... 300s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 300s Reading package lists... 300s Building dependency tree... 300s Reading state information... 300s Solving dependencies... 300s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 300s autopkgtest [18:27:16]: rebooting testbed after setup commands that affected boot 330s Reading package lists... 330s Building dependency tree... 330s Reading state information... 330s Solving dependencies... 330s The following NEW packages will be installed: 330s git git-man liberror-perl mercurial mercurial-common mercurial-git 330s python3-dulwich 331s 0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded. 331s Need to get 12.6 MB of archives. 331s After this operation, 57.3 MB of additional disk space will be used. 331s Get:1 http://ftpmaster.internal/ubuntu resolute/main ppc64el liberror-perl all 0.17030-1 [23.5 kB] 331s Get:2 http://ftpmaster.internal/ubuntu resolute/main ppc64el git-man all 1:2.51.0-1ubuntu1 [1179 kB] 331s Get:3 http://ftpmaster.internal/ubuntu resolute/main ppc64el git ppc64el 1:2.51.0-1ubuntu1 [7646 kB] 332s Get:4 http://ftpmaster.internal/ubuntu resolute/universe ppc64el mercurial-common all 7.0.1-2 [2783 kB] 333s Get:5 http://ftpmaster.internal/ubuntu resolute/universe ppc64el mercurial ppc64el 7.0.1-2 [521 kB] 333s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe ppc64el python3-dulwich ppc64el 0.24.10-1 [383 kB] 333s Get:7 http://ftpmaster.internal/ubuntu resolute/universe ppc64el mercurial-git all 1.2.0-1 [60.9 kB] 333s Fetched 12.6 MB in 2s (5240 kB/s) 333s Selecting previously unselected package liberror-perl. 333s (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 ... 81022 files and directories currently installed.) 333s Preparing to unpack .../0-liberror-perl_0.17030-1_all.deb ... 333s Unpacking liberror-perl (0.17030-1) ... 333s Selecting previously unselected package git-man. 333s Preparing to unpack .../1-git-man_1%3a2.51.0-1ubuntu1_all.deb ... 333s Unpacking git-man (1:2.51.0-1ubuntu1) ... 333s Selecting previously unselected package git. 333s Preparing to unpack .../2-git_1%3a2.51.0-1ubuntu1_ppc64el.deb ... 333s Unpacking git (1:2.51.0-1ubuntu1) ... 334s Selecting previously unselected package mercurial-common. 334s Preparing to unpack .../3-mercurial-common_7.0.1-2_all.deb ... 334s Unpacking mercurial-common (7.0.1-2) ... 334s Selecting previously unselected package mercurial. 334s Preparing to unpack .../4-mercurial_7.0.1-2_ppc64el.deb ... 334s Unpacking mercurial (7.0.1-2) ... 334s Selecting previously unselected package python3-dulwich. 334s Preparing to unpack .../5-python3-dulwich_0.24.10-1_ppc64el.deb ... 334s Unpacking python3-dulwich (0.24.10-1) ... 334s Selecting previously unselected package mercurial-git. 334s Preparing to unpack .../6-mercurial-git_1.2.0-1_all.deb ... 334s Unpacking mercurial-git (1.2.0-1) ... 334s Setting up mercurial-common (7.0.1-2) ... 335s Setting up liberror-perl (0.17030-1) ... 335s Setting up python3-dulwich (0.24.10-1) ... 336s Setting up git-man (1:2.51.0-1ubuntu1) ... 336s Setting up mercurial (7.0.1-2) ... 336s Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version 336s Setting up mercurial-git (1.2.0-1) ... 336s mercurial-git extension is disabled by default. 336s You can follow the instructions in /usr/share/doc/mercurial-git/README.Debian to enable it. 336s Setting up git (1:2.51.0-1ubuntu1) ... 336s Processing triggers for man-db (2.13.1-1) ... 340s autopkgtest [18:27:56]: test mercurial-git: [----------------------- 340s Initialized empty Git repository in /tmp/autopkgtest.UPNtUL/build.0dG/src/git_server/ 340s Cloning into 'git_clone'... 340s warning: You appear to have cloned an empty repository. 340s done. 340s [master (root-commit) 9bc29bc] a 340s 1 file changed, 1 insertion(+) 340s create mode 100644 a 340s To /tmp/autopkgtest.UPNtUL/build.0dG/src/git_server 340s * [new branch] master -> master 341s importing 1 git commits 341s ** Unknown exception encountered with possibly-broken third-party extension "hggit" 1.2.0 (dulwich 0.24.10) 341s ** which supports versions 6.9 of Mercurial. 341s ** Please disable "hggit" and try your action again. 341s ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 341s ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 341s ** Mercurial Distributed SCM (version 7.0.1) 341s ** Extensions loaded: hggit 1.2.0 (dulwich 0.24.10) 342s Traceback (most recent call last): 342s File "/usr/bin/hg", line 51, in 342s dispatch.run() 342s ~~~~~~~~~~~~^^ 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 342s status = dispatch(req) 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 342s status = _rundispatch(req) 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 342s ret = _runcatch(req) or 0 342s ~~~~~~~~~^^^^^ 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 342s return _callcatch(ui, _runcatchfunc) 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 342s return scmutil.callcatch(ui, func) 342s ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 342s File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 342s return func() 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 342s return _dispatch(req) 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 342s return runcommand( 342s lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 342s ) 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 342s ret = _runcommand(ui, options, cmd, d) 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 342s return cmdfunc() 342s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 342s d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 342s ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 342s File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 342s return func(*args, **kwargs) 342s File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 342s r = hg.clone( 342s ui, 342s ...<11 lines>... 342s depth=opts.get('depth') or None, 342s ) 342s File "/usr/lib/python3/dist-packages/hggit/schemes.py", line 116, in clone 342s srcpeer, destpeer = orig(*args, **opts) 342s ~~~~^^^^^^^^^^^^^^^ 342s File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 342s exchange.pull( 342s ~~~~~~~~~~~~~^ 342s local, 342s ^^^^^^ 342s ...<5 lines>... 342s depth=depth, 342s ^^^^^^^^^^^^ 342s ) 342s ^ 342s File "/usr/lib/python3/dist-packages/hggit/util.py", line 98, in inner 342s return f(*args, **kwargs) 342s File "/usr/lib/python3/dist-packages/hggit/gitrepo.py", line 195, in exchangepull 342s pullop.cgresult = repo.githandler.fetch(remote, heads) 342s ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 342s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 397, in fetch 342s imported = self.import_git_objects( 342s b'pull', 342s ...<2 lines>... 342s heads=heads, 342s ) 342s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1085, in import_git_objects 342s self.import_git_commit( 342s ~~~~~~~~~~~~~~~~~~~~~~^ 342s command, 342s ^^^^^^^^ 342s self.git[commit.sha], 342s ^^^^^^^^^^^^^^^^^^^^^ 342s commit.phase, 342s ^^^^^^^^^^^^^ 342s ) 342s ^ 342s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1145, in import_git_commit 342s files, gitlinks, git_renames = self.get_files_changed( 342s ~~~~~~~~~~~~~~~~~~~~~~^ 342s commit, detect_renames 342s ^^^^^^^^^^^^^^^^^^^^^^ 342s ) 342s ^ 342s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 2130, in get_files_changed 342s oldfile, oldmode, oldsha = change.old 342s ^^^^^^^^^^^^^^^^^^^^^^^^ 342s TypeError: cannot unpack non-iterable NoneType object 342s autopkgtest [18:27:58]: test mercurial-git: -----------------------] 343s autopkgtest [18:27:59]: test mercurial-git: - - - - - - - - - - results - - - - - - - - - - 343s mercurial-git FAIL non-zero exit status 1 343s autopkgtest [18:27:59]: test mercurial-git: - - - - - - - - - - stderr - - - - - - - - - - 343s ** Unknown exception encountered with possibly-broken third-party extension "hggit" 1.2.0 (dulwich 0.24.10) 343s ** which supports versions 6.9 of Mercurial. 343s ** Please disable "hggit" and try your action again. 343s ** If that fixes the bug please report it to https://foss.heptapod.net/mercurial/hg-git/issues 343s ** Python 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 343s ** Mercurial Distributed SCM (version 7.0.1) 343s ** Extensions loaded: hggit 1.2.0 (dulwich 0.24.10) 343s Traceback (most recent call last): 343s File "/usr/bin/hg", line 51, in 343s dispatch.run() 343s ~~~~~~~~~~~~^^ 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 144, in run 343s status = dispatch(req) 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 233, in dispatch 343s status = _rundispatch(req) 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 277, in _rundispatch 343s ret = _runcatch(req) or 0 343s ~~~~~~~~~^^^^^ 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 467, in _runcatch 343s return _callcatch(ui, _runcatchfunc) 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 477, in _callcatch 343s return scmutil.callcatch(ui, func) 343s ~~~~~~~~~~~~~~~~~^^^^^^^^^^ 343s File "/usr/lib/python3/dist-packages/mercurial/scmutil.py", line 179, in callcatch 343s return func() 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 457, in _runcatchfunc 343s return _dispatch(req) 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1339, in _dispatch 343s return runcommand( 343s lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions 343s ) 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 974, in runcommand 343s ret = _runcommand(ui, options, cmd, d) 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1351, in _runcommand 343s return cmdfunc() 343s File "/usr/lib/python3/dist-packages/mercurial/dispatch.py", line 1337, in 343s d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) 343s ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^ 343s File "/usr/lib/python3/dist-packages/mercurial/util.py", line 1964, in check 343s return func(*args, **kwargs) 343s File "/usr/lib/python3/dist-packages/mercurial/commands.py", line 2046, in clone 343s r = hg.clone( 343s ui, 343s ...<11 lines>... 343s depth=opts.get('depth') or None, 343s ) 343s File "/usr/lib/python3/dist-packages/hggit/schemes.py", line 116, in clone 343s srcpeer, destpeer = orig(*args, **opts) 343s ~~~~^^^^^^^^^^^^^^^ 343s File "/usr/lib/python3/dist-packages/mercurial/hg.py", line 1024, in clone 343s exchange.pull( 343s ~~~~~~~~~~~~~^ 343s local, 343s ^^^^^^ 343s ...<5 lines>... 343s depth=depth, 343s ^^^^^^^^^^^^ 343s ) 343s ^ 343s File "/usr/lib/python3/dist-packages/hggit/util.py", line 98, in inner 343s return f(*args, **kwargs) 343s File "/usr/lib/python3/dist-packages/hggit/gitrepo.py", line 195, in exchangepull 343s pullop.cgresult = repo.githandler.fetch(remote, heads) 343s ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^ 343s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 397, in fetch 343s imported = self.import_git_objects( 343s b'pull', 343s ...<2 lines>... 343s heads=heads, 343s ) 343s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1085, in import_git_objects 343s self.import_git_commit( 343s ~~~~~~~~~~~~~~~~~~~~~~^ 343s command, 343s ^^^^^^^^ 343s self.git[commit.sha], 343s ^^^^^^^^^^^^^^^^^^^^^ 343s commit.phase, 343s ^^^^^^^^^^^^^ 343s ) 343s ^ 343s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 1145, in import_git_commit 343s files, gitlinks, git_renames = self.get_files_changed( 343s ~~~~~~~~~~~~~~~~~~~~~~^ 343s commit, detect_renames 343s ^^^^^^^^^^^^^^^^^^^^^^ 343s ) 343s ^ 343s File "/usr/lib/python3/dist-packages/hggit/git_handler.py", line 2130, in get_files_changed 343s oldfile, oldmode, oldsha = change.old 343s ^^^^^^^^^^^^^^^^^^^^^^^^ 343s TypeError: cannot unpack non-iterable NoneType object 343s autopkgtest [18:27:59]: @@@@@@@@@@@@@@@@@@@@ summary 343s testsuite FAIL non-zero exit status 2 343s mercurial-git FAIL non-zero exit status 1