I just released my first new piece of software using Distribute, and I'm still confused about whether I have the packaging correct. I think not, because a user has reported receiving a SandboxViolation error when trying to install the package with easy_install (bug report at: http://bitbucket.org/dhellmann/ical2org/issue/1/unable-to-install-ical2org-with) . The relevant portion of the error message seems to be:

Searching for distribute
Reading http://pypi.python.org/simple/distribute/
Reading http://packages.python.org/distribute
Best match: distribute 0.6.10
Downloading http://pypi.python.org/packages/source/d/distribute/distribute-0.6.10.tar.gz#md5 =99fb4b3e4ef0861bba11aa1905e89fed
Processing distribute-0.6.10.tar.gz
Running distribute-0.6.10/setup.py -q bdist_egg --dist-dir /tmp/ easy_install-aO9HwB/distribute-0.6.10/egg-dist-tmp-woULY8
Before install bootstrap.
Scanning installed packages
Setuptools installation detected at /System/Library/Frameworks/ Python.framework/Versions/2.5/Extras/lib/python
Non-egg installation
Removing elements out of the way...
Renaming /System/Library/Frameworks/Python.framework/Versions/2.5/ Extras/lib/python/setuptools-0.6c7-py2.5.egg-info into /System/Library/ Frameworks/Python.framework/Versions/2.5/Extras/lib/python/ setuptools-0.6c7-py2.5.egg-info.OLD.1263800301.89 error: SandboxViolation: mkdir('/System/Library/Frameworks/ Python.framework/Versions/2.5/Extras/lib/python/setuptools-0.6c7- py2.5.egg-info',) {}

That looks like the script is trying to install Distribute itself, based I suppose on having it in the install_requires list in my setup.py. I added distribute to install_requires after on an apparent misreading of the instructions on http://pypi.python.org/pypi/ distribute.

So, my questions:

1. While researching the problem this morning, I came across the instructions at http://packages.python.org/distribute/setuptools.html#using-setuptools-without-bundling-it , which seem like a much more sensible way to bootstrap the installation of Distribute than install_requires. Should I have used that instead of install_requires?

2. If I don't require Distribute for installation, will my package work with the older setuptools (assuming I'm not using any Distribute- specific features, which I don't think I am, but I'm not sure I know what those are). In a nutshell, do I need to force my user to install Distribute at all before using my package? And if so, what is the preferred way of doing that?

Thanks,
Doug

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to