This is an archive of the discontinued Mercurial Phabricator instance.

mergestate: split out merge state handling code from main merge module
ClosedPublic

Authored by durin42 on May 18 2020, 6:07 PM.

Details

Summary

There's already some pretty reasonable encapsulation here, but I want
to make the mergestate storage a property of the context so memctx
instances can do a reasonable thing. This is the first step in a
reshuffle to make that easier.

Diff Detail

Repository
rHG Mercurial
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

durin42 created this revision.May 18 2020, 6:07 PM

Also update the release notes to mention the API change?

durin42 updated this revision to Diff 21451.May 19 2020, 3:52 PM
indygreg accepted this revision.May 20 2020, 8:16 PM
indygreg added a subscriber: indygreg.

merge.py has been way too long for years and I welcome splitting it.

While I'm accepting this, I have a concern that some of the references to constants might be in tight loops and warrant aliasing to a local to avoid an extra attribute lookup. But presumably our performance regression tooling will identify any issues and these can be corrected with follow-ups easily enough.

This revision is now accepted and ready to land.May 20 2020, 8:16 PM