De manière Standard pour intégrer la version en python package?

Est-il un moyen standard pour associer chaîne de version avec un paquet python dans une telle manière que je pourrais faire la suite?

import foo
print foo.version

J'imagine, il y a une certaine façon de récupérer des données sans aucun supplément de coder en dur, depuis le mineur/majeur cordes sont spécifiés dans setup.py déjà. Autre solution que j'ai trouvé était d'avoir import __version__ dans mon foo/__init__.py puis ont __version__.py généré par setup.py.

  • Pour info, il y a une très bonne vue d'ensemble sur: packaging.python.org/en/latest/...
  • La Version d'un paquet peut être récupéré à partir de métadonnées avec setuptools, de sorte que dans de nombreux cas, de mettre uniquement sur la version en setup.py est assez. Voir cette question.
  • Pour info, il existe 5 modèles communs afin de maintenir la source unique de la vérité (au niveau de la configuration et de temps d'exécution) pour le numéro de version.
  • Python la documentation de listes 7 options différentes pour un seul acidification. N'est-ce pas en contradiction avec la notion de "source unique de vérité"?
  • pas sûr de ce que vous demandez. Il existe de nombreuses façons qui y sont énumérés, parce que l'emballage guide ne veut pas être opiniâtre.