obsdiscovery: extract a smarted depth in utility
The function is reusing previous depth for ancestors unless this is a merge.
#require test-repo pyflakes
Copied from Mercurial core (60ee2593a270)
$ cd "`dirname "$TESTDIR"`"
run pyflakes on all tracked files ending in .py or without a file ending
(skipping binary file random-seed)
$ hg locate 'set:**.py or grep("^!#.*python")' 2>/dev/null \
> | xargs pyflakes 2>/dev/null