Информация о версии обычно включается в пакет, так как для части программного обеспечения может быть очень полезно знать и сообщать свою собственную версию. Хороший источник, чтобы проверить, как лучше всего это сделать, это шаблоны проектов, например список официальных cookiecutters .
Чтобы дать мой личный фаворит, мне нравится помещать переменную __version__ = '0.1.2'
в мой самый верхний __init__.py
файл:
mypackage
├───src
│ └───mypackage
│ └───__init__.py # only content here is the version string
└───setup.py
Который я могу затем импортировать в setup.py
...
from src.mypackage import __version__
setuptools.setup(
...
version=__version__,
package_dir={'': 'src'},
packages=find_packages(where='src'),
...
)
... а также легко получить доступ, когда мой пакет установлен
>>> from mypackage import __version__
>>> print(__version__)
0.1.2