<div dir="ltr">Hi David,<div><br></div><div>see below on the thread about loading od projects.  Currently the system freezes with drawing errors.  I'm reminded that you were developing changes to exit a project on drawing errors.  That would make debugging a lot easier.  Specifically I mean the following message.  But I can't find a preference that causes drawing errors to exit the project.  Did I misunderstand?  If you have such code could you post it here?  If not, how much effort would it be to get drawing errors to exit a sub-project if a suitable preference were set?</div><div><br></div><div><br></div><div>On Thu, Dec 14, 2017 at 7:00 PM, David T. Lewis <span dir="ltr"><<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Marcel,<br><br>Much better, thanks :-)<br><br>After moving the EmergencyRecoveryRequested recursion guard reset from<br>#finalExitActions: to #enter:revert:saveForRevert: the Morphic and ST80<br>dependencies are gone. The end result is a total of three changed methods<br>in Project, plus the new EmergencyRecoveryRequested class variable.<br><br>Since they are no longer needed, I moved the Morphic and ST80 parts from<br>inbox to treated inbox. All of the remaining changes are in the inbox<br>as System-dtl.985.<br><br>To summarize the changes: The original behavior of seaching for a parent<br>MVCProject or MorphicProject to host the emergency evaluator works as<br>originally designed. If no project is found, then search for any suitable<br>project elsewhere in the project hierarchy. If that is not found then<br>fall back on the traditional emergency evaluator. If error handling fails<br>in the project for emergency evaluation, the also fall back on the<br>traditional emergency evaluator.<br><br>I expect this to work with other kinds of Project such as SqueakShellProject<br>or EtoysProject, although I have not tested these so well.<br><br>Dave<br><span class="gmail-"><br><br>On Thu, Dec 14, 2017 at 12:50:06PM -0500, David T. Lewis wrote:<br>> Hi Marcel,<br>> <br>> Oh - now I understand what you mean (d'oh!). You are right. I will follow<br>> up on your suggestion of putting it in #enter:revert:saveForRevert: (but<br>> maybe not today).<br>> <br>> Thanks,<br>> Dave<br>> <br>> <br>> > Hi Dave,<br>> ><br>> > #finalExitActions: should not contain such critical code. That's what I<br>> > meant. :) I see it more like a "Template Method" that does nothing serious<br>> > by default.<br>> ><br></span>> > Maybe we could reset????<wbr>EmergencyRecoveryRequested in<br><div class="gmail-HOEnZb"><div class="gmail-h5">> > #enter:revert:saveForRevert: so that #finalExitActions: becomes free<br>> > again. :-)<br>> ><br>> > Best,<br>> > Marcel</div></div></blockquote><div><br></div><div> </div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, May 2, 2018 at 7:48 PM, Eliot Miranda <span dir="ltr"><<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Karl,<div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Mon, Apr 30, 2018 at 11:17 AM, karl ramberg <span dir="ltr"><<a href="mailto:karlramberg@gmail.com" target="_blank">karlramberg@gmail.com</a>></span> wrote:<br></span><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr">This change set make the project ALMOST load in a 32 bit 6.0 Squeak image.<div>But there are some conversion issues I have not figured out.</div><div><br></div><div>NOTE: Image will probably crash. USE WITH CARE</div></div></blockquote><div><br></div></span><div>Using all of your change set except ObjectScanner>>#scanFrom:, and the changes I committed to trunk today I was able to load <a href="http://MorphLayoutArticle.019.pr" target="_blank">MorphLayoutArticle.019.pr</a> into a 64-bit Spur image (thanks Bert!!).  The image locks up due to a drawing error in GeeMailMorph(ScrollPane)>><wbr>innerBounds where UndefinedObject doesn't understand #-.  So things are close.  May I suggest that you add RenamedSourceClassReader in System-Object Storage, and move the other segment-specific scanning methods (ClassCategoryReader>>#<wbr>scanFromNoCompile:[forSegment:<wbr>]) too?</div><div><br></div><div>This is cool :-)</div><div><br></div><div><br></div><div>BTW, there was a compiler bug with the native image segment loading code in 64-bit Spur.  This is fixed if you grab the last 64-bit Spur VMs from Travis.</div><div><div class="h5"><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div><br></div><div>Best,</div><div>Karl</div></div><div class="m_2194235934835680227gmail-HOEnZb"><div class="m_2194235934835680227gmail-h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 30, 2018 at 3:37 PM, H. Hirzel <span dir="ltr"><<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Unfortunately the dynamic essay <a href="http://MorphLayoutArticle.019.pr" rel="noreferrer" target="_blank">MorphLayoutArticle.019.pr</a> did not load<br>
in a fairly recent Squeak 6.0a trunk image.<br>
<br>
an OrderedCollection(ImageSegment<wbr>(Object)>>doesNotUnderstand:<br>
#scanFrom: ObjectScanner>>scanFrom: [] in [] in<br>
MultiByteBinaryOrTextStream(Po<wbr>sitionableStream)>>fileInAnnou<wbr>ncing:<br>
BlockClosure>>on:do: [] in<br>
MultiByteBinaryOrTextStream(Po<wbr>sitionableStream)>>fileInAnnou<wbr>ncing: []<br>
in [] in MorphicUIManager>>displayProgr<wbr>ess:at:from:to:during:<br>
BlockClosure>>on:do: [] in<br>
MorphicUIManager>>displayProgr<wbr>ess:at:from:to:during:<br>
BlockClosure>>ensure:<br>
MorphicUIManager>>displayProgr<wbr>ess:at:from:to:during:<br>
ProgressInitiationException>>d<wbr>efaultResumeValue<br>
ProgressInitiationException(Ex<wbr>ception)>>resume<br>
ProgressInitiationException>>d<wbr>efaultAction<br>
UndefinedObject>>handleSignal: Context>>handleSignal:<br>
Context>>handleSignal: Context>>handleSignal:<br>
ProgressInitiationException(Ex<wbr>ception)>>signal<br>
ProgressInitiationException>>d<wbr>isplay:at:from:to:during:<br>
ProgressInitiationException class>>display:at:from:to:duri<wbr>ng:<br>
ByteString(String)>>displayPro<wbr>gressAt:from:to:during:<br>
ByteString(String)>>displayPro<wbr>gressFrom:to:during:<br>
MultiByteBinaryOrTextStream(Po<wbr>sitionableStream)>>fileInAnnou<wbr>ncing:<br>
MultiByteBinaryOrTextStream(Po<wbr>sitionableStream)>>fileIn<br>
MultiByteBinaryOrTextStream>>f<wbr>ileInProject<br>
MultiByteBinaryOrTextStream>>f<wbr>ileInObjectAndCodeForProject [] in [] in<br>
ProjectLoading class>>fileInName:archive:morp<wbr>hOrList:<br>
BlockClosure>>on:do: [] in ProjectLoading<br>
class>>fileInName:archive:morp<wbr>hOrList: BlockClosure>>ensure:<br>
ProjectLoading class>>fileInName:archive:morp<wbr>hOrList: ProjectLoading<br>
class>>openName:stream:fromDir<wbr>ectory:withProjectView:clearOr<wbr>iginFlag:<br>
ProjectLoading class>>openName:stream:fromDir<wbr>ectory:withProjectView:<br>
[] in ProjectLoading class>>openOn: BlockClosure>>on:do: [] in<br>
ByteString(String)>>displaySeq<wbr>uentialProgress: [] in [] in<br>
MorphicUIManager>>displayProgr<wbr>ess:at:from:to:during:<br>
BlockClosure>>on:do: [] in<br>
MorphicUIManager>>displayProgr<wbr>ess:at:from:to:during:<br>
BlockClosure>>ensure:<br>
MorphicUIManager>>displayProgr<wbr>ess:at:from:to:during:<br>
ProgressInitiationException>>d<wbr>efaultResumeValue<br>
ProgressInitiationException(Ex<wbr>ception)>>resume<br>
ProgressInitiationException>>d<wbr>efaultAction<br>
UndefinedObject>>handleSignal:<br>
ProgressInitiationException(Ex<wbr>ception)>>signal<br>
ProgressInitiationException>>d<wbr>isplay:at:from:to:during:<br>
ProgressInitiationException class>>display:at:from:to:duri<wbr>ng:<br>
ProgressInitiationException class>>display:from:to:during:<br>
ByteString(String)>>displaySeq<wbr>uentialProgress: ProjectLoading<br>
class>>openOn: [] in ExternalDropHandler class>>defaultProjectHandler<br>
ExternalDropHandler>>handle:in<wbr>:dropEvent:<br>
PasteUpMorph>>handleDroppedIte<wbr>m:event: [] in PasteUpMorph>>dropFiles:<br>
BlockClosure>>ensure: PasteUpMorph>>dropFiles:<br>
PasteUpMorph(Morph)>>handleDro<wbr>pFiles: DropFilesEvent>>sentTo:<br>
PasteUpMorph(Morph)>>handleEve<wbr>nt:<br>
MorphicEventDispatcher>>dispat<wbr>chEvent:withHandler:withMorph:<br>
MorphicEventDispatcher>>dispat<wbr>chDefault:with:<br>
MorphicEventDispatcher>>dispat<wbr>chEvent:with:<br>
PasteUpMorph(Morph)>>processEv<wbr>ent:using: [] in<br>
PasteUpMorph>>processEvent:usi<wbr>ng: BlockClosure>>ensure:<br>
PasteUpMorph>>processEvent:usi<wbr>ng: PasteUpMorph(Morph)>>processEv<wbr>ent:<br>
[] in [] in [] in HandMorph>>sendEvent:focus:cle<wbr>ar:<br>
BlockClosure>>ensure:<br>
DropFilesEvent(MorphicEvent)>><wbr>becomeActiveDuring: [] in [] in<br>
HandMorph>>sendEvent:focus:cle<wbr>ar: BlockClosure>>ensure:<br>
HandMorph>>becomeActiveDuring: [] in HandMorph>>sendEvent:focus:cle<wbr>ar:<br>
BlockClosure>>ensure: PasteUpMorph>>becomeActiveDuri<wbr>ng:<br>
HandMorph>>sendEvent:focus:cle<wbr>ar: HandMorph>>sendEvent:focus:<br>
HandMorph>>handleEvent: HandMorph>>processEvents [] in<br>
WorldState>>doOneCycleNowFor: Array(SequenceableCollection)><wbr>>do:<br>
WorldState>>handsDo: WorldState>>doOneCycleNowFor:<br>
WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in<br>
MorphicProject>>spawnNewProces<wbr>s [] in BlockClosure>>newProcess)<br>
<span class="m_2194235934835680227gmail-m_8902453135379894271im m_2194235934835680227gmail-m_8902453135379894271HOEnZb"><br>
On 4/30/18, H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a>> wrote:<br>
</span><div class="m_2194235934835680227gmail-m_8902453135379894271HOEnZb"><div class="m_2194235934835680227gmail-m_8902453135379894271h5">> Hi Tim<br>
><br>
> Implementing your suggestion [1] worked to make<br>
> <a href="http://MorphLayoutArticle.019.pr" rel="noreferrer" target="_blank">MorphLayoutArticle.019.pr</a> load into<br>
> Squeak 3.8.1, see screen shot.<br>
><br>
> What I aiming at next  at is to load it into Squeak 6.0a trunk. I<br>
> assume this should be possible quite easily because of the<br>
> enhancements done last year [2][3].<br>
><br>
> Regards<br>
> Hannes<br>
><br>
><br>
><br>
><br>
><br>
> [1] Extend #initKnownRenames<br>
><br>
> SmartRefStream>>initKnownRenam<wbr>es<br>
>       renamed<br>
>           at: #AlansTextPlusMorph put: #TextPlusMorph;<br>
>               at: #FlasherMorph put: #Flasher;<br>
>               yourself<br>
><br>
> made <a href="http://MorphLayoutArticle.019.pr" rel="noreferrer" target="_blank">MorphLayoutArticle.019.pr</a> to load.<br>
><br>
><br>
> [2] 6502 format<br>
> <a href="http://wiki.squeak.org/squeak/6502" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>6502</a><br>
><br>
> ImageFormat of the interpreter Virtual Machine.<br>
> May be loaded transparently into Squeak 6.0a through the help of<br>
> LegacyImageSegment.<br>
><br>
> [3]<br>
> <a href="http://wiki.squeak.org/squeak/6579" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>6579</a><br>
> LegacyImageSegment<br>
> A new class introduced in March 2017 in Squeak 6.0a to enable the<br>
> loading of the older 6502 image segment format type .<br>
><br>
> More see Smalltalk imageFormatVersion  <a href="http://wiki.squeak.org/squeak/873" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>873</a><br>
><br>
><br>
> On 4/30/18, Tm Jhnsn <<a href="mailto:digit@sonic.net" target="_blank">digit@sonic.net</a>> wrote:<br>
>> Hi Hannes,<br>
>><br>
>> In 5.1 there is SmartRefStream>>#initKnownRena<wbr>mes which includes:<br>
>><br>
>> at: #AlansTextPlusMorph put: #TextPlusMorph;<br>
>><br>
>> HTH,<br>
>> Tim<br>
>><br>
>><br>
>> On 4/30/2018 7:33 AM, H. Hirzel wrote:<br>
>>> Hi Bob<br>
>>><br>
>>> It still loads fine in Squeak 3.2. Thank you.<br>
>>><br>
>>> In Squeak 3.8.1 the SmartRefStream needs a new class for<br>
>>><br>
>>>       AlansTextPlusMorph<br>
>>><br>
>>><br>
>>> SmartRefStream>><br>
>>> alansTextPlusMorphbosfcebbmsop<wbr>ssrsggshtt0<br>
>>><br>
>>>     ^ PutNewClassHere<br>
>>><br>
>>><br>
>>> Any suggestions what I should put as a new class?<br>
>>><br>
>>> Regards<br>
>>> Hannes<br>
>>><br>
>>><br>
>>><br>
>>><br>
>>> On 4/30/18, Bob Arning <<a href="mailto:arning315@comcast.net" target="_blank">arning315@comcast.net</a>> wrote:<br>
>>>> Here is the latest one I have. It loaded fine in 3.2.<br>
>>>><br>
>>>><br>
>>>> On 4/29/18 10:20 PM, H. Hirzel wrote:<br>
>>>>> Hello<br>
>>>>><br>
>>>>> Is there a backup-copy/mirror available of the<br>
>>>>><br>
>>>>>                   MorphLayoutArticle<br>
>>>>><br>
>>>>> project which was on Bob's SuperSwiki? [1]<br>
>>>>><br>
>>>>> Regards<br>
>>>>> Hannes<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> ------------------------------<wbr>----<br>
>>>>> [1]<br>
>>>>> <a href="http://wiki.squeak.org/squeak/2141" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>2141</a><br>
>>>>><br>
>>>>> How to lay out submorphs<br>
>>>>><br>
>>>>> Please read the excellent dynamic essay project MorphLayoutArticle<br>
>>>>> (broken link) on Bob's SuperSwiki.<br>
>>>>><br>
>>>>> Every Morph now has the capability to layout it's submorphs.<br>
>>>>> (Previously, only the AlignmentMorph could implement layout policies.<br>
>>>>> AlignmentMorph is still available because of compatibility reasons and<br>
>>>>> some utility methods it implements.<br>
>>>>><br>
>>>><br>
>>>><br>
>>>><br>
>><br>
>><br>
><br>
<br>
</div></div></blockquote></div><br></div>
</div></div><br><br>
<br></blockquote></div></div></div><span class="HOEnZb"><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div class="m_2194235934835680227gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</font></span></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div>