2010/1/24 Miguel Enrique Cobá Martinez <[email protected]> > First that anything, thanks to Mariano for all the effort put in order > to release a 1.0 version of Pharo. And to all the contributors also. >
You are welcome :) Thanks for taking the time to look at the confs and to write this mail. > > As part of incorporating Metacello to my projects, I have gain a little > more insight in the working of it. For that I have been studying the > existing configurations. I even contributed a pair to the repository. > Tonight I was building a Pharo image using the ConfigurationOfPharo. > > yes, I noticed that :) > The announce said nothing but the inner workings of the dev image > creations changed, although the result is exactly (with a lot of fixes > included) the same that the rc1 image created with Metacello. The > changes are this: > > - in rc1, it was only necessary ConfigurationOfPharo to build a complete > Pharo dev image. That is ConfigurationOfPharo included > ImageForDevelopers. > > yes > - in rc2, ConfigurationOfPharo isn't enough to build a dev image (I > noticed this tonight because I used ConfigurationOfPharo alone to build > an image but in the end I didn't get autocompetition), it is also > necessary to run a second script to load ImageForDevelopers and install > it. This is all done in the installScript.st script included in the > pharo rc2 dev image. > > As I said before, the results are the same, but before all was done in > the ConfigurationOfPharo and now requires two steps. > exactly > > Now to the point. I understand that the separation of concerns is good, > because ImageForDevelopers is already a separated and tested package > that shouldn't be inside ConfigurationOfPharo. > I will tell you a bit the background: First, when I took the installScript from Damien, there where some stuff done in the script (like settings the preferences and the fonts) done in the installScript. It didn't have sense for me (of course I asked Damien) and I put that in ImageForDevelopers (and this is cool because it is versiones with monticello). Actually in DEVImageCreator >> install. I need also to clean that class as it has a lot of old stuff. But not time for the moment. When I create rc1, ImageForDevelopers was a dependency of ConfigurationOfPharo as you said. There was a problem installing it with the progress bar and Metacello. The image just frezze because of a sempahore and a delay....see issue: http://code.google.com/p/metacello/issues/detail?id=39 But I can even reproduce the problem....So, that quick solution (as I needed to relase the Pharo image) was to put in the installScript. And after a while I discovered that I even like more that approach. Someone may want just the packages of a dev image, but not to set preferences, fonts, cleanups, etc. And I don't have the Metacello bug. The problem I found also putting it as a dependency is that it has to be the LATEST (I think that you cannot even said that XX package has to be the last one to be loaded) package to be loaded. I can put it as postDoIt for the project, but this cannot be done because it is ONLY required for certain groups > - Shouldn't be necessary to create a ConfigurationOfImageForDevelopers > and in this configuration reference ConfigurationOfPharo and then the > installScript for the dev image use *only* > ConfigurationOfImageForDevelopers? > > It can work, but actually for me we are having a problem (maybe we need the support the post/pre doit for groupos...but dale said it was complicated). I would like to just do (ConfigurationOfPharo project version: 'XXX') load:'ImageForDeveloper' - It appears that Dale will announce project preload/postload doIts next > This was already done if I remember..... > monday. If that happens, shouldn't be better to incorporate the code > from DEVImageCreator as preload/postload do its to the > ConfigurationOfPharo? > > no, because of the problem I told you that NOT all the groups want that. > It appears to me that DEVImageCreator is a mixture of different things, > both preference tuning (setDefaultPreferences, setFonts) image fixing > (addPreferenceCategories, cleanOpenMenu) and image building stuff > (writeListOfPackages, showWelcomeWorkspaces). > > yes...and some obsolete code. > Maybe the image fixing stuff should be a change incorporated to the > PharoCore image, and the preference tuning should be a postload do it > for the ConfigurationOfImageForDevelopers, and the image building stuff > should be in the install script. > > This way, if someone wants to build a image for developers (but without > the list of packages, or welcome workspaces) it only has to use > ConfigurationOfImageForDevelopers. > > Yes, I like the idea. But I am not sure if for 1.0. I would do that for 1.1 images. At the end of this converstation, we should open a ticket. > Also, maybe after all this refactoring, the > ConfigurationOfImageForDevelopers isn't necessary because all can be > incorporated to the ConfigurationOfPharo as preload/postload do its. > That is fine. > > Yes!!! I don't want a ConfigurationOfImageForDevelop. That means we are lacking something. > > Also, the image for developers has stuff for squeak. This refactoring > would permit to separate them in preload/postload for each platform, in > a cleaner way. > > As I said at beginning, this is only thoughts, and the current result > image is the same as the one produced by the previous configuration, but > maybe, with more time and less pressure, this refactoring and cleaning > could be made. > > Of course, I will try to do this and contribute the code as my time > permits, but if someone can do it sooner, the better for all of us. > > Thanks again for the hard work > Thanks for the notes...cheers Mariano > -- > Miguel Cobá > http://miguel.leugim.com.mx > > > _______________________________________________ > Pharo-project mailing list > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
