evolve: store obsmarkers to be deleted in evolvestate
There are operations which don't create a new node rather they just obsolete one
of the unstable node in favour of existing one. In such cases if a further
resolution leads to conflicts and user calls `evolve --abort` or `evolve
--stop`, we might need to delete that obsmarker. So let's store such obsmarkers
in the evolvestate.
#require test-repo
$ checkflake8() {
> if ! (which flake8 > /dev/null); then
> echo skipped: missing tool: flake8;
> exit 80;
> fi;
> };
$ checkflake8
Copied from Mercurial core (60ee2593a270)
$ cd "`dirname "$TESTDIR"`"
run flake8 if it exists; if it doesn't, then just skip
$ hg files -0 'set:(**.py or grep("^#!.*python")) - removed()' \
> -X hgext3rd/evolve/thirdparty \
> 2>/dev/null \
> | xargs -0 flake8