[Python-Dev] Freeze hacks
Guido van Rossum
guido@digicool.com
Wed, 18 Jul 2001 12:32:03 -0400
> - unixccompiler, msvccompiler, cygwinccompiler,
> bcppcompiler, mwerkscompiler, from distutils.ccompiler
> - distutils.command.* from distutils.dist
I don't expect frozen programs to use distutils.
> What is the purpose of dumbdbm not importing os directly?
I'm afraid that it's just an old way of spelling
import os as _os
With the intention of not exporting anything undesired on "from
dumbdbm import *". Feel free to fix it.
> To give a specific example, I'd change xml.sax.__init__ to read
>
> default_parser_list = ["xml.sax.expatreader"]
> if 0:
> # freeze hack: the import relationship is not visible without this
> # statement
> import xml.sax.expatreader
>
> Is that a desirable change? If so, I'll produce a patch.
Sounds good to me.
> The case of encodings is particularly troubling: I don't think there
> is a way to tell freeze/py2exe/installer that
>
> print u"Hallo".encode("iso8859-2")
>
> will require additional modules. As a convention, I'd still recommend
> to link all this to codecs, so that an application requiring any
> codecs can do
>
> if 0:
> import codecs
>
> explicitly, or just tell the freeze tool to use codecs, and then will
> get all codecs that are known statically.
Won't this create enormously bloated frozen binaries?
--Guido van Rossum (home page: http://www.python.org/~guido/)