I'm -1 on this series. If the goal is to workaround obsolete cycles, the code could do additional checks "if the destination is obsoleted" and do "hg touch"-like thing automatically.
That workaround will be no longer necessary if my obsolete cycle patches are landed. Internally, we have several repo corruption reports because of "histedit --abort" is using strip. Excerpts from Pierre-Yves David's message of 2017-03-26 16:16:09 +0200: > # HG changeset patch > # User Pierre-Yves David <pierre-yves.da...@ens-lyon.org> > # Date 1490536534 -7200 > # Sun Mar 26 15:55:34 2017 +0200 > # Node ID 59c6489c75dcf13989f4d4a343f3a18d1475e20d > # Parent 37931386562505e783e9c0b7f78287fabb71a7c2 > # EXP-Topic backout-histedit > # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ > # hg pull > https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 59c6489c75dc > histedit: test that an aborted histedit can be rerun (with obsolete) > > In the future, this should help catching issue as the one introduced in > 6f0b7475cf9a. > > diff --git a/tests/test-histedit-obsolete.t b/tests/test-histedit-obsolete.t > --- a/tests/test-histedit-obsolete.t > +++ b/tests/test-histedit-obsolete.t > @@ -503,3 +503,74 @@ Note that there is a few reordering in t > abort: cannot edit history that contains merges > [255] > $ cd .. > + > +Check abort behavior > +------------------------------------------- > + > +We checks that abort properly clean the repository so the same histedit can > be > +attempted later. > + > + $ cp -R base abort > + $ cd abort > + $ hg histedit -r 'b449568bf7fc' --commands - << EOF > + > pick b449568bf7fc 13 f > + > pick 7395e1ff83bd 15 h > + > pick 6b70183d2492 14 g > + > pick b605fb7503f2 16 i > + > roll 3a6c53ee7f3d 17 j > + > edit ee118ab9fa44 18 k > + > EOF > + Editing (ee118ab9fa44), you may commit or record as needed now. > + (hg histedit --continue to resume) > + [1] > + > + $ hg histedit --abort > + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved > + saved backup bundle to > $TESTTMP/abort/.hg/strip-backup/4dc06258baa6-dff4ef05-backup.hg (glob) > + > + $ hg log -G > + @ 18:ee118ab9fa44 (secret) k > + | > + o 17:3a6c53ee7f3d (secret) j > + | > + o 16:b605fb7503f2 (secret) i > + | > + o 15:7395e1ff83bd (draft) h > + | > + o 14:6b70183d2492 (draft) g > + | > + o 13:b449568bf7fc (draft) f > + | > + o 12:40db8afa467b (public) c > + | > + o 0:cb9a9f314b8b (public) a > + > + $ hg histedit -r 'b449568bf7fc' --commands - << EOF > + > pick b449568bf7fc 13 f > + > pick 7395e1ff83bd 15 h > + > pick 6b70183d2492 14 g > + > pick b605fb7503f2 16 i > + > pick 3a6c53ee7f3d 17 j > + > edit ee118ab9fa44 18 k > + > EOF > + Editing (ee118ab9fa44), you may commit or record as needed now. > + (hg histedit --continue to resume) > + [1] > + $ hg histedit --continue > + $ hg log -G > + @ 23:175d6b286a22 (secret) k > + | > + o 22:44ca09d59ae4 (secret) j > + | > + o 21:31747692a644 (secret) i > + | > + o 20:9985cd4f21fa (draft) g > + | > + o 19:4dc06258baa6 (draft) h > + | > + o 13:b449568bf7fc (draft) f > + | > + o 12:40db8afa467b (public) c > + | > + o 0:cb9a9f314b8b (public) a > + _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel