Hi
Ok, I had an 3.9 7051 image that was very close at 32 MB. I could either rebuild a new image from scratch or use the patch from Klaus. Now I knew about the risks (wich are why it's not in 3.9) and that it has not seen enough testing. But if nobody tests it because it has not seen enough testing then nobody will test it and it will never see enogh testing. So it basically boiled down to 'Who if not me? When if not now?'
Good! I like that kind of behavior, fool but bold :)
So I did
- loaded LargeSourceFilePointers-kwl.0.cs (said Proceed)
- did the doit
- loaded LargeSourceFilePointers-kwl.1.cs
- did the doit
loaded RefactoringEngine run Lint on a package, did some fixes, commited via Monticello run Lint on an other package, did some fixes, oops trace below
As you can see a CompiledMethod is in the preamble. size of changes file: 31377626
From: 2 October 2006 8:36:33 pm
VM: unix - a SmalltalkImage Image: Squeak3.9alpha [latest update: #7051]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true
CompiledMethod(Object)>>doesNotUnderstand: #findString:startingAt: Receiver: a CompiledMethod (614) Arguments and temporary variables: aMessage: findString: ''methodsFor:'' startingAt: 1 Receiver''s instance variables: a CompiledMethod (614)
CompiledMethod>>timeStamp Receiver: a CompiledMethod (614) Arguments and temporary variables: file: MultiByteFileStream: ''/home/upnip/data/uni/masterarbeit/images/7051/Squea...etc... preamble: a CompiledMethod (614) stamp: '''' tokens: nil tokenCount: nil ex: nil Receiver''s instance variables: a CompiledMethod (614)
MethodReference>>timeStamp Receiver: a MethodReference PKBarLayout >> initialize Arguments and temporary variables:
Receiver''s instance variables: classSymbol: #PKBarLayout classIsMeta: false methodSymbol: #initialize stringVersion: ''PKBarLayout initialize''
MCMethodDefinition class>>forMethodReference: Receiver: MCMethodDefinition Arguments and temporary variables: aMethodReference: a MethodReference PKBarLayout >> initialize definition: nil Receiver''s instance variables: superclass: MCDefinition methodDict: a MethodDictionary(#=->a CompiledMethod (643) #accept:->a CompiledM...etc... format: 142 instanceVariables: #(''classIsMeta'' ''source'' ''category'' ''selector'' ''className'' ''...etc... organization: (''accessing'' actualClass category classIsMeta className fullTimeS...etc... subclasses: nil name: #MCMethodDefinition classPool: a Dictionary(#Definitions->a WeakIdentityKeyDictionary (size 239) ) sharedPools: nil environment: a SystemDictionary(lots of globals) category: #''Monticello-Modeling'' traitComposition: nil localSelectors: nil
--- The full stack --- CompiledMethod(Object)>>doesNotUnderstand: #findString:startingAt: CompiledMethod>>timeStamp MethodReference>>timeStamp MCMethodDefinition class>>forMethodReference:
MethodReference>>asMethodDefinition [] in MCPackage>>snapshot {[:ea | definitions add: ea asMethodDefinition]} [] in Array(SequenceableCollection)>>do:displayingProgress: {[:each :i | bar value: i. aBlock value: each]} Array(SequenceableCollection)>>withIndexDo: [] in Array(SequenceableCollection)>>do:displayingProgress: {[:bar | self withIndexDo: [:each :i | bar value: i. aBlock value: e...]} [] in ProgressInitiationException>>defaultMorphicAction {[result := workBlock value: progress]} BlockContext>>ensure: ProgressInitiationException>>defaultMorphicAction ProgressInitiationException>>defaultAction UndefinedObject>>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: Array(SequenceableCollection)>>do:displayingProgress: MCPackage>>snapshot MCWorkingCopy>>changesRelativeToRepository: MCWorkingCopyBrowser>>viewChanges PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction PluggableButtonMorphPlus>>performAction [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: {[:m | (m containsPoint: evt cursorPoint) ifTrue: [m performAction]]} Array(SequenceableCollection)>>do: PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: PluggableButtonMorphPlus>>mouseUp: PluggableButtonMorphPlus(Morph)>>handleMouseUp: MouseButtonEvent>>sentTo: PluggableButtonMorphPlus(Morph)>>handleEvent: PluggableButtonMorphPlus(Morph)>>handleFocusEvent: [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self. ActiveEvent := anEvent. result := focusHolder han...]} [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]} BlockContext>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: HandMorph>>processEvents [] in WorldState>>doOneCycleNowFor: {[:h | ActiveHand := h. h processEvents. capturingGesture := capturingGest...]} ...etc...
Cheers Philippe