Несовместимость колес между малыми версиями Python - PullRequest
0 голосов
/ 18 октября 2019

Я выпускаю пакет на PyPi, который будет поддерживать Python 3.6+ и хотел бы собрать как можно меньше колес.

Я прочитал о Система упаковки Python для колес и посмотрел пример проекта NumPy . Чтение PEP 513 и PEP 571 также было проницательным.

Вот вопрос: почему колеса несовместимы с изменениями младшей версии Python?

Например, при обновлении с 3,5 до 3,6 получаются f-строки. Но кажется, что колесо, построенное на Python 3.5 (без использования f-строк), должно нормально работать в среде Python 3.6. В чем здесь проблема?

1 Ответ

1 голос
/ 18 октября 2019

Код, написанный на чистом Python 2-и-3-совместимым способом, может быть выпущен в универсальном колесе. Одно колесо, которое подходит для всех версий Python. Пример: https://pypi.org/project/SQLObject/#files

Но проекты, включающие модули, написанные на C, должны выпускаться отдельно для каждой платформы (архитектура процессора и 32/64-разрядность), ОС и версии Python просто потому, что код C должен компилироваться по-разному. ,Пример: https://pypi.org/project/Cheetah3/#files

PS. Полное раскрытие: я сопровождаю оба проекта, используемые в качестве примеров.

...