How to submit large series of loosely related changesets in Heptapod

Manuel Jacob me at manueljacob.de
Fri Jun 3 18:23:07 UTC 2022


I have a branch with Python 3 cleanups 
(https://foss.heptapod.net/mercurial/mercurial-devel/-/compare/default...py3-cleanups). 
It consists of more than 30 changesets already and will grow larger.

Phabricator has a strong focus on single patches. There, I would submit 
each patch shortly after creating them. Each can be reviewed and 
approved individually.

On Heptapod, the focus is more on whole merge request. The Wiki page 
says that review should be done on single changesets, but it seems like 
only the whole merge request can be approved and merged (in the UI).

If I create a single merge request when the series is finished (which is 
whenever I don’t feel to continue), it will be very large and hard to 
review in one pass. Also, it would mean that I would get feedback on the 
first changesets later, increasing the chance of getting merge conflicts 
when changing later changesets (in this case, it hopefully wouldn’t be 
an issue, because the changes are not very complex).

If I create a single merge request and continue to add changesets to it, 
feedback on the first changesets will possibly be earlier, but CI can 
temporarily break for newer changesets while I keep working on it.

If I create a merge request for each changeset, it will be many and each 
merge request will contain the unmerged ancestors. Also, I think it 
would require that each changeset is in its own topic, which complicates 
matters when working with them locally.

I could split them in smaller batches, but it’s not clear how large they 
should be, and it would combine disadvantages of the two other 
approaches (although less pronounced).

Thoughts?



More information about the Mercurial-devel mailing list