[Pharo-project] Big problem with the implementation of traits

Adrian Lienhard adi at netstyle.ch
Sun Jan 18 15:05:41 EST 2009


On Jan 18, 2009, at 20:07 , Alexandre Bergel wrote:

>>> That strange, Traits-adrian_lienhard.258 removes only two test
>>> methods
>>> (testTraitsUsersSanity and testUsersWithClassChanges). These two
>>> methods do not exist in my image. The comment said this fix the  
>>> issue
>>> 443 (http://code.google.com/p/pharo/issues/detail?id=443). I do not
>>> see how you change is related to this bug.
>>
>> Traits-adrian_lienhard.258 should *add* the two tests you mention
>> above. They document the problem and should run green after loading
>> the Kernel package and after executing the script.
>
>
> Sorry, I misread the merger.
> After having loaded Kernel-adrian_lienhard.252, testTraitsUsersSanity
> goes red (where testUsersWithClassChanges goes green). It seems that
> the following traits do not include their users:
>  an IdentitySet(SetTest ArrayTest OrderedCollectionTest BagTest)
>
> Did I do something wrong?

maybe you have not loaded the script I posted as a comment on

http://code.google.com/p/pharo/issues/detail?id=443

I'll add that in the change set of the update stream when I push this  
out.

Adrian

>
>
> Cheers,
> Alexandre
>
>>>
>>>
>>> Hope it helps,
>>> Alexandre
>>>
>>>
>>>
>>> On 18 Jan 2009, at 18:27, Adrian Lienhard wrote:
>>>
>>>> I've published a fix to the inbox.  Since the bug was related to
>>>> some
>>>> implementation details of the ClassBuilder and hence non-trivial,
>>>> I'd
>>>> appreciate if somebody could try it out and verify that traits  
>>>> still
>>>> work as expected. I've added tests that document the bug and they
>>>> run
>>>> green now (with the other 80 traits tests).
>>>> For details see http://code.google.com/p/pharo/issues/detail?id=443
>>>> Adrian
>>>>
>>>> On Jan 17, 2009, at 15:29 , Adrian Lienhard wrote:
>>>>
>>>>> Well, if you just want to make your numbers be right, that's easy:
>>>>>
>>>>> Smalltalk allTraits do: [ :each | each instVarNamed: 'users' put:
>>>>> IdentitySet new ].
>>>>> Smalltalk allClassesAndTraits do: [ :each |
>>>>> 	each hasTraitComposition ifTrue: [ each setTraitComposition: each
>>>>> traitComposition ] ].
>>>>>
>>>>> This recreates all users sets.
>>>>>
>>>>> Adrian
>>>>>
>>>>> On Jan 15, 2009, at 18:20 , Damien Cassou wrote:
>>>>>
>>>>>> On Thu, Jan 15, 2009 at 6:18 PM, Adrian Lienhard  
>>>>>> <adi at netstyle.ch>
>>>>>> wrote:
>>>>>>> BTW, why is this so pressing now? This bug has existed for four
>>>>>>> years.
>>>>>>
>>>>>> We are writing an article and we have lots of metrics
>>>>>> automatically
>>>>>> calculated (and the LaTeX tables are also automatically
>>>>>> generated).
>>>>>> Since the article and the metrics are about trait users...
>>>>>>
>>>>>> -- 
>>>>>> Damien Cassou
>>>>>> http://damiencassou.seasidehosting.st
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> Pharo-project at lists.gforge.inria.fr
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
>>>>>> project
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> Pharo-project at lists.gforge.inria.fr
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo- 
>>>>> project
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> Pharo-project at lists.gforge.inria.fr
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>> -- 
>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>> Alexandre Bergel  http://www.bergel.eu
>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> Pharo-project at lists.gforge.inria.fr
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> Pharo-project at lists.gforge.inria.fr
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> -- 
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project at lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project





More information about the Pharo-dev mailing list