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