Hi,
It seems that Metacello does not consider PackageName-xyz
and PacakgeName-BranchName-xyz as the same package. I suspect
it because when I look at the packages loaded by two different
configurations with and without branch names as package name
suffixes are not the same. Could someone knowing the internals
of Metacello confirm it?
So, here is a log of Metacello of the loadDirective for
ConfigOfGlamour with and without packages with branch names. I
have truncated the output to highlight important parts of the
log.
----------- Metacello log follows ----------------------
Without branching (Rubric and Glamour-Morphic-Renderer
loaded only once):
linear load :
atomic load :
3.3.0 [ConfigurationOfGlamour]
linear load :
3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load :
1.2.14.Moose51 [ConfigurationOfRubric]
load :
Rubric-AndreiChis.207
load :
Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load :
1.13 [ConfigurationOfRoassal2]
linear load :
3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
With branching (old versions overwrites the fixes):
linear load :
atomic load :
3.3.0 [ConfigurationOfGlamour]
linear load :
3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load
: 1.2.14.Moose51 [ConfigurationOfRubric]
load :
Rubric-Moose51-usmanbhatti.207
load :
Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load :
1.13 [ConfigurationOfRoassal2]
linear load
: 3.1.4 [ConfigurationOfGlamourCore]
atomic load
: 1.2.15 [ConfigurationOfRubric]
load :
Rubric-AlainPlantec.206
load
: Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------
---------------
What it actually changes is packages with branch name are
overwritten with their predecessors and hence fixes are not
correctly included in the resulting image. It seems that
ensuring correct loading in the presence of branched packages
requires no other configuration is loading previous versions
of the branched packages.