<div dir="ltr">See Name: System-cmm.586<br><div id=":5j1">

- Factor SmalltalkImage&gt;&gt;#<span class="">unloadAllKnownPackages</span> into several smaller methods to allow more deliberate shrinking.<br></div><div id=":5j1">snip...<br><br></div><div id=":5j1">Note that MCMcmUpdater comment does still refer to this method.<br>

</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/12/13 Frank Shearar <span dir="ltr">&lt;<a href="mailto:frank.shearar@gmail.com" target="_blank">frank.shearar@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">On 13 December 2013 12:57, David T. Lewis &lt;<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>&gt; wrote:<br>
&gt; On Fri, Dec 13, 2013 at 07:42:28AM +0000, Frank Shearar wrote:<br>
&gt;&gt; On 12 December 2013 23:58,  &lt;<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>&gt; wrote:<br>
&gt;&gt; &gt; David T. Lewis uploaded a new version of Collections to project The Trunk:<br>
&gt;&gt; &gt; <a href="http://source.squeak.org/trunk/Collections-dtl.548.mcz" target="_blank">http://source.squeak.org/trunk/Collections-dtl.548.mcz</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; ==================== Summary ====================<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Name: Collections-dtl.548<br>
&gt;&gt; &gt; Author: dtl<br>
&gt;&gt; &gt; Time: 12 December 2013, 6:58:08.878 pm<br>
&gt;&gt; &gt; UUID: b167353b-b9ab-4911-8168-c5f184cab62a<br>
&gt;&gt; &gt; Ancestors: Collections-ul.547<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Transcripter&gt;&gt;initInFrame: should do nothing when not in MVC<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; =============== Diff against Collections-ul.547 ===============<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Item was changed:<br>
&gt;&gt; &gt;   ----- Method: Transcripter&gt;&gt;initInFrame: (in category &#39;initialization&#39;) -----<br>
&gt;&gt; &gt;   initInFrame: rect<br>
&gt;&gt; &gt; +       Smalltalk at: #Paragraph ifPresent: [:classParagraph | &quot;MVC&quot;<br>
&gt;&gt; &gt; +               frame := rect insetBy: 2.  &quot;Leave room for border&quot;<br>
&gt;&gt; &gt; +               para := classParagraph withText: self contents asText<br>
&gt;&gt; &gt; +                                       style: TextStyle default<br>
&gt;&gt; &gt; +                                       compositionRectangle: ((frame insetBy: 4) withHeight: 9999)<br>
&gt;&gt; &gt; +                                       clippingRectangle: frame<br>
&gt;&gt; &gt; +                                       foreColor: self black backColor: self white]!<br>
&gt;&gt; &gt; -       frame := rect insetBy: 2.  &quot;Leave room for border&quot;<br>
&gt;&gt; &gt; -       (Smalltalk hasClassNamed: #Paragraph)<br>
&gt;&gt; &gt; -               ifFalse: [^ self inform: &#39;MVC class Paragraph not present&#39;].<br>
&gt;&gt; &gt; -       para := (Smalltalk at: #Paragraph) withText: self contents asText<br>
&gt;&gt; &gt; -                               style: TextStyle default<br>
&gt;&gt; &gt; -                               compositionRectangle: ((frame insetBy: 4) withHeight: 9999)<br>
&gt;&gt; &gt; -                               clippingRectangle: frame<br>
&gt;&gt; &gt; -                               foreColor: self black backColor: self white!<br>
&gt;&gt;<br>
&gt;&gt; Well, that definitely stops a DNU and such when running in Morphic<br>
&gt;&gt; (yay!) but it still won&#39;t work in a non-MVC/Morphic world. That&#39;s when<br>
&gt;&gt; you accused me of overengineering, David :)<br>
&gt;<br>
&gt; Yes you&#39;re right, I meant that with a smiley, sorry :)<br>
<br>
</div></div>I knew there was something of a smiley in there :) I just meant that<br>
if we want to preserve the Transcripter&#39;s emergencyEvaluator we would<br>
need this &quot;complexity&quot; because we&#39;d need an emergencyEvaluator per UI<br>
framework.<br>
<div class="im"><br>
&gt; I also made a mistake when I tested it, I didn&#39;t have MVC completely<br>
&gt; unloaded. Hmmm, the unload procedure in #unloadReloadablePackages does<br>
&gt; not seem to work, at least not if MVC projects exist in the image.<br>
&gt;<br>
&gt; The full MVC removal used to be in #unloadAllKnownPackages, which is no<br>
&gt; longer in the image. The MVC removal in #unloadReloadablePackages seems to<br>
&gt; be focused only on removing code, not on doing the full removal. Presumably<br>
&gt; that is the intent, but do we also have a method elsewhere that does what<br>
&gt; #unloadAllKnownPackages used to do?<br>
<br>
</div>I can&#39;t remember now the who/when/what of #unloadAllKnownPackages&#39;s<br>
removal. I think I&#39;d moaned about its references to things like ST80.<br>
At any rate, the images that CI use don&#39;t have ST80 in them, by virtue<br>
of a #unloadAllKnownPackages done long, long ago.<br>
<br>
frank<br>
<br>
&gt; Dave<br>
<br>
</blockquote></div><br></div>