Hi, with the help of Guille I noticed that normal instances usually register weakly:

TestRunner >> initialize
.....
SystemAnnouncer current
��� ��� weak
��� ��� on: ClassAdded, CategoryAdded, ClassRemoved, CategoryRemoved, ClassRenamed, CategoryRenamed, ClassRecategorized send: #update to: self.
.....

and classes don't:

TestCase class >> registerForNotifications
��� ...
�� SystemAnnouncer current on: MethodAdded, MethodModified, MethodRemoved send: #methodChanged: to: self.

so..Guille told me this is because usually the cycle-life of instances is short in comparisson with classes. But classes can be removed as well. What happen then? the announcer will hold always a reference to an obsolete class?
my question is, should we always use weakly? if not, why ?

thanks for the explanation,

--
Mariano
http://marianopeck.wordpress.com