Hi Miguel,

Thanks! It's great to see progress on this front!

Cheers,
Adrian

On Aug 4, 2010, at 10:21 , Miguel Enrique Cobá Martínez wrote:

> Hi all,
> 
> I have created three new repositories on squeaksource:
> 
> http://www.squeaksource.com/UniverseForPharo10
> http://www.squeaksource.com/UniverseForPharo11
> http://www.squeaksource.com/UniverseForPharo12
> 
> They are the repositories for the current versions of Pharo. The idea is
> that each new release add a new UniverseForXXX repository and populates
> it with the current UniverseForXXX packages of the stable release.
> 
> Right now they are mostly empty, but should be populated by the
> community and the ConfigurationOfXXX maintainers.
> 
> Most ConfigurationOfXXX packages in
> 
> http://www.squeaksource.com/MetacelloRepository
> 
> should be copied to UniverseForPharo10. Which versions? The last known
> version that is working correctly on Pharo 1.0. This will be the
> official universe for Pharo1.0. No ConfigurationOfXXX should be stored
> on UniverseForPharo10 if it is not working correctly on Pharo10.
> 
> Then two things can follow:
> 
> - If the package already has ConfigurationOfXXX package versions that
> work in Pharo 1.1, those versions should be copied to
> UniverseForPharo11.  
> 
> - If the ConfigurationOfXXX only works for Pharo1.0 and the maintainer
> want to create the configuration for Pharo 1.1, he/she must copy the
> last working configuration for the package from UniverseForPharo10 to
> UniverseForPharo11. There he/she can start modifying the package until
> it works correctly in Pharo1.1 (use the blessing: tags wisely to avoid
> marking a broken configuration as released)
> 
> This will permit to populate the UniverseForPharo11 based on the last
> working package versions from UniverseForPharo10. From that point they
> will likely diverge because of maintenance releases to the packages in
> any UniverseForXXX repository.
> 
> The same will must be done to migrate from UniverseForPharo11 to
> UniverseForPharo12. You get the idea.
> 
> With time, MetacelloRepository should be deprecated in favor of this
> UniverseForXXX repositories.
> 
> Anyone is free to copy a working version from a previous Universe to a
> new Universe. They have read/write permissions to all.
> 
> This setup will avoid the problems we are having right now with the
> in-image changes that are rendering the ConfigurationOfXXX unusable in
> distinct releases of Pharo.
> 
> What this means to the end user:
> 
> - For released version of Pharo
> 
> They will have to use gofer this way:
> 
> Gofer new
> squeaksource: 'UniverseForPharo10'; "Or UniverseForPharo11"
> project: 'ConfigurationOfMagma';
> load.
> ConfigurationOfMagma project latestVersion load.
> 
> - For next releases of Pharo
> 
> Gofer loadFromUniverse: 'Magma'.  "Or with GoferProjectLoader"
> ConfigurationOfMagma project latestVersion load.
> 
> All this depends on conventions to find the appropriate universe for
> each pharo release, and also in the support from tools (like gofer in
> this example or the GoferProjectLoader if it is part of the core image).
> The universe functionality of the tools right now rely on the
> SystemVersion current majorMinorVersion string for deciding which
> repository to connect to. This could be improved surely but for now it
> works.
> 
> I'm loading a new version of Gofer to PharoInbox with this functionality
> added so if you want to load directly from the universes with gofer do:
> 
> Gofer upgrade.
> Gofer loadFromUniverse: 'YourPackageAlreadyInAUniverse'.
> 
> But wait to this change to be treated by Stephane or Lukas before
> attempt it.
> 
> Right now there is only Magma in the three repositories, but it
> shouldn't be hard for the maintainers of the other Configurations to
> help populate the universes from Pharo1.0, Pharo1.1 and Pharo1.2.
> 
> This will benefit us as a community because the universes for the
> released pharo versions will be mostly untouched (only maintenance
> releases) and people will have the freedom to modify the configuration
> in the unstable (currently UniverseForPharo12) universe without
> affecting the users of the stable versions.
> 
> Also, this will avoid to have a lot of conditionals inside the
> ConfigurationOfXXX classes, because a given class will target a specific
> Pharo release (the version on the newest universes could even delete the
> methods for the old universe, because will likely won't work in the new
> universe, deleting unnecessary and legacy code from the configuration)
> 
> Comments and improvements welcome
> 
> -- 
> 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

Reply via email to