py2exe service and tool-tray app combined?
Graham Fawcett
fawcett at teksavvy.com
Thu Aug 14 13:43:49 EDT 2003
Thomas Heller wrote:
>If you discovered a bug in an .sll file, you could either buid and
>distribute a new version of it, or you could create an additional, new
>.sll file containing the fixed methods. And you would make sure to list
>this new .sll in the myapp.bnd file, before the buggy one. This way the
>size of the upgrade could be kept as small as possible.
>
>Now, isn't this '.bnd' file mechanism also a nice idea for py2exe?
>
>
"Nice idea" is an understatement, Thomas -- it would be heaven!
Presumably the Python analog of the .sll file would have to contain
new/corrected modules, rather than just new/corrected methods, unless
you're one of those wild aspect-weaving types.
And presumably there would be inspection mechanisms to allow for
examination of the .bnd file, and provide an opportunity for fetching
updates when the program boots...
An installed app could "phone home" to an update-server, send nothing
but a message digest of its .bnd file, fetch a new .bnd if the old one
is stale, and pull down the missing-but-requisite .sll files... all
before the __main__ module starts importing the app logic. That's cool.
It would be nice, for long-running apps, if there were a facility for
restarting the app automatically (under permitted conditions) if updated
code were detected at the update server. Maybe just a runtime api for
determining if the codebase is up to date, and then let the app make the
decision whether to restart.
All this could be done in the absence of py2exe, of course, but a
standardized framework for this kind of thing would be ideal. It could
complement PyPI and distutils as well, I would imagine.
So, having swooned for a moment, let me ask: are you considering adding
such a mechanism to the new py2exe?
-- Graham
More information about the Python-list
mailing list