[squeak-dev] The Trunk: Tools-mt.646.mcz

Chris Muller asqueaker at gmail.com
Tue Nov 10 17:10:26 UTC 2015


Yesss!!  Thank you!

When one is _debugging_ is one of the most prime times one wants to
see the annotation pane because that's when they're asking, "who the
hell wrote THIS method..?  Is it a recent change?"    ;-)


On Tue, Nov 10, 2015 at 6:37 AM,  <commits at source.squeak.org> wrote:
> Marcel Taeumel uploaded a new version of Tools to project The Trunk:
> http://source.squeak.org/trunk/Tools-mt.646.mcz
>
> ==================== Summary ====================
>
> Name: Tools-mt.646
> Author: mt
> Time: 10 November 2015, 1:37:38.608 pm
> UUID: 3aa497d2-408a-4c0a-92a1-21b3e959a5a4
> Ancestors: Tools-mt.645
>
> Adds preference to see annotation pane in full debugger windows again.
>
> =============== Diff against Tools-mt.645 ===============
>
> Item was changed:
>   CodeHolder subclass: #Debugger
>         instanceVariableNames: 'interruptedProcess interruptedController contextStack contextStackIndex contextStackList receiverInspector contextVariablesInspector externalInterrupt proceedValue selectingPC savedCursor isolationHead failedProject errorWasInUIProcess labelString message untilExpression'
> +       classVariableNames: 'ContextStackKeystrokes ErrorRecursion InterruptUIProcessIfBlockedOnErrorInBackgroundProcess WantsAnnotationPane'
> -       classVariableNames: 'ContextStackKeystrokes ErrorRecursion InterruptUIProcessIfBlockedOnErrorInBackgroundProcess'
>         poolDictionaries: ''
>         category: 'Tools-Debugger'!
>
>   !Debugger commentStamp: '<historical>' prior: 0!
>   I represent the machine state at the time of an interrupted process. I also represent a query path into the state of the process. The debugger is typically viewed through a window that views the stack of suspended contexts, the code for, and execution point in, the currently selected message, and inspectors on both the receiver of the currently selected message, and the variables in the current context.
>
>   Special note on recursive errors:
>   Some errors affect Squeak's ability to present a debugger.  This is normally an unrecoverable situation.  However, if such an error occurs in an isolation layer, Squeak will attempt to exit from the isolation layer and then present a debugger.  Here is the chain of events in such a recovery.
>
>         * A recursive error is detected.
>         * The current project is queried for an isolationHead
>         * Changes in the isolationHead are revoked
>         * The parent project of isolated project is returned to
>         * The debugger is opened there and execution resumes.
>
>   If the user closes that debugger, execution continues in the outer project and layer.  If, after repairing some damage, the user proceeds from the debugger, then the isolationHead is re-invoked, the failed project is re-entered, and execution resumes in that world. !
>
> Item was added:
> + ----- Method: Debugger class>>wantsAnnotationPane (in category 'preferences') -----
> + wantsAnnotationPane
> +       <preference: 'Wants annotation pane'
> +               categoryList: #(debugger tools)
> +               description: 'If true, show annotation for selected method.'
> +               type: #Boolean>
> +       ^ WantsAnnotationPane ifNil: [false]!
>
> Item was added:
> + ----- Method: Debugger class>>wantsAnnotationPane: (in category 'preferences') -----
> + wantsAnnotationPane: boolean
> +
> +       WantsAnnotationPane := boolean.!
>
> Item was changed:
>   ----- Method: Debugger>>wantsAnnotationPane (in category 'toolbuilder') -----
>   wantsAnnotationPane
> +
> +       ^ self class wantsAnnotationPane!
> -       "Annotations don't look good in debugger. Suppress 'em."
> -       ^false!
>
>


More information about the Squeak-dev mailing list