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

Jakob Reschke forums.jakob at resfarm.de
Sat Aug 10 20:38:25 UTC 2019


I just mistakenly changed one of the formatting methods in CodeHolder,
producing a MessageNotUnderstood every time. My image is pretty broken now,
since all tools go through this code. So I cannot use the tools to revert
my bad change.

Can we have a "fail operational" mechanism for displaying message lists,
such that the IDE remains intact even if one screws up the formatting code?


Am Sa., 10. Aug. 2019 um 21:46 Uhr schrieb Jakob Reschke <
forums.jakob at resfarm.de>:

> Am So., 4. Aug. 2019 um 16:36 Uhr schrieb <commits at source.squeak.org>:
>
>> Marcel Taeumel uploaded a new version of Tools to project The Trunk:
>> http://source.squeak.org/trunk/Tools-mt.864.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Tools-mt.864
>> Author: mt
>> Time: 4 August 2019, 4:36:12.203381 pm
>> UUID: cb8e1c1e-b28e-a647-a72e-1c49fe42bcc0
>> Ancestors: Tools-mt.856, Tools-mt.863
>>
>> Merges and refines Tools-mt.856 based on the discussion on squeak-dev:
>> http://forum.world.st/The-Inbox-Tools-mt-856-mcz-td5101574.html
>>
>> Note that if you notice any performance problems on slower machines, we
>> might want to make this a preference.
>>
>> =============== Diff against Tools-mt.863 ===============
>>
>> Item was changed:
>>   ----- Method: Browser>>messageList (in category 'message list') -----
>> [...]
>>
>> Item was added:
>> + ----- Method: CodeHolder>>formattedLabel:forSelector:inClass: (in
>> category 'message list') -----
>> + formattedLabel: aString forSelector: aSymbol inClass: aClass
>> +       "Show deprecated messages differently so that users recognize
>> them quickly to avoid them."
>> +
>> +       | formattedLabel |
>> +       aSymbol = #Definition
>> +               ifTrue: [aClass isDeprecated not
>> +                       ifTrue: [^ aString]]
>> +               ifFalse: [(aClass compiledMethodAt: aSymbol) isDeprecated
>> not
>>
>
>
> This also does not work for RecentMessageSet, when a method in there was
> deleted again in the meantime. A KeyNotFound from compiledMethodAt: is the
> result.
>
>
>
>> +                       ifTrue: [^ aString]].
>> +
>> +       formattedLabel := aString asText.
>> +
>> +       (self userInterfaceTheme deprecatedMessageAttributes ifNil:
>> [{TextColor gray. TextEmphasis struckOut}]) do: [:textAttribute |
>> +               formattedLabel addAttribute: textAttribute].
>> +
>> +       ^ formattedLabel.!
>> [...]
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20190810/48f8b2cc/attachment.html>


More information about the Squeak-dev mailing list