[py2exe] What to download when updating?

G

Gilles Ganault

Hello

Out of curiosity, if I recompile a Python (wxPython) app with
py2exe, can I have customers just download the latest .exe, or are
there dependencies that require downloading the whole thing again?

FWIW, here's the list of files that were created after running py2exe:

myprog.exe
bz2.pyd
library.zip
MSVCR71.dll
python25.dll
unicodedata.pyd
w9xpopen.exe
wxbase28uh_net_vc.dll
wxbase28uh_vc.dll
wxmsw28uh_adv_vc.dll
wxmsw28uh_core_vc.dll
wxmsw28uh_html_vc.dll
_controls_.pyd
_core_.pyd
_gdi_.pyd
_misc_.pyd
_windows_.pyd

Thank you.
 
M

Mike Driscoll

Hello

        Out of curiosity, if I recompile a Python (wxPython) app with
py2exe, can I have customers just download the latest .exe, or are
there dependencies that require downloading the whole thing again?

FWIW, here's the list of files that were created after running py2exe:

myprog.exe
bz2.pyd
library.zip
MSVCR71.dll
python25.dll
unicodedata.pyd
w9xpopen.exe
wxbase28uh_net_vc.dll
wxbase28uh_vc.dll
wxmsw28uh_adv_vc.dll
wxmsw28uh_core_vc.dll
wxmsw28uh_html_vc.dll
_controls_.pyd
_core_.pyd
_gdi_.pyd
_misc_.pyd
_windows_.pyd

Thank you.

Gilles,

I think you can get away with just the executable. However, there are
some options in py2exe that allow you to output one file. I use
GUI2Exe, a GUI to py2exe that makes it quite a bit easier to wrap
these things:

http://xoomer.alice.it/infinity77/main/GUI2Exe.html

You just set Optimize and Compressed to 2 and Bundle Files to 1. I
also use Inno Setup if I need an installer.

Hope that helps!

Mike
 
D

David Bolen

Gilles Ganault said:
Hello

Out of curiosity, if I recompile a Python (wxPython) app with
py2exe, can I have customers just download the latest .exe, or are
there dependencies that require downloading the whole thing again?

It will depend on what you changed in your application. The most
likely file that will change is your library.zip file since it has all
of your Python modules. I believe that with py2exe the main exe is
typically a standard stub, so it need not change, but it can if the
top level script is named differently since it has to execute it.

The other files are binary dependencies, so you may add or remove them
during any given build process depending on what modules you may newly
import (or have removed the use of).

In the end, you could in theory just compare the prior version
distribution tree to the new version is simplest. But then you'd need
to package up an installer that did the right thing on the target
system.

To be honest, just packaging it up as a new version and putting it
into a standard installer (as with InnoSetup or NSIS) and letting the
installer keep track of what to do when installing the new version on
top of an existing version is generally simplest overall, albeit
larger.

But during internal development or other special cases, I've
definitely just distributed updated library.zip files without any
problem.

-- David
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,969
Messages
2,570,161
Members
46,710
Latest member
bernietqt

Latest Threads

Top