Hello,
I can't browse a top-level class after renaming it, while a subclass presenter was opened and editing.
The error 'Mixin can not be found in its parent mixin' is caused by the absence of some entry in the method dict.
I believe there's some stale entry for the old name of this class. Is there some way to force this to reset?
At first I found this easy to reproduce by just creating a top-level class with subclass and doing some fuzz testing (renaming, editing subclass, reloading), but now I think the errors I got where always related to the class that initially caused the error.
The top-level class 'Numbers' was renamed to 'Arithmetic'. You can see in the trace below that both classes still appear.
DETAILS:
31 January 2015 4:13:54.825482 am
VM: Mac OS version 1091 - Smalltalk
VM Name: Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.973 Newspeak Cog Spur Virtual Machine 5.0.3164
Image: nsboot-2015-01-21 [latest update: #11860]
SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /Users/lo/active/spawningpool/nsboot-spur-2015-01-21
Trusted Dir /foobar/tooBar/forSqueak/bogus/
Untrusted Dir /Users/lo/Library/Preferences/Newspeak/Internet/Untrusted
[] in KernelForSqueak`InstanceMixin`2221527(KernelForSqueak`InstanceMixin)>>accessModifier
Receiver: Numbers`Representation mixin
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
name: #'Numbers`Representation'
methodDictionary: a MethodDictionary(#'Numbers`Representation`superInit`new'->(...etc...
slots: #(#(#slot1 true #protected) #(#slot2 true #protected))
enclosingMixin: Arithmetic mixin
nestedMixins: a Dictionary()
applications: a WeakSet()
classMixin: Numbers`Representation class mixin
cachedHeaderSource: 'class Representation = ((* Describe the class in this comm...etc...
cachedConstructorName: #new
category: nil
organization: ('as yet unclassified')
MethodDictionary>>at:ifAbsent:
Receiver: a MethodDictionary(#'Arithmetic`Representation`slot'->(nil>>#t0 "a CompiledMethod(3891136)...etc...
Arguments and temporary variables:
key: #Representation
aBlock: [closure] in KernelForSqueak`InstanceMixin`2221527(KernelForSqueak`Inst...etc...
Receiver's instance variables:
tally: 7
array: {nil . (Arithmetic mixin>>#'mixinInitializer`new' "a CompiledMethod(4102...etc...
KernelForSqueak`InstanceMixin`2221527(KernelForSqueak`InstanceMixin)>>accessModifier
Receiver: Numbers`Representation mixin
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
name: #'Numbers`Representation'
methodDictionary: a MethodDictionary(#'Numbers`Representation`superInit`new'->(...etc...
slots: #(#(#slot1 true #protected) #(#slot2 true #protected))
enclosingMixin: Arithmetic mixin
nestedMixins: a Dictionary()
applications: a WeakSet()
classMixin: Numbers`Representation class mixin
cachedHeaderSource: 'class Representation = ((* Describe the class in this comm...etc...
cachedConstructorName: #new
category: nil
organization: ('as yet unclassified')
MirrorsForSqueak`ClassDeclarationMirror`2392856(MirrorsForSqueak`ClassDeclarationMirror)>>accessModifier
Receiver: ClassDeclarationMirror reflecting: Numbers`Representation mixin
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
reflectee: Numbers`Representation mixin
instanceSideLazy: nil
classSideLazy: nil
Newspeak3Browsing`NestedClassSubject`3141690(Newspeak3Browsing`NestedClassSubject)>>accessModifier
Receiver: Newspeak3Browsing`NestedClassSubject`3141690#1096162(ClassDeclarationMirror reflecting: Nu...etc...
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
model: ClassDeclarationMirror reflecting: Numbers`Representation mixin
presenterX: Newspeak3Browsing`ExpandableClassPresenter`3141690#1823120(Newspeak...etc...
Newspeak3Browsing`NestedClassPresenter`3141690(Newspeak3Browsing`NestedClassPresenter)>>accessModifierIcon
Receiver: Newspeak3Browsing`NestedClassPresenter`3141690#1800775(Newspeak3Browsing`NestedClassSubjec...etc...
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
parentX: HopscotchFramework`ComposerClasses`ToggleComposer`486996#3733619
visualX: nil
decorators: nil
subject: Newspeak3Browsing`NestedClassSubject`3141690#1096162(ClassDeclarationM...etc...
substanceX: nil
noticeHandlerSelectorsX: nil
Newspeak3Browsing`NestedClassPresenter`3141690(Newspeak3Browsing`NestedClassPresenter)>>definition
Receiver: Newspeak3Browsing`NestedClassPresenter`3141690#1800775(Newspeak3Browsing`NestedClassSubjec...etc...
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
parentX: HopscotchFramework`ComposerClasses`ToggleComposer`486996#3733619
visualX: nil
decorators: nil
subject: Newspeak3Browsing`NestedClassSubject`3141690#1096162(ClassDeclarationM...etc...
substanceX: nil
noticeHandlerSelectorsX: nil
[] in Newspeak3Browsing`NestedClassPresenter`3141690(HopscotchFramework`CoreClasses`Presenter)>>ensureSubstance
Receiver: Newspeak3Browsing`NestedClassPresenter`3141690#1800775(Newspeak3Browsing`NestedClassSubjec...etc...
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
parentX: HopscotchFramework`ComposerClasses`ToggleComposer`486996#3733619
visualX: nil
decorators: nil
subject: Newspeak3Browsing`NestedClassSubject`3141690#1096162(ClassDeclarationM...etc...
substanceX: nil
noticeHandlerSelectorsX: nil
UndefinedObject>>ifNil:
Receiver: nil
Arguments and temporary variables:
aBlock: [closure] in Newspeak3Browsing`NestedClassPresenter`3141690(HopscotchFr...etc...
Receiver's instance variables:
nil
Newspeak3Browsing`NestedClassPresenter`3141690(HopscotchFramework`CoreClasses`Presenter)>>ensureSubstance
Receiver: Newspeak3Browsing`NestedClassPresenter`3141690#1800775(Newspeak3Browsing`NestedClassSubjec...etc...
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
parentX: HopscotchFramework`ComposerClasses`ToggleComposer`486996#3733619
visualX: nil
decorators: nil
subject: Newspeak3Browsing`NestedClassSubject`3141690#1096162(ClassDeclarationM...etc...
substanceX: nil
noticeHandlerSelectorsX: nil
Newspeak3Browsing`NestedClassPresenter`3141690(HopscotchFramework`CoreClasses`Presenter)>>createVisual
Receiver: Newspeak3Browsing`NestedClassPresenter`3141690#1800775(Newspeak3Browsing`NestedClassSubjec...etc...
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
parentX: HopscotchFramework`ComposerClasses`ToggleComposer`486996#3733619
visualX: nil
decorators: nil
subject: Newspeak3Browsing`NestedClassSubject`3141690#1096162(ClassDeclarationM...etc...
substanceX: nil
noticeHandlerSelectorsX: nil