[SM-Discuss] Pythonic revolution
Vlad Glagolev
stealth at sourcemage.org
Wed Dec 26 02:34:39 EST 2007
OK. I committed a big change for devel/python spell with this commit log:
"""
python: fix the huge bug in spell: when you have a lot of python modules installed (in /usr/lib
python2.5/site-packages dir), and want to recast python, it will recompile every module in that
dir recursively, while adding every compiled (.pyc) and object (.pyo) files. So package of
python becomes bigger with any new pythonic module/app. And if we want to recast python
(remember -- every module in site-packages must be reinstalled after python), then we need to
dispel all pythonic modules first, then cast python, then cast all those modules. We MUST do it
not only after minor version upgrade -- but EVERYTIME we want to recast python, to keep it
clear an proper.
"""
Well, you should UPDATE you python spell now.
And yes.. a little history.. A week ago i found this bug, but i thought it was some "feature"
and forgot about it. After updating some pythonic spells i wanted to recast python and noticed,
that time for packaging it was a bit longer. Then i tried anothe python module -- then recasted
python again. It was bigger than the time before. `gaze install python' answered the question.
All this time we had such real bug: python compiles every module and saves it in its install log
and in the package. That's because our system doesn't use FAKE installations to the fake dir
(for example like in OpenBSD ports system), so then we must expect such problems.. and here
you are.. Pythonic one :)
This commit does:
- If you recast/update-to-a-new-version/recompile python -- all spells which has some of theirs
files in /usr/lib/python2.5/site-packages dir, will be recasted.
- first of all it dispells every such spell with adding `cast_self' trigger to it
- then it casts python
- finally it casts these spells
Well, I had ~50 pythonic modules @ my lappy box. after dispelling some unneeded i tried `cast -c python' while having these ones:
* 4suite
* bzr
* cherrypy
* flup
* libgsf
* libxslt
* pycairo
* pygtk2
* pysqlite
* pyxml
* sonata
* wesnoth
* blender
* bzr-gtk
* exo
* genshi
* libxml2
* pil
* pygobject
* pygtksourceview
* setuptools
* vte
* wxpython
With the huge spells like wesnoth (yes, it was compiled with python support :) and wxpython, it took ~55-60 mins on my 2.0GiHz/1GiB centrino duo lappy.
And, yes: comments/suggestions a pretty welcomed!
--
Cheerz,
Vlad "Enqlave" Glagolev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : http://lists.ibiblio.org/pipermail/sm-discuss/attachments/20071226/f4eb5990/attachment.bin
More information about the SM-Discuss
mailing list