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