Запекание в пакетной версии при экспорте в файл WheelPython

Программы на Python
Anonymous
Запекание в пакетной версии при экспорте в файл Wheel

Сообщение Anonymous »

У меня есть проект Python A, основанный на поэзии, версия которого определена в pyproject.toml как

Код: Выделить всё

[tool.poetry]
name = "Project A"
version = "1.22.0"
В моем файле __init__.py я затем прочитал версию через

Код: Выделить всё

from importlib import metadata
from typing import Any

try:
import tomllib

with open("pyproject.toml", "rb") as project_file:
pyproject: dict[str, Any] = tomllib.load(project_file)
__version__ = pyproject["tool"]["poetry"]["version"]
except Exception as _:
__version__: str = metadata.version(__package__ or __name__)
Это работает нормально, пока я использую этот проект в качестве основного. Однако при экспорте его в файл колеса (с использованием поэтической сборки) файл pyproject.toml не включается.
Когда я затем устанавливаю сгенерированное колесо -файл в отдельном проекте с аналогичной структурой и информацией о версии

Код: Выделить всё

[tool.poetry]
name = "Project B"
version = "1.0.0"
и попробуйте прочитать версию моего исходного пакета A через

Код: Выделить всё

import A
print(A.__version__)
Я получаю 1.0.0, а не (как ожидалось) 1.22.0.
Есть ли способ «запечь» версию в пакет A во время генерации файла колеса, чтобы избежать таких проблем?

Подробнее здесь: https://stackoverflow.com/questions/790 ... wheel-file

Вернуться в «Python»