<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        Hi Christoph --<div><br></div><div>> <span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">This is an anti-pattern in my opinion and should be revised.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Can we please remove that #ifError: from Model>>#buildMenu:withBuilders:shifted: again? :-)</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Not every user is a developer. Having menus that do not throw errors is a good thing. Hmm... a specialized Warning about the broken menu seems nice =)</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Or maybe a separate "release mode" preference.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">Seriously ... we do need to talk about "modes" at some point ... Stop it. xD</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Best,</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Marcel</span></div><div class="mb_sig"></div>
                                        <blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 14.01.2022 16:16:54 schrieb christoph.thiede@student.hpi.uni-potsdam.de <christoph.thiede@student.hpi.uni-potsdam.de>:</p><div style="font-family:Arial,Helvetica,sans-serif">
Hi Marcel,<br>
<br>
thank you for the clarification (and thank you Eliot for fixing this bug)!<br>
<br>
So the menu building mechanism is actually ignoring errors from single menu builders? This is an anti-pattern in my opinion and should be revised. Silently and unconditionally dropping errors instead of reporting them to the user/developer (and writing them to the Transcript does *not* count as reporting IMHO because I only open the Transcript when I *expect* to see particular messages in it) looks like a bad practice to me that makes debugging and testing (both manually and automated) unnecessarily hard and non-interactive. It's not the Smalltalk way of facilitating short feedback cycles and direct manipulation. If an error occurs, I want to know about it and fix it immediately (which usually only takes a few seconds or minutes). If you really see some situations where fixing the error is so expensive (I would be curious to hear them), I would prefer talking about an opt-in mechanism similar to Warning class >> #suppressed:. Or maybe a separate "release mode" preference. But please let's keep our primary focus in the main image on developers that are curious to notice and report/resolve every bug. :-)<br>
<br>
Can we please remove that #ifError: from Model>>#buildMenu:withBuilders:shifted: again? :-)<br>
<br>
Best,<br>
Christoph<br>
<br>
<span style="color: #808080">---<br>
</span><span style="color: #808080"><i>Sent from </i></span><span style="color: #808080"><i><a href="https://github.com/hpi-swa-lab/squeak-inbox-talk"><u><span style="color: #808080">Squeak Inbox Talk</span></u></a></i></span><br>
<br>
On 2022-01-14T10:08:23+01:00, marcel.taeumel@hpi.de wrote:<br>
<br>
> Hi Christoph --<br>
> <br>
> You are showing the "more..." menu. The initial menu is truncated because of that bug in #isBreakOnEntry.<br>
> <br>
> <br>
> <br>
> After Eliot's patch, it looks as expected:<br>
> <br>
> <br>
> <br>
> Best,<br>
> Marcel<br>
> Am 13.01.2022 19:26:32 schrieb Thiede, Christoph <christoph.thiede at student.hpi.uni-potsdam.de>:<br>
> I have a message trace here with no message selected, but the menu can be opened anyway without an error:<br>
> <br>
> <br>
>  <br>
> <br>
> <br>
> Under which circumstances did this error occur? :-)<br>
> <br>
> Best,<br>
> Christoph<br>
> Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von commits at source.squeak.org <commits at source.squeak.org><br>
> Gesendet: Donnerstag, 13. Januar 2022 19:21:13<br>
> An: squeak-dev at lists.squeakfoundation.org; packages at lists.squeakfoundation.org<br>
> Betreff: [squeak-dev] The Trunk: Tools-eem.1104.mcz<br>
>  <br>
> Eliot Miranda uploaded a new version of Tools to project The Trunk:<br>
> http://source.squeak.org/trunk/Tools-eem.1104.mcz [http://source.squeak.org/trunk/Tools-eem.1104.mcz]<br>
> <br>
> ==================== Summary ====================<br>
> <br>
> Name: Tools-eem.1104<br>
> Author: eem<br>
> Time: 13 January 2022, 10:21:10.513361 am<br>
> UUID: 1d051d8d-473d-43ee-9628-d33992a5849f<br>
> Ancestors: Tools-mt.1103<br>
> <br>
> Fix MNU in menu building for MessageTrace with no method selected<br>
> <br>
> =============== Diff against Tools-mt.1103 ===============<br>
> <br>
> Item was changed:<br>
>   ----- Method: CodeHolder>>isBreakOnEntry (in category 'breakpoints') -----<br>
>   isBreakOnEntry<br>
>  <br>
> +        ^self selectedClassOrMetaClass<br>
> +                ifNil: [false]<br>
> +                ifNotNil:<br>
> +                        [:class|<br>
> +                         (class<br>
> +                                        compiledMethodAt: self selectedMessageName<br>
> +                                        ifAbsent: nil)<br>
> +                                ifNil: [false]<br>
> +                                ifNotNil: [:method| method hasBreakpoint]]!<br>
> -        | selectedMethod |<br>
> -        selectedMethod := self selectedClassOrMetaClass<br>
> -                compiledMethodAt: self selectedMessageName<br>
> -                ifAbsent: [^ false].<br>
> -        ^ selectedMethod hasBreakpoint!<br>
> <br>
> <br>
> -------------- next part --------------<br>
> An HTML attachment was scrubbed...<br>
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/a8d504cb/attachment-0001.html><br>
> -------------- next part --------------<br>
> A non-text attachment was scrubbed...<br>
> Name: image.png<br>
> Type: image/png<br>
> Size: 22635 bytes<br>
> Desc: not available<br>
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/a8d504cb/attachment-0005.png><br>
> -------------- next part --------------<br>
> A non-text attachment was scrubbed...<br>
> Name: pastedImage.png<br>
> Type: image/png<br>
> Size: 4074 bytes<br>
> Desc: not available<br>
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/a8d504cb/attachment-0006.png><br>
> -------------- next part --------------<br>
> A non-text attachment was scrubbed...<br>
> Name: pastedImage.png<br>
> Type: image/png<br>
> Size: 18275 bytes<br>
> Desc: not available<br>
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/a8d504cb/attachment-0007.png><br>
> -------------- next part --------------<br>
> A non-text attachment was scrubbed...<br>
> Name: pastedImage.png<br>
> Type: image/png<br>
> Size: 15326 bytes<br>
> Desc: not available<br>
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/a8d504cb/attachment-0008.png><br>
> -------------- next part --------------<br>
> A non-text attachment was scrubbed...<br>
> Name: image.png<br>
> Type: image/png<br>
> Size: 78379 bytes<br>
> Desc: not available<br>
> URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220114/a8d504cb/attachment-0009.png><br>
> <br>
> </div></blockquote></div>