[Distutils] [ANN] py2app 0.1.6

Bob Ippolito bob at redivi.com
Tue Dec 7 06:49:28 CET 2004


I've rolled together a new 0.1.6 release of py2app 
<http://undefined.org/python/#py2app> that includes the following 
feature enhancements and probably a few bug fixes:

modulegraph:
- This is now a top-level package and should be cross-platformish and 
not at all py2app specific (if someone wants a project, integrate this 
into py2exe/cx_Freeze/etc.)

altgraph:
- Some common code between modulegraph and macholib was moved into 
altgraph (the ObjectGraph data structure, for example)

macholib:
- Lots of code in its supporting library, ptypes, was removed, 
rewritten and optimized for performance and simplicity.
- The API has totally been changed (I don't think anyone else uses it, 
so I don't feel bad about it :)
- It uses altgraph for its data structure now
- More correct algorithms for locating dylibs and frameworks based upon 
a thorough reading of the dyld source code

bdist_mpkg:
- Made the dependency checking more specific for better Installer 
compatibility
- Fixed some minor bugs

py2app:
- New "plugin" target for building loadable bundles (i.e. Interface 
Builder palettes).  This is a crazy hack, and will never work perfectly 
due to the icky globalness of the Python interpreter, but works well 
enough in practice.
- Plugin example
- Sets a new ARGVZERO environment variable that points to the argv[0] 
that was passed to main(...).
- Sets a new EXECUTABLEPATH environment variable that points to the 
actual path of the executable that was run (which will be == to 
ARGVZERO most of the time)
- suboptimal PyQt support (sip and PyQt are built in really strange 
ways and have lots of interdependencies at the C/C++ level so whenever 
you use ANY sip module you use ALL sip modules)
- PyQt example
- suboptimal PyOpenGL support (PyOpenGL has a stupid way of finding its 
version that prevents it from being easily bundled)
- PyOpenGL example
- py2applet command line tool (performs the same function as the GUI 
app)

-bob



More information about the Distutils-SIG mailing list