StackUnderflow
StackUnderflow

Reputation: 25368

python distutils does not include data_files

I am new to distutils.. I am trying to include few data files along with the package.. here is my code..

from distutils.core import setup

setup(name='Scrapper',
      version='1.0',
      description='Scrapper',      
      packages=['app', 'db', 'model', 'util'],
      data_files=[('app', ['app/scrapper.db'])]      
     )

The zip file created after executing python setup.py sdist does not include the scrapper.db file. I have scrapper.db file in the app directory..

thanks for the help.

Upvotes: 19

Views: 6090

Answers (2)

Carl Meyer
Carl Meyer

Reputation: 126581

You probably need to add a MANIFEST.in file containing "include app/scrapper.db".

It's a bug in distutils that makes this necessary: anything in data_files or package_data should be included in the generated MANIFEST automatically. But in Python 2.6 and earlier, it is not, so you have to include it in MANIFEST.in.

The bug is fixed in Python 2.7.

Upvotes: 21

Matthew
Matthew

Reputation: 403

Try removing MANIFEST, that way distutils will be forced to regenerate it.

Note: I've been using python 3.x, so I don't know if this works with 2.x or not.

Upvotes: 1

Related Questions