Results 55 comments of Denis Kudriashov

@isCzech I like how simple it is now. Thanks for this work. I would just add tests for isBlocked method. CoNarrowHistoryFetcherTest is not related. I have another PR with same...

Disable test execution environment to remove its own logic relying on ensure blocks: ```Smalltalk ZnClient>>runCaseManaged "Here we are testing the test environment logic. So we should disable it for ourselves"...

> ran CI again and for some reason some of the previous tests cleared and one remained failing - no idea why, in the image it works ok. CI says:...

> _In Playground_, when trying to terminate > `p := [ [Semaphore new wait] ensure: [^2] ] fork` > we should prefer > `[p terminate] fork` > rather than the...

So with all these changes the external termination become a simple trigger initiating a self-termination from the current execution point of a #process. Now a sender of #terminate waits the...

> However, one thing that bothers me: the reason UI becomes unresponsive is because of the way the UnhandledErrors are handled Unresponsiveness in that case is a side effect of...

> Another example to explore the behavior: > `[self halt] ensure: [self error]` > close the debugger and see if the UI freezes... yep. another example to follow my idea

> What would you think about terminating the debugged process in DebugSession>>#terminate by a forked helper process In my experience fixes like "let's simply fork it" does not work well....

> That summarizes the issue perfectly; again, due to my limited experience I don't have an opinion which way is preferable but I agree your proposal works perfectly and solves...

> Deal :) One more note: This line must go: > `self isTerminating ifTrue: [ProcessAlreadyTerminating signal. ^self].` This is interesting. It means that isTerminating flag can be removed at the...