Hi all,

To keep the common projects in smalltalkhub stable, we agreed that those should 
use symbolic versions like release3 // release3.5 etc. This way we can add bug 
fixes and avoiding loading of different versions through different projects.

But I might have done something stupid to the configuration of magritte, 
especially release3:

When I added some features to Magritte, I saw that that the stable version in 
the configuration of Magritte3 was unstable for pharo2, 3 and 4 for quite some 
time. Basically the tests failed, because some changes were made for pharo 5 in 
order to let Magritte version 3.5 run. 

Since I did not have time to make a proper fix (and the error was there for 
quite a lot of builds) for the older pharo versions and I believe the tests for 
the stable version ought to be green, I thought the best way to fix it, was to 
changed the #release3 magritte version back to release 3.2 for the older pharo 
versions. Perhaps this is the cause of some of the problems. Tomorrow I have 
time to look into this problem and make a proper fix.

Stephane already notified me this is at least a problem for Pillar …

Regards,
Diego

> On 07 Jun 2017, at 20:01, Dale Henrichs <dale.henri...@gemtalksystems.com> 
> wrote:
> 
> 
> 
> On 06/07/2017 03:46 AM, Holger Freyther wrote:
>>> On 7. Jun 2017, at 14:09, Stephan Eggermont <step...@stack.nl> wrote:
>>> 
>>> Never refer to fixed versions unless you know why (you need to avoid a
>>> specific bug fix).
>> When wanting to have repeatable builds (e.g. for bugfixes) and in the
>> absence of other means to lock/define versions externally, I think using
>> a fixed version is the way to go.
>> 
>> 
>>> What is most likely is that there is some overconstrained configuration.
>>> Does your ConfigurationOfVoyageMongo or one of the configurations it
>>> pulls in refer to different versions of grease or magritte? Another
>>> issue can be that there are older configurations already loaded that
>>> conflict with the newest ones. Indeed, the ConfigurationOfMongoTalk
>>> is broken, refering to a fixed and older version of Grease.
>>> ConfigurationOfVoyageMongo should probably be using #'release3' of
>>> Magritte, but that doesn't break it.
>> Right. So we have a "OsmocomUniverse" build job that pulls in all the
>> apps into a single image. This helps to make API modifications and not
>> forget any of the client code.
>> 
>> The configuration has such dependencies:
>> 
>> ConfigurationOfOsmocomUniverse
>>      -> ConfigurationOfHLR
>>              -> ConfigurationOfVoyageMongo
>>                      -> Mongotalk
>>                              -> Grease A
>>                      -> Magritte3
>>                              -> Grease B
>>      -> ConfigurationOfSMPPRouter
>>              -> ConfigurationOfVoyageMongo
>>                      -> Mongotalk
>>                              -> Grease A
>>                      -> Magritte3
>>                              -> Grease B
>> 
>> What happens is that somehow "Grease A" gets loaded, then "Grease B" and
>> when it is time for "Grease A" again.. the system kind of explodes and this
>> is for Pharo3 and Pharo6. Now the question to me is.. why is this coming
>> up right now? Did MongoTalk change or Magritte3 or something else?
>> 
>> Is there an easy way for Metacello to try a mirror instead of the original,
>> e.g. to inject an older ConfigurationOfMagritte3?
>> 
> 
> I think that the `lock` command[1] is what you are looking for ...
> 
> Dale
> 
> [1] 
> https://github.com/dalehenrich/metacello-work/blob/master/docs/MetacelloUserGuide.md#locking
>  
> <https://github.com/dalehenrich/metacello-work/blob/master/docs/MetacelloUserGuide.md#locking>

Reply via email to