[Glass] order of classvars changed after load

Dale Henrichs via Glass glass at lists.gemtalksystems.com
Thu May 19 16:09:02 PDT 2016


Johan,

2.4.4.1 _is_ using an older version of Monticello than is used in 3.x ...

In 2.4.4.1 the asDefinition method sorts the class var names, but the 
MCClassDefinition does not, which can lead to the condition where a diff 
detects a difference between the package and image when in reality there 
is no difference ... re-writing the mcz file may write the class vars in 
sorted order and future compares might work correctly then ...

In 3.x the MCClassDefinition also sorts the class var names, so for 
comparison you will be comparing sorted names for the image and the 
package ... rendering the order that is saved in the mcz file immaterial ...

Dale

On 05/19/2016 12:08 PM, Johan Brichau via Glass wrote:
> Hi,
>
> I noticed a class getting a new class version when there had only been changes to class methods on a class.
> After investigation, it’s because the order of class variables seemingly changed
> from:
> 	classVars: #( ObjectsForKeyword ObjectsForScope ObjectTestsForScope PropertiesForKeywords)
> to:
> 	classVars: #( ObjectTestsForScope ObjectsForKeyword ObjectsForScope PropertiesForKeywords)
>
> However, the already loaded mcz file and the new mcz file for the package of this class have the same ordering (the last one) defined.
> When I use Monticello to check for ‘changes’ in the image with respect to the current loaded mcz, it reports the changed class variable ordering.
> However, merging the new mcz into the image does not detect these changes, only a ‘full load’ triggers the setting of a new class version.
>
> Summarizing, it seems the class definition in the image has a different class variable ordering defined than what was/is in the mcz file.
>
> Is there any ‘class var reordering’ logic going in during such loads? Not sure if I can reproduce this, because it’s a bit hard to find out when this class var order change would have occurred.
>
> Johan
>
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> http://lists.gemtalksystems.com/mailman/listinfo/glass



More information about the Glass mailing list