Hi all,
I have the impression that moose releases are not very much used. I agree that our
development process works great (a lot of progress), and that because of this most people
working on or with moose use the development version and ignore the release version. At
the moment how ever, I still use a pharo 2.0 based image and cannot take the latest
development version (as this is pharo 3.0 based and moose 4.9 is frozen). So I tried to
revert to using the releases. And there I ran into problems. Both release 4.8 and 4.9
don't work for me.
- release 4.8 has a outdated grease version that causes the image to become unstable when
you load something that uses grease. This is almost anything, so you can only use the
image "as is"
- the moose panel of release 4.9 needs to be closed and reopened. Loading PetitDelphi in
this image causes several packages to be imported that only work in pharo 3.0.
Note also that this is a barrier for new users.
I tried to start the discussion on the moose list before how to improve this, but I got
very little response.
Note that these problems are easy to fix, but these fixes should be back ported to the
release. At the moment I have no idea how I should do this, as the release is made with a
snapshot, and that is hard to change. Snapshots work great to freeze, but are hard to
maintain.
PetitDelphi has a configuration that refers to PetitParser (development).
PetitParser has a (loaded) configuration that refers to Glamour (development).
Glamour has a (loaded) configuration. As the development version (also for pharo 2.0)
refers to the latest version of the packages that only work in pharo 3.0.
In PetitDelphi I do not want to change the version of PetitParser to the snapshot version,
as here the groups not defined, and PetitDelphi only needs a part of PetitParser. So
snapshotting the release, forces me to snapshot my configuration of PetitDelphi, and no
longer use the configuration of PetitParser. I do not think that this is a good thing,
that all projects depending on moose, should create a snapshot when moose is released.
Note that this snapshot has to be made before other changes are made! Also continuing the
development process on PetitDelphi would no longer work, as it uses a snapshot.
I have the feeling that a snapshot really should not be related to a release and should be
considered (and modeled as) a separate concept. Because the responsibility for
snapshotting is that of the using project, not the owning project.
In metaceller I made the possible to record the current loaded versions of a
configuration, where it used the configuration. Meaning: of packages and used
configurations in the configuration, the version is recorded (symbolic versions are
replaced). I showed it to Doru and I could not convince him to use this.
I am willing to put time and effort into the moose releases to improve them, but then I
want to know what you think about this.
Diego