Fix how setup.py identifies the Mercurial version.
There is a problem with setup.py where it will not identify the Mercurial
version properly when not being ran in within a repository even if
mercurial/__version__.py exists.
To fix, use mercurial.__version__.version when available before defaulting
to "unknown". (Using mercurial.util.version() is not an option due to a
dependency issue where osutil can be referenced before it is built.)
#!/bin/sh
mkdir t
cd t
hg init
mkdir a
echo foo > a/a
echo bar > a/b
hg ci -Am "0" -d "0 0"
hg co -C 0
hg mv a b
hg ci -m "1 mv a/ b/" -d "0 0"
hg co -C 0
echo baz > a/c
echo quux > a/d
hg add a/c
hg ci -m "2 add a/c" -d "0 0"
hg merge --debug 1
echo a/* b/*
hg st -C
hg ci -m "3 merge 2+1" -d "0 0"
hg debugrename b/c
hg co -C 1
hg merge --debug 2
echo a/* b/*
hg st -C
hg ci -m "4 merge 1+2" -d "0 0"
hg debugrename b/c