Distribute bootstrap question
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-w...) . 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... =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-witho... , 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
participants (1)
-
Doug Hellmann