distutils: как включить тестовые файлы в исходный дистрибутив, а не в сборку? - PullRequest
1 голос
/ 08 июня 2011

У меня есть простой, чистый Python-проект, который я хочу сделать доступным с distutils.Я успешно создал сжатые tar-файлы для модулей python и некоторые лицензионные текстовые файлы.Это соответствующие части списка аргументов setup.py setup:

  packages=['pkgA',
            'pkgA.subpkgA1',
            'pkgA.subpkgA2'],
  requires = ['matplotlib', 'pytest'],
  data_files = [ 'COPYING', 'COPYING.LESSER'],

Единственная проблема состоит в том, что это также помещает файлы лицензий в дистрибутив, непосредственно в sys.prefix.Я хотел бы отправить файлы лицензий в исходном дистрибутиве, но не устанавливать их при запуске python setup.py install.В настоящее время у меня нет MANIFEST.in файла и нет действий пост-сборки.

1 Ответ

2 голосов
/ 07 октября 2011

Вам не нужно ничего помещать в data_files.Аргументы distutils.core.setup (py_modules, packages, data_files и т. Д.) Управляют тем, что будет собрано и установлено;для распространения дополнительного файла используйте файл MANIFEST.in: http://docs.python.org/dev/distutils/sourcedist#specifying-the-files-to-distribute Там вы можете иметь свой COPYING-файл, файлы Python для тестов, что угодно, и они не будут установлены.

...