Yes this is why we also removed from Transcript show: from deep down in the system. From that perspective having a self log: would be better since we could control it. Right now there are plenty of places which holds a reference to the Transcript. What is strange is that the migration code was recompiling all the methods that had a reference to transcript so that they point to the new one.
Stef > ahahahahhaha > > HAHAHAHAHAHAHAHAHHAHAHH > > SmalltalkImage >> fixObsoleteReferences > "SmalltalkImage current fixObsoleteReferences. > SystemNavigation default obsoleteBehaviors size > 0 > ifTrue: [ SystemNavigation default obsoleteBehaviors inspect. > self error:'Still have obsolete behaviors. See inspector']" > > | informee obsoleteBindings obsName realName realClass | > Smalltalk > garbageCollect; > garbageCollect. > CompiledMethod allInstances > do: [ :method | > obsoleteBindings := method literals > select: [ :literal | literal isVariableBinding > and: [ literal value isBehavior and: [ > literal value isObsolete ]]]. > obsoleteBindings > do: [ :binding | > obsName := binding value name. > Transcript > show: 'Binding: '; > show: obsName; > cr. > realName := obsName copyReplaceAll: 'AnObsolete' with: ''. > realClass := Smalltalk globals at: realName asSymbol > ifAbsent: [ UndefinedObject ]. > binding key: binding key value: realClass ] ]. > Behavior flushObsoleteSubclasses. > Smalltalk > garbageCollect; > garbageCollect > > > > remove that lines in yellow and try again :) > > > On Wed, May 18, 2011 at 12:30 AM, Alain_Rastoul <[email protected]> wrote: > When I do Smalltalk fixObsoleteReferences I have > AnObsoleteTranscript class DNU show: > :( > "Mariano Martinez Peck" <[email protected]> a écrit dans le message de > news: [email protected]... > > > On Wed, May 18, 2011 at 12:06 AM, Alain_Rastoul <[email protected]> wrote: > Hi, > > Trying to upgrade my 1.3 image with Menu/System/Software Update, > I had a MNU during update 13191 at > AnObsoleteTranscript class >> cr > which comes from: > UndeclaredVariableWarning>>defaultAction > selector ifNotNil: [Transcript cr; nextPutAll: class name, '>>', selector, > ' '] > ifNil: [Transcript cr ]. > Transcript show: '(' , name , ' is Undeclared) '. > ^true > > Something is missing or I did something wrong? > > > Probably not. But probably Smalltalk fixObsoleteReferences also fixes it. > > > TIA > Regards, > Alain > > > > > > > > -- > Mariano > http://marianopeck.wordpress.com > > > > > -- > Mariano > http://marianopeck.wordpress.com >
