[PATCH STABLE] import: mark --exact as experimental

Matt Mackall mpm at selenic.com
Fri Feb 26 15:17:56 EST 2016


On Thu, 2016-02-25 at 11:12 -0500, Augie Fackler wrote:
> On Thu, Feb 25, 2016 at 10:53:26AM +0100, Pierre-Yves David wrote:
> > # HG changeset patch
> > # User Pierre-Yves David <pierre-yves.david at fb.com>
> > # Date 1456060026 -3600
> > #      Sun Feb 21 14:07:06 2016 +0100
> > # Branch stable
> > # Node ID a412b87ce53add0d4304de0170140bff1dc266b3
> > # Parent  cb6a952efbf48d306a7c82d7fe46115f072cbb1d
> > # EXP-Topic expexact
> > # Available At http://hg.netv6.net/marmoute-wip/mercurial/
> > #              hg pull http://hg.netv6.net/marmoute-wip/mercurial/ -r
> > a412b87ce53a
> > import: mark --exact as experimental
> 
> +1, but I'm unsure if it belongs on stable. Matt?

I don't like this at all, sorry.

It works as advertised:

   If --exact is specified, import will set the working directory to the
    parent of each patch before applying it, and will abort if the resulting
    changeset has a different ID than the one recorded in the patch. This may
    happen due to character set problems or other deficiencies in the text
    patch format.

This feature has never been a promise to perfectly transfer every possible
changeset. We've never been able to do that and it's unlikely that we ever will.
And extra fields aren't even a significant obstacle to that.

Instead this feature is a promise to perfectly transfer OR REJECT anything that
isn't perfectly transferred. So everything you apparently think is a bug is
actually it doing its data-integrity-protecting job.

> The feature have been plagued by very serious bugs for years.

issue3616 from 3 years ago was indeed a very serious bug, but it's the only one
I'm aware of.

-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial-devel mailing list