<div dir="ltr">On Mon, Aug 12, 2013 at 11:09 AM, Frank Shearar <span dir="ltr">&lt;<a href="mailto:frank.shearar@gmail.com" target="_blank">frank.shearar@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">On 12 August 2013 16:42, Bert Freudenberg &lt;<a href="mailto:bert@freudenbergs.de">bert@freudenbergs.de</a>&gt; wrote:<br>

&gt; On 2013-08-12, at 14:53, <a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a> wrote:<br>
&gt;<br>
&gt;&gt;  checkForUpdates<br>
&gt;&gt;       | availableUpdate updateServer |<br>
&gt;&gt;       World<br>
&gt;&gt;               ifNotNil: [<br>
&gt;&gt;                       World install.<br>
&gt;&gt;                       ActiveHand position: 100@100].<br>
&gt;&gt; -     HTTPClient isRunningInBrowser<br>
&gt;&gt; -             ifFalse: [^self processUpdates].<br>
&gt;&gt;       availableUpdate := (AbstractLauncher extractParameters<br>
&gt;&gt;               at: &#39;UPDATE&#39;<br>
&gt;&gt;               ifAbsent: [&#39;&#39;] ) asInteger.<br>
&gt;&gt;       availableUpdate<br>
&gt;&gt;               ifNil: [^false].<br>
&gt;&gt;       updateServer := AbstractLauncher extractParameters<br>
&gt;&gt;               at: &#39;UPDATESERVER&#39;<br>
&gt;&gt;               ifAbsent: [AbstractLauncher extractParameters<br>
&gt;&gt;               at: &#39;UPDATE_SERVER&#39;<br>
&gt;&gt;               ifAbsent: [&#39;Squeakland&#39;]].<br>
&gt;&gt;       Utilities setUpdateServer: updateServer.<br>
&gt;&gt;       ^SystemVersion checkAndApplyUpdates: availableUpdate!<br>
&gt;<br>
&gt;<br>
&gt; This change would always execute the case meant for the web-browser plugin. (this whole mechanism is unused anyway, even in Etoys, but still)<br>
<br>
</div>Right. I was expecting to hear that this particular change was bad. My<br>
preference would be to rip it out completely. Or, at most, preserve it<br>
in 45Deprecated, or elsewhere. AncientUpdateStream or something.<br>
<div class="im"><br>
&gt; Also, what&#39;s wrong with &quot;Utilities updateFromServer&quot;? Seems to me much nicer and easier to remember than &quot;MCMcmUpdater updateFromServer&quot;. Call it a Facade, if you need to appease the gods of agile ;)<br>

<br>
</div>* I want Utilities to die. It&#39;s a mess of mixed responsibilities. Even<br>
were that all cleaned up, it&#39;d be a mess of mixed responsibilities<br>
delegated to better suited places. It&#39;s Bad(tm) for modularity:<br>
Utilities &gt;&gt; #updateFromServer makes System depend on<br>
MonticelloConfiguration, which is already dependent on System.<br>
Breaking that cycle is the whole point of this commit.<br>
<br>
* With MCMcmUpdater &gt;&gt; #updateFromServer we concentrate updating in one place.<br>
<br></blockquote><div>But, Utilities&gt;&gt;updateFromServer is a facade with a purpose.  If you go back to 3.11 or so, you&#39;ll see that does not use Monticello at all - it used the old update server scheme  (which stored change sets). </div>
<div>(it looked something like:</div><div><div>updateFromServer</div><div><span class="" style="white-space:pre">        </span>self readServerUpdatesSaveLocally: Preferences updateSavesFile updateImage: true</div></div><div>)</div>
<div><br></div><div> I can see a future where we&#39;ll move off of Montecello - not sure which decade, but I&#39;d be surprised if we didn&#39;t.</div><div><br></div><div>What if you (we?) made a new package Utilities that held these types of items?  Or, better yet, what is a pragma was added that Utilities used to pickup where it should forward on the commands that are needed to perform it&#39;s tasks?</div>
<div><br></div><div>-Chris </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
frank<br>
<br>
&gt; - Bert -<br>
&gt;<br>
&gt;<br>
&gt;<br>
<br>
</blockquote></div><br></div></div>