<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p>Hi Marcel,</p>
<p><br>
</p>
<p>should GetTextTranslator expose these errors anyway?</p>
<p><span>At the moment, [GetTextTranslator availableLanguageLocaleIDs] ifError: [self error] would regularly fail.</span><br>
</p>
<p>What about "<span>error return: error defaultAction"? I know this is not identical, but it should have an equivalent effect in this situation.</span></p>
<p><span><br>
</span></p>
<p><span>> </span><span style="font-size: 12pt;">But maybe we can find an even better way to collect errors during image startup and present them only after at least the GUI system was initialized, which happens through Project class >> #startUp: at the moment.
 Also take a look at ToolSet class >> #debugException:.</span><span></p>
<div><br>
</div>
<div>Interesting idea! :-)</div>
<div><br>
</div>
<div>Best,</div>
<div>Christoph</div>
</span>
<p></p>
<div id="Signature">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div><font size="2" color="#808080"></font></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Montag, 8. Juni 2020 08:40:26<br>
<b>An:</b> squeak-dev<br>
<b>Betreff:</b> Re: [squeak-dev] The Inbox: System-ct.1161.mcz</font>
<div> </div>
</div>
<div>
<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
Hi Christoph,
<div><br>
</div>
<div>look at the senders of #resumeUnchecked:. ;-) This message is rather inappropriate to be used in GetTextTranslator. </div>
<div><br>
</div>
<div>If you want to fix image startup, then I suggest to put such exception handlers in NaturalLanguageTranslator class >> #startUp:.</div>
<div><br>
</div>
<div>But maybe we can find an even better way to collect errors during image startup and present them only after at least the GUI system was initialized, which happens through Project class >> #startUp: at the moment. Also take a look at ToolSet class >> #debugException:.</div>
<div><br>
</div>
<div>Best,</div>
<div>Marcel</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 06.06.2020 20:55:04 schrieb Jakob Reschke <forums.jakob@resfarm.de>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">Errors are not resumable, although these errors with defaultActions<br>
will resume with something if they do not signal another exception and<br>
*if they are not handled*. If you turned this into a Notification, you<br>
could resume it with another directory listing, but how much sense<br>
would that make?<br>
<br>
Am Sa., 6. Juni 2020 um 20:22 Uhr schrieb Thiede, Christoph<br>
<christoph.thiede@student.hpi.uni-potsdam.de>:<br>
><br>
> I wonder anyway why InvalidDirectoryError & Co. override #defaultAction ...<br>
><br>
> If they are serious errors, they should show up a debugger via UndefinedError but not silently fix that anyhow by returning a default value, shouldn't they?<br>
><br>
> And if they are no serious errors, they should be Notifications IMO.<br>
><br>
><br>
> What do you think? :-)<br>
><br>
><br>
> Best,<br>
><br>
> Christoph<br>
><br>
> ________________________________<br>
> Von: Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org>im Auftrag von commits@source.squeak.org
<commits@source.squeak.org><br>
> Gesendet: Samstag, 6. Juni 2020 20:19:27<br>
> An: squeak-dev@lists.squeakfoundation.org<br>
> Betreff: [squeak-dev] The Inbox: System-ct.1161.mcz<br>
><br>
> Christoph Thiede uploaded a new version of System to project The Inbox:<br>
> http://source.squeak.org/inbox/System-ct.1161.mcz<br>
><br>
> ==================== Summary ====================<br>
><br>
> Name: System-ct.1161<br>
> Author: ct<br>
> Time: 6 June 2020, 8:19:13.480392 pm<br>
> UUID: 173a90f3-4bb8-fc46-b5a6-6e4ab74e63ca<br>
> Ancestors: System-mt.1160<br>
><br>
> Catch all InvalidDirectoryErrors in GetTextTranslator availableLanguageLocaleIDs. Those exceptions are an implementation detail and may not confuse the caller. Such a confusion happened in connection with Morphic-ct.1638.<br>
><br>
> =============== Diff against System-mt.1160 ===============<br>
><br>
> Item was changed:<br>
> ----- Method: GetTextTranslator class>>availableLanguageLocaleIDs (in category 'accessing') -----<br>
> availableLanguageLocaleIDs<br>
> "GetTextTranslator availableLanguageLocaleIDs"<br>
> | ids dirs localeDirForLang directoryNames |<br>
> ids := Set new.<br>
> dirs := Set new.<br>
> dirs addAll: LocaleDirsForDomain values.<br>
> dirs addAll: self defaultLocaleDirs.<br>
> + [dirs do: [:dir |<br>
> - dirs do: [:dir |<br>
> | localesDir |<br>
> localesDir := FileDirectory on: dir.<br>
> + directoryNames := localesDir directoryNames.<br>
> - directoryNames := [localesDir directoryNames] on: InvalidDirectoryError do: [:e | #()].<br>
> directoryNames<br>
> do: [:langDirName |<br>
> | localeID |<br>
> localeID := LocaleID posixName: langDirName.<br>
> localeDirForLang := localesDir directoryNamed: (self langDirNameForLocaleID: localeID).<br>
> localeDirForLang ifNotNil: [<br>
> (localeDirForLang fileNamesMatching: '*.mo') ifNotEmpty: [ids add: localeID]].<br>
> localeID hasParent ifTrue: [<br>
> localeDirForLang := localesDir directoryNamed: (self langDirNameForLocaleID: localeID parent).<br>
> localeDirForLang ifNotNil: [<br>
> (localeDirForLang fileNamesMatching: '*.mo') ifNotEmpty: [ids add: localeID parent]]].<br>
> ].<br>
> + ]] on: InvalidDirectoryError do: [:error | error resumeUnchecked: error defaultAction].<br>
> - ].<br>
> ^ids!<br>
><br>
><br>
><br>
<br>
</commits@source.squeak.org></squeak-dev-bounces@lists.squeakfoundation.org></christoph.thiede@student.hpi.uni-potsdam.de></div>
</blockquote>
</div>
</div>
</body>
</html>