[squeak-dev] The Trunk: SMLoader-fbs.78.mcz

Frank Shearar frank.shearar at gmail.com
Tue Feb 26 20:38:38 UTC 2013


On 26 February 2013 19:13, Chris Muller <ma.chris.m at gmail.com> wrote:
> What I did in my MaInstaller was to have a #merge: function which
> would normally be used all the time (instead of #install:).  So
> whichever one was more up-to-date would be loaded or, even if they
> were branches of each other it would still work too as long as there
> were no method-level conflicts.  (If there are method-level conflicts
> then the interactive Merge dialog is presented where the user can make
> a choice and proceed with the rest of the install by clicking Merge).
>
> If something isn't installed at yet, #merge: behaves exactly like #install:.

OK, but that's not what I'm getting at. It's not actually a problem
yet because this thing's not finished, but my point is that we'd have
two things that lazily pulled in WebClient... and if SM simply had to
use version N or later, and InstallerGitHub pulled in version N-1
because you ran it before you opened the catalog, Bad Things might
well happen. Especially so since "is WebClient installed?" is answered
by Smalltalk at: #WebClient (really, this should be self class
environment at: #WebClient). SM goes "oh cool, it's already loaded, so
I'll just invoke this new behaviour OH NO MNU"

frank

> On Tue, Feb 26, 2013 at 1:21 AM, Frank Shearar <frank.shearar at gmail.com> wrote:
>> :)
>>
>> I'm working on an InstallerGitHub that will pull in WebClient as
>> needed: that means there'll be two things that load WebClient in
>> lazily, requiring some coordination... or pulling out the common
>> piece. I'm not quite sure how to do that since that introduces another
>> dependency or two between things.
>>
>> And adding WebClient to Core seems... counterproductive!
>>
>> frank
>>
>> On 25 February 2013 22:50, Chris Muller <asqueaker at gmail.com> wrote:
>>> I'm glad you left it a hard-coded version (92) so that it will stay stable.
>>>
>>>
>>> On Mon, Feb 25, 2013 at 3:27 PM,  <commits at source.squeak.org> wrote:
>>>> Frank Shearar uploaded a new version of SMLoader to project The Trunk:
>>>> http://source.squeak.org/trunk/SMLoader-fbs.78.mcz
>>>>
>>>> ==================== Summary ====================
>>>>
>>>> Name: SMLoader-fbs.78
>>>> Author: fbs
>>>> Time: 25 February 2013, 9:27:11.959 pm
>>>> UUID: cd8023fe-60a1-4dd9-a7dd-60e8ce7f4ac5
>>>> Ancestors: SMLoader-cmm.77
>>>>
>>>> When installing WebClient, use the most recent version.
>>>>
>>>> =============== Diff against SMLoader-cmm.77 ===============
>>>>
>>>> Item was changed:
>>>>   SystemOrganization addCategory: #SMLoader!
>>>> - SystemOrganization addCategory: #'SMLoader-Models'!
>>>>
>>>> Item was changed:
>>>>   ----- Method: SMClient class>>installWebClient (in category 'private') -----
>>>>   installWebClient
>>>> +       Installer ss
>>>> +               project: 'WebClient';
>>>> +               install: 'WebClient-Core-ar.92.mcz'!
>>>> -       (Installer repository: 'http://www.squeaksource.com/WebClient')
>>>> -               install: 'WebClient-Core-ar.83'!
>>>>
>>>>
>>>


More information about the Squeak-dev mailing list