# HG changeset patch # User mitchell plamann # Date 1550692979 18000 # Node ID 2d835c42ab41a6cdcf7c0f2169f82c01b7e249ff # Parent a62ad1be1671a6e38f88f7e56147030699e1db6e bundle2: don't send "shared" requirement when cloning from a share Differential Revision: https://phab.mercurial-scm.org/D5985 diff -r a62ad1be1671 -r 2d835c42ab41 mercurial/bundle2.py --- a/mercurial/bundle2.py Wed Feb 20 14:57:00 2019 -0500 +++ b/mercurial/bundle2.py Wed Feb 20 15:02:59 2019 -0500 @@ -1664,6 +1664,7 @@ mandatory=False) def _formatrequirementsspec(requirements): + requirements = [req for req in requirements if req != "shared"] return urlreq.quote(','.join(sorted(requirements))) def _formatrequirementsparams(requirements): diff -r a62ad1be1671 -r 2d835c42ab41 tests/test-share.t --- a/tests/test-share.t Wed Feb 20 14:57:00 2019 -0500 +++ b/tests/test-share.t Wed Feb 20 15:02:59 2019 -0500 @@ -124,15 +124,14 @@ -rw-r--r-- 2 b -Cloning a shared repo via bundle2 wrongly adds "shared" to the clone's requirements +Cloning a shared repo via bundle2 results in a non-shared clone $ cd .. $ hg clone -q --stream --config ui.ssh="$PYTHON \"$TESTDIR/dummyssh\"" ssh://user@dummy/`pwd`/repo2 cloned-via-bundle2 $ cat ./cloned-via-bundle2/.hg/requires | grep "shared" - shared + [1] $ hg id --cwd cloned-via-bundle2 -r tip - abort: $ENOENT$: '$TESTTMP/cloned-via-bundle2/.hg/sharedpath' - [255] + c2e0ac586386 tip $ cd repo2 test unshare command