Newbie Questions

Chris Muller ma.chris.m at gmail.com
Tue Mar 24 20:56:43 UTC 2009


Hi Igor, I think you may be right.  But can you elaborate a little?

Over the last week or so, I developed a "SarBuilder2" which does all
the hard work of making the complex object that is a SAR.  It
calculates prereqs and determines the correct load order, and creates
the load script and writes out the ZipArchive to a .sar file of your
choosing.  Absolutely wonderful.

One reason I like using "SAR" as my "Installer" because I sometimes
need *objects*, not just code, to be brought into the object system.

Still, I have had some positive exposure to "Installer" which,
unfortunately, is not included with 3.9  :(.  I see it can load
Monticellos, change-sets, SqueakMap packages, etc.  That's all great,
but I guess SARInstaller can do that too, and its included with 3.9.

Regards,
  Chris


On Tue, Mar 24, 2009 at 3:48 PM, Igor Stasenko <siguctua at gmail.com> wrote:
> 2009/3/24 Chris Muller <ma.chris.m at gmail.com>:
>> Hi Ross, please use the Magma installation instructions found on the Swiki:
>>
>>  http://wiki.squeak.org/squeak/2657
>>
>> You are not the first get confused by Magma's installation process.  I
>> may have "tried too hard" to make it easy, and ended up confusing
>> people instead in many cases..
>>
>> I have just updated that documentation page, made clarifications and
>> placed emphasis on the important aspect of the installation which is
>> regularly missed.  Please give it another try!
>>
>
> Cris, write an Installer scripts :)
> Its easy and fast.
>
>> Regards,
>>  Chris
>>
>>
>> On Mon, Mar 23, 2009 at 4:49 PM, Ross Boylan <ross at biostat.ucsf.edu> wrote:
>>> On Mon, 2009-03-23 at 11:53 -0500, Chris Muller wrote:
>>>> > I'm thinking of using Damien's squeak-dev 3.10 image.  Should that
>>>> work?
>>>>
>>>> Please run the Magma test suite on that image.  It's really the best
>>>> and only way to know.
>>>>
>>>>   1)  Load Magma tester from SqueakMap
>>>>   2)  MagmaTestCase fullSuite maDebug  "do it"
>>>
>>> It didn't get too far.  In TestSuite self tests doesn't understand the
>>> message #addAllFirst:.  The stack trace appears below.
>>>
>>> Perhaps this is related to a glitch during installation:
>>> >From squeakmap I loaded the r42beta2 versions of Magma Server and then
>>> Magma Client.  During the latter I got:
>>> "You are about to load new versions of the following packages that have
>>> unsaved changes in the image.  If you continue, you will lose these
>>> changes.
>>>
>>>  Ma base additions
>>>
>>> Select Proceed to continue, or close this window to cancel the
>>> operation."
>>>
>>> Of course, I also got messages that the packages were not known to be
>>> compatible with 3.10.
>>>
>>> ------------------------------------ stack trace--------------------
>>> 23 March 2009 2:46:31 pm
>>>
>>> VM: unix - a SmalltalkImage
>>> Image: Squeak3.10.2 [latest update: #7179]
>>>
>>> SecurityManager state:
>>> Restricted: false
>>> FileAccess: true
>>> SocketAccess: true
>>> Working Dir /usr/local/src/insurance
>>> Trusted Dir /usr/local/src/insurance/secure
>>> Untrusted Dir /usr/local/src/insurance/My Squeak
>>>
>>> Set(Object)>>doesNotUnderstand: #addAllFirst:
>>>        Receiver: a Set(MagmaCollectionTester>>#testPersistentEmpty {test
>>> querys - persistent empty} MagmaCo...etc...
>>>        Arguments and temporary variables:
>>>                aMessage:       addAllFirst: a Set(MagmaTestCase>>#testUpdateByteObjects
>>> {other small...etc...
>>>        Receiver's instance variables:
>>>                tally:  18
>>>                array:  an Array(nil nil nil
>>> MagmaCollectionTester>>#testPersistentEmpty {test q...etc...
>>>
>>> TestSuite>>addTestsFirst:
>>>        Receiver: a TestSuite
>>>        Arguments and temporary variables:
>>>                aCollection:    a Set(MagmaTestCase>>#testUpdateByteObjects {other small
>>> tests} Ma...etc...
>>>        Receiver's instance variables:
>>>                tests:  a Set(MagmaCollectionTester>>#testPersistentEmpty {test querys
>>> - persist...etc...
>>>                resources:      nil
>>>                name:   nil
>>>
>>> MagmaTestCase class>>fullSuite
>>>        Receiver: MagmaTestCase
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                superclass:     MaNetworkTestCase
>>>                methodDict:     a MethodDictionary(size 188)
>>>                format:         162
>>>                instanceVariables:      #('magmaConsole' 'peerConsole' 'clientSession'
>>> 'localRoot' '...etc...
>>>                organization:   ('initialize-release' abort abortClients
>>> assertForwardRecoverySig...etc...
>>>                subclasses:     {MagmaCollectionTester}
>>>                name:   #MagmaTestCase
>>>                classPool:      a Dictionary(#InitiateBackupPrereqsCompleted->nil
>>> #MagmaServerAddres...etc...
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Magma tester-SUnit tests'
>>>                traitComposition:       nil
>>>                localSelectors:         nil
>>>
>>> UndefinedObject>>DoIt
>>>        Receiver: nil
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>> nil
>>>
>>>
>>> --- The full stack ---
>>> Set(Object)>>doesNotUnderstand: #addAllFirst:
>>> TestSuite>>addTestsFirst:
>>> MagmaTestCase class>>fullSuite
>>> UndefinedObject>>DoIt
>>>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>>> Compiler>>evaluate:in:to:notifying:ifFail:logged:
>>> [] in TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection {[rcvr
>>> class evaluatorClass new   evaluate: self selectionAsStream   in:
>>> ctxt...]}
>>> BlockContext>>on:do:
>>> TextMorphForShoutEditor(ParagraphEditor)>>evaluateSelection
>>> TextMorphForShoutEditor(ParagraphEditor)>>doIt
>>> [] in TextMorphForShoutEditor(ParagraphEditor)>>doIt: {[self doIt]}
>>> TextMorphForShoutEditor(Controller)>>terminateAndInitializeAround:
>>> TextMorphForShoutEditor(ParagraphEditor)>>doIt:
>>> TextMorphForShoutEditor(ParagraphEditor)>>dispatchOnCharacter:with:
>>> TextMorphForShoutEditor(TextMorphEditor)>>dispatchOnCharacter:with:
>>> TextMorphForShoutEditor(ParagraphEditor)>>readKeyboard
>>> TextMorphForShoutEditor(TextMorphEditor)>>readKeyboard
>>> [] in TextMorphForShout(TextMorph)>>keyStroke: {[editor readKeyboard]}
>>> TextMorphForShout(TextMorph)>>handleInteraction:fromEvent:
>>> TextMorphForShout(TextMorphForEditView)>>handleInteraction:fromEvent:
>>> TextMorphForShout(TextMorph)>>keyStroke:
>>> TextMorphForShout(TextMorphForEditView)>>keyStroke:
>>> TextMorphForShout(TextMorph)>>handleKeystroke:
>>> KeyboardEvent>>sentTo:
>>> TextMorphForShout(Morph)>>handleEvent:
>>> TextMorphForShout(Morph)>>handleFocusEvent:
>>> [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self.
>>> ActiveEvent := anEvent.  e := anEvent     transformedB...]}
>>> [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]}
>>> BlockContext>>on:do:
>>> PasteUpMorph>>becomeActiveDuring:
>>> HandMorph>>sendFocusEvent:to:clear:
>>> HandMorph>>sendEvent:focus:clear:
>>> [] in HandMorph>>sendKeyboardEvent: {[:focusHolder | anEvent wasHandled
>>> ifFalse: [self     sendEvent: anEvent  ...]}
>>> OrderedCollection>>do:
>>> HandMorph>>sendKeyboardEvent:
>>> HandMorph>>handleEvent:
>>> HandMorph>>processEvents
>>> [] in WorldState>>doOneCycleNowFor: {[:h |  ActiveHand := h.  h
>>> processEvents.  capturingGesture := capturingGest...]}
>>> Array(SequenceableCollection)>>do:
>>> WorldState>>handsDo:
>>> WorldState>>doOneCycleNowFor:
>>> WorldState>>doOneCycleFor:
>>> PasteUpMorph>>doOneCycle
>>> [] in Project class>>spawnNewProcess {[[World doOneCycle.  Processor
>>> yield.  false] whileFalse.  nil]}
>>> [] in BlockContext>>newProcess {[self value.  Processor
>>> terminateActive]}
>>>
>>>
>>>
>> _______________________________________________
>> Magma mailing list
>> Magma at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/magma
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
>


More information about the Magma mailing list