Hmm, take a look at TestSuite>>#tests. In my image I have:
tests tests isNil ifTrue: [tests := OrderedCollection new]. ^tests
but it sounds like the Damien image changed it to a Set, I wonder why? Oh well..
I would revert that method back to using an OrderedCollection and try again, or don't use that image..
- Chris
On Mon, Mar 23, 2009 at 11:27 PM, Ross Boylan ross@biostat.ucsf.edu wrote:
This time I installed only the tester. However, I got the same error.
On the off chance it's relevant, I installed "Nice fonts" from the Universe browser before installing Magma.
#addAllFirst: is implemented on OrderedCollection. In the TestSuite, self tests has class Set, a direct subclass of Collection.
Does 3.10 have a different collection hierarchy?
On Mon, 2009-03-23 at 20:39 -0500, Chris Muller wrote:
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!
Regards, Chris
On Mon, Mar 23, 2009 at 4:49 PM, Ross Boylan ross@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@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/magma
magma@lists.squeakfoundation.org