The blessed package to manage your versions by scm tags
setuptools_scm
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.
Additionally setuptools_scm provides setuptools with a list of files that are managed by the SCM (i.e. it automatically adds all of the SCM-managed files to the sdist). Unwanted files must be excluded by discarding them via MANIFEST.in.
setuptools_scm support the following scm out of the box:
pyproject.toml usage
The preferred way to configure setuptools_scm is to author settings in a tool.setuptools_scm section of pyproject.toml.
This feature requires Setuptools 42 or later, released in Nov, 2019. If your project needs to support build