[Distutils] Exclusionary list of files/dirs in my TG-app's setup.py
Phillip J. Eby
pje at telecommunity.com
Sat Mar 31 04:57:58 CEST 2007
At 07:09 PM 3/30/2007 -0700, Venkat Bommakanti wrote:
>Hi folks,
>
>(Please ignore my previous req on the same topic
> Got sent out by mistake... Thanks.)
>
>'am using setup tools to build and package a TG 1.0.1
>app. After deployment, I'm seeing a few entries in
>SOURCES.txt despite specifying related wildcards in
>the exclusion list.
May I suggest that instead of using a custom find_package_data function,
that you simply set "include_package_data=True" and add any files you want
to include to your version control system (CVS or SVN)? Or, if you aren't
using a supported version control system (and don't want to write a plugin
for it), use the MANIFEST.in file to select what files to include or
exclude. See e.g.:
http://python.org/doc/2.3/dist/source-dist.html#SECTION000510000000000000000
When you simply use "include_package_data=True" instead of specifying
individual files or wildcards, setuptools begins by using the distutils
defaults, plus anything listed in revision control that's inside a package
directory and isn't a .py* file. Then, it applies the rules listed in
MANIFEST.in, which means that you can use it to add things that aren't
under revision control, OR to exclude things that *are* in revision control.
Anyway, this will give you fine-grained control over what you want to
include in your source and egg distributions, without needing to cram a
bunch of extras into your setup script. As far as I know, TG's
find_package_data function was created before setuptools supported the
include_package_data option. I don't think it's been necessary for quite a
while now.
More information about the Distutils-SIG
mailing list