[Bf-committers] Bundle Python, modules to exclude (if any)

Ton Roosendaal ton at blender.org
Mon Dec 15 09:31:22 CET 2008

Hi Campbell,

Good proposal, +1 from me. :)


Ton Roosendaal  Blender Foundation   ton at blender.org    www.blender.org
Blender Institute BV  Entrepotdok 57A  1018AD Amsterdam The Netherlands

On 8 Dec, 2008, at 4:10, Campbell Barton wrote:

> Last meeting we discussed weather to include all python modules
> (including modules bundled scripts don't use),
> this seemed a popular option which surprised me, since I recall extra
> size being a strong argument for some decisions in the past.
> Id prefer to include ALMOST all modules, just removing a few larger
> ones that are highly unlikely to be used by blender/python scripts.
> (to my knowledge have not been used yet for this purpose).
> Then again, if we're ok with adding ~8meg to Blenders download size,
> Im not going to argue too hard against it. :-)
> Keep in mind...
> * This discussion is only about the blender distributed on
> blender.org, linux distro's can still have a dynamic linked python.
> * Building your own blender can work as it does now. (probably have
> scons options for setting up a full python in the install DIR)
> * Even if we remove these modules from a blender bundle, a full python
> install would allow python devs to load them.
> * Adding modules back is also easy enough if we discover they are
> useful for blender.
> == Summery ==
> Tested with python 2.6.1 on windows, Sizes exclude python.exe, headers
> and libpython26.a (which only added up to a few 100k compressed
> anyway).
> Full Python
>  - 25.5mb, 8.3mb zipped
> Without TK
>  - 16.1mb, 5mb zipped
> Without TK, "distutils" and "test" modules
> - 10.1mb, 3.5mb zipped
> breakdown of module sizes uncompressed/compressed.
> TK - ~9.3mb uncompressed, 3.4 zipped. (installer reports TK to use
> 13mb, not sure whats up with that)
> "test" modules, 4.2mb, 0.7mb zipped.
> "distutils"  1mb . 0.4mb zipped.
> == Rationale ==
> "TK", user interface modules, Id recommend excluding this because...
> 1) Python without TK is an install option for win32 (note, its the
> ONLY module that can be unselected while installing), so we can
> exclude it while maintaining a complete python env.
> 2) Blender has its own UI,
> 3) Tk isnt popular compared py WX, QT, GTK,
> 4) its fairly large
> 5) this hasn't been used with blender for any non-experimental scripts
> AFAIK (feel free to link me to some blender tool that uses it)
> (tk modules)
> Tix - Tk Extension Widgets for Tkinter
> Tkinter - Interface to Tcl/Tk for graphical user interfaces
> turtle - Turtle graphics for Tk
> ScrolledText - Text widget with a vertical scroll bar.
> url: http://docs.python.org/modindex.html
> "test" module, This isnt likely to be used by production tools,
> developers who want to use it can have python installed.
> summery: Regression tests package containing the testing suite for 
> Python.
> url: http://docs.python.org/library/test.html#module-test
> "distutils" module, is normally used from the command line to install
> python modules "python setup.py build; python setup.py install", a bit
> like autotools "/configure; make; make install", again, blender tools
> wont use this.
> summery: Support for building and installing Python modules into an
> existing Python installation.
> url: http://docs.python.org/library/distutils.html#module-distutils
> -----
> -- 
> - Campbell
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers

More information about the Bf-committers mailing list