Зачем использовать яйцо над sdist?

Единственная причина, по которой я могу подумать о том, чтобы распространять пакет python как яйцо, заключается в том, что вы не можете включать файлы.py в свой пакет (и включать только файлы.pyc, что в любом случае является сомнительным способом защиты вашего кода). Кроме того, я не могу думать о какой-либо причине загружать пакет как яйцо, а не как sdist. На самом деле, пипс даже не поддерживает яйца.

Есть ли реальная причина использовать яйцо, а не sdist?

1 ответ

Решение

Одна из причин: яйца могут включать скомпилированные модули расширения C, так что конечному пользователю не нужно иметь необходимые инструменты сборки и возможные дополнительные заголовки и библиотеки для сборки модуля расширения с нуля. Недостаток заключается в том, что упаковщику может потребоваться предоставить несколько яиц для соответствия каждой целевой платформе и конфигурации Python. Если имеется много поддерживаемых конфигураций, это может оказаться сложной задачей, но она может быть эффективной для более однородных сред.

Другие вопросы по тегам