Hi -
I was just doing some stuff in 3.10 when I decided to try the 3.11 alpha. First of all, can we *please* rename the image to 3.11 instead of 3.10.2 "bc"? The reason being that 1) I've never seen the designation "build candidate" for any software project, and 2) it gets extremely confusing when you have to distinguish "3.10.2" (which works fine) from "3.10.2 bc" (which breaks). Much simpler to call 3.11 alpha what it is: 3.11 alpha.
Anyway, enough of that. What I noticed in 3.11 alpha (no I won't call it 3.10.2 bc ;-) is that apparently Monticello got badly broken. I have not been able to load or browse any packages at all; every attempt to do so died with the stack trace below.
At which point I thought I'll just see if that has been fixed already (which I presume it probably has) but I couldn't for the hell of it find out what the process for updating that image is. Can someone shed a light on the process? Even better, write it up and put it into the welcome window? (and while you're at it rename the image to 3.11 alpha in case I haven't mentioned that ;-)
Thanks, - Andreas
VM: Win32 - a SmalltalkImage Image: Squeak3.10.2bc-beta [latest update: #7179]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir C:\Squeak\3.11\081216-1256-Squeak3.10.2bc-beta\081216-1256-Squeak3.10.2bc-beta Trusted Dir C:\Squeak\3.11\081216-1256-Squeak3.10.2bc-beta\081216-1256-Squeak3.10.2bc-beta\andreas Untrusted Dir C:\My Squeak\andreas
UndefinedObject(Object)>>doesNotUnderstand: #addAll: Receiver: nil Arguments and temporary variables: aMessage: addAll: an OrderedCollection(a MCClassDefinition(B3DEngineConstants) ...etc... Receiver's instance variables: nil
[] in MCMczReader>>extractDefinitionsFrom: {[:rc | reader := rc on: member contentStream text. definitions addAll: rea...]} Arguments and temporary variables: member: a ZipFileMember(snapshot/source.st) reader: a MCStReader rc: MCStReader
MCStReader class(Object)>>ifNotNilDo: Receiver: MCStReader Arguments and temporary variables: aBlock: [] in MCMczReader>>extractDefinitionsFrom: {[:rc | reader := rc on: me...etc... Receiver's instance variables: superclass: MCSnapshotReader methodDict: a MethodDictionary(#addDefinitionsFromDoit:->a CompiledMethod (1525...etc... format: 134 instanceVariables: nil organization: ('as yet unclassified' addDefinitionsFromDoit: categoryFromDoIt: ...etc... subclasses: {MCCsReader} name: #MCStReader classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Monticello-Base-Chunk Format' traitComposition: nil localSelectors: nil
MCMczReader>>extractDefinitionsFrom: Receiver: a MCMczReader Arguments and temporary variables: member: a ZipFileMember(snapshot/source.st) reader: a MCStReader rc: MCStReader Receiver's instance variables: stream: a RWBinaryOrTextStream a ByteArray(80 75 3 4 20 0 0 0 8 0 86 3 101 48 1...etc... package: a MCPackage(Balloon3D-Constants) info: a MCVersionInfo(Balloon3D-Constants-ar.4) definitions: nil dependencies: nil stepChildren: nil zip: a ZipArchive snapshot: nil infoCache: a Dictionary('005012f2-87f9-6342-b736-ac5003facd22'->a MCVersionInfo...etc...
--- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #addAll: [] in MCMczReader>>extractDefinitionsFrom: {[:rc | reader := rc on: member contentStream text. definitions addAll: rea...]} MCStReader class(Object)>>ifNotNilDo: MCMczReader>>extractDefinitionsFrom: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [] in MCMczReader>>loadSnapshot {[:m | self extractDefinitionsFrom: m]} OrderedCollection>>do: MCMczReader>>loadSnapshot MCMczReader>>snapshot MCMczReader(MCVersionReader)>>basicVersion MCMczReader>>basicVersion MCMczReader(MCVersionReader)>>version [] in MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed: {[:r | r version]} MCMczReader(Object)>>ifNotNilDo: MCHttpRepository>>versionReaderForFileNamed:do: MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed: [] in MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed: {[self loadVersionFromFileNamed: aString]} Dictionary>>at:ifAbsent: MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed: [] in MCHttpRepository(MCFileBasedRepository)>>versionWithInfo:ifAbsent: {[:fileName | version := self versionFromFileNamed: fileName. version info ...]} Array(SequenceableCollection)>>do: MCHttpRepository(MCFileBasedRepository)>>versionWithInfo:ifAbsent: MCHttpRepository(MCRepository)>>versionWithInfo: MCVersionInfo>>loadVersionFrom: MCRepositoryPackagesVersionsInspector(MCRepositoryVersionsInspector)>>load 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: ...etc...