Hi,
I'm having a strange problem with the package loader when installing some packages (like eCompletion, Seaside and probably others). I can install other normally like Shout.
I can reproduce the error following the steps: (in both Linux and Windows 2000, without a firewall and an ADSL connection)
1) Download a fresh squeak build (have tried with 3.7, 3.8 and 3.9aversions) 2) Starts it and next SqueakMap 3) Update package loader to version 2.1 (whan asked) 4) Install Shout(4) 5) Try to install eCompletion and it hangs with the wait cursor on the screen (i have to close squeak then) 5a) If i don't update package loader to version 2.1 it gives other error:
MessageNotUnderstood: UndefinedObject>>findLast: 26 December 2005 11:43:11 am
VM: Win32 - a SmalltalkImage Image: Squeak3.8 [latest update: #6665]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir C:\Documents and Settings\Administrator\Desktop\Squeak3.8 Trusted Dir C:\Documents and Settings\Administrator\Desktop\Squeak3.8\Administrator Untrusted Dir C:\My Squeak\Administrator
UndefinedObject(Object)>>doesNotUnderstand: #findLast: Receiver: nil Arguments and temporary variables: aMessage: findLast: [] in FileDirectory class>>extensionFor: {[:c | c = delim]}...etc... Receiver's instance variables: nil
FileDirectory class>>extensionFor: Receiver: FileDirectory Arguments and temporary variables: fileName: nil delim: $. i: nil c: nil Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#acceptsUploads->a CompiledMethod (312) #assureE...etc... format: 132 instanceVariables: #('pathName') organization: ('path access' fullPathFor: on: pathName pathNameDelimiter pathPa...etc... subclasses: #(UnixFileDirectory AcornFileDirectory MacFileDirectory DosFileDire...etc... name: #FileDirectory classPool: a Dictionary(#DefaultDirectory->DosFileDirectory on 'C:\Documents an...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: nil
SMMcInstaller>>fileIn Receiver: a SMMcInstaller Arguments and temporary variables: extension: nil Receiver's instance variables: packageRelease: SMPackageRelease[eCompletion 5-2.0b2] fileName: nil dir: nil unpackedFileName: nil
SMMcInstaller>>install Receiver: a SMMcInstaller Arguments and temporary variables:
Receiver's instance variables: packageRelease: SMPackageRelease[eCompletion 5-2.0b2] fileName: nil dir: nil unpackedFileName: nil
--- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #findLast: FileDirectory class>>extensionFor: SMMcInstaller>>fileIn SMMcInstaller>>install - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [] in SMLoader>>installPackageRelease: {[(SMInstaller forPackageRelease: aRelease) install. myRelease = self instal...]} BlockContext>>ensure: CursorWithMask(Cursor)>>showWhile: [] in SMLoader>>installPackageRelease: {[Cursor wait showWhile: [(SMInstaller forPackageRelease: aRelease) install...]} BlockContext>>on:do: SMLoader>>installPackageRelease: SMLoader>>installPackageRelease SMLoader>>perform:orSendTo: [] in MenuItemMorph>>invokeWithEvent: {[(selArgCount := selector numArgs) = 0 ifTrue: [target perform: selector] ...]} BlockContext>>ensure: CursorWithMask(Cursor)>>showWhile: MenuItemMorph>>invokeWithEvent: MenuItemMorph>>mouseUp: MenuItemMorph>>handleMouseUp: MouseButtonEvent>>sentTo: MenuItemMorph(Morph)>>handleEvent: MorphicEventDispatcher>>dispatchDefault:with: MorphicEventDispatcher>>dispatchEvent:with: MenuItemMorph(Morph)>>processEvent:using: MorphicEventDispatcher>>dispatchDefault:with: MorphicEventDispatcher>>dispatchEvent:with: MenuMorph(Morph)>>processEvent:using: MenuMorph(Morph)>>processEvent: MenuMorph>>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...]} Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. false] whileFalse. nil]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]}
Thanks for any help! Happy New Year :-)
Paulo Sergio.
packages@lists.squeakfoundation.org