[squeak-dev] The Inbox: System-fbs.586.mcz

Bert Freudenberg bert at freudenbergs.de
Mon Aug 12 18:25:33 UTC 2013


On 2013-08-12, at 20:09, Frank Shearar <frank.shearar at gmail.com> wrote:

> On 12 August 2013 16:42, Bert Freudenberg <bert at freudenbergs.de> wrote:
>> On 2013-08-12, at 14:53, commits at source.squeak.org wrote:
>> 
>>> checkForUpdates
>>>      | availableUpdate updateServer |
>>>      World
>>>              ifNotNil: [
>>>                      World install.
>>>                      ActiveHand position: 100 at 100].
>>> -     HTTPClient isRunningInBrowser
>>> -             ifFalse: [^self processUpdates].
>>>      availableUpdate := (AbstractLauncher extractParameters
>>>              at: 'UPDATE'
>>>              ifAbsent: [''] ) asInteger.
>>>      availableUpdate
>>>              ifNil: [^false].
>>>      updateServer := AbstractLauncher extractParameters
>>>              at: 'UPDATESERVER'
>>>              ifAbsent: [AbstractLauncher extractParameters
>>>              at: 'UPDATE_SERVER'
>>>              ifAbsent: ['Squeakland']].
>>>      Utilities setUpdateServer: updateServer.
>>>      ^SystemVersion checkAndApplyUpdates: availableUpdate!
>> 
>> 
>> This change would always execute the case meant for the web-browser plugin. (this whole mechanism is unused anyway, even in Etoys, but still)
> 
> Right. I was expecting to hear that this particular change was bad. My
> preference would be to rip it out completely. Or, at most, preserve it
> in 45Deprecated, or elsewhere. AncientUpdateStream or something.

Safe to delete IMHO. Nothing else depends on it so no need to deprecate.

>> Also, what's wrong with "Utilities updateFromServer"? Seems to me much nicer and easier to remember than "MCMcmUpdater updateFromServer". Call it a Facade, if you need to appease the gods of agile ;)
> 
> * I want Utilities to die. It's a mess of mixed responsibilities. Even
> were that all cleaned up, it'd be a mess of mixed responsibilities
> delegated to better suited places. It's Bad(tm) for modularity:
> Utilities >> #updateFromServer makes System depend on
> MonticelloConfiguration, which is already dependent on System.
> Breaking that cycle is the whole point of this commit.
> 
> * With MCMcmUpdater >> #updateFromServer we concentrate updating in one place.
> 
> frank


Maybe we need some high-level package then that can easily depend on all the stuff. MCMcmUpdater is just the mechanism, but the intent is something like "Squeak updateFromServer" (or even just "Squeak update"). Utilities used to be that place. I'm fine with something different, but having a gazillion single-purpose classes for such high-level operations seems to make things harder on users, not simpler.

Discussion welcome, of course :)

- Bert -




More information about the Squeak-dev mailing list