2015-11-21 10:43 GMT+01:00 Max Leske <[email protected]>:
>
> On 21 Nov 2015, at 10:22, Denis Kudriashov <[email protected]> wrote:
>
> Ok.
> I just read Nicolai comment.
> So question: is SyntaxErrorDebugger used anywhere? I remove it because it
> uses another way how to open debugger
>
>
> My quick check didn’t turn up anything. But to be sure, go and grab the
> Moose development image. Maybe they use it t
>
The SyntaxErrorDebugger registers itself for Smalltalk tools:
registerToolsOn: registry
"Add ourselves to registry. See [Smalltalk tools]"
registry register: self as: #syntaxErrorDebugger
And this is used by MorphicUIManager syntaxErrorNotificationDefaultAction:
anException
If you fileIn some code with syntactical error, this debugger pops up and
(if if would work: issue 16961
<https://pharo.fogbugz.com/f/cases/16961/Unable-to-accept-changes-in-SyntaxErrorDebugger-DNU-receiver-of-asSymbol-is-nil>
) you could fix that error manually.
> here in some way (though I doubt it).
>
> 21 нояб. 2015 г. 10:15 AM пользователь "Max Leske" <[email protected]>
> написал:
>
>>
>> On 21 Nov 2015, at 09:34, Denis Kudriashov <[email protected]> wrote:
>>
>> Slice was declined because I remove SyntaxErrorDebugger. I not found any
>> reference to it. And there was no instances of it. Can anybody show me
>> where it is used?
>>
>>
>> Are you sure? The validation says that it failed due to “subclass
>> responsibility not defined” (two messages of UIManager that aren’t
>> implemented in all of its subclasses). It doesn’t say anything abut
>> SyntaxErrorDebugger.
>>
>> Cheers,
>> Max
>>
>> 20 нояб. 2015 г. 19:27 пользователь "Andrei Chis" <
>> [email protected]> написал:
>>
>>> Very nice. I remember when I made GTDebugger that there were way to many
>>> ways to open the debugger. I ended up just copy-pasting things.
>>> Would be very useful to have a small doc with what one needs to do to
>>> replace SpecDebugger with another debugger (e.g. what are the entry points
>>> of the debugger in the system)
>>>
>>> Cheers,
>>> Andrei
>>>
>>> On Fri, Nov 20, 2015 at 6:48 PM, Denis Kudriashov <[email protected]>
>>> wrote:
>>>
>>>> I clean and refactor all but lowSpaceWatcher.
>>>> It is in slice 17069.
>>>> In my image it is not broke stuff. So I hope it is safe change.
>>>>
>>>> 2015-11-20 12:18 GMT+01:00 Denis Kudriashov <[email protected]>:
>>>>
>>>>> Hi
>>>>>
>>>>> I try to investigate how debugger opens and who initiates it.
>>>>> I want to cleanup this logic and simplify current debugger API.
>>>>>
>>>>> I found that basic error debugging starts with UIManager then
>>>>> UIManager calls SpecDebugger, then SpecDebugger calls UIManager and
>>>>> again... At the end of this chain debugger is opened by
>>>>> #openFullSuspendLabel: or #openNotifierContents:label:
>>>>>
>>>>> There are two places where opening debugger initiated differently:
>>>>> - Low space watcher calls SpecDebugger class>>openInterrupt:onProcess:
>>>>> - Warning default action calls SpecDebugger
>>>>> class>>openContext:label:contents: (And it not uses UIManager. I guess non
>>>>> interactive mode not working here).
>>>>>
>>>>> In latest Pharo image it is only users of this methods. Is anybody
>>>>> know anyone else?
>>>>>
>>>>> I almost cleaned basic errors debugging. And I want use it for this
>>>>> two cases too. But they implements very specific logic. They both contains
>>>>> primitive simulation guard 19 and some kind of recursion tracking.
>>>>> I understand that low space watcher requires something clever. But why
>>>>> Warning not opens debugger with way Error does it?
>>>>>
>>>>> Any suggestions?
>>>>>
>>>>> Best regards,
>>>>> Denis
>>>>>
>>>>
>>>>
>>>
>>
>