Почему мой пакет python перечисляет свою версию как 5.0.6? - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь следовать совету здесь относительно версии, управляющей пакетом, который я пишу.По какой-то причине версия всегда возвращается как «5.0.6» вместо «1.0.0», как ожидалось.

Чтобы попытаться докопаться до сути, я сделал простой пакет со следующей структурой/ files:

\
    \VersioningExperiments\
        __init__.py
        _version.py

Где __init__.py выглядит так:

from _version import __version__

и _version.py выглядит так:

__version__ = '1.0.0'

Когда я сижу вroot и запускаю следующие команды, которые я получаю 5.0.6 вместо 1.0.0:

python
Python 3.5.2 |Anaconda 2.5.0 (64-bit)| (default, Jul  5 2016, 11:41:13) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import VersioningExperiments
>>> VersioningExperiments.__version__
'5.0.6'

Если я закомментирую эту строчку из __init__.py, я получу:

AttributeError: module 'VersioningExperiments' has no attribute '__version__'

Такоткуда взялась 5.0.6?

1 Ответ

0 голосов
/ 07 июня 2018

Хорошо, на всякий случай, если кто-то еще столкнется с этим, я понял:

>>> import _version
>>> _version.__version__
'5.0.6'
>>> _version.__file__
'C:\\Anaconda3\\lib\\site-packages\\_version.py'

Самое простое исправление, которое я могу найти, это изменить __init__.py в Test на это:

from ._version import __version__
...