This announcement is available in HTML at: http://bob.pythonmac.org/archives/2004/12/30/ann-py2app-017/
py2app_ is the bundlebuilder replacement we've all been waiting for.
It is implemented as a distutils command, similar to
builds Mac OS X applications from Python scripts, extensions, and
related data files. It tries very hard to include all dependencies it
can find so that your application can be distributed standalone, as Mac
OS X applications should be.
py2app_ 0.1.7 is included in the installer for
PyObjC_ 1.2, then you already have
Download and related links are here: http://undefined.org/python/#py2app
py2app_ 0.1.7 is a bug fix release:
bdist_mpkgscript will now set up sys.path properly, for setup scripts that require local imports.
bdist_mpkgwill now correctly accept
backgroundfiles by parameter.
bdist_mpkgcan now display a custom background again (0.1.6 broke this).
bdist_mpkgnow accepts a
build-base=argument, to put build files in an alternate location.
py2appwill now accept main scripts with a
py2app's not_stdlib_filter will now ignore a
site-pythondirectory as well as
py2app's plugin bundle template no longer displays GUI dialogs by default, but still links to
py2appnow ensures that the directory of the main script is now added to
sys.pathwhen scanning modules.
py2appbuild command has been refactored such that it would be easier to change its behavior by subclassing.
py2appalias bundles can now cope with editors that do atomic saves (write new file, swap names with existing file).
macholibnow has minimal support for fat binaries. It still assumes big endian and will not make any changes to a little endian header.
installcommand rather than installing from a package.
simple/structuredexample that shows how you could package an application that is organized into several folders.
PyObjC/pbpluginXcode Plug-In example.
Since I have been slacking and the last announcement was for 0.1.4, here are the changes for the soft-launched releases 0.1.5 and 0.1.6:
py2app_ 0.1.6 was a major feature enhancements release:
bdist_mpkgscripts have been moved to Python modules so that the functionality can be shared with the tools.
py2appwas moved to
bdist_mpkgnow outputs more specific plist requirements (for future compatibility).
py2appcan now create plugin bundles (MH_BUNDLE) as well as executables.
sip_, such as
PyQt_. Note that due to the way that
sip_ works, when one sip-based extension is used, all sip-based extensions are included in your application. In practice, this means anything provided by
Riverbank_, I don't think anyone else uses
PyOpenGL_. This is very naive and simply includes the whole thing, rather than trying to monkeypatch their brain-dead version acquisition routine in
EXECUTABLEPATHenvironment variables, corresponding to the
_NSGetExecutablePath(...)that the bundle saw. This is only really useful if you need to relaunch your own application.
altgraph, can now generate
GraphViz_ graphs and more complex analysis of dependencies can be done.
macholibwas refactored to be easier to maintain, and the structure handling has been optimized a bit.
py2app_ 0.1.5 was a major feature enhancements release:
bdist_mpkg distutils extension, for creating Installer
an metapackage from any distutils script.
PackageInstaller tool, a droplet that performs the same
py2app_'s setup script.
setuptools_ extension to distutils.
py2app.modulegraphis now a top-level package,
py2appbuild command, strips all Mach-O files in output application bundle.
py2appbuild command, allows an alternate build directory to be specified.