[Seaside] Re: Re: The session in the debugger
Klaus D. Witzel
klaus.witzel at cobss.com
Mon Feb 5 09:25:32 UTC 2007
On Mon, 05 Feb 2007 10:10:00 +0100, Philippe Marschall wrote:
> 2007/2/4, Klaus D. Witzel:
>> On Sun, 04 Feb 2007 19:19:00 +0100, Philippe Marschall wrote:
>> > Hi
>> > One of the most annoying things about Seaside for me is that you can't
>> > access the session in the debugger. Often when debugging code that
>> > needs to access some session data I find myself writing code like
>> > this:
>> > aBuggedMethod
>> > "some code"
>> > session := self session.
>> > self halt.
>> > "more code"
>> > and then restarting the method. I am sick of it. This just sucks. So
>> > recently I meant someone with too much time who would like to make a
>> > valuable contribution to Seaside. I told him about this and he said he
>> > would do it if I find at least 5 people to whom it is important.
>> Counting someone at our table in Bern plus /my, you've found five
>> people :)
>> Attached is a .cs which shows (self session) in the debugger (same place
>> as in Michel's VW solution) only if (aContext receiver respondsTo:
>> #session). #session seems not to be implemented in the stock image. When
>> the session item is selected it can be inspected but update with #accept
>> does not update.
>> > Personally I don't care how ugly the solution is as long as Seaside
>> > still works. It doesn't have to be a general solutions. It can be a
>> > very evil changeset that causes famine, plague, small pocks and
>> > shortens life by 10 years. That desperately I want it.
>> Tested it on 3.7/8/9, let me know how it works.
> Yes there is a session variable in the debugger but it is nil. That is
> not what I meant. What I want is being able to do:
> self session
> in the debugger and it returns the session instead of nil.
The debugger sends (aContext receiver) session, which is all it can. Of
course the debugger's stack is not the same as aContext's stack, this can
be the cause of nil.
> Sorry for not being more clear.
NP. Does (self session) in the debugger's left pane (where the ivars are)
return the object that you want? If not so, then I'll have to dig deeper
and find where the stack is switched or else manually traverse aContext
sender, or so.
Anyways I'll try to reproduce this with the most recent Seaside-dev image.
Which method in that image would be best for provoking this situation? TIA.
>> If someone needs the name emphasized in the debugger, please post how
>> you'd like to have it.
>> > If you feel the same way raise your hand now.
>> > Cheers
>> > Philippe
>> Seaside mailing list
>> Seaside at lists.squeakfoundation.org
More information about the Seaside