Hi all,

Here is the result of some more effort I put into creating small images from 
PharoCore. Running "ScriptLoader new cleanUpForProduction" in the latest 
PharoCore 1.1 you get an image that is 6.2 MB on disk. There are two goals for 
shrinking images: (i) sparing some megabytes makes a big difference if you run 
a lot of images on a server, also they start up much faster; (ii) 
modularization: being able to reliably unload packages forces us to cleanly 
package our code without unnecessary interdependencies.

Note that after running #cleanUpForProduction, you need to close all windows, 
save the image, restart it, trigger a GC, and save the image again (because for 
instance the Mac host menu classes will only go away after a restart).

In addition to #cleanUpForRelease the production cleanup does the following:
- removing all tests and the SUnit test runner
- removing all methods storing binary graphic resources (icons and fonts)
- removing the help system and Mac host menu
- changing all font selections to Accuny and deleting Deja Vu fonts
- deleting the logo
- deleting MC ancestry information
- deleting ScriptLoader

I made sure that these removals result in a clean system, that is, no 
undeclared and no obsolete classes.

Cheers,
Adrian

BTW, if you have more cleanup code or ideas where we could spare some bytes, 
let me know :)

___________________
http://www.adrian-lienhard.ch/


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to