setuptools_scm handles managing your python package versions in scm metadata instead of declaring them as the version argument or in a scm managed file. It also handles file finders for the supported scm's. Python3 is an optional dependency.