[Pharo-project] question about Issue 207: ImageSegment discoverActiveClasses strange error
stephane.ducasse at inria.fr
Sat Sep 5 04:46:58 EDT 2009
On Sep 5, 2009, at 3:10 AM, sheridan at sheridan-mahoney.com wrote:
> I am new to Pharo, and so have been perusing the bug database,
> and reading the recent posts in this list in order to investigate how
> to become involved in this community. So far, I am very impressed!
> and encouraged that such a technically expert and friendly, supportive
> group is coelescing on this work effort!
Thanks and welcome.
We are all learning :)
> I have found a report that seems quite interesting, and have done
> some digging into the issue described here:
> ( ImageSegment discoverActiveClasses strange error )
> and now I have a few questions I was hoping to get feedback on.
We would love to have a couple of tests for imagesegment!!!!
Adrian did you publish the ones you did?
> It seems that, after using this method, some follow-up is required in
> order to reset the image back to a usable state. And there are
> options as to how to do that:
> 1) ImageSegment discoverActiveClasses.
> ImageSegment activeClasses size printString , ' classes were active
> out of ' , Smalltalk allClasses size printString.
> - this type of statment order will reset things ok.
> 2) ImageSegment discoverActiveClasses.
> ImageSegment recoverFromMDFault.
this one is dangerous (from memory it hijacks the categories slot of a
class to copy the methoddict and flush the
method dict) then at runtime it copies back the methoddict from
categories to the method dict.
But last time I played with that it crashed
> ImageSegment activeClasses.
> - it appears you still need the activeClasses method to reset the
> image (which wasn't
> entirely clear from the method comments - further comments may be
> useful here),
> otherwise there are classes with methodDictionaries that are set to
Yes this code needs a really strong cleaning.
> 3) ImageSegment discoverActiveClasses.
> Smalltalk at: #MDFaultDict put: Dictionary new.
> ImageSegment recoverFromMDFaultWithTrace.
> Smalltalk at: #MDFaultDict.
> - this sequence of statments will give the user a report of active
> classes along with a description of how they came to be used.
> Similar to above o/w.
> 4)ImageSegment discoverActiveClasses.
> ImageSegment swapOutInactiveClasses.
> - there are at least 2 problems with this sequence -
> a) initial result is a DNU -
> ThreadSafeTranscript(Object)>>doesNotUnderstand: #print
excellent we should fix that (my mistake)
> b) when you comment out the Transcript print statements to avoid the
> DNUs you get:
> I will be looking further into this issue, but was just wondering,
> firstly, is this a useful
> area to be spending time, and secondly, would it be appropriate to
> start a new bug, or update the old one?
> Many thanks for your comments,
What would be really cool is to make a call for ImageSegment tests so
that we can start to build something
more robust and yes image segment are a cool features and we should
take care of them.
> Sheridan Mahoney
> Pharo-project mailing list
> Pharo-project at lists.gforge.inria.fr
More information about the Pharo-dev