Correct fixup for main python ports
David Osguthorpe
david.osguthorpe at gmail.com
Tue May 5 12:12:50 PDT 2009
Hi,
OK - so here is the real deal for solving what extra modules to install with the base python
port
_ssl.so most definitely should be installed
why??
because in the particular case of _ssl.so there is no "failed to import" message - as that
is protected in socket.py by try/except - the object my script imported was urllib2.py
which then does import both socket and hashlib (hashlib appears to have been installed from
other python stuff installed as part of py-gtk2)
so you get the extremely obscure error message: the url type https does not exist
looking at it there appears to be no consistency between which scripts in
Frameworks/Python.framework/Versions/2.5/lib/python2.5
use unprotected imports of these modules and ones which you do not get an error message for eg. pdb.py
does protect the readline import with try/except - and gives no error message if it does
not exist
so
macports should install by default any module which is imported from .py scripts in Frameworks/Python.framework/Versions/2.5/lib/python2.5
(which is identical between /System/Library from apple and /opt/local/Library from macports)
_tkinter, _sqlite3, _curses, _curse_panel, are not imported by any .py file in that directory
_hashlib, _sha256, _sh512, _sqlite3, _ssl, bz2, readline, zlib are imported by .py files in that directory
as the .py files in Frameworks/Python.framework/Versions/2.5/lib/python2.5 are from the main python
install there are no dependencies defined for them so you can never tell what you need to install
David
More information about the macports-dev
mailing list