[squeak-dev] something happened to trunk?

Chris Muller asqueaker at gmail.com
Sun Jan 25 20:19:27 UTC 2015


After updating Eliot's trunk46-spur image (2014-12-01) to latest Trunk
code, I can no longer load my base "Ma-Installer" package.  If I don't
update Eliots image with Trunk, then I have no problems whatsoever.

What broke?

Error: Metaclasses can only have one instance
25 January 2015 2:12:26.263 pm

VM: unix - Smalltalk
Image: Squeak4.5 [latest update: #14078]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /home/cmm/Chris/dev/Squeak
Trusted Dir /home/cmm/Chris/dev/Squeak/secure
Untrusted Dir /home/cmm/Chris/dev/Squeak/My Squeak

Metaclass(Object)>>error:
Receiver: MaInstaller class
Arguments and temporary variables:
aString: 'Metaclasses can only have one instance'
Receiver's instance variables:
superclass: Installer class
methodDict: a MethodDictionary()
format: 65548
instanceVariables: #('localRepository')
organization: ('as yet unclassified')

thisClass: MaInstaller

Metaclass(ClassDescription)>>updateInstances:from:isMeta:
Receiver: MaInstaller class
Arguments and temporary variables:
oldInstances: {MaInstaller}
oldClass: MaInstaller class
isMeta: true
map: nil
variable: nil
instSize: nil
newInstances: nil
i: nil
iLimiT: nil
Receiver's instance variables:
superclass: Installer class
methodDict: a MethodDictionary()
format: 65548
instanceVariables: #('localRepository')
organization: ('as yet unclassified')

thisClass: MaInstaller

Metaclass(ClassDescription)>>updateInstancesFrom:
Receiver: MaInstaller class
Arguments and temporary variables:
oldClass: MaInstaller class
Receiver's instance variables:
superclass: Installer class
methodDict: a MethodDictionary()
format: 65548
instanceVariables: #('localRepository')
organization: ('as yet unclassified')

thisClass: MaInstaller

[] in ClassBuilder>>update:to:
Receiver: a ClassBuilder
Arguments and temporary variables:
oldClass: MaInstaller class
newClass: MaInstaller class
meta: true
Receiver's instance variables:
environ: Smalltalk
classMap: nil
instVarMap: an IdentityDictionary()
progress: [closure] in SystemProgressMorph>>position:label:min:max:
maxClassIndex: 1
currentClassIndex: 1

BlockClosure>>ensure:
Receiver: [closure] in ClassBuilder>>update:to:
Arguments and temporary variables:
aBlock: [closure] in BlockClosure>>valueUnpreemptively
complete: nil
returnValue: nil
Receiver's instance variables:
outerContext: ClassBuilder>>update:to:
startpc: 75
numArgs: 0

BlockClosure>>valueUnpreemptively
Receiver: [closure] in ClassBuilder>>update:to:
Arguments and temporary variables:
activeProcess: a Process in nil
oldPriority: 40
result: nil
Receiver's instance variables:
outerContext: ClassBuilder>>update:to:
startpc: 75
numArgs: 0

ClassBuilder>>update:to:
Receiver: a ClassBuilder
Arguments and temporary variables:
oldClass: MaInstaller class
newClass: MaInstaller class
meta: true
Receiver's instance variables:
environ: Smalltalk
classMap: nil
instVarMap: an IdentityDictionary()
progress: [closure] in SystemProgressMorph>>position:label:min:max:
maxClassIndex: 1
currentClassIndex: 1

ClassBuilder>>mutate:to:
Receiver: a ClassBuilder
Arguments and temporary variables:
oldClass: MaInstaller class
newClass: MaInstaller class
Receiver's instance variables:
environ: Smalltalk
classMap: nil
instVarMap: an IdentityDictionary()
progress: [closure] in SystemProgressMorph>>position:label:min:max:
maxClassIndex: 1
currentClassIndex: 1

[] in [] in ClassBuilder>>recompile:from:to:mutate:
Receiver: a ClassBuilder
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
environ: Smalltalk
classMap: nil
instVarMap: an IdentityDictionary()
progress: [closure] in SystemProgressMorph>>position:label:min:max:
maxClassIndex: 1
currentClassIndex: 1

BlockClosure>>on:do:
Receiver: [closure] in [] in ClassBuilder>>recompile:from:to:mutate:
Arguments and temporary variables:
exception: CurrentReadOnlySourceFiles
handlerAction: [closure] in CurrentReadOnlySourceFiles class>>cacheDuring:
handlerActive: true
Receiver's instance variables:
outerContext: [] in ClassBuilder>>recompile:from:to:mutate:
startpc: 161
numArgs: 0

CurrentReadOnlySourceFiles class>>cacheDuring:
Receiver: CurrentReadOnlySourceFiles
Arguments and temporary variables:
aBlock: [closure] in [] in ClassBuilder>>recompile:from:to:mutate:
currentReadOnlySouceFiles: {an
ExpandedSourceFileArray(MultiByteFileStream: '/u...etc...
Receiver's instance variables:
superclass: Exception
methodDict: a MethodDictionary(#defaultAction->(CurrentReadOnlySourceFiles>>#de...etc...
format: 65541
instanceVariables: nil
organization: ('handling' defaultAction)

subclasses: nil
name: #CurrentReadOnlySourceFiles
classPool: nil
sharedPools: nil
environment: Smalltalk
category: #'Files-System'

[] in ClassBuilder>>recompile:from:to:mutate:
Receiver: a ClassBuilder
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
environ: Smalltalk
classMap: nil
instVarMap: an IdentityDictionary()
progress: [closure] in SystemProgressMorph>>position:label:min:max:
maxClassIndex: 1
currentClassIndex: 1

[] in ClassBuilder>>informUserDuring:
Receiver: a ClassBuilder
Arguments and temporary variables:
aBlock: [closure] in SystemProgressMorph>>position:label:min:max:
bar: [closure] in ClassBuilder>>recompile:from:to:mutate:
Receiver's instance variables:
environ: Smalltalk
classMap: nil
instVarMap: an IdentityDictionary()
progress: [closure] in SystemProgressMorph>>position:label:min:max:
maxClassIndex: 1
currentClassIndex: 1

[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
Receiver: a MorphicUIManager
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
toolBuilder: nil

BlockClosure>>on:do:
Receiver: [closure] in [] in
MorphicUIManager>>displayProgress:at:from:to:during:
Arguments and temporary variables:
exception: ProgressNotification
handlerAction: [closure] in [] in
MorphicUIManager>>displayProgress:at:from:to:...etc...
handlerActive: true
Receiver's instance variables:
outerContext: [] in MorphicUIManager>>displayProgress:at:from:to:during:
startpc: 86
numArgs: 0

[] in MorphicUIManager>>displayProgress:at:from:to:during:
Receiver: a MorphicUIManager
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
toolBuilder: nil

BlockClosure>>ensure:
Receiver: [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
Arguments and temporary variables:
aBlock: [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
complete: nil
returnValue: nil
Receiver's instance variables:
outerContext: MorphicUIManager>>displayProgress:at:from:to:during:
startpc: 79
numArgs: 0

MorphicUIManager>>displayProgress:at:from:to:during:
Receiver: a MorphicUIManager
Arguments and temporary variables:
titleString: ' '
aPoint: 400 at 300
minVal: 0
maxVal: 0
workBlock: [closure] in ClassBuilder>>informUserDuring:
progress: [closure] in SystemProgressMorph>>position:label:min:max:
result: #(nil)
Receiver's instance variables:
toolBuilder: nil

ProgressInitiationException>>defaultResumeValue
Receiver: ProgressInitiationException:
Arguments and temporary variables:

Receiver's instance variables:
messageText: nil
tag: nil
signalContext: ProgressInitiationException(Exception)>>signal
handlerContext: nil
outerContext: nil
workBlock: [closure] in ClassBuilder>>informUserDuring:
maxVal: 0
minVal: 0
aPoint: 400 at 300
progressTitle: ' '


--- The full stack ---
Metaclass(Object)>>error:
Metaclass(ClassDescription)>>updateInstances:from:isMeta:
Metaclass(ClassDescription)>>updateInstancesFrom:
[] in ClassBuilder>>update:to:
BlockClosure>>ensure:
BlockClosure>>valueUnpreemptively
ClassBuilder>>update:to:
ClassBuilder>>mutate:to:
[] in [] in ClassBuilder>>recompile:from:to:mutate:
BlockClosure>>on:do:
CurrentReadOnlySourceFiles class>>cacheDuring:
[] in ClassBuilder>>recompile:from:to:mutate:
[] in ClassBuilder>>informUserDuring:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
SystemProgressMorph class>>informUserAt:during:
MorphicUIManager>>informUserDuring:
ClassBuilder>>informUserDuring:
ClassBuilder>>recompile:from:to:mutate:
ClassBuilder>>class:instanceVariableNames:unsafe:
ClassBuilder>>class:instanceVariableNames:
Metaclass>>instanceVariableNames:
MCClassDefinition>>load
[] in [] in [] in [] in [] in MCPackageLoader>>basicLoad
[] in [] in OrderedCollection(Collection)>>do:displayingProgress:every:
OrderedCollection>>do:
[] in OrderedCollection(Collection)>>do:displayingProgress:every:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
OrderedCollection(Collection)>>do:displayingProgress:every:
OrderedCollection(Collection)>>do:displayingProgress:
[] in [] in [] in [] in MCPackageLoader>>basicLoad
-- and more not shown --


More information about the Squeak-dev mailing list