Kill off contrib/simplemerge?

Phillip Cohen phillip at phillip.io
Tue Aug 15 21:52:11 UTC 2017


Hello,

During some of the work to support in-memory merge, the
`contrib/simplemerge` script (not to be confused with simplemerge.py
in the mercurial package) has come up as a bit of a roadblock that
makes existing code messier, and I was wondering if anyone would
object if we removed it.

This is a Python script that merges arbitrary files. It imports
Mercurial code but doesn't have access to a repo object, or anything
relying on one, which is where our troubles begin. To support
in-memory merge we'd like to only support context objects so that
making them backed by memory is trivial. But contrib/simplemerge can't
create context objects.

My existing stack (D377 - D383) refactors simplemerge.py to support
both use cases, but reviewers have pointed out that this is unwieldy
and asked if we can just nuke the contrib script instead. I'd happily
support that if there are no complaints.

timeless traced this script back to abd66eb0, an mpm commit from 2008
which moved the three-way merge script into core hg. It's likely the
contrib script was kept around to support existing workflows at the
time, 9 years ago. We haven't been able to find any uses of it in the
codebase or anyone who uses it.

Thanks!

Phil


More information about the Mercurial-devel mailing list