rewind: make sure merge commits include files from p1 and p2
Otherwise rewinding a merge commit makes it lose all changes.
This fix populates `updates` argument of rewriteutil.rewrite() with parent
changesets. That argument is normally used for folding multiple changesets, but
in this case it's simply used to include files from p1 and p2. Usually,
rewrite() works fine using ctx.files(), but that function can return an empty
list when ctx is a merge commit.
import hghave
@hghave.check("docgraph-ext", "Extension to generate graph from repository")
def docgraph():
try:
import hgext.docgraph
hgext.docgraph.cmdtable # trigger import
except ImportError:
try:
import hgext3rd.docgraph
hgext3rd.docgraph.cmdtable # trigger import
except ImportError:
return False
return True