From: Jimmy Retzlaff <jimmy@re...> - 2006-02-19 15:54:40
Patrick K. O'Brien wrote:
> Thomas Heller wrote:
> > Patrick K. O'Brien wrote:
> >> Since Schevo does also use RuleDispatch, which has its own
> >> _speedups.pyd, Phillip's guess seems to be on the money. If that
> >> case, can anyone suggest a way to work around this problem? Is
> >> way to put the .pyd files into the library zip file where they
> >> reside within their own folders? Or is there any way that py2exe
> >> be enhanced to detect these kinds of name conflicts and create
> >> subdirectories within dist\lib?
> >> At this point I'll take any hack that works. :-)
> > I have not tried the bundle_files=3D4 option, maybe that doesn't =
> > bug.
> Actually, I had forgotten about the new bundle options. I don't know
> what bundle_files=3D4 is supposed to do, but values of 1 and 2 fixed =
> problem. Thanks a bunch!
And just for clarification... bundle_files=3D4 was only in CVS for a
while. In 0.6.4 it has been replaced with the --skip-archive option
(which I don't believe would address Patrick's issue). Using
bundle-files was a misnomer as that really deals with the placement of
extension modules, where skip-archive deals with the placement of
pyc/pyo files. The skip-archive basically tells py2exe to not use an
archive at all - it just places the pyc/pyo files directly in the file
system. As such it is incompatible with bundle_file=3D1 or =3D2. This =
be useful for debugging to easily see what is included and where.
I also use it in my own applications to make it simple to deploy tiny
updates remotely (some of my users update via very slow cell phone
connections with speeds of around 10-15Kbps). If I make changes to a
couple of Python files, I can simply send out a self extracting archive
with only the changed pyc files. These tiny updates tend to be about
35KB (most of which is the SFX code) and require no real programming
logic (on my part) for applying them. Previously a similar update
involved sending out a new library.zip (several megabytes in my apps) or
having complex logic for updating the existing library.zip in place. For
the initial install I use an installer so my users are unaware that my
application consists of 100s of files.