py2app + setuptools-0.6a9 = *poof*
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello all, My apologies in advance if this has already been covered, but I am very confused by the interaction between py2app and setuptools. I have installed Universal-MacPython-2.4.3 from <http://python.org/ download/releases/2.4.3/> (I have an Intel-based Mac) and built py2app 0.2.0 from source:
$ export PATH="/usr/local/bin:${PATH}" $ svco http://svn.red-bean.com/bob/py2app/releases/py2app-0.2.0 ... $ cd py2app-0.2.0 $ python setup.py bdist_mpkg --open ...
Now when I download ClientForm from <http://wwwsearch.sourceforge.net/ ClientForm/> and try to build it using py2app, I get the following:
$ tar xpvf ClientForm-0.2.2.tar.gz $ cd ClientForm-0.2.2 $ bdist_mpkg
---------------------------------------------------------------------- ----- This script requires setuptools version 0.6a9 to run (even to display help). I will attempt to download it for you (from http://cheeseshop.python.org/packages/2.4/s/setuptools/), but you may need to enable firewall access for this script first. I will start the download in 15 seconds. ---------------------------------------------------------------------- ----- Downloading http://cheeseshop.python.org/packages/2.4/s/setuptools/ setuptools-0.6a9-py2.4.egg Traceback (most recent call last): File "/usr/local/bin/bdist_mpkg", line 3, in ? main() File "/Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/py2app/bdist_mpkg/scripts/ script_bdist_mpkg.py", line 24, in main execfile(sys.argv[0], g, g) File "setup.py", line 88, in ? ez_setup.use_setuptools() File "/Users/matt/Desktop/macpython/orig/ClientForm-0.2.2/ ez_setup/__init__.py", line 84, in use_setuptools import setuptools; setuptools.bootstrap_install_from = egg File "/Users/matt/Desktop/macpython/orig/ClientForm-0.2.2/ setuptools-0.6a9-py2.4.egg/setuptools/__init__.py", line 3, in ? File "/Users/matt/Desktop/macpython/orig/ClientForm-0.2.2/ setuptools-0.6a9-py2.4.egg/setuptools/dist.py", line 29, in ? File "/Users/matt/Desktop/macpython/orig/ClientForm-0.2.2/ setuptools-0.6a9-py2.4.egg/setuptools/dist.py", line 24, in _get_unpatched AssertionError: distutils has already been patched by
I'm now at a total loss. Is there any advice anyone can give me on now to get this to work (besides "don't use (py2app|ClientForm)")? Any help is greatly appreciated. --Matt -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (Darwin) iD8DBQFEPK0snLpDzL5I7l8RAqy1AJ0bp2Yt7Nj3O1dSZm0+upcszZEH6ACeMvG8 XAWwdG9j3iv5MgQdKFAEIT4= =Gj4O -----END PGP SIGNATURE-----
At 12:32 AM 4/12/2006 -0700, Matthew Bogosian wrote:
AssertionError: distutils has already been patched by
I'm now at a total loss. Is there any advice anyone can give me on now to get this to work (besides "don't use (py2app|ClientForm)")? Any help is greatly appreciated.
Whenever setuptools is used with a tool (such as py2exe or py2app), setuptools must be imported first. In your specific situation, you should first install the latest version of setuptools, then replace your existing setup command with: python -c "import setuptools; execfile('setup.py')" stuff where "stuff" is whatever you would have put after "python setup.py" on the command line. This is the easiest way to force setuptools to be imported first, before anything else has a chance to attach itself to the distutils. This still doesn't guarantee success, since it's possible for other programs to monkeypatch the distutils in ways that break setuptools. But it should at least move you forward another step.
On Apr 12, 2006, at 12:32 AM, Matthew Bogosian wrote:
My apologies in advance if this has already been covered, but I am very confused by the interaction between py2app and setuptools.
They're more or less completely incompatible at this point. py2app 0.2.x has no idea what setuptools is, the next major version will be dependent on setuptools (and probably also Python 2.4). -bob
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Apr 12, 2006, at 10:50 , Bob Ippolito wrote:
On Apr 12, 2006, at 12:32 AM, Matthew Bogosian wrote:
My apologies in advance if this has already been covered, but I am very confused by the interaction between py2app and setuptools.
They're more or less completely incompatible at this point. py2app 0.2.x has no idea what setuptools is, the next major version will be dependent on setuptools (and probably also Python 2.4).
Not to sound irreverent or impatient, but do you have any idea when the next major version will be available? (I understand that putting food on the table takes precedence.) --Matt -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (Darwin) iD8DBQFEPU3VnLpDzL5I7l8RAvAGAJ9M0msWe0x6IQE3zb1Jp0hY3m/izgCfShpX xIsXhuH/uCn8FaV0hbikzzs= =o6ja -----END PGP SIGNATURE-----
On Apr 12, 2006, at 11:58 AM, Matthew Bogosian wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Apr 12, 2006, at 10:50 , Bob Ippolito wrote:
On Apr 12, 2006, at 12:32 AM, Matthew Bogosian wrote:
My apologies in advance if this has already been covered, but I am very confused by the interaction between py2app and setuptools.
They're more or less completely incompatible at this point. py2app 0.2.x has no idea what setuptools is, the next major version will be dependent on setuptools (and probably also Python 2.4).
Not to sound irreverent or impatient, but do you have any idea when the next major version will be available? (I understand that putting food on the table takes precedence.)
It'll be available when I get around to it.. which is some completely indeterminate amount of time. I'm not currently working on anything related to Mac OS X specifically at this time, so I'm not in a hurry. For the most part, eggs are a better solution than bdist_mpkg anyway (except for peripheral stuff like docs, applications, and examples). When I do get around to working on py2app's next major version, my focus will be to support the building of applications. bdist_mpkg is mostly obsolete in a setuptools world. -bob
participants (3)
-
Bob Ippolito
-
Matthew Bogosian
-
Phillip J. Eby