[PATCH 2 of 5 STABLE] changegroup: don't support versions 01 and 02 with treemanifests

Martin von Zweigbergk martinvonz at google.com
Wed Jan 20 15:21:10 CST 2016


On Wed, Jan 20, 2016 at 12:23 PM Pierre-Yves David <
pierre-yves.david at ens-lyon.org> wrote:

>
>
> On 01/20/2016 12:19 PM, Martin von Zweigbergk wrote:
> > # HG changeset patch
> > # User Martin von Zweigbergk <martinvonz at google.com>
> > # Date 1453242438 28800
> > #      Tue Jan 19 14:27:18 2016 -0800
> > # Branch stable
> > # Node ID 14760037c4e4be0a409fdea14fad06d9a8205a66
> > # Parent  80448db8a1859f4b1f262e1ce4a062477d0053dc
> > changegroup: don't support versions 01 and 02 with treemanifests
> >
> > Changegroup 01 and 02 do not support treemanifests, so we should never
> > use them in repos that use treemanifests.
>
> What's the failure mode when client and server can't find a common
> changegroup version to use?


abort: HTTP Error 500: Internal Server Error

That's the same before and after this change. Before, the server raised
an AssertionError on
https://selenic.com/hg/file/5f2a308bac94/mercurial/changegroup.py#l668.
After, the server raises a "ValueError: no common changegroup version" here
https://selenic.com/hg/file/5f2a308bac94/mercurial/exchange.py#l712.

Obviously, neither is good, but the new behavior at least seems better.

You know the exchange protocols much better than I do. What do you think is
the right way of telling the client as early as possible that it will need
to upgrade in order to clone from the server?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20160120/03a92f1e/attachment.html>


More information about the Mercurial-devel mailing list