On 26 Jan, 2010, at 15:45, Kevin Walzer wrote:

> On 1/25/10 1:52 PM, Christopher Barker wrote:
>> Kevin Walzer wrote:
>>> py2app may be more powerful than BundleBuilder, but it is also a
>>> complex, fragile beast. It consists of several different packages,
>>> requiring both a) a deep understanding of OS X mach-o internals and
>>> how libraries/load paths/dyld bits are loaded;

The bit that requires mach-o understanding is part that copies C libraries into 
a standalone bundle and that's hardly the most important bit of py2app. It 
needs some more care to deal with 64-bit binaries (appearently), but for the 
most part just works.

>> 
>> I'm a bit confused by this -- how does bundle builder to it in a way
>> that doesn't require this knowledge?
> 
> If I understand the code correctly, it uses modulefinder, which doesn't seem 
> to work as well as the modulegraph stuff that py2app uses.

IIRC modulefinder isn't as good as modulegraph at calculating the depedency 
graph. Modulefinder definitely does nothing with depedencies of C code.

> 
>> 
>> The fact that it has worked better for you doesn't necessarily mean that
>> it is more robust or more maintainable (though having tried to dig into
>> the Py2app code a couple times, I agree that it is a challenge!).
> 
> It isn't more robust. I never claimed that. It may be more maintainable 
> simply because it's a smaller code base--at least, I can grok its internals a 
> bit better. And "works for me" is better than "doesn't work for me and I 
> don't know how to fix it."
> 
>> 
>> But Ronald sees to think there are real advantages to py2app, and he
>> would know.
> 
> He mentioned that bundlebuilder requires you to specify every file that you 
> include. That's not entirely true, but modulefinder is less effective at 
> picking up dependencies than modulegraph,  and you do have to do more trial 
> and error with your builds. I believe that was the main complaint in the past.
> 
>> 
>> Are you offering to maintain BundleBuilder? I"ll take somthing actively
>> maintained over something that isn't.
> 
> It doesn't need an active maintainer for Python 2.x because it's in the 
> standard library, and shouldn't require any tweaking of build scripts that 
> make use of it unless you're trying to build a 64-bit version of your app. 
> (Argvemulator isn't supported in 64-bit because it's part of Carbon.) When I 
> move my code base to Python 3.x, which won't happen until all the libraries I 
> need are ported to work with 3.x, I will look at setting up a separate 
> bundlebuilder project somewhere.
> 
>> 
>> Note that modulegraph is being used by bbfreeze as well, so it's not
>> completely unmaintained.

It isn't completely unmaintained without bbfreeze as well. I fix issues that I 
run into and hope to enhance it with egg support in the future.

In fact, the usage of modulegraph by bbfreeze isn't "maintance" at all, they 
ship a modified copy of modulegraph. 

>> 
>> I still wish that the was more unification among all the executable
>> builders, it does seem to be a waste of energy to have so much stuff
>> repeated.
> 
> bbfreeze and pyinstaller have no constituency on the Mac right now--their Mac 
> support is alpha-level at best. So I don't consider them to be part of the 
> mix.
> 
> --Kevin
> 
> -- 
> Kevin Walzer
> Code by Kevin
> http://www.codebykevin.com
> _______________________________________________
> Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
> http://mail.python.org/mailman/listinfo/pythonmac-sig

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig

Reply via email to