При задействовании setuptools один из подходов к включению в пакет файлов не на Python — это использовать файл MANIFEST.in. 

Он содержит директивы, определяющие, как обращаться с подходящим набором файлов. 

Итак, нужно включить в пакет все файлы в каталоге src/ и рекурсивно исключить некоторые сгенерированные Python. Для этого создайте в корневом каталоге проекта файл MANIFEST.in со следующим содержанием:

Запустите процесс сборки и проверьте пакет поставки исходного кода на

наличие файла data.json. Теперь проверьте пакет поставки двоичного кода

wheel, используя следующую команду:

Файла data.json нет. Вы можете отдать команду setuptools вклю-

чить любой файл не на Python, содержащийся в пакете поставки исходного

кода, в пакет поставки двоичных файлов, добавив следующее поле в раздел

[options] файла setup.cfg:

...

include_package_data = True

Теперь пакет поставки двоичного кода wheel настроен так, что файл data.

json включается в него. 

That's it, такой метод описывает в своей книге «Публикация пакетов Python. Тестирование, распространение и автоматизация проектов» разработчик Дэйн Хиллард. Все представленные команды взяты из главы, посвященной анатомии минимального пакета Python, а в целом книга рассматривает множество вопросов, связанных с формированием пакетов. Обычно эту тему обходят стороной, поскольку большинство программистов не склонны выпускать общедоступные пакеты, что нередко вызывает трудности при предоставлении своего кода другим разработчикам. Но рано или поздно каждый приходит к пакету с пакетами.

Комментарии (1)


  1. fenrir1121
    22.05.2024 13:19
    +1

    Спасибо! Отличный отрывок чтобы понять что эту книгу покупать не нужно.