It seems that somewhere between the 7.0/7.1 GBS and 7.3 -- a series of
changes has occurred re what is shown for ALL objects in a Trippy inspector even if not logged into Gemstone. I cannot find any reference to this in the release notes (I might have missed it I guess ...) Seems that gbxDebugPrintOn: is used. Since many of our objects have quite comprehensive "printOn:" methods, this was a bit disturbing, and took me quite some time to track down. I figure I can implement my own "gbxDebugPrintOn:" methods, but what rules do I need to follow? Right now, for the ones causing me the most problems I just did ^self printOn: aStrm which presumably bypasses the purpose of doing this?? -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 sip:[hidden email] Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP |
Dennis Smith wrote:
> It seems that somewhere between the 7.0/7.1 GBS and 7.3 -- a series of > changes has occurred re what is shown for ALL objects in a Trippy inspector > even if not logged into Gemstone. > > I cannot find any reference to this in the release notes (I might have > missed it I guess ...) > > Seems that gbxDebugPrintOn: is used. > > Since many of our objects have quite comprehensive "printOn:" methods, > this was a bit disturbing, and took me quite some time to track down. > > I figure I can implement my own "gbxDebugPrintOn:" methods, but what > rules do I need to follow? Right now, for the ones causing me the most > problems > I just did > ^self printOn: aStrm > > which presumably bypasses the purpose of doing this?? > I expect that you've noticed that Object>>gbxDebugPrintOn: is implemented as: ^self printOn: aStream We override this definition in a small number of classes, and I imagine it's one of these overrides you're running into. It should be OK in most cases to add the simple redefinition that you've done. The most important function of debug printing is size limiting, and that is done by the GbxLimitingStream that should always be the argument to #gbxDebugPrintOn:. Regards, -Martin |
In reply to this post by Dennis smith-4
OK -- the problem is the one in Collection -- I missed seeing that it
was the culprit. We have subclasses of Collection - but one that is not good that is NOT ours is Text. Try 'abc' asText gbxDebugPrintOn: strm its snot a good result. I will do my own for my collections now that I see that it was just those. On 01/03/2010 3:22 PM, Martin McClure wrote: > Dennis Smith wrote: >> It seems that somewhere between the 7.0/7.1 GBS and 7.3 -- a series of >> changes has occurred re what is shown for ALL objects in a Trippy >> inspector >> even if not logged into Gemstone. >> >> I cannot find any reference to this in the release notes (I might >> have missed it I guess ...) >> >> Seems that gbxDebugPrintOn: is used. >> >> Since many of our objects have quite comprehensive "printOn:" methods, >> this was a bit disturbing, and took me quite some time to track down. >> >> I figure I can implement my own "gbxDebugPrintOn:" methods, but what >> rules do I need to follow? Right now, for the ones causing me the >> most problems >> I just did >> ^self printOn: aStrm >> >> which presumably bypasses the purpose of doing this?? >> > > I expect that you've noticed that Object>>gbxDebugPrintOn: is > implemented as: > > ^self printOn: aStream > > We override this definition in a small number of classes, and I > imagine it's one of these overrides you're running into. > > It should be OK in most cases to add the simple redefinition that > you've done. The most important function of debug printing is size > limiting, and that is done by the GbxLimitingStream that should always > be the argument to #gbxDebugPrintOn:. > > Regards, > > -Martin > -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 sip:[hidden email] Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP |
In reply to this post by Dennis smith-4
Dennis Smith wrote:
> one that is not good that is NOT > ours is Text. > Try > 'abc' asText gbxDebugPrintOn: strm > its snot a good result. > Thanks, that's definitely undesirable, and also would affect GapString. I'll file a bug report and make sure it gets fixed in the next GBS release. A reasonable interim solution would be to override that message at the CharacterCollection level. Regards, -Martin |
In reply to this post by Dennis smith-4
I have dealt with them -- just wanted to let you know -- thanks!
On 3/1/2010 6:34 PM, Martin McClure wrote: > Dennis Smith wrote: >> one that is not good that is NOT ours is Text. >> Try >> 'abc' asText gbxDebugPrintOn: strm >> its snot a good result. >> > > Thanks, that's definitely undesirable, and also would affect > GapString. I'll file a bug report and make sure it gets fixed in the > next GBS release. > > A reasonable interim solution would be to override that message at the > CharacterCollection level. > > Regards, > > -Martin > -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 sip:[hidden email] Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP |
Free forum by Nabble | Edit this page |