diff -r e8f7e4c53537 -r 91b6a30424a3 hgext/evolve.py --- a/hgext/evolve.py Mon Sep 14 13:48:34 2015 -0700 +++ b/hgext/evolve.py Mon Oct 12 01:22:41 2015 -0700 @@ -1029,7 +1029,11 @@ @eh.wrapfunction(mercurial.cmdutil, 'tryimportone') def tryimportone(orig, ui, repo, hunk, parents, opts, *args, **kwargs): extracted = patch.extract(ui, hunk) - expected = extracted[5] + if util.safehasattr(extracted, 'get'): + # mercurial 3.6 return a dictionary there + expected = extracted.get('nodeid') + else: + expected = extracted[5] if expected is not None: expected = node.bin(expected) oldextract = patch.extract