Если вы используете setuptools для распространения вашего приложения / пакета, вы можете получить доступ к установленной версии пакета во время выполнения, используя pkg_resources.get_distribution("my_package").version
. Однако setuptools не поддерживает автоматическую маркировку версий с помощью Mercurial, поэтому вам придется создавать свои дистрибутивы с помощью команд, таких как:
python3 setup.py egg_info -b -$(hg heads --template "{node|short}" `hg branch`) sdist
или
python3 setup.py egg_info -b -$(hg heads --template "{node|short}" `hg branch`) setup