2009-11-14 21 views
2

J'essaie d'utiliser Distribuer pour setup.py de mon projet. Je veux qu'il inclue tous les fichiers dans le dossier du paquet, qui sont des fichiers texte et image, mais pas les fichiers .pyc bien sûr. J'ai lu que les fichiers doivent être suivis par CVS et SVN, ou il devrait y avoir un MAINFEST.in.Y compris les données de paquet avec Distribuer

Alors:

  1. J'utilise ni CVS ni SVN, j'utilise git. Je sais qu'il est possible d'écrire un plugin pour git, et peut-être que quelqu'un l'a fait, mais je ne vais pas utiliser un plugin que je ne sais pas s'il sera maintenu et supporté. En outre, git suit plus que le dossier source, le repo inclut d'autres fichiers qui ne devraient pas être empaquetés dans la distribution. Je pensais que l'un des avantages de distribuer ne doit pas traiter avec un fichier MANIFEST.in. Dois-je vraiment? Si oui, où vois-je un guide? Je n'ai jamais écrit un MANIFEST.in.

Y a-t-il une meilleure solution?

Répondre

5

J'ai changer ce comportement dans distutils (dans le coffre Python (2,7/3,2))

Maintenant, tous les fichiers mentionnés dans package_data seront inclus par défaut sans avoir à écrire un fichier MANIFEST.in, et sans avoir à utiliser le comportement magique basé sur DVCS. D'ici là, je recommanderais d'utiliser un MANIFEST.in explicite et de rester avec les options de Distutils, donc vous ne comptez pas sur VCS, et vous n'ajoutez pas de fichiers par accident, qui se trouvent dans votre dépôt , mais que vous ne voulez pas voir ajouté dans votre version.

Distribuer 0.7.x restera probablement le prochain comportement par défaut de Distutils.

Recherchez le langage de template MANIFEST.in dans la doc distutils, il est tout à fait simple.

Tarek

0

Je ne sais pas s'il existe encore une meilleure documentation pour distribute donc vous devrez peut-être vous référer à la documentation pour setuptools à partir de laquelle distribute a été fourchu. En particulier, voir la section sur l'inclusion des fichiers de données.