1.3 OneCick with Cog VM

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
31 messages Options
12
Reply | Threaded
Open this post in threaded view
|

1.3 OneCick with Cog VM

John Toohey
Hi,
Is there a 1.3 OneClick build available with the Cog VM, or should I
just down load the linux and OSX Cog builds from the Jenkins server? I
often run into problems with having different VMs/Plugin on different
servers, and like the idea of having both Liux and OSX supported in
one package, where I can just update the image.

--
~JT

Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Marcus Denker-4

On Sep 8, 2011, at 3:59 PM, John Toohey wrote:

> Hi,
> Is there a 1.3 OneClick build available with the Cog VM, or should I
> just down load the linux and OSX Cog builds from the Jenkins server?

The script on the hudson is old... we need to update it. And move everything
from hudson to jenkins. And, and...

So for now:

        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip

hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/

> often run into problems with having different VMs/Plugin on different
> servers, and like the idea of having both Liux and OSX supported in
> one package, where I can just update the image.





--
Marcus Denker -- http://marcusdenker.de


Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
Many thanks. Unfortunately this version throws errors when I try to
load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
try to build my image. Can you tell me what is the *most* stable
version that I can use with Cog and SS 3.x?

On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:

>
> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>
>> Hi,
>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>> just down load the linux and OSX Cog builds from the Jenkins server?
>
> The script on the hudson is old... we need to update it. And move everything
> from hudson to jenkins. And, and...
>
> So for now:
>
>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>
> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>
>> often run into problems with having different VMs/Plugin on different
>> servers, and like the idea of having both Liux and OSX supported in
>> one package, where I can just update the image.
>
>
>
>
>
> --
> Marcus Denker -- http://marcusdenker.de
>
>
>



--
~JT

Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Marcus Denker-4
In reply to this post by Marcus Denker-4

On Sep 8, 2011, at 4:19 PM, John Toohey wrote:

> Many thanks. Unfortunately this version throws errors when I try to
> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
> try to build my image. Can you tell me what is the *most* stable
> version that I can use with Cog and SS 3.x?
>

This one. I have never seen that error. So.. a case for the bug tracker.

        http://code.google.com/p/pharo/issues

> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>
>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>
>>> Hi,
>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>
>> The script on the hudson is old... we need to update it. And move everything
>> from hudson to jenkins. And, and...
>>
>> So for now:
>>
>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>
>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>
>>> often run into problems with having different VMs/Plugin on different
>>> servers, and like the idea of having both Liux and OSX supported in
>>> one package, where I can just update the image.
>>
>>
>>
>>
>>
>> --
>> Marcus Denker -- http://marcusdenker.de
>>
>>
>>
>
>
>
> --
> ~JT
>

--
Marcus Denker -- http://marcusdenker.de


Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
Bug tracker tells me that my comment is too long! Anyhow here is what
I tried to post. Would love a solution as all my sources code is now
locked out of Pharo.

Pharo image: Pharo 1.3
Pharo core version: Latest update: #13298
Virtual machine used: 1.3 One-Click with Cog
Description

When I open MC and create a package for my code, I get an "Illegal
UTF-8 encoding" error when I try to open any of my packages.

8 September 2011 11:49:57 am

VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
VMMaker-oscog.54] Pharo Development 1.1
Image: Pharo1.3 [Latest update: #13298]

ZnUTF8Encoder(Object)>>error:
        Receiver: a ZnUTF8Encoder
        Arguments and temporary variables:
                aString: 'illegal UTF-8 encoding'
        Receiver's instance variables:
a ZnUTF8Encoder

[| nextByte | ((nextByte := stream next) bitAnd: 192)
                        = 128
                ifTrue: [code := (code bitShift: 6)
                                                + (nextByte bitAnd: 63)]
                ifFalse: [self error: 'illegal UTF-8 encoding']] in
ZnUTF8Encoder>>nextFromStream:
        Receiver: a ZnUTF8Encoder
        Arguments and temporary variables:
                stream: a ZnLimitedReadStream
                code: #(26)
                nextByte: 94
        Receiver's instance variables:
a ZnUTF8Encoder

ZnUTF8Encoder>>nextFromStream:
        Receiver: a ZnUTF8Encoder
        Arguments and temporary variables:
                stream: a ZnLimitedReadStream
                byte: 218
                next: [| nextByte | ((nextByte := stream next) bitAnd: 192)
                        = 128
                ifTrue: ...etc...
                code: #(26)
        Receiver's instance variables:
a ZnUTF8Encoder

[:stringStream |
[readStream atEnd]
                whileFalse: [stringStream
                                nextPut: (encoder nextFromStream: readStream)].
        nil] in ZnStringEntity>>readLimitedFrom:
        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
        Arguments and temporary variables:
                readStream: a WriteStream 'PK'
                stringStream: a ZnLimitedReadStream
        Receiver's instance variables:
                contentType: text/plain;charset=UTF-8
                contentLength: 9025
                string: nil
                encoder: a ZnUTF8Encoder

String class(SequenceableCollection class)>>new:streamContents:
        Receiver: String
        Arguments and temporary variables:
                newSize: 100
                blockWithArg: [:stringStream |
[readStream atEnd]
                whileFalse: [stringStream
...etc...
                stream: a WriteStream 'PK'
        Receiver's instance variables:
                superclass: ArrayedCollection
                methodDict: a MethodDictionary(size 267)
                format: 2
                instanceVariables: nil
                organization: ('*Compiler-Kernel' inviolateInstanceVariableNames
isLegalInstVar...etc...
                subclasses: {ByteString. WideString. Symbol}
                name: #String
                classPool: a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16...etc...
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Collections-Strings'
                traitComposition: {}
                localSelectors: nil

String class(SequenceableCollection class)>>streamContents:
        Receiver: String
        Arguments and temporary variables:
                blockWithArg: [:stringStream |
[readStream atEnd]
                whileFalse: [stringStream
...etc...
        Receiver's instance variables:
                superclass: ArrayedCollection
                methodDict: a MethodDictionary(size 267)
                format: 2
                instanceVariables: nil
                organization: ('*Compiler-Kernel' inviolateInstanceVariableNames
isLegalInstVar...etc...
                subclasses: {ByteString. WideString. Symbol}
                name: #String
                classPool: a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16...etc...
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Collections-Strings'
                traitComposition: {}
                localSelectors: nil

ZnStringEntity>>readLimitedFrom:
        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
        Arguments and temporary variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                readStream: a ZnLimitedReadStream
                newString: nil
        Receiver's instance variables:
                contentType: text/plain;charset=UTF-8
                contentLength: 9025
                string: nil
                encoder: a ZnUTF8Encoder

ZnStringEntity>>readFrom:
        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
        Arguments and temporary variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
        Receiver's instance variables:
                contentType: text/plain;charset=UTF-8
                contentLength: 9025
                string: nil
                encoder: a ZnUTF8Encoder

ZnEntity class>>readFrom:usingType:andLength:
        Receiver: ZnEntity
        Arguments and temporary variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                mimeType: text/plain;charset=UTF-8
                length: 9025
                newEntity: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
        Receiver's instance variables:
                superclass: Object
                methodDict: a
MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
Com...etc...
                format: 134
                instanceVariables: #('contentType' 'contentLength')
                organization: ('accessing' contentLength contentLength: contentType
contentType...etc...
                subclasses: {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
ZnMultiPartF...etc...
                name: #ZnEntity
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Zinc-HTTP-Core'
                traitComposition: {}
                localSelectors: nil

ZnEntityReader>>readEntityFromStream
        Receiver: a ZnEntityReader
        Arguments and temporary variables:
                entity: nil
                decodedEntityLength: 9025
                chunkedStream: nil
        Receiver's instance variables:
                headers: a ZnHeaders('Accept-Ranges'->'bytes'
'Cache-Control'->'max-age=-543414...etc...
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                streaming: nil
                allowReadingUpToEnd: true

ZnEntityReader>>readEntity
        Receiver: a ZnEntityReader
        Arguments and temporary variables:
                entity: nil
        Receiver's instance variables:
                headers: a ZnHeaders('Accept-Ranges'->'bytes'
'Cache-Control'->'max-age=-543414...etc...
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                streaming: nil
                allowReadingUpToEnd: true

ZnResponse(ZnMessage)>>readFrom:
        Receiver: a ZnResponse(200 OK)
        Arguments and temporary variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
        Receiver's instance variables:
                headers: a ZnHeaders('Accept-Ranges'->'bytes'
'Cache-Control'->'max-age=-543414...etc...
                entity: nil
                statusLine: a ZnStatusLine(200 OK)

ZnResponse class(ZnMessage class)>>readFrom:
        Receiver: ZnResponse
        Arguments and temporary variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
        Receiver's instance variables:
                superclass: ZnMessage
                methodDict: a
MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
Compile...etc...
                format: 136
                instanceVariables: #('statusLine')
                organization: ('accessing' addCookie: code location location:
setKeepAliveFor: ...etc...
                subclasses: nil
                name: #ZnResponse
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Zinc-HTTP-Core'
                traitComposition: {}
                localSelectors: nil

ZnClient class>>execute:on:
        Receiver: ZnClient
        Arguments and temporary variables:
                request: a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
        Receiver's instance variables:
                superclass: Object
                methodDict: a MethodDictionary()
                format: 2
                instanceVariables: nil
                organization: ('as yet unclassified')

                subclasses: nil
                name: #ZnClient
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Zinc-HTTP-Client-Server'
                traitComposition: {}
                localSelectors: nil

[ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
        Receiver: ZnHTTPSocketFacade
        Arguments and temporary variables:
                request: a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
        Receiver's instance variables:
                superclass: Object
                methodDict: a MethodDictionary()
                format: 2
                instanceVariables: nil
                organization: ('as yet unclassified')

                subclasses: nil
                name: #ZnHTTPSocketFacade
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Zinc-HTTP-Client-Server'
                traitComposition: {}
                localSelectors: nil

BlockClosure>>ensure:
        Receiver: [ZnClient execute: request on: stream]
        Arguments and temporary variables:
                aBlock: [stream close]
                complete: nil
                returnValue: nil
        Receiver's instance variables:
                outerContext: ZnHTTPSocketFacade class>>execute:on:
                startpc: 42
                numArgs: 0

ZnHTTPSocketFacade class>>execute:on:
        Receiver: ZnHTTPSocketFacade
        Arguments and temporary variables:
                request: a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
        Receiver's instance variables:
                superclass: Object
                methodDict: a MethodDictionary()
                format: 2
                instanceVariables: nil
                organization: ('as yet unclassified')

                subclasses: nil
                name: #ZnHTTPSocketFacade
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Zinc-HTTP-Client-Server'
                traitComposition: {}
                localSelectors: nil

ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
        Receiver: ZnHTTPSocketFacade
        Arguments and temporary variables:
                urlObject: 'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
                queryArguments: nil
                username: 'jt'
                password: 'trimixisg4u'
                url: http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                request: a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
                response: nil
        Receiver's instance variables:
                superclass: Object
                methodDict: a MethodDictionary()
                format: 2
                instanceVariables: nil
                organization: ('as yet unclassified')

                subclasses: nil
                name: #ZnHTTPSocketFacade
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Zinc-HTTP-Client-Server'
                traitComposition: {}
                localSelectors: nil

HTTPSocket class>>httpGet:args:user:passwd:
        Receiver: HTTPSocket
        Arguments and temporary variables:
                url: 'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                queryArguments: nil
                username: 'jt'
                password: 'trimixisg4u'
        Receiver's instance variables:
                superclass: Socket
                methodDict: a
MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
Compi...etc...
                format: 144
                instanceVariables: #('headerTokens' 'headers' 'responseCode')
                organization: ('accessing' contentType contentType: contentsLength:
getHeader: ...etc...
                subclasses: nil
                name: #HTTPSocket
                classPool: a Dictionary(#HTTPBlabEmail->''
#HTTPProxyCredentials->'' #HTTPProxy...etc...
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Network-Protocols'
                traitComposition: nil
                localSelectors: nil

[contents := HTTPSocket
                                httpGet: (self urlForFileNamed: aString)
                                args: nil
                                user: self user
                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
        Arguments and temporary variables:
                aString: 'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                contents: #(nil)
        Receiver's instance variables:
                creationTemplate: 'MCHttpRepository
        location: ''http://git.parspro.com/mc''
        u...etc...
                storeDiffs: nil
                cache: a Dictionary()
                allFileNames: nil
                location: 'http://git.parspro.com/mc'
                user: 'jt'
                password: 'trimixisg4u'
                readerCache: a Dictionary()

[workBlock value] in [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex total
                                        ifNil: [true]
                                        ifNotNil: [ex amount == nil])
                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
                                                        or: [ex total = ex amount])
                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
                                                        nextUpdateTime := Time millisecondClockValue + 100]].
                        ex resume]] in MCHttpRepository>>displayProgress:during:
        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
        Arguments and temporary variables:
                workBlock: [contents := HTTPSocket
                                httpGet: (self urlForFileNamed: aString)...etc...
        Receiver's instance variables:
                creationTemplate: 'MCHttpRepository
        location: ''http://git.parspro.com/mc''
        u...etc...
                storeDiffs: nil
                cache: a Dictionary()
                allFileNames: nil
                location: 'http://git.parspro.com/mc'
                user: 'jt'
                password: 'trimixisg4u'
                readerCache: a Dictionary()

BlockClosure>>on:do:
        Receiver: [workBlock value]
        Arguments and temporary variables:
                exception: HTTPProgress
                handlerAction: [:ex |
(ex total
                        ifNil: [true]
                        ifNotNil: [ex amount == ni...etc...
                handlerActive: true
        Receiver's instance variables:
                outerContext: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex...etc...
                startpc: 114
                numArgs: 0

[:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex total
                                        ifNil: [true]
                                        ifNotNil: [ex amount == nil])
                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
                                                        or: [ex total = ex amount])
                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
                                                        nextUpdateTime := Time millisecondClockValue + 100]].
                        ex resume]] in MCHttpRepository>>displayProgress:during:
        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
        Arguments and temporary variables:
                workBlock: [:barValArg |
| barVal return newBarSize |
barVal := barValArg.
        re...etc...
                nextUpdateTime: [contents := HTTPSocket
                                httpGet: (self urlForFileNamed: aSt...etc...
                bar: #(0)
        Receiver's instance variables:
                creationTemplate: 'MCHttpRepository
        location: ''http://git.parspro.com/mc''
        u...etc...
                storeDiffs: nil
                cache: a Dictionary()
                allFileNames: nil
                location: 'http://git.parspro.com/mc'
                user: 'jt'
                password: 'trimixisg4u'
                readerCache: a Dictionary()

[result := workBlock value: progress] in [[result := workBlock value: progress]
                on: ProgressNotification
                do: [:ex |
                        ex extraParam isString
                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
ex extraParam].
                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
        Receiver: ProgressInitiationException
        Arguments and temporary variables:
                progress: [:barValArg |
| barVal return newBarSize |
barVal := barValArg.
        ret...etc...
                result: #(nil)
        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: a MorphicUIManager
                signalContext: ProgressInitiationException(Exception)>>signal
                handlerContext: nil
                outerContext: nil
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
                maxVal: 1.0
                minVal: 0.0
                aPoint: 960@589
                progressTitle: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'

BlockClosure>>on:do:
        Receiver: [result := workBlock value: progress]
        Arguments and temporary variables:
                exception: ProgressNotification
                handlerAction: [:ex |
ex extraParam isString
                ifTrue: [SystemProgressMorph un...etc...
                handlerActive: true
        Receiver's instance variables:
                outerContext: [[result := workBlock value: progress]
                on: ProgressNotification...etc...
                startpc: 87
                numArgs: 0

[[result := workBlock value: progress]
                on: ProgressNotification
                do: [:ex |
                        ex extraParam isString
                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
ex extraParam].
                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
        Receiver: ProgressInitiationException
        Arguments and temporary variables:
                progress: [:barValArg |
| barVal return newBarSize |
barVal := barValArg.
        ret...etc...
                result: #(nil)
        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: a MorphicUIManager
                signalContext: ProgressInitiationException(Exception)>>signal
                handlerContext: nil
                outerContext: nil
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
                maxVal: 1.0
                minVal: 0.0
                aPoint: 960@589
                progressTitle: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'

BlockClosure>>ensure:
        Receiver: [[result := workBlock value: progress]
                on: ProgressNotification
                do: [:ex |
                        ex extr...etc...
        Arguments and temporary variables:
                aBlock: [SystemProgressMorph close: progress]
                complete: nil
                returnValue: nil
        Receiver's instance variables:
                outerContext: ProgressInitiationException>>defaultMorphicAction
                startpc: 81
                numArgs: 0

ProgressInitiationException>>defaultMorphicAction
        Receiver: ProgressInitiationException
        Arguments and temporary variables:
                progress: [:barValArg |
| barVal return newBarSize |
barVal := barValArg.
        ret...etc...
                result: #(nil)
        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: a MorphicUIManager
                signalContext: ProgressInitiationException(Exception)>>signal
                handlerContext: nil
                outerContext: nil
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
                maxVal: 1.0
                minVal: 0.0
                aPoint: 960@589
                progressTitle: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'

MorphicUIManager>>progressInitiationExceptionDefaultAction:
        Receiver: a MorphicUIManager
        Arguments and temporary variables:
                anException: ProgressInitiationException
        Receiver's instance variables:
                interactiveParser: nil

ProgressInitiationException>>defaultAction
        Receiver: ProgressInitiationException
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: a MorphicUIManager
                signalContext: ProgressInitiationException(Exception)>>signal
                handlerContext: nil
                outerContext: nil
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
                maxVal: 1.0
                minVal: 0.0
                aPoint: 960@589
                progressTitle: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'

UndefinedObject>>handleSignal:
        Receiver: nil
        Arguments and temporary variables:
                exception: ProgressInitiationException
        Receiver's instance variables:
nil

MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
                exception: ProgressInitiationException
                val: nil
        Receiver's instance variables:
                sender: PasteUpMorph>>becomeActiveDuring:
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [aBlock value]

ProgressInitiationException(Exception)>>signal
        Receiver: ProgressInitiationException
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: a MorphicUIManager
                signalContext: ProgressInitiationException(Exception)>>signal
                handlerContext: nil
                outerContext: nil
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
                maxVal: 1.0
                minVal: 0.0
                aPoint: 960@589
                progressTitle: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'

ProgressInitiationException>>display:at:from:to:during:
        Receiver: ProgressInitiationException
        Arguments and temporary variables:
                argString: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                argPoint: 960@589
                argMinVal: 0.0
                argMaxVal: 1.0
                argWorkBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex...etc...
        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: a MorphicUIManager
                signalContext: ProgressInitiationException(Exception)>>signal
                handlerContext: nil
                outerContext: nil
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
                maxVal: 1.0
                minVal: 0.0
                aPoint: 960@589
                progressTitle: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'

ProgressInitiationException class>>display:at:from:to:during:
        Receiver: ProgressInitiationException
        Arguments and temporary variables:
                aString: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                aPoint: 960@589
                minVal: 0.0
                maxVal: 1.0
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
        Receiver's instance variables:
                superclass: Exception
                methodDict: a
MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
                format: 152
                instanceVariables: #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
                organization: ('*Morphic' defaultMorphicAction)
('accessing' maxVal minVal poin...etc...
                subclasses: nil
                name: #ProgressInitiationException
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'UIManager-Support'
                traitComposition: nil
                localSelectors: nil

MorphicUIManager>>displayProgress:at:from:to:during:
        Receiver: a MorphicUIManager
        Arguments and temporary variables:
                titleString: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                aPoint: 960@589
                minVal: 0.0
                maxVal: 1.0
                workBlock: [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex to...etc...
        Receiver's instance variables:
                interactiveParser: nil

MCHttpRepository>>displayProgress:during:
        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
        Arguments and temporary variables:
                label: 'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                workBlock: [contents := HTTPSocket
                                httpGet: (self urlForFileNamed: aString)...etc...
                nextUpdateTime: #(0)
        Receiver's instance variables:
                creationTemplate: 'MCHttpRepository
        location: ''http://git.parspro.com/mc''
        u...etc...
                storeDiffs: nil
                cache: a Dictionary()
                allFileNames: nil
                location: 'http://git.parspro.com/mc'
                user: 'jt'
                password: 'trimixisg4u'
                readerCache: a Dictionary()

MCHttpRepository>>readStreamForFileNamed:do:
        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
        Arguments and temporary variables:
                aString: 'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                aBlock: [:s | (MCVersionReader readerClassForFileNamed: aString)
                ifNotNil: [:...etc...
                contents: #(nil)
        Receiver's instance variables:
                creationTemplate: 'MCHttpRepository
        location: ''http://git.parspro.com/mc''
        u...etc...
                storeDiffs: nil
                cache: a Dictionary()
                allFileNames: nil
                location: 'http://git.parspro.com/mc'
                user: 'jt'
                password: 'trimixisg4u'
                readerCache: a Dictionary()

MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
        Arguments and temporary variables:
                aString: 'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
                aBlock: [:r | r
                ifNotNil: [readerCache at: aString put: r]]
        Receiver's instance variables:
                creationTemplate: 'MCHttpRepository
        location: ''http://git.parspro.com/mc''
        u...etc...
                storeDiffs: nil
                cache: a Dictionary()
                allFileNames: nil
                location: 'http://git.parspro.com/mc'
                user: 'jt'
                password: 'trimixisg4u'
                readerCache: a Dictionary()


--- The full stack ---
ZnUTF8Encoder(Object)>>error:
[| nextByte | ((nextByte := stream next) bitAnd: 192)
                        = 128
                ifTrue: [code := (code bitShift: 6)
                                                + (nextByte bitAnd: 63)]
                ifFalse: [self error: 'illegal UTF-8 encoding']] in
ZnUTF8Encoder>>nextFromStream:
ZnUTF8Encoder>>nextFromStream:
[:stringStream |
[readStream atEnd]
                whileFalse: [stringStream
                                nextPut: (encoder nextFromStream: readStream)].
        nil] in ZnStringEntity>>readLimitedFrom:
String class(SequenceableCollection class)>>new:streamContents:
String class(SequenceableCollection class)>>streamContents:
ZnStringEntity>>readLimitedFrom:
ZnStringEntity>>readFrom:
ZnEntity class>>readFrom:usingType:andLength:
ZnEntityReader>>readEntityFromStream
ZnEntityReader>>readEntity
ZnResponse(ZnMessage)>>readFrom:
ZnResponse class(ZnMessage class)>>readFrom:
ZnClient class>>execute:on:
[ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
BlockClosure>>ensure:
ZnHTTPSocketFacade class>>execute:on:
ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
HTTPSocket class>>httpGet:args:user:passwd:
[contents := HTTPSocket
                                httpGet: (self urlForFileNamed: aString)
                                args: nil
                                user: self user
                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
[workBlock value] in [:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex total
                                        ifNil: [true]
                                        ifNotNil: [ex amount == nil])
                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
                                                        or: [ex total = ex amount])
                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
                                                        nextUpdateTime := Time millisecondClockValue + 100]].
                        ex resume]] in MCHttpRepository>>displayProgress:during:
BlockClosure>>on:do:
[:bar | [workBlock value]
                on: HTTPProgress
                do: [:ex |
                        (ex total
                                        ifNil: [true]
                                        ifNotNil: [ex amount == nil])
                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
                                                        or: [ex total = ex amount])
                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
                                                        nextUpdateTime := Time millisecondClockValue + 100]].
                        ex resume]] in MCHttpRepository>>displayProgress:during:
[result := workBlock value: progress] in [[result := workBlock value: progress]
                on: ProgressNotification
                do: [:ex |
                        ex extraParam isString
                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
ex extraParam].
                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
BlockClosure>>on:do:
[[result := workBlock value: progress]
                on: ProgressNotification
                do: [:ex |
                        ex extraParam isString
                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
ex extraParam].
                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
BlockClosure>>ensure:
ProgressInitiationException>>defaultMorphicAction
MorphicUIManager>>progressInitiationExceptionDefaultAction:
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
MorphicUIManager>>displayProgress:at:from:to:during:
MCHttpRepository>>displayProgress:during:
MCHttpRepository>>readStreamForFileNamed:do:
MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
 - - - - - - - - - - - - - - -
                        - - - - - - - - - - - - - - - - - -
[self resizeCache: readerCache.
        super
                versionReaderForFileNamed: aString
                do: [:r | r
                                ifNotNil: [readerCache at: aString put: r]]] in
MCHttpRepository>>versionReaderForFileNamed:
Dictionary>>at:ifAbsent:
MCHttpRepository>>versionReaderForFileNamed:
MCHttpRepository>>versionReaderForFileNamed:do:
MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
[self loadVersionFromFileNamed: aString] in
MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
Dictionary>>at:ifAbsent:
MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
[version := repository versionFromFileNamed: selectedVersion] in
MCFileRepositoryInspector>>version
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCFileRepositoryInspector>>version
MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
MCFileRepositoryInspector(MCVersionInspector)>>summary
PluggableTextMorph>>getText
PluggableTextMorph>>update:
[:aDependent | aDependent update: aParameter] in
MCFileRepositoryInspector(Object)>>changed:
DependentsArray>>do:
MCFileRepositoryInspector(Object)>>changed:
MCFileRepositoryInspector>>versionSelection:
PluggableListMorph>>changeModelSelection:
PluggableListMorph>>mouseUpOnSingle:
PluggableListMorph>>mouseUp:
PluggableListMorph(Morph)>>handleMouseUp:
MouseButtonEvent>>sentTo:
PluggableListMorph(Morph)>>handleEvent:
MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
PluggableListMorph(Morph)>>processEvent:using:
PluggableListMorph(Morph)>>processEvent:
PluggableListMorph>>handleFocusEvent:
[ActiveHand := self.
        ActiveEvent := anEvent.
        result := focusHolder
                                handleFocusEvent: (anEvent
                                                transformedBy: (focusHolder transformedFrom: self))] in
HandMorph>>sendFocusEvent:to:clear:
[aBlock value] in PasteUpMorph>>becomeActiveDuring:
BlockClosure>>on:do:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendMouseEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[:h |
ActiveHand := h.
        h processEvents.
        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
Array(SequenceableCollection)>>do:
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
PasteUpMorph>>doOneCycle
[[World doOneCycle.
        Processor yield.
        false] whileFalse.
        nil] in Project class>>spawnNewProcess
[self value.
        Processor terminateActive] in BlockClosure>>newProcess




On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:

>
> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>
>> Many thanks. Unfortunately this version throws errors when I try to
>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>> try to build my image. Can you tell me what is the *most* stable
>> version that I can use with Cog and SS 3.x?
>>
>
> This one. I have never seen that error. So.. a case for the bug tracker.
>
>        http://code.google.com/p/pharo/issues
>
>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>
>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>
>>>> Hi,
>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>
>>> The script on the hudson is old... we need to update it. And move everything
>>> from hudson to jenkins. And, and...
>>>
>>> So for now:
>>>
>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>
>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>
>>>> often run into problems with having different VMs/Plugin on different
>>>> servers, and like the idea of having both Liux and OSX supported in
>>>> one package, where I can just update the image.
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Marcus Denker -- http://marcusdenker.de
>>>
>>>
>>>
>>
>>
>>
>> --
>> ~JT
>>
>
> --
> Marcus Denker -- http://marcusdenker.de
>
>
>



--
~JT

Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
If it helps I can give access to the code repo, and anyone can then
reproduce the bug.

On Thu, Sep 8, 2011 at 11:55, John Toohey <[hidden email]> wrote:

> Bug tracker tells me that my comment is too long! Anyhow here is what
> I tried to post. Would love a solution as all my sources code is now
> locked out of Pharo.
>
> Pharo image: Pharo 1.3
> Pharo core version: Latest update: #13298
> Virtual machine used: 1.3 One-Click with Cog
> Description
>
> When I open MC and create a package for my code, I get an "Illegal
> UTF-8 encoding" error when I try to open any of my packages.
>
> 8 September 2011 11:49:57 am
>
> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
> VMMaker-oscog.54] Pharo Development 1.1
> Image: Pharo1.3 [Latest update: #13298]
>
> ZnUTF8Encoder(Object)>>error:
>        Receiver: a ZnUTF8Encoder
>        Arguments and temporary variables:
>                aString:        'illegal UTF-8 encoding'
>        Receiver's instance variables:
> a ZnUTF8Encoder
>
> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>                        = 128
>                ifTrue: [code := (code bitShift: 6)
>                                                + (nextByte bitAnd: 63)]
>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
> ZnUTF8Encoder>>nextFromStream:
>        Receiver: a ZnUTF8Encoder
>        Arguments and temporary variables:
>                stream:         a ZnLimitedReadStream
>                code:   #(26)
>                nextByte:       94
>        Receiver's instance variables:
> a ZnUTF8Encoder
>
> ZnUTF8Encoder>>nextFromStream:
>        Receiver: a ZnUTF8Encoder
>        Arguments and temporary variables:
>                stream:         a ZnLimitedReadStream
>                byte:   218
>                next:   [| nextByte | ((nextByte := stream next) bitAnd: 192)
>                        = 128
>                ifTrue: ...etc...
>                code:   #(26)
>        Receiver's instance variables:
> a ZnUTF8Encoder
>
> [:stringStream |
> [readStream atEnd]
>                whileFalse: [stringStream
>                                nextPut: (encoder nextFromStream: readStream)].
>        nil] in ZnStringEntity>>readLimitedFrom:
>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>        Arguments and temporary variables:
>                readStream:     a WriteStream 'PK    '
>                stringStream:   a ZnLimitedReadStream
>        Receiver's instance variables:
>                contentType:    text/plain;charset=UTF-8
>                contentLength:  9025
>                string:         nil
>                encoder:        a ZnUTF8Encoder
>
> String class(SequenceableCollection class)>>new:streamContents:
>        Receiver: String
>        Arguments and temporary variables:
>                newSize:        100
>                blockWithArg:   [:stringStream |
> [readStream atEnd]
>                whileFalse: [stringStream
> ...etc...
>                stream:         a WriteStream 'PK    '
>        Receiver's instance variables:
>                superclass:     ArrayedCollection
>                methodDict:     a MethodDictionary(size 267)
>                format:         2
>                instanceVariables:      nil
>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
> isLegalInstVar...etc...
>                subclasses:     {ByteString. WideString. Symbol}
>                name:   #String
>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
> 13 14 15 16...etc...
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Collections-Strings'
>                traitComposition:       {}
>                localSelectors:         nil
>
> String class(SequenceableCollection class)>>streamContents:
>        Receiver: String
>        Arguments and temporary variables:
>                blockWithArg:   [:stringStream |
> [readStream atEnd]
>                whileFalse: [stringStream
> ...etc...
>        Receiver's instance variables:
>                superclass:     ArrayedCollection
>                methodDict:     a MethodDictionary(size 267)
>                format:         2
>                instanceVariables:      nil
>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
> isLegalInstVar...etc...
>                subclasses:     {ByteString. WideString. Symbol}
>                name:   #String
>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
> 13 14 15 16...etc...
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Collections-Strings'
>                traitComposition:       {}
>                localSelectors:         nil
>
> ZnStringEntity>>readLimitedFrom:
>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>        Arguments and temporary variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                readStream:     a ZnLimitedReadStream
>                newString:      nil
>        Receiver's instance variables:
>                contentType:    text/plain;charset=UTF-8
>                contentLength:  9025
>                string:         nil
>                encoder:        a ZnUTF8Encoder
>
> ZnStringEntity>>readFrom:
>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>        Arguments and temporary variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>        Receiver's instance variables:
>                contentType:    text/plain;charset=UTF-8
>                contentLength:  9025
>                string:         nil
>                encoder:        a ZnUTF8Encoder
>
> ZnEntity class>>readFrom:usingType:andLength:
>        Receiver: ZnEntity
>        Arguments and temporary variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                mimeType:       text/plain;charset=UTF-8
>                length:         9025
>                newEntity:      a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>        Receiver's instance variables:
>                superclass:     Object
>                methodDict:     a
> MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
> Com...etc...
>                format:         134
>                instanceVariables:      #('contentType' 'contentLength')
>                organization:   ('accessing' contentLength contentLength: contentType
> contentType...etc...
>                subclasses:     {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
> ZnMultiPartF...etc...
>                name:   #ZnEntity
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Zinc-HTTP-Core'
>                traitComposition:       {}
>                localSelectors:         nil
>
> ZnEntityReader>>readEntityFromStream
>        Receiver: a ZnEntityReader
>        Arguments and temporary variables:
>                entity:         nil
>                decodedEntityLength:    9025
>                chunkedStream:  nil
>        Receiver's instance variables:
>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
> 'Cache-Control'->'max-age=-543414...etc...
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                streaming:      nil
>                allowReadingUpToEnd:    true
>
> ZnEntityReader>>readEntity
>        Receiver: a ZnEntityReader
>        Arguments and temporary variables:
>                entity:         nil
>        Receiver's instance variables:
>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
> 'Cache-Control'->'max-age=-543414...etc...
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                streaming:      nil
>                allowReadingUpToEnd:    true
>
> ZnResponse(ZnMessage)>>readFrom:
>        Receiver: a ZnResponse(200 OK)
>        Arguments and temporary variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>        Receiver's instance variables:
>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
> 'Cache-Control'->'max-age=-543414...etc...
>                entity:         nil
>                statusLine:     a ZnStatusLine(200 OK)
>
> ZnResponse class(ZnMessage class)>>readFrom:
>        Receiver: ZnResponse
>        Arguments and temporary variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>        Receiver's instance variables:
>                superclass:     ZnMessage
>                methodDict:     a
> MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
> Compile...etc...
>                format:         136
>                instanceVariables:      #('statusLine')
>                organization:   ('accessing' addCookie: code location location:
> setKeepAliveFor: ...etc...
>                subclasses:     nil
>                name:   #ZnResponse
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Zinc-HTTP-Core'
>                traitComposition:       {}
>                localSelectors:         nil
>
> ZnClient class>>execute:on:
>        Receiver: ZnClient
>        Arguments and temporary variables:
>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>        Receiver's instance variables:
>                superclass:     Object
>                methodDict:     a MethodDictionary()
>                format:         2
>                instanceVariables:      nil
>                organization:   ('as yet unclassified')
>
>                subclasses:     nil
>                name:   #ZnClient
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Zinc-HTTP-Client-Server'
>                traitComposition:       {}
>                localSelectors:         nil
>
> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>        Receiver: ZnHTTPSocketFacade
>        Arguments and temporary variables:
>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>        Receiver's instance variables:
>                superclass:     Object
>                methodDict:     a MethodDictionary()
>                format:         2
>                instanceVariables:      nil
>                organization:   ('as yet unclassified')
>
>                subclasses:     nil
>                name:   #ZnHTTPSocketFacade
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Zinc-HTTP-Client-Server'
>                traitComposition:       {}
>                localSelectors:         nil
>
> BlockClosure>>ensure:
>        Receiver: [ZnClient execute: request on: stream]
>        Arguments and temporary variables:
>                aBlock:         [stream close]
>                complete:       nil
>                returnValue:    nil
>        Receiver's instance variables:
>                outerContext:   ZnHTTPSocketFacade class>>execute:on:
>                startpc:        42
>                numArgs:        0
>
> ZnHTTPSocketFacade class>>execute:on:
>        Receiver: ZnHTTPSocketFacade
>        Arguments and temporary variables:
>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>        Receiver's instance variables:
>                superclass:     Object
>                methodDict:     a MethodDictionary()
>                format:         2
>                instanceVariables:      nil
>                organization:   ('as yet unclassified')
>
>                subclasses:     nil
>                name:   #ZnHTTPSocketFacade
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Zinc-HTTP-Client-Server'
>                traitComposition:       {}
>                localSelectors:         nil
>
> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>        Receiver: ZnHTTPSocketFacade
>        Arguments and temporary variables:
>                urlObject:      'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
>                queryArguments:         nil
>                username:       'jt'
>                password:       'trimixisg4u'
>                url:    http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>                response:       nil
>        Receiver's instance variables:
>                superclass:     Object
>                methodDict:     a MethodDictionary()
>                format:         2
>                instanceVariables:      nil
>                organization:   ('as yet unclassified')
>
>                subclasses:     nil
>                name:   #ZnHTTPSocketFacade
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Zinc-HTTP-Client-Server'
>                traitComposition:       {}
>                localSelectors:         nil
>
> HTTPSocket class>>httpGet:args:user:passwd:
>        Receiver: HTTPSocket
>        Arguments and temporary variables:
>                url:    'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                queryArguments:         nil
>                username:       'jt'
>                password:       'trimixisg4u'
>        Receiver's instance variables:
>                superclass:     Socket
>                methodDict:     a
> MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
> Compi...etc...
>                format:         144
>                instanceVariables:      #('headerTokens' 'headers' 'responseCode')
>                organization:   ('accessing' contentType contentType: contentsLength:
> getHeader: ...etc...
>                subclasses:     nil
>                name:   #HTTPSocket
>                classPool:      a Dictionary(#HTTPBlabEmail->''
> #HTTPProxyCredentials->'' #HTTPProxy...etc...
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Network-Protocols'
>                traitComposition:       nil
>                localSelectors:         nil
>
> [contents := HTTPSocket
>                                httpGet: (self urlForFileNamed: aString)
>                                args: nil
>                                user: self user
>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>        Arguments and temporary variables:
>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                contents:       #(nil)
>        Receiver's instance variables:
>                creationTemplate:       'MCHttpRepository
>        location: ''http://git.parspro.com/mc''
>        u...etc...
>                storeDiffs:     nil
>                cache:  a Dictionary()
>                allFileNames:   nil
>                location:       'http://git.parspro.com/mc'
>                user:   'jt'
>                password:       'trimixisg4u'
>                readerCache:    a Dictionary()
>
> [workBlock value] in [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex total
>                                        ifNil: [true]
>                                        ifNotNil: [ex amount == nil])
>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>                                                        or: [ex total = ex amount])
>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>        Arguments and temporary variables:
>                workBlock:      [contents := HTTPSocket
>                                httpGet: (self urlForFileNamed: aString)...etc...
>        Receiver's instance variables:
>                creationTemplate:       'MCHttpRepository
>        location: ''http://git.parspro.com/mc''
>        u...etc...
>                storeDiffs:     nil
>                cache:  a Dictionary()
>                allFileNames:   nil
>                location:       'http://git.parspro.com/mc'
>                user:   'jt'
>                password:       'trimixisg4u'
>                readerCache:    a Dictionary()
>
> BlockClosure>>on:do:
>        Receiver: [workBlock value]
>        Arguments and temporary variables:
>                exception:      HTTPProgress
>                handlerAction:  [:ex |
> (ex total
>                        ifNil: [true]
>                        ifNotNil: [ex amount == ni...etc...
>                handlerActive:  true
>        Receiver's instance variables:
>                outerContext:   [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex...etc...
>                startpc:        114
>                numArgs:        0
>
> [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex total
>                                        ifNil: [true]
>                                        ifNotNil: [ex amount == nil])
>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>                                                        or: [ex total = ex amount])
>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>        Arguments and temporary variables:
>                workBlock:      [:barValArg |
> | barVal return newBarSize |
> barVal := barValArg.
>        re...etc...
>                nextUpdateTime:         [contents := HTTPSocket
>                                httpGet: (self urlForFileNamed: aSt...etc...
>                bar:    #(0)
>        Receiver's instance variables:
>                creationTemplate:       'MCHttpRepository
>        location: ''http://git.parspro.com/mc''
>        u...etc...
>                storeDiffs:     nil
>                cache:  a Dictionary()
>                allFileNames:   nil
>                location:       'http://git.parspro.com/mc'
>                user:   'jt'
>                password:       'trimixisg4u'
>                readerCache:    a Dictionary()
>
> [result := workBlock value: progress] in [[result := workBlock value: progress]
>                on: ProgressNotification
>                do: [:ex |
>                        ex extraParam isString
>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
> ex extraParam].
>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>                progress:       [:barValArg |
> | barVal return newBarSize |
> barVal := barValArg.
>        ret...etc...
>                result:         #(nil)
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       a MorphicUIManager
>                signalContext:  ProgressInitiationException(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>                maxVal:         1.0
>                minVal:         0.0
>                aPoint:         960@589
>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>
> BlockClosure>>on:do:
>        Receiver: [result := workBlock value: progress]
>        Arguments and temporary variables:
>                exception:      ProgressNotification
>                handlerAction:  [:ex |
> ex extraParam isString
>                ifTrue: [SystemProgressMorph un...etc...
>                handlerActive:  true
>        Receiver's instance variables:
>                outerContext:   [[result := workBlock value: progress]
>                on: ProgressNotification...etc...
>                startpc:        87
>                numArgs:        0
>
> [[result := workBlock value: progress]
>                on: ProgressNotification
>                do: [:ex |
>                        ex extraParam isString
>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
> ex extraParam].
>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>                progress:       [:barValArg |
> | barVal return newBarSize |
> barVal := barValArg.
>        ret...etc...
>                result:         #(nil)
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       a MorphicUIManager
>                signalContext:  ProgressInitiationException(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>                maxVal:         1.0
>                minVal:         0.0
>                aPoint:         960@589
>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>
> BlockClosure>>ensure:
>        Receiver: [[result := workBlock value: progress]
>                on: ProgressNotification
>                do: [:ex |
>                        ex extr...etc...
>        Arguments and temporary variables:
>                aBlock:         [SystemProgressMorph close: progress]
>                complete:       nil
>                returnValue:    nil
>        Receiver's instance variables:
>                outerContext:   ProgressInitiationException>>defaultMorphicAction
>                startpc:        81
>                numArgs:        0
>
> ProgressInitiationException>>defaultMorphicAction
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>                progress:       [:barValArg |
> | barVal return newBarSize |
> barVal := barValArg.
>        ret...etc...
>                result:         #(nil)
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       a MorphicUIManager
>                signalContext:  ProgressInitiationException(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>                maxVal:         1.0
>                minVal:         0.0
>                aPoint:         960@589
>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>
> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>        Receiver: a MorphicUIManager
>        Arguments and temporary variables:
>                anException:    ProgressInitiationException
>        Receiver's instance variables:
>                interactiveParser:      nil
>
> ProgressInitiationException>>defaultAction
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       a MorphicUIManager
>                signalContext:  ProgressInitiationException(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>                maxVal:         1.0
>                minVal:         0.0
>                aPoint:         960@589
>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>
> UndefinedObject>>handleSignal:
>        Receiver: nil
>        Arguments and temporary variables:
>                exception:      ProgressInitiationException
>        Receiver's instance variables:
> nil
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
>                exception:      ProgressInitiationException
>                val:    nil
>        Receiver's instance variables:
>                sender:         PasteUpMorph>>becomeActiveDuring:
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [aBlock value]
>
> ProgressInitiationException(Exception)>>signal
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       a MorphicUIManager
>                signalContext:  ProgressInitiationException(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>                maxVal:         1.0
>                minVal:         0.0
>                aPoint:         960@589
>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>
> ProgressInitiationException>>display:at:from:to:during:
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>                argString:      'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                argPoint:       960@589
>                argMinVal:      0.0
>                argMaxVal:      1.0
>                argWorkBlock:   [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex...etc...
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       a MorphicUIManager
>                signalContext:  ProgressInitiationException(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>                maxVal:         1.0
>                minVal:         0.0
>                aPoint:         960@589
>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>
> ProgressInitiationException class>>display:at:from:to:during:
>        Receiver: ProgressInitiationException
>        Arguments and temporary variables:
>                aString:        'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                aPoint:         960@589
>                minVal:         0.0
>                maxVal:         1.0
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>        Receiver's instance variables:
>                superclass:     Exception
>                methodDict:     a
> MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
>                format:         152
>                instanceVariables:      #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
>                organization:   ('*Morphic' defaultMorphicAction)
> ('accessing' maxVal minVal poin...etc...
>                subclasses:     nil
>                name:   #ProgressInitiationException
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'UIManager-Support'
>                traitComposition:       nil
>                localSelectors:         nil
>
> MorphicUIManager>>displayProgress:at:from:to:during:
>        Receiver: a MorphicUIManager
>        Arguments and temporary variables:
>                titleString:    'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                aPoint:         960@589
>                minVal:         0.0
>                maxVal:         1.0
>                workBlock:      [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex to...etc...
>        Receiver's instance variables:
>                interactiveParser:      nil
>
> MCHttpRepository>>displayProgress:during:
>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>        Arguments and temporary variables:
>                label:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                workBlock:      [contents := HTTPSocket
>                                httpGet: (self urlForFileNamed: aString)...etc...
>                nextUpdateTime:         #(0)
>        Receiver's instance variables:
>                creationTemplate:       'MCHttpRepository
>        location: ''http://git.parspro.com/mc''
>        u...etc...
>                storeDiffs:     nil
>                cache:  a Dictionary()
>                allFileNames:   nil
>                location:       'http://git.parspro.com/mc'
>                user:   'jt'
>                password:       'trimixisg4u'
>                readerCache:    a Dictionary()
>
> MCHttpRepository>>readStreamForFileNamed:do:
>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>        Arguments and temporary variables:
>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                aBlock:         [:s | (MCVersionReader readerClassForFileNamed: aString)
>                ifNotNil: [:...etc...
>                contents:       #(nil)
>        Receiver's instance variables:
>                creationTemplate:       'MCHttpRepository
>        location: ''http://git.parspro.com/mc''
>        u...etc...
>                storeDiffs:     nil
>                cache:  a Dictionary()
>                allFileNames:   nil
>                location:       'http://git.parspro.com/mc'
>                user:   'jt'
>                password:       'trimixisg4u'
>                readerCache:    a Dictionary()
>
> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>        Arguments and temporary variables:
>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>                aBlock:         [:r | r
>                ifNotNil: [readerCache at: aString put: r]]
>        Receiver's instance variables:
>                creationTemplate:       'MCHttpRepository
>        location: ''http://git.parspro.com/mc''
>        u...etc...
>                storeDiffs:     nil
>                cache:  a Dictionary()
>                allFileNames:   nil
>                location:       'http://git.parspro.com/mc'
>                user:   'jt'
>                password:       'trimixisg4u'
>                readerCache:    a Dictionary()
>
>
> --- The full stack ---
> ZnUTF8Encoder(Object)>>error:
> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>                        = 128
>                ifTrue: [code := (code bitShift: 6)
>                                                + (nextByte bitAnd: 63)]
>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
> ZnUTF8Encoder>>nextFromStream:
> ZnUTF8Encoder>>nextFromStream:
> [:stringStream |
> [readStream atEnd]
>                whileFalse: [stringStream
>                                nextPut: (encoder nextFromStream: readStream)].
>        nil] in ZnStringEntity>>readLimitedFrom:
> String class(SequenceableCollection class)>>new:streamContents:
> String class(SequenceableCollection class)>>streamContents:
> ZnStringEntity>>readLimitedFrom:
> ZnStringEntity>>readFrom:
> ZnEntity class>>readFrom:usingType:andLength:
> ZnEntityReader>>readEntityFromStream
> ZnEntityReader>>readEntity
> ZnResponse(ZnMessage)>>readFrom:
> ZnResponse class(ZnMessage class)>>readFrom:
> ZnClient class>>execute:on:
> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
> BlockClosure>>ensure:
> ZnHTTPSocketFacade class>>execute:on:
> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
> HTTPSocket class>>httpGet:args:user:passwd:
> [contents := HTTPSocket
>                                httpGet: (self urlForFileNamed: aString)
>                                args: nil
>                                user: self user
>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
> [workBlock value] in [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex total
>                                        ifNil: [true]
>                                        ifNotNil: [ex amount == nil])
>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>                                                        or: [ex total = ex amount])
>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>                        ex resume]] in MCHttpRepository>>displayProgress:during:
> BlockClosure>>on:do:
> [:bar | [workBlock value]
>                on: HTTPProgress
>                do: [:ex |
>                        (ex total
>                                        ifNil: [true]
>                                        ifNotNil: [ex amount == nil])
>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>                                                        or: [ex total = ex amount])
>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>                        ex resume]] in MCHttpRepository>>displayProgress:during:
> [result := workBlock value: progress] in [[result := workBlock value: progress]
>                on: ProgressNotification
>                do: [:ex |
>                        ex extraParam isString
>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
> ex extraParam].
>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
> BlockClosure>>on:do:
> [[result := workBlock value: progress]
>                on: ProgressNotification
>                do: [:ex |
>                        ex extraParam isString
>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
> ex extraParam].
>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
> BlockClosure>>ensure:
> ProgressInitiationException>>defaultMorphicAction
> MorphicUIManager>>progressInitiationExceptionDefaultAction:
> ProgressInitiationException>>defaultAction
> UndefinedObject>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> ProgressInitiationException(Exception)>>signal
> ProgressInitiationException>>display:at:from:to:during:
> ProgressInitiationException class>>display:at:from:to:during:
> MorphicUIManager>>displayProgress:at:from:to:during:
> MCHttpRepository>>displayProgress:during:
> MCHttpRepository>>readStreamForFileNamed:do:
> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>  - - - - - - - - - - - - - - -
>                        - - - - - - - - - - - - - - - - - -
> [self resizeCache: readerCache.
>        super
>                versionReaderForFileNamed: aString
>                do: [:r | r
>                                ifNotNil: [readerCache at: aString put: r]]] in
> MCHttpRepository>>versionReaderForFileNamed:
> Dictionary>>at:ifAbsent:
> MCHttpRepository>>versionReaderForFileNamed:
> MCHttpRepository>>versionReaderForFileNamed:do:
> MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
> [self loadVersionFromFileNamed: aString] in
> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
> Dictionary>>at:ifAbsent:
> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
> [version := repository versionFromFileNamed: selectedVersion] in
> MCFileRepositoryInspector>>version
> BlockClosure>>ensure:
> CursorWithMask(Cursor)>>showWhile:
> MCFileRepositoryInspector>>version
> MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
> MCFileRepositoryInspector(MCVersionInspector)>>summary
> PluggableTextMorph>>getText
> PluggableTextMorph>>update:
> [:aDependent | aDependent update: aParameter] in
> MCFileRepositoryInspector(Object)>>changed:
> DependentsArray>>do:
> MCFileRepositoryInspector(Object)>>changed:
> MCFileRepositoryInspector>>versionSelection:
> PluggableListMorph>>changeModelSelection:
> PluggableListMorph>>mouseUpOnSingle:
> PluggableListMorph>>mouseUp:
> PluggableListMorph(Morph)>>handleMouseUp:
> MouseButtonEvent>>sentTo:
> PluggableListMorph(Morph)>>handleEvent:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> PluggableListMorph(Morph)>>processEvent:using:
> PluggableListMorph(Morph)>>processEvent:
> PluggableListMorph>>handleFocusEvent:
> [ActiveHand := self.
>        ActiveEvent := anEvent.
>        result := focusHolder
>                                handleFocusEvent: (anEvent
>                                                transformedBy: (focusHolder transformedFrom: self))] in
> HandMorph>>sendFocusEvent:to:clear:
> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
> BlockClosure>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendMouseEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [:h |
> ActiveHand := h.
>        h processEvents.
>        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [[World doOneCycle.
>        Processor yield.
>        false] whileFalse.
>        nil] in Project class>>spawnNewProcess
> [self value.
>        Processor terminateActive] in BlockClosure>>newProcess
>
>
>
>
> On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:
>>
>> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>>
>>> Many thanks. Unfortunately this version throws errors when I try to
>>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>>> try to build my image. Can you tell me what is the *most* stable
>>> version that I can use with Cog and SS 3.x?
>>>
>>
>> This one. I have never seen that error. So.. a case for the bug tracker.
>>
>>        http://code.google.com/p/pharo/issues
>>
>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>
>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>
>>>>> Hi,
>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>
>>>> The script on the hudson is old... we need to update it. And move everything
>>>> from hudson to jenkins. And, and...
>>>>
>>>> So for now:
>>>>
>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>
>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>
>>>>> often run into problems with having different VMs/Plugin on different
>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>> one package, where I can just update the image.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Marcus Denker -- http://marcusdenker.de
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> ~JT
>>>
>>
>> --
>> Marcus Denker -- http://marcusdenker.de
>>
>>
>>
>
>
>
> --
> ~JT
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
Just tried it on Linux, and its the same. MC cannot read my source
repos. This is a little scary.

On Thu, Sep 8, 2011 at 12:44, John Toohey <[hidden email]> wrote:

> If it helps I can give access to the code repo, and anyone can then
> reproduce the bug.
>
> On Thu, Sep 8, 2011 at 11:55, John Toohey <[hidden email]> wrote:
>> Bug tracker tells me that my comment is too long! Anyhow here is what
>> I tried to post. Would love a solution as all my sources code is now
>> locked out of Pharo.
>>
>> Pharo image: Pharo 1.3
>> Pharo core version: Latest update: #13298
>> Virtual machine used: 1.3 One-Click with Cog
>> Description
>>
>> When I open MC and create a package for my code, I get an "Illegal
>> UTF-8 encoding" error when I try to open any of my packages.
>>
>> 8 September 2011 11:49:57 am
>>
>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>> VMMaker-oscog.54] Pharo Development 1.1
>> Image: Pharo1.3 [Latest update: #13298]
>>
>> ZnUTF8Encoder(Object)>>error:
>>        Receiver: a ZnUTF8Encoder
>>        Arguments and temporary variables:
>>                aString:        'illegal UTF-8 encoding'
>>        Receiver's instance variables:
>> a ZnUTF8Encoder
>>
>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>                        = 128
>>                ifTrue: [code := (code bitShift: 6)
>>                                                + (nextByte bitAnd: 63)]
>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>> ZnUTF8Encoder>>nextFromStream:
>>        Receiver: a ZnUTF8Encoder
>>        Arguments and temporary variables:
>>                stream:         a ZnLimitedReadStream
>>                code:   #(26)
>>                nextByte:       94
>>        Receiver's instance variables:
>> a ZnUTF8Encoder
>>
>> ZnUTF8Encoder>>nextFromStream:
>>        Receiver: a ZnUTF8Encoder
>>        Arguments and temporary variables:
>>                stream:         a ZnLimitedReadStream
>>                byte:   218
>>                next:   [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>                        = 128
>>                ifTrue: ...etc...
>>                code:   #(26)
>>        Receiver's instance variables:
>> a ZnUTF8Encoder
>>
>> [:stringStream |
>> [readStream atEnd]
>>                whileFalse: [stringStream
>>                                nextPut: (encoder nextFromStream: readStream)].
>>        nil] in ZnStringEntity>>readLimitedFrom:
>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>        Arguments and temporary variables:
>>                readStream:     a WriteStream 'PK    '
>>                stringStream:   a ZnLimitedReadStream
>>        Receiver's instance variables:
>>                contentType:    text/plain;charset=UTF-8
>>                contentLength:  9025
>>                string:         nil
>>                encoder:        a ZnUTF8Encoder
>>
>> String class(SequenceableCollection class)>>new:streamContents:
>>        Receiver: String
>>        Arguments and temporary variables:
>>                newSize:        100
>>                blockWithArg:   [:stringStream |
>> [readStream atEnd]
>>                whileFalse: [stringStream
>> ...etc...
>>                stream:         a WriteStream 'PK    '
>>        Receiver's instance variables:
>>                superclass:     ArrayedCollection
>>                methodDict:     a MethodDictionary(size 267)
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>> isLegalInstVar...etc...
>>                subclasses:     {ByteString. WideString. Symbol}
>>                name:   #String
>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>> 13 14 15 16...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Collections-Strings'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> String class(SequenceableCollection class)>>streamContents:
>>        Receiver: String
>>        Arguments and temporary variables:
>>                blockWithArg:   [:stringStream |
>> [readStream atEnd]
>>                whileFalse: [stringStream
>> ...etc...
>>        Receiver's instance variables:
>>                superclass:     ArrayedCollection
>>                methodDict:     a MethodDictionary(size 267)
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>> isLegalInstVar...etc...
>>                subclasses:     {ByteString. WideString. Symbol}
>>                name:   #String
>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>> 13 14 15 16...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Collections-Strings'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> ZnStringEntity>>readLimitedFrom:
>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>        Arguments and temporary variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                readStream:     a ZnLimitedReadStream
>>                newString:      nil
>>        Receiver's instance variables:
>>                contentType:    text/plain;charset=UTF-8
>>                contentLength:  9025
>>                string:         nil
>>                encoder:        a ZnUTF8Encoder
>>
>> ZnStringEntity>>readFrom:
>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>        Arguments and temporary variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>        Receiver's instance variables:
>>                contentType:    text/plain;charset=UTF-8
>>                contentLength:  9025
>>                string:         nil
>>                encoder:        a ZnUTF8Encoder
>>
>> ZnEntity class>>readFrom:usingType:andLength:
>>        Receiver: ZnEntity
>>        Arguments and temporary variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                mimeType:       text/plain;charset=UTF-8
>>                length:         9025
>>                newEntity:      a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>        Receiver's instance variables:
>>                superclass:     Object
>>                methodDict:     a
>> MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
>> Com...etc...
>>                format:         134
>>                instanceVariables:      #('contentType' 'contentLength')
>>                organization:   ('accessing' contentLength contentLength: contentType
>> contentType...etc...
>>                subclasses:     {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
>> ZnMultiPartF...etc...
>>                name:   #ZnEntity
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Zinc-HTTP-Core'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> ZnEntityReader>>readEntityFromStream
>>        Receiver: a ZnEntityReader
>>        Arguments and temporary variables:
>>                entity:         nil
>>                decodedEntityLength:    9025
>>                chunkedStream:  nil
>>        Receiver's instance variables:
>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>> 'Cache-Control'->'max-age=-543414...etc...
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                streaming:      nil
>>                allowReadingUpToEnd:    true
>>
>> ZnEntityReader>>readEntity
>>        Receiver: a ZnEntityReader
>>        Arguments and temporary variables:
>>                entity:         nil
>>        Receiver's instance variables:
>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>> 'Cache-Control'->'max-age=-543414...etc...
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                streaming:      nil
>>                allowReadingUpToEnd:    true
>>
>> ZnResponse(ZnMessage)>>readFrom:
>>        Receiver: a ZnResponse(200 OK)
>>        Arguments and temporary variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>        Receiver's instance variables:
>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>> 'Cache-Control'->'max-age=-543414...etc...
>>                entity:         nil
>>                statusLine:     a ZnStatusLine(200 OK)
>>
>> ZnResponse class(ZnMessage class)>>readFrom:
>>        Receiver: ZnResponse
>>        Arguments and temporary variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>        Receiver's instance variables:
>>                superclass:     ZnMessage
>>                methodDict:     a
>> MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
>> Compile...etc...
>>                format:         136
>>                instanceVariables:      #('statusLine')
>>                organization:   ('accessing' addCookie: code location location:
>> setKeepAliveFor: ...etc...
>>                subclasses:     nil
>>                name:   #ZnResponse
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Zinc-HTTP-Core'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> ZnClient class>>execute:on:
>>        Receiver: ZnClient
>>        Arguments and temporary variables:
>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>        Receiver's instance variables:
>>                superclass:     Object
>>                methodDict:     a MethodDictionary()
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('as yet unclassified')
>>
>>                subclasses:     nil
>>                name:   #ZnClient
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Zinc-HTTP-Client-Server'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>        Receiver: ZnHTTPSocketFacade
>>        Arguments and temporary variables:
>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>        Receiver's instance variables:
>>                superclass:     Object
>>                methodDict:     a MethodDictionary()
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('as yet unclassified')
>>
>>                subclasses:     nil
>>                name:   #ZnHTTPSocketFacade
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Zinc-HTTP-Client-Server'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> BlockClosure>>ensure:
>>        Receiver: [ZnClient execute: request on: stream]
>>        Arguments and temporary variables:
>>                aBlock:         [stream close]
>>                complete:       nil
>>                returnValue:    nil
>>        Receiver's instance variables:
>>                outerContext:   ZnHTTPSocketFacade class>>execute:on:
>>                startpc:        42
>>                numArgs:        0
>>
>> ZnHTTPSocketFacade class>>execute:on:
>>        Receiver: ZnHTTPSocketFacade
>>        Arguments and temporary variables:
>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>        Receiver's instance variables:
>>                superclass:     Object
>>                methodDict:     a MethodDictionary()
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('as yet unclassified')
>>
>>                subclasses:     nil
>>                name:   #ZnHTTPSocketFacade
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Zinc-HTTP-Client-Server'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>        Receiver: ZnHTTPSocketFacade
>>        Arguments and temporary variables:
>>                urlObject:      'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
>>                queryArguments:         nil
>>                username:       'jt'
>>                password:       'trimixisg4u'
>>                url:    http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>                response:       nil
>>        Receiver's instance variables:
>>                superclass:     Object
>>                methodDict:     a MethodDictionary()
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('as yet unclassified')
>>
>>                subclasses:     nil
>>                name:   #ZnHTTPSocketFacade
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Zinc-HTTP-Client-Server'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>> HTTPSocket class>>httpGet:args:user:passwd:
>>        Receiver: HTTPSocket
>>        Arguments and temporary variables:
>>                url:    'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                queryArguments:         nil
>>                username:       'jt'
>>                password:       'trimixisg4u'
>>        Receiver's instance variables:
>>                superclass:     Socket
>>                methodDict:     a
>> MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
>> Compi...etc...
>>                format:         144
>>                instanceVariables:      #('headerTokens' 'headers' 'responseCode')
>>                organization:   ('accessing' contentType contentType: contentsLength:
>> getHeader: ...etc...
>>                subclasses:     nil
>>                name:   #HTTPSocket
>>                classPool:      a Dictionary(#HTTPBlabEmail->''
>> #HTTPProxyCredentials->'' #HTTPProxy...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Network-Protocols'
>>                traitComposition:       nil
>>                localSelectors:         nil
>>
>> [contents := HTTPSocket
>>                                httpGet: (self urlForFileNamed: aString)
>>                                args: nil
>>                                user: self user
>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>        Arguments and temporary variables:
>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                contents:       #(nil)
>>        Receiver's instance variables:
>>                creationTemplate:       'MCHttpRepository
>>        location: ''http://git.parspro.com/mc''
>>        u...etc...
>>                storeDiffs:     nil
>>                cache:  a Dictionary()
>>                allFileNames:   nil
>>                location:       'http://git.parspro.com/mc'
>>                user:   'jt'
>>                password:       'trimixisg4u'
>>                readerCache:    a Dictionary()
>>
>> [workBlock value] in [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex total
>>                                        ifNil: [true]
>>                                        ifNotNil: [ex amount == nil])
>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>                                                        or: [ex total = ex amount])
>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>        Arguments and temporary variables:
>>                workBlock:      [contents := HTTPSocket
>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>        Receiver's instance variables:
>>                creationTemplate:       'MCHttpRepository
>>        location: ''http://git.parspro.com/mc''
>>        u...etc...
>>                storeDiffs:     nil
>>                cache:  a Dictionary()
>>                allFileNames:   nil
>>                location:       'http://git.parspro.com/mc'
>>                user:   'jt'
>>                password:       'trimixisg4u'
>>                readerCache:    a Dictionary()
>>
>> BlockClosure>>on:do:
>>        Receiver: [workBlock value]
>>        Arguments and temporary variables:
>>                exception:      HTTPProgress
>>                handlerAction:  [:ex |
>> (ex total
>>                        ifNil: [true]
>>                        ifNotNil: [ex amount == ni...etc...
>>                handlerActive:  true
>>        Receiver's instance variables:
>>                outerContext:   [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex...etc...
>>                startpc:        114
>>                numArgs:        0
>>
>> [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex total
>>                                        ifNil: [true]
>>                                        ifNotNil: [ex amount == nil])
>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>                                                        or: [ex total = ex amount])
>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>        Arguments and temporary variables:
>>                workBlock:      [:barValArg |
>> | barVal return newBarSize |
>> barVal := barValArg.
>>        re...etc...
>>                nextUpdateTime:         [contents := HTTPSocket
>>                                httpGet: (self urlForFileNamed: aSt...etc...
>>                bar:    #(0)
>>        Receiver's instance variables:
>>                creationTemplate:       'MCHttpRepository
>>        location: ''http://git.parspro.com/mc''
>>        u...etc...
>>                storeDiffs:     nil
>>                cache:  a Dictionary()
>>                allFileNames:   nil
>>                location:       'http://git.parspro.com/mc'
>>                user:   'jt'
>>                password:       'trimixisg4u'
>>                readerCache:    a Dictionary()
>>
>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>                on: ProgressNotification
>>                do: [:ex |
>>                        ex extraParam isString
>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>> ex extraParam].
>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>                progress:       [:barValArg |
>> | barVal return newBarSize |
>> barVal := barValArg.
>>        ret...etc...
>>                result:         #(nil)
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       a MorphicUIManager
>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>                maxVal:         1.0
>>                minVal:         0.0
>>                aPoint:         960@589
>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>
>> BlockClosure>>on:do:
>>        Receiver: [result := workBlock value: progress]
>>        Arguments and temporary variables:
>>                exception:      ProgressNotification
>>                handlerAction:  [:ex |
>> ex extraParam isString
>>                ifTrue: [SystemProgressMorph un...etc...
>>                handlerActive:  true
>>        Receiver's instance variables:
>>                outerContext:   [[result := workBlock value: progress]
>>                on: ProgressNotification...etc...
>>                startpc:        87
>>                numArgs:        0
>>
>> [[result := workBlock value: progress]
>>                on: ProgressNotification
>>                do: [:ex |
>>                        ex extraParam isString
>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>> ex extraParam].
>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>                progress:       [:barValArg |
>> | barVal return newBarSize |
>> barVal := barValArg.
>>        ret...etc...
>>                result:         #(nil)
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       a MorphicUIManager
>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>                maxVal:         1.0
>>                minVal:         0.0
>>                aPoint:         960@589
>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>
>> BlockClosure>>ensure:
>>        Receiver: [[result := workBlock value: progress]
>>                on: ProgressNotification
>>                do: [:ex |
>>                        ex extr...etc...
>>        Arguments and temporary variables:
>>                aBlock:         [SystemProgressMorph close: progress]
>>                complete:       nil
>>                returnValue:    nil
>>        Receiver's instance variables:
>>                outerContext:   ProgressInitiationException>>defaultMorphicAction
>>                startpc:        81
>>                numArgs:        0
>>
>> ProgressInitiationException>>defaultMorphicAction
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>                progress:       [:barValArg |
>> | barVal return newBarSize |
>> barVal := barValArg.
>>        ret...etc...
>>                result:         #(nil)
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       a MorphicUIManager
>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>                maxVal:         1.0
>>                minVal:         0.0
>>                aPoint:         960@589
>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>
>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>        Receiver: a MorphicUIManager
>>        Arguments and temporary variables:
>>                anException:    ProgressInitiationException
>>        Receiver's instance variables:
>>                interactiveParser:      nil
>>
>> ProgressInitiationException>>defaultAction
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       a MorphicUIManager
>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>                maxVal:         1.0
>>                minVal:         0.0
>>                aPoint:         960@589
>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>
>> UndefinedObject>>handleSignal:
>>        Receiver: nil
>>        Arguments and temporary variables:
>>                exception:      ProgressInitiationException
>>        Receiver's instance variables:
>> nil
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                exception:      ProgressInitiationException
>>                val:    nil
>>        Receiver's instance variables:
>>                sender:         PasteUpMorph>>becomeActiveDuring:
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [aBlock value]
>>
>> ProgressInitiationException(Exception)>>signal
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       a MorphicUIManager
>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>                maxVal:         1.0
>>                minVal:         0.0
>>                aPoint:         960@589
>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>
>> ProgressInitiationException>>display:at:from:to:during:
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>                argString:      'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                argPoint:       960@589
>>                argMinVal:      0.0
>>                argMaxVal:      1.0
>>                argWorkBlock:   [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex...etc...
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       a MorphicUIManager
>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>                maxVal:         1.0
>>                minVal:         0.0
>>                aPoint:         960@589
>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>
>> ProgressInitiationException class>>display:at:from:to:during:
>>        Receiver: ProgressInitiationException
>>        Arguments and temporary variables:
>>                aString:        'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                aPoint:         960@589
>>                minVal:         0.0
>>                maxVal:         1.0
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>        Receiver's instance variables:
>>                superclass:     Exception
>>                methodDict:     a
>> MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
>>                format:         152
>>                instanceVariables:      #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
>>                organization:   ('*Morphic' defaultMorphicAction)
>> ('accessing' maxVal minVal poin...etc...
>>                subclasses:     nil
>>                name:   #ProgressInitiationException
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'UIManager-Support'
>>                traitComposition:       nil
>>                localSelectors:         nil
>>
>> MorphicUIManager>>displayProgress:at:from:to:during:
>>        Receiver: a MorphicUIManager
>>        Arguments and temporary variables:
>>                titleString:    'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                aPoint:         960@589
>>                minVal:         0.0
>>                maxVal:         1.0
>>                workBlock:      [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex to...etc...
>>        Receiver's instance variables:
>>                interactiveParser:      nil
>>
>> MCHttpRepository>>displayProgress:during:
>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>        Arguments and temporary variables:
>>                label:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                workBlock:      [contents := HTTPSocket
>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>                nextUpdateTime:         #(0)
>>        Receiver's instance variables:
>>                creationTemplate:       'MCHttpRepository
>>        location: ''http://git.parspro.com/mc''
>>        u...etc...
>>                storeDiffs:     nil
>>                cache:  a Dictionary()
>>                allFileNames:   nil
>>                location:       'http://git.parspro.com/mc'
>>                user:   'jt'
>>                password:       'trimixisg4u'
>>                readerCache:    a Dictionary()
>>
>> MCHttpRepository>>readStreamForFileNamed:do:
>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>        Arguments and temporary variables:
>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                aBlock:         [:s | (MCVersionReader readerClassForFileNamed: aString)
>>                ifNotNil: [:...etc...
>>                contents:       #(nil)
>>        Receiver's instance variables:
>>                creationTemplate:       'MCHttpRepository
>>        location: ''http://git.parspro.com/mc''
>>        u...etc...
>>                storeDiffs:     nil
>>                cache:  a Dictionary()
>>                allFileNames:   nil
>>                location:       'http://git.parspro.com/mc'
>>                user:   'jt'
>>                password:       'trimixisg4u'
>>                readerCache:    a Dictionary()
>>
>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>        Arguments and temporary variables:
>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>                aBlock:         [:r | r
>>                ifNotNil: [readerCache at: aString put: r]]
>>        Receiver's instance variables:
>>                creationTemplate:       'MCHttpRepository
>>        location: ''http://git.parspro.com/mc''
>>        u...etc...
>>                storeDiffs:     nil
>>                cache:  a Dictionary()
>>                allFileNames:   nil
>>                location:       'http://git.parspro.com/mc'
>>                user:   'jt'
>>                password:       'trimixisg4u'
>>                readerCache:    a Dictionary()
>>
>>
>> --- The full stack ---
>> ZnUTF8Encoder(Object)>>error:
>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>                        = 128
>>                ifTrue: [code := (code bitShift: 6)
>>                                                + (nextByte bitAnd: 63)]
>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>> ZnUTF8Encoder>>nextFromStream:
>> ZnUTF8Encoder>>nextFromStream:
>> [:stringStream |
>> [readStream atEnd]
>>                whileFalse: [stringStream
>>                                nextPut: (encoder nextFromStream: readStream)].
>>        nil] in ZnStringEntity>>readLimitedFrom:
>> String class(SequenceableCollection class)>>new:streamContents:
>> String class(SequenceableCollection class)>>streamContents:
>> ZnStringEntity>>readLimitedFrom:
>> ZnStringEntity>>readFrom:
>> ZnEntity class>>readFrom:usingType:andLength:
>> ZnEntityReader>>readEntityFromStream
>> ZnEntityReader>>readEntity
>> ZnResponse(ZnMessage)>>readFrom:
>> ZnResponse class(ZnMessage class)>>readFrom:
>> ZnClient class>>execute:on:
>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>> BlockClosure>>ensure:
>> ZnHTTPSocketFacade class>>execute:on:
>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>> HTTPSocket class>>httpGet:args:user:passwd:
>> [contents := HTTPSocket
>>                                httpGet: (self urlForFileNamed: aString)
>>                                args: nil
>>                                user: self user
>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>> [workBlock value] in [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex total
>>                                        ifNil: [true]
>>                                        ifNotNil: [ex amount == nil])
>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>                                                        or: [ex total = ex amount])
>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>> BlockClosure>>on:do:
>> [:bar | [workBlock value]
>>                on: HTTPProgress
>>                do: [:ex |
>>                        (ex total
>>                                        ifNil: [true]
>>                                        ifNotNil: [ex amount == nil])
>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>                                                        or: [ex total = ex amount])
>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>                on: ProgressNotification
>>                do: [:ex |
>>                        ex extraParam isString
>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>> ex extraParam].
>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>> BlockClosure>>on:do:
>> [[result := workBlock value: progress]
>>                on: ProgressNotification
>>                do: [:ex |
>>                        ex extraParam isString
>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>> ex extraParam].
>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>> BlockClosure>>ensure:
>> ProgressInitiationException>>defaultMorphicAction
>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>> ProgressInitiationException>>defaultAction
>> UndefinedObject>>handleSignal:
>> MethodContext(ContextPart)>>handleSignal:
>> ProgressInitiationException(Exception)>>signal
>> ProgressInitiationException>>display:at:from:to:during:
>> ProgressInitiationException class>>display:at:from:to:during:
>> MorphicUIManager>>displayProgress:at:from:to:during:
>> MCHttpRepository>>displayProgress:during:
>> MCHttpRepository>>readStreamForFileNamed:do:
>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>  - - - - - - - - - - - - - - -
>>                        - - - - - - - - - - - - - - - - - -
>> [self resizeCache: readerCache.
>>        super
>>                versionReaderForFileNamed: aString
>>                do: [:r | r
>>                                ifNotNil: [readerCache at: aString put: r]]] in
>> MCHttpRepository>>versionReaderForFileNamed:
>> Dictionary>>at:ifAbsent:
>> MCHttpRepository>>versionReaderForFileNamed:
>> MCHttpRepository>>versionReaderForFileNamed:do:
>> MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
>> [self loadVersionFromFileNamed: aString] in
>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>> Dictionary>>at:ifAbsent:
>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>> [version := repository versionFromFileNamed: selectedVersion] in
>> MCFileRepositoryInspector>>version
>> BlockClosure>>ensure:
>> CursorWithMask(Cursor)>>showWhile:
>> MCFileRepositoryInspector>>version
>> MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
>> MCFileRepositoryInspector(MCVersionInspector)>>summary
>> PluggableTextMorph>>getText
>> PluggableTextMorph>>update:
>> [:aDependent | aDependent update: aParameter] in
>> MCFileRepositoryInspector(Object)>>changed:
>> DependentsArray>>do:
>> MCFileRepositoryInspector(Object)>>changed:
>> MCFileRepositoryInspector>>versionSelection:
>> PluggableListMorph>>changeModelSelection:
>> PluggableListMorph>>mouseUpOnSingle:
>> PluggableListMorph>>mouseUp:
>> PluggableListMorph(Morph)>>handleMouseUp:
>> MouseButtonEvent>>sentTo:
>> PluggableListMorph(Morph)>>handleEvent:
>> MorphicEventDispatcher>>dispatchDefault:with:
>> MorphicEventDispatcher>>dispatchEvent:with:
>> PluggableListMorph(Morph)>>processEvent:using:
>> PluggableListMorph(Morph)>>processEvent:
>> PluggableListMorph>>handleFocusEvent:
>> [ActiveHand := self.
>>        ActiveEvent := anEvent.
>>        result := focusHolder
>>                                handleFocusEvent: (anEvent
>>                                                transformedBy: (focusHolder transformedFrom: self))] in
>> HandMorph>>sendFocusEvent:to:clear:
>> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
>> BlockClosure>>on:do:
>> PasteUpMorph>>becomeActiveDuring:
>> HandMorph>>sendFocusEvent:to:clear:
>> HandMorph>>sendEvent:focus:clear:
>> HandMorph>>sendMouseEvent:
>> HandMorph>>handleEvent:
>> HandMorph>>processEvents
>> [:h |
>> ActiveHand := h.
>>        h processEvents.
>>        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
>> Array(SequenceableCollection)>>do:
>> WorldState>>handsDo:
>> WorldState>>doOneCycleNowFor:
>> WorldState>>doOneCycleFor:
>> PasteUpMorph>>doOneCycle
>> [[World doOneCycle.
>>        Processor yield.
>>        false] whileFalse.
>>        nil] in Project class>>spawnNewProcess
>> [self value.
>>        Processor terminateActive] in BlockClosure>>newProcess
>>
>>
>>
>>
>> On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:
>>>
>>> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>>>
>>>> Many thanks. Unfortunately this version throws errors when I try to
>>>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>>>> try to build my image. Can you tell me what is the *most* stable
>>>> version that I can use with Cog and SS 3.x?
>>>>
>>>
>>> This one. I have never seen that error. So.. a case for the bug tracker.
>>>
>>>        http://code.google.com/p/pharo/issues
>>>
>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>
>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>
>>>>>> Hi,
>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>
>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>> from hudson to jenkins. And, and...
>>>>>
>>>>> So for now:
>>>>>
>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>
>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>
>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>> one package, where I can just update the image.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ~JT
>>>>
>>>
>>> --
>>> Marcus Denker -- http://marcusdenker.de
>>>
>>>
>>>
>>
>>
>>
>> --
>> ~JT
>>
>
>
>
> --
> ~JT
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Sven Van Caekenberghe
Hey John,

Yes there seems to be a problem.
I will try to investigate as soon as possible but I won't have time tonight, at earliest tomorrow morning EU time.
Sorry for the inconvenience.

Sven

On 08 Sep 2011, at 19:25, John Toohey wrote:

> Just tried it on Linux, and its the same. MC cannot read my source
> repos. This is a little scary.
>
> On Thu, Sep 8, 2011 at 12:44, John Toohey <[hidden email]> wrote:
>> If it helps I can give access to the code repo, and anyone can then
>> reproduce the bug.
>>
>> On Thu, Sep 8, 2011 at 11:55, John Toohey <[hidden email]> wrote:
>>> Bug tracker tells me that my comment is too long! Anyhow here is what
>>> I tried to post. Would love a solution as all my sources code is now
>>> locked out of Pharo.
>>>
>>> Pharo image: Pharo 1.3
>>> Pharo core version: Latest update: #13298
>>> Virtual machine used: 1.3 One-Click with Cog
>>> Description
>>>
>>> When I open MC and create a package for my code, I get an "Illegal
>>> UTF-8 encoding" error when I try to open any of my packages.
>>>
>>> 8 September 2011 11:49:57 am
>>>
>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>> VMMaker-oscog.54] Pharo Development 1.1
>>> Image: Pharo1.3 [Latest update: #13298]
>>>
>>> ZnUTF8Encoder(Object)>>error:
>>>        Receiver: a ZnUTF8Encoder
>>>        Arguments and temporary variables:
>>>                aString:        'illegal UTF-8 encoding'
>>>        Receiver's instance variables:
>>> a ZnUTF8Encoder
>>>
>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>                        = 128
>>>                ifTrue: [code := (code bitShift: 6)
>>>                                                + (nextByte bitAnd: 63)]
>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>> ZnUTF8Encoder>>nextFromStream:
>>>        Receiver: a ZnUTF8Encoder
>>>        Arguments and temporary variables:
>>>                stream:         a ZnLimitedReadStream
>>>                code:   #(26)
>>>                nextByte:       94
>>>        Receiver's instance variables:
>>> a ZnUTF8Encoder
>>>
>>> ZnUTF8Encoder>>nextFromStream:
>>>        Receiver: a ZnUTF8Encoder
>>>        Arguments and temporary variables:
>>>                stream:         a ZnLimitedReadStream
>>>                byte:   218
>>>                next:   [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>                        = 128
>>>                ifTrue: ...etc...
>>>                code:   #(26)
>>>        Receiver's instance variables:
>>> a ZnUTF8Encoder
>>>
>>> [:stringStream |
>>> [readStream atEnd]
>>>                whileFalse: [stringStream
>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>        Arguments and temporary variables:
>>>                readStream:     a WriteStream 'PK    '
>>>                stringStream:   a ZnLimitedReadStream
>>>        Receiver's instance variables:
>>>                contentType:    text/plain;charset=UTF-8
>>>                contentLength:  9025
>>>                string:         nil
>>>                encoder:        a ZnUTF8Encoder
>>>
>>> String class(SequenceableCollection class)>>new:streamContents:
>>>        Receiver: String
>>>        Arguments and temporary variables:
>>>                newSize:        100
>>>                blockWithArg:   [:stringStream |
>>> [readStream atEnd]
>>>                whileFalse: [stringStream
>>> ...etc...
>>>                stream:         a WriteStream 'PK    '
>>>        Receiver's instance variables:
>>>                superclass:     ArrayedCollection
>>>                methodDict:     a MethodDictionary(size 267)
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>> isLegalInstVar...etc...
>>>                subclasses:     {ByteString. WideString. Symbol}
>>>                name:   #String
>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>> 13 14 15 16...etc...
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Collections-Strings'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> String class(SequenceableCollection class)>>streamContents:
>>>        Receiver: String
>>>        Arguments and temporary variables:
>>>                blockWithArg:   [:stringStream |
>>> [readStream atEnd]
>>>                whileFalse: [stringStream
>>> ...etc...
>>>        Receiver's instance variables:
>>>                superclass:     ArrayedCollection
>>>                methodDict:     a MethodDictionary(size 267)
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>> isLegalInstVar...etc...
>>>                subclasses:     {ByteString. WideString. Symbol}
>>>                name:   #String
>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>> 13 14 15 16...etc...
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Collections-Strings'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> ZnStringEntity>>readLimitedFrom:
>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>        Arguments and temporary variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                readStream:     a ZnLimitedReadStream
>>>                newString:      nil
>>>        Receiver's instance variables:
>>>                contentType:    text/plain;charset=UTF-8
>>>                contentLength:  9025
>>>                string:         nil
>>>                encoder:        a ZnUTF8Encoder
>>>
>>> ZnStringEntity>>readFrom:
>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>        Arguments and temporary variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Receiver's instance variables:
>>>                contentType:    text/plain;charset=UTF-8
>>>                contentLength:  9025
>>>                string:         nil
>>>                encoder:        a ZnUTF8Encoder
>>>
>>> ZnEntity class>>readFrom:usingType:andLength:
>>>        Receiver: ZnEntity
>>>        Arguments and temporary variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                mimeType:       text/plain;charset=UTF-8
>>>                length:         9025
>>>                newEntity:      a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>        Receiver's instance variables:
>>>                superclass:     Object
>>>                methodDict:     a
>>> MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
>>> Com...etc...
>>>                format:         134
>>>                instanceVariables:      #('contentType' 'contentLength')
>>>                organization:   ('accessing' contentLength contentLength: contentType
>>> contentType...etc...
>>>                subclasses:     {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
>>> ZnMultiPartF...etc...
>>>                name:   #ZnEntity
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Zinc-HTTP-Core'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> ZnEntityReader>>readEntityFromStream
>>>        Receiver: a ZnEntityReader
>>>        Arguments and temporary variables:
>>>                entity:         nil
>>>                decodedEntityLength:    9025
>>>                chunkedStream:  nil
>>>        Receiver's instance variables:
>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>> 'Cache-Control'->'max-age=-543414...etc...
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                streaming:      nil
>>>                allowReadingUpToEnd:    true
>>>
>>> ZnEntityReader>>readEntity
>>>        Receiver: a ZnEntityReader
>>>        Arguments and temporary variables:
>>>                entity:         nil
>>>        Receiver's instance variables:
>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>> 'Cache-Control'->'max-age=-543414...etc...
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                streaming:      nil
>>>                allowReadingUpToEnd:    true
>>>
>>> ZnResponse(ZnMessage)>>readFrom:
>>>        Receiver: a ZnResponse(200 OK)
>>>        Arguments and temporary variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Receiver's instance variables:
>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>> 'Cache-Control'->'max-age=-543414...etc...
>>>                entity:         nil
>>>                statusLine:     a ZnStatusLine(200 OK)
>>>
>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>        Receiver: ZnResponse
>>>        Arguments and temporary variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Receiver's instance variables:
>>>                superclass:     ZnMessage
>>>                methodDict:     a
>>> MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
>>> Compile...etc...
>>>                format:         136
>>>                instanceVariables:      #('statusLine')
>>>                organization:   ('accessing' addCookie: code location location:
>>> setKeepAliveFor: ...etc...
>>>                subclasses:     nil
>>>                name:   #ZnResponse
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Zinc-HTTP-Core'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> ZnClient class>>execute:on:
>>>        Receiver: ZnClient
>>>        Arguments and temporary variables:
>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Receiver's instance variables:
>>>                superclass:     Object
>>>                methodDict:     a MethodDictionary()
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('as yet unclassified')
>>>
>>>                subclasses:     nil
>>>                name:   #ZnClient
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Zinc-HTTP-Client-Server'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>        Receiver: ZnHTTPSocketFacade
>>>        Arguments and temporary variables:
>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Receiver's instance variables:
>>>                superclass:     Object
>>>                methodDict:     a MethodDictionary()
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('as yet unclassified')
>>>
>>>                subclasses:     nil
>>>                name:   #ZnHTTPSocketFacade
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Zinc-HTTP-Client-Server'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> BlockClosure>>ensure:
>>>        Receiver: [ZnClient execute: request on: stream]
>>>        Arguments and temporary variables:
>>>                aBlock:         [stream close]
>>>                complete:       nil
>>>                returnValue:    nil
>>>        Receiver's instance variables:
>>>                outerContext:   ZnHTTPSocketFacade class>>execute:on:
>>>                startpc:        42
>>>                numArgs:        0
>>>
>>> ZnHTTPSocketFacade class>>execute:on:
>>>        Receiver: ZnHTTPSocketFacade
>>>        Arguments and temporary variables:
>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Receiver's instance variables:
>>>                superclass:     Object
>>>                methodDict:     a MethodDictionary()
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('as yet unclassified')
>>>
>>>                subclasses:     nil
>>>                name:   #ZnHTTPSocketFacade
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Zinc-HTTP-Client-Server'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>        Receiver: ZnHTTPSocketFacade
>>>        Arguments and temporary variables:
>>>                urlObject:      'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
>>>                queryArguments:         nil
>>>                username:       'jt'
>>>                password:       'trimixisg4u'
>>>                url:    http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>                response:       nil
>>>        Receiver's instance variables:
>>>                superclass:     Object
>>>                methodDict:     a MethodDictionary()
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('as yet unclassified')
>>>
>>>                subclasses:     nil
>>>                name:   #ZnHTTPSocketFacade
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Zinc-HTTP-Client-Server'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>        Receiver: HTTPSocket
>>>        Arguments and temporary variables:
>>>                url:    'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                queryArguments:         nil
>>>                username:       'jt'
>>>                password:       'trimixisg4u'
>>>        Receiver's instance variables:
>>>                superclass:     Socket
>>>                methodDict:     a
>>> MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
>>> Compi...etc...
>>>                format:         144
>>>                instanceVariables:      #('headerTokens' 'headers' 'responseCode')
>>>                organization:   ('accessing' contentType contentType: contentsLength:
>>> getHeader: ...etc...
>>>                subclasses:     nil
>>>                name:   #HTTPSocket
>>>                classPool:      a Dictionary(#HTTPBlabEmail->''
>>> #HTTPProxyCredentials->'' #HTTPProxy...etc...
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Network-Protocols'
>>>                traitComposition:       nil
>>>                localSelectors:         nil
>>>
>>> [contents := HTTPSocket
>>>                                httpGet: (self urlForFileNamed: aString)
>>>                                args: nil
>>>                                user: self user
>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>        Arguments and temporary variables:
>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                contents:       #(nil)
>>>        Receiver's instance variables:
>>>                creationTemplate:       'MCHttpRepository
>>>        location: ''http://git.parspro.com/mc''
>>>        u...etc...
>>>                storeDiffs:     nil
>>>                cache:  a Dictionary()
>>>                allFileNames:   nil
>>>                location:       'http://git.parspro.com/mc'
>>>                user:   'jt'
>>>                password:       'trimixisg4u'
>>>                readerCache:    a Dictionary()
>>>
>>> [workBlock value] in [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex total
>>>                                        ifNil: [true]
>>>                                        ifNotNil: [ex amount == nil])
>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>                                                        or: [ex total = ex amount])
>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>        Arguments and temporary variables:
>>>                workBlock:      [contents := HTTPSocket
>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>        Receiver's instance variables:
>>>                creationTemplate:       'MCHttpRepository
>>>        location: ''http://git.parspro.com/mc''
>>>        u...etc...
>>>                storeDiffs:     nil
>>>                cache:  a Dictionary()
>>>                allFileNames:   nil
>>>                location:       'http://git.parspro.com/mc'
>>>                user:   'jt'
>>>                password:       'trimixisg4u'
>>>                readerCache:    a Dictionary()
>>>
>>> BlockClosure>>on:do:
>>>        Receiver: [workBlock value]
>>>        Arguments and temporary variables:
>>>                exception:      HTTPProgress
>>>                handlerAction:  [:ex |
>>> (ex total
>>>                        ifNil: [true]
>>>                        ifNotNil: [ex amount == ni...etc...
>>>                handlerActive:  true
>>>        Receiver's instance variables:
>>>                outerContext:   [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex...etc...
>>>                startpc:        114
>>>                numArgs:        0
>>>
>>> [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex total
>>>                                        ifNil: [true]
>>>                                        ifNotNil: [ex amount == nil])
>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>                                                        or: [ex total = ex amount])
>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>        Arguments and temporary variables:
>>>                workBlock:      [:barValArg |
>>> | barVal return newBarSize |
>>> barVal := barValArg.
>>>        re...etc...
>>>                nextUpdateTime:         [contents := HTTPSocket
>>>                                httpGet: (self urlForFileNamed: aSt...etc...
>>>                bar:    #(0)
>>>        Receiver's instance variables:
>>>                creationTemplate:       'MCHttpRepository
>>>        location: ''http://git.parspro.com/mc''
>>>        u...etc...
>>>                storeDiffs:     nil
>>>                cache:  a Dictionary()
>>>                allFileNames:   nil
>>>                location:       'http://git.parspro.com/mc'
>>>                user:   'jt'
>>>                password:       'trimixisg4u'
>>>                readerCache:    a Dictionary()
>>>
>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>                on: ProgressNotification
>>>                do: [:ex |
>>>                        ex extraParam isString
>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>> ex extraParam].
>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>                progress:       [:barValArg |
>>> | barVal return newBarSize |
>>> barVal := barValArg.
>>>        ret...etc...
>>>                result:         #(nil)
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       a MorphicUIManager
>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>                maxVal:         1.0
>>>                minVal:         0.0
>>>                aPoint:         960@589
>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>
>>> BlockClosure>>on:do:
>>>        Receiver: [result := workBlock value: progress]
>>>        Arguments and temporary variables:
>>>                exception:      ProgressNotification
>>>                handlerAction:  [:ex |
>>> ex extraParam isString
>>>                ifTrue: [SystemProgressMorph un...etc...
>>>                handlerActive:  true
>>>        Receiver's instance variables:
>>>                outerContext:   [[result := workBlock value: progress]
>>>                on: ProgressNotification...etc...
>>>                startpc:        87
>>>                numArgs:        0
>>>
>>> [[result := workBlock value: progress]
>>>                on: ProgressNotification
>>>                do: [:ex |
>>>                        ex extraParam isString
>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>> ex extraParam].
>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>                progress:       [:barValArg |
>>> | barVal return newBarSize |
>>> barVal := barValArg.
>>>        ret...etc...
>>>                result:         #(nil)
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       a MorphicUIManager
>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>                maxVal:         1.0
>>>                minVal:         0.0
>>>                aPoint:         960@589
>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>
>>> BlockClosure>>ensure:
>>>        Receiver: [[result := workBlock value: progress]
>>>                on: ProgressNotification
>>>                do: [:ex |
>>>                        ex extr...etc...
>>>        Arguments and temporary variables:
>>>                aBlock:         [SystemProgressMorph close: progress]
>>>                complete:       nil
>>>                returnValue:    nil
>>>        Receiver's instance variables:
>>>                outerContext:   ProgressInitiationException>>defaultMorphicAction
>>>                startpc:        81
>>>                numArgs:        0
>>>
>>> ProgressInitiationException>>defaultMorphicAction
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>                progress:       [:barValArg |
>>> | barVal return newBarSize |
>>> barVal := barValArg.
>>>        ret...etc...
>>>                result:         #(nil)
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       a MorphicUIManager
>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>                maxVal:         1.0
>>>                minVal:         0.0
>>>                aPoint:         960@589
>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>
>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>        Receiver: a MorphicUIManager
>>>        Arguments and temporary variables:
>>>                anException:    ProgressInitiationException
>>>        Receiver's instance variables:
>>>                interactiveParser:      nil
>>>
>>> ProgressInitiationException>>defaultAction
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       a MorphicUIManager
>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>                maxVal:         1.0
>>>                minVal:         0.0
>>>                aPoint:         960@589
>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>
>>> UndefinedObject>>handleSignal:
>>>        Receiver: nil
>>>        Arguments and temporary variables:
>>>                exception:      ProgressInitiationException
>>>        Receiver's instance variables:
>>> nil
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>>                exception:      ProgressInitiationException
>>>                val:    nil
>>>        Receiver's instance variables:
>>>                sender:         PasteUpMorph>>becomeActiveDuring:
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [aBlock value]
>>>
>>> ProgressInitiationException(Exception)>>signal
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       a MorphicUIManager
>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>                maxVal:         1.0
>>>                minVal:         0.0
>>>                aPoint:         960@589
>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>
>>> ProgressInitiationException>>display:at:from:to:during:
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>                argString:      'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                argPoint:       960@589
>>>                argMinVal:      0.0
>>>                argMaxVal:      1.0
>>>                argWorkBlock:   [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex...etc...
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       a MorphicUIManager
>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>                maxVal:         1.0
>>>                minVal:         0.0
>>>                aPoint:         960@589
>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>
>>> ProgressInitiationException class>>display:at:from:to:during:
>>>        Receiver: ProgressInitiationException
>>>        Arguments and temporary variables:
>>>                aString:        'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                aPoint:         960@589
>>>                minVal:         0.0
>>>                maxVal:         1.0
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>        Receiver's instance variables:
>>>                superclass:     Exception
>>>                methodDict:     a
>>> MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
>>>                format:         152
>>>                instanceVariables:      #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
>>>                organization:   ('*Morphic' defaultMorphicAction)
>>> ('accessing' maxVal minVal poin...etc...
>>>                subclasses:     nil
>>>                name:   #ProgressInitiationException
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'UIManager-Support'
>>>                traitComposition:       nil
>>>                localSelectors:         nil
>>>
>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>        Receiver: a MorphicUIManager
>>>        Arguments and temporary variables:
>>>                titleString:    'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                aPoint:         960@589
>>>                minVal:         0.0
>>>                maxVal:         1.0
>>>                workBlock:      [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex to...etc...
>>>        Receiver's instance variables:
>>>                interactiveParser:      nil
>>>
>>> MCHttpRepository>>displayProgress:during:
>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>        Arguments and temporary variables:
>>>                label:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                workBlock:      [contents := HTTPSocket
>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>                nextUpdateTime:         #(0)
>>>        Receiver's instance variables:
>>>                creationTemplate:       'MCHttpRepository
>>>        location: ''http://git.parspro.com/mc''
>>>        u...etc...
>>>                storeDiffs:     nil
>>>                cache:  a Dictionary()
>>>                allFileNames:   nil
>>>                location:       'http://git.parspro.com/mc'
>>>                user:   'jt'
>>>                password:       'trimixisg4u'
>>>                readerCache:    a Dictionary()
>>>
>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>        Arguments and temporary variables:
>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                aBlock:         [:s | (MCVersionReader readerClassForFileNamed: aString)
>>>                ifNotNil: [:...etc...
>>>                contents:       #(nil)
>>>        Receiver's instance variables:
>>>                creationTemplate:       'MCHttpRepository
>>>        location: ''http://git.parspro.com/mc''
>>>        u...etc...
>>>                storeDiffs:     nil
>>>                cache:  a Dictionary()
>>>                allFileNames:   nil
>>>                location:       'http://git.parspro.com/mc'
>>>                user:   'jt'
>>>                password:       'trimixisg4u'
>>>                readerCache:    a Dictionary()
>>>
>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>        Arguments and temporary variables:
>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>                aBlock:         [:r | r
>>>                ifNotNil: [readerCache at: aString put: r]]
>>>        Receiver's instance variables:
>>>                creationTemplate:       'MCHttpRepository
>>>        location: ''http://git.parspro.com/mc''
>>>        u...etc...
>>>                storeDiffs:     nil
>>>                cache:  a Dictionary()
>>>                allFileNames:   nil
>>>                location:       'http://git.parspro.com/mc'
>>>                user:   'jt'
>>>                password:       'trimixisg4u'
>>>                readerCache:    a Dictionary()
>>>
>>>
>>> --- The full stack ---
>>> ZnUTF8Encoder(Object)>>error:
>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>                        = 128
>>>                ifTrue: [code := (code bitShift: 6)
>>>                                                + (nextByte bitAnd: 63)]
>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>> ZnUTF8Encoder>>nextFromStream:
>>> ZnUTF8Encoder>>nextFromStream:
>>> [:stringStream |
>>> [readStream atEnd]
>>>                whileFalse: [stringStream
>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>> String class(SequenceableCollection class)>>new:streamContents:
>>> String class(SequenceableCollection class)>>streamContents:
>>> ZnStringEntity>>readLimitedFrom:
>>> ZnStringEntity>>readFrom:
>>> ZnEntity class>>readFrom:usingType:andLength:
>>> ZnEntityReader>>readEntityFromStream
>>> ZnEntityReader>>readEntity
>>> ZnResponse(ZnMessage)>>readFrom:
>>> ZnResponse class(ZnMessage class)>>readFrom:
>>> ZnClient class>>execute:on:
>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>> BlockClosure>>ensure:
>>> ZnHTTPSocketFacade class>>execute:on:
>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>> HTTPSocket class>>httpGet:args:user:passwd:
>>> [contents := HTTPSocket
>>>                                httpGet: (self urlForFileNamed: aString)
>>>                                args: nil
>>>                                user: self user
>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>> [workBlock value] in [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex total
>>>                                        ifNil: [true]
>>>                                        ifNotNil: [ex amount == nil])
>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>                                                        or: [ex total = ex amount])
>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>> BlockClosure>>on:do:
>>> [:bar | [workBlock value]
>>>                on: HTTPProgress
>>>                do: [:ex |
>>>                        (ex total
>>>                                        ifNil: [true]
>>>                                        ifNotNil: [ex amount == nil])
>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>                                                        or: [ex total = ex amount])
>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>                on: ProgressNotification
>>>                do: [:ex |
>>>                        ex extraParam isString
>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>> ex extraParam].
>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>> BlockClosure>>on:do:
>>> [[result := workBlock value: progress]
>>>                on: ProgressNotification
>>>                do: [:ex |
>>>                        ex extraParam isString
>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>> ex extraParam].
>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>> BlockClosure>>ensure:
>>> ProgressInitiationException>>defaultMorphicAction
>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>> ProgressInitiationException>>defaultAction
>>> UndefinedObject>>handleSignal:
>>> MethodContext(ContextPart)>>handleSignal:
>>> ProgressInitiationException(Exception)>>signal
>>> ProgressInitiationException>>display:at:from:to:during:
>>> ProgressInitiationException class>>display:at:from:to:during:
>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>> MCHttpRepository>>displayProgress:during:
>>> MCHttpRepository>>readStreamForFileNamed:do:
>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>  - - - - - - - - - - - - - - -
>>>                        - - - - - - - - - - - - - - - - - -
>>> [self resizeCache: readerCache.
>>>        super
>>>                versionReaderForFileNamed: aString
>>>                do: [:r | r
>>>                                ifNotNil: [readerCache at: aString put: r]]] in
>>> MCHttpRepository>>versionReaderForFileNamed:
>>> Dictionary>>at:ifAbsent:
>>> MCHttpRepository>>versionReaderForFileNamed:
>>> MCHttpRepository>>versionReaderForFileNamed:do:
>>> MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
>>> [self loadVersionFromFileNamed: aString] in
>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>> Dictionary>>at:ifAbsent:
>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>> [version := repository versionFromFileNamed: selectedVersion] in
>>> MCFileRepositoryInspector>>version
>>> BlockClosure>>ensure:
>>> CursorWithMask(Cursor)>>showWhile:
>>> MCFileRepositoryInspector>>version
>>> MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
>>> MCFileRepositoryInspector(MCVersionInspector)>>summary
>>> PluggableTextMorph>>getText
>>> PluggableTextMorph>>update:
>>> [:aDependent | aDependent update: aParameter] in
>>> MCFileRepositoryInspector(Object)>>changed:
>>> DependentsArray>>do:
>>> MCFileRepositoryInspector(Object)>>changed:
>>> MCFileRepositoryInspector>>versionSelection:
>>> PluggableListMorph>>changeModelSelection:
>>> PluggableListMorph>>mouseUpOnSingle:
>>> PluggableListMorph>>mouseUp:
>>> PluggableListMorph(Morph)>>handleMouseUp:
>>> MouseButtonEvent>>sentTo:
>>> PluggableListMorph(Morph)>>handleEvent:
>>> MorphicEventDispatcher>>dispatchDefault:with:
>>> MorphicEventDispatcher>>dispatchEvent:with:
>>> PluggableListMorph(Morph)>>processEvent:using:
>>> PluggableListMorph(Morph)>>processEvent:
>>> PluggableListMorph>>handleFocusEvent:
>>> [ActiveHand := self.
>>>        ActiveEvent := anEvent.
>>>        result := focusHolder
>>>                                handleFocusEvent: (anEvent
>>>                                                transformedBy: (focusHolder transformedFrom: self))] in
>>> HandMorph>>sendFocusEvent:to:clear:
>>> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
>>> BlockClosure>>on:do:
>>> PasteUpMorph>>becomeActiveDuring:
>>> HandMorph>>sendFocusEvent:to:clear:
>>> HandMorph>>sendEvent:focus:clear:
>>> HandMorph>>sendMouseEvent:
>>> HandMorph>>handleEvent:
>>> HandMorph>>processEvents
>>> [:h |
>>> ActiveHand := h.
>>>        h processEvents.
>>>        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
>>> Array(SequenceableCollection)>>do:
>>> WorldState>>handsDo:
>>> WorldState>>doOneCycleNowFor:
>>> WorldState>>doOneCycleFor:
>>> PasteUpMorph>>doOneCycle
>>> [[World doOneCycle.
>>>        Processor yield.
>>>        false] whileFalse.
>>>        nil] in Project class>>spawnNewProcess
>>> [self value.
>>>        Processor terminateActive] in BlockClosure>>newProcess
>>>
>>>
>>>
>>>
>>> On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:
>>>>
>>>> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>>>>
>>>>> Many thanks. Unfortunately this version throws errors when I try to
>>>>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>>>>> try to build my image. Can you tell me what is the *most* stable
>>>>> version that I can use with Cog and SS 3.x?
>>>>>
>>>>
>>>> This one. I have never seen that error. So.. a case for the bug tracker.
>>>>
>>>>        http://code.google.com/p/pharo/issues
>>>>
>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>
>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>
>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>> from hudson to jenkins. And, and...
>>>>>>
>>>>>> So for now:
>>>>>>
>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>
>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>
>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>> one package, where I can just update the image.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ~JT
>>>>>
>>>>
>>>> --
>>>> Marcus Denker -- http://marcusdenker.de
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> ~JT
>>>
>>
>>
>>
>> --
>> ~JT
>>
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
Great, please let me know if I can do anything to help out.

On Thu, Sep 8, 2011 at 13:41, Sven Van Caekenberghe <[hidden email]> wrote:

> Hey John,
>
> Yes there seems to be a problem.
> I will try to investigate as soon as possible but I won't have time tonight, at earliest tomorrow morning EU time.
> Sorry for the inconvenience.
>
> Sven
>
> On 08 Sep 2011, at 19:25, John Toohey wrote:
>
>> Just tried it on Linux, and its the same. MC cannot read my source
>> repos. This is a little scary.
>>
>> On Thu, Sep 8, 2011 at 12:44, John Toohey <[hidden email]> wrote:
>>> If it helps I can give access to the code repo, and anyone can then
>>> reproduce the bug.
>>>
>>> On Thu, Sep 8, 2011 at 11:55, John Toohey <[hidden email]> wrote:
>>>> Bug tracker tells me that my comment is too long! Anyhow here is what
>>>> I tried to post. Would love a solution as all my sources code is now
>>>> locked out of Pharo.
>>>>
>>>> Pharo image: Pharo 1.3
>>>> Pharo core version: Latest update: #13298
>>>> Virtual machine used: 1.3 One-Click with Cog
>>>> Description
>>>>
>>>> When I open MC and create a package for my code, I get an "Illegal
>>>> UTF-8 encoding" error when I try to open any of my packages.
>>>>
>>>> 8 September 2011 11:49:57 am
>>>>
>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>> VMMaker-oscog.54] Pharo Development 1.1
>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>
>>>> ZnUTF8Encoder(Object)>>error:
>>>>        Receiver: a ZnUTF8Encoder
>>>>        Arguments and temporary variables:
>>>>                aString:        'illegal UTF-8 encoding'
>>>>        Receiver's instance variables:
>>>> a ZnUTF8Encoder
>>>>
>>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>                        = 128
>>>>                ifTrue: [code := (code bitShift: 6)
>>>>                                                + (nextByte bitAnd: 63)]
>>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>>> ZnUTF8Encoder>>nextFromStream:
>>>>        Receiver: a ZnUTF8Encoder
>>>>        Arguments and temporary variables:
>>>>                stream:         a ZnLimitedReadStream
>>>>                code:   #(26)
>>>>                nextByte:       94
>>>>        Receiver's instance variables:
>>>> a ZnUTF8Encoder
>>>>
>>>> ZnUTF8Encoder>>nextFromStream:
>>>>        Receiver: a ZnUTF8Encoder
>>>>        Arguments and temporary variables:
>>>>                stream:         a ZnLimitedReadStream
>>>>                byte:   218
>>>>                next:   [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>                        = 128
>>>>                ifTrue: ...etc...
>>>>                code:   #(26)
>>>>        Receiver's instance variables:
>>>> a ZnUTF8Encoder
>>>>
>>>> [:stringStream |
>>>> [readStream atEnd]
>>>>                whileFalse: [stringStream
>>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>        Arguments and temporary variables:
>>>>                readStream:     a WriteStream 'PK    '
>>>>                stringStream:   a ZnLimitedReadStream
>>>>        Receiver's instance variables:
>>>>                contentType:    text/plain;charset=UTF-8
>>>>                contentLength:  9025
>>>>                string:         nil
>>>>                encoder:        a ZnUTF8Encoder
>>>>
>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>        Receiver: String
>>>>        Arguments and temporary variables:
>>>>                newSize:        100
>>>>                blockWithArg:   [:stringStream |
>>>> [readStream atEnd]
>>>>                whileFalse: [stringStream
>>>> ...etc...
>>>>                stream:         a WriteStream 'PK    '
>>>>        Receiver's instance variables:
>>>>                superclass:     ArrayedCollection
>>>>                methodDict:     a MethodDictionary(size 267)
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>> isLegalInstVar...etc...
>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>                name:   #String
>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>> 13 14 15 16...etc...
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Collections-Strings'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> String class(SequenceableCollection class)>>streamContents:
>>>>        Receiver: String
>>>>        Arguments and temporary variables:
>>>>                blockWithArg:   [:stringStream |
>>>> [readStream atEnd]
>>>>                whileFalse: [stringStream
>>>> ...etc...
>>>>        Receiver's instance variables:
>>>>                superclass:     ArrayedCollection
>>>>                methodDict:     a MethodDictionary(size 267)
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>> isLegalInstVar...etc...
>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>                name:   #String
>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>> 13 14 15 16...etc...
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Collections-Strings'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> ZnStringEntity>>readLimitedFrom:
>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>        Arguments and temporary variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                readStream:     a ZnLimitedReadStream
>>>>                newString:      nil
>>>>        Receiver's instance variables:
>>>>                contentType:    text/plain;charset=UTF-8
>>>>                contentLength:  9025
>>>>                string:         nil
>>>>                encoder:        a ZnUTF8Encoder
>>>>
>>>> ZnStringEntity>>readFrom:
>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>        Arguments and temporary variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Receiver's instance variables:
>>>>                contentType:    text/plain;charset=UTF-8
>>>>                contentLength:  9025
>>>>                string:         nil
>>>>                encoder:        a ZnUTF8Encoder
>>>>
>>>> ZnEntity class>>readFrom:usingType:andLength:
>>>>        Receiver: ZnEntity
>>>>        Arguments and temporary variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                mimeType:       text/plain;charset=UTF-8
>>>>                length:         9025
>>>>                newEntity:      a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>        Receiver's instance variables:
>>>>                superclass:     Object
>>>>                methodDict:     a
>>>> MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
>>>> Com...etc...
>>>>                format:         134
>>>>                instanceVariables:      #('contentType' 'contentLength')
>>>>                organization:   ('accessing' contentLength contentLength: contentType
>>>> contentType...etc...
>>>>                subclasses:     {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
>>>> ZnMultiPartF...etc...
>>>>                name:   #ZnEntity
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Zinc-HTTP-Core'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> ZnEntityReader>>readEntityFromStream
>>>>        Receiver: a ZnEntityReader
>>>>        Arguments and temporary variables:
>>>>                entity:         nil
>>>>                decodedEntityLength:    9025
>>>>                chunkedStream:  nil
>>>>        Receiver's instance variables:
>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                streaming:      nil
>>>>                allowReadingUpToEnd:    true
>>>>
>>>> ZnEntityReader>>readEntity
>>>>        Receiver: a ZnEntityReader
>>>>        Arguments and temporary variables:
>>>>                entity:         nil
>>>>        Receiver's instance variables:
>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                streaming:      nil
>>>>                allowReadingUpToEnd:    true
>>>>
>>>> ZnResponse(ZnMessage)>>readFrom:
>>>>        Receiver: a ZnResponse(200 OK)
>>>>        Arguments and temporary variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Receiver's instance variables:
>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>                entity:         nil
>>>>                statusLine:     a ZnStatusLine(200 OK)
>>>>
>>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>>        Receiver: ZnResponse
>>>>        Arguments and temporary variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Receiver's instance variables:
>>>>                superclass:     ZnMessage
>>>>                methodDict:     a
>>>> MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
>>>> Compile...etc...
>>>>                format:         136
>>>>                instanceVariables:      #('statusLine')
>>>>                organization:   ('accessing' addCookie: code location location:
>>>> setKeepAliveFor: ...etc...
>>>>                subclasses:     nil
>>>>                name:   #ZnResponse
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Zinc-HTTP-Core'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> ZnClient class>>execute:on:
>>>>        Receiver: ZnClient
>>>>        Arguments and temporary variables:
>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Receiver's instance variables:
>>>>                superclass:     Object
>>>>                methodDict:     a MethodDictionary()
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('as yet unclassified')
>>>>
>>>>                subclasses:     nil
>>>>                name:   #ZnClient
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>>        Receiver: ZnHTTPSocketFacade
>>>>        Arguments and temporary variables:
>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Receiver's instance variables:
>>>>                superclass:     Object
>>>>                methodDict:     a MethodDictionary()
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('as yet unclassified')
>>>>
>>>>                subclasses:     nil
>>>>                name:   #ZnHTTPSocketFacade
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> BlockClosure>>ensure:
>>>>        Receiver: [ZnClient execute: request on: stream]
>>>>        Arguments and temporary variables:
>>>>                aBlock:         [stream close]
>>>>                complete:       nil
>>>>                returnValue:    nil
>>>>        Receiver's instance variables:
>>>>                outerContext:   ZnHTTPSocketFacade class>>execute:on:
>>>>                startpc:        42
>>>>                numArgs:        0
>>>>
>>>> ZnHTTPSocketFacade class>>execute:on:
>>>>        Receiver: ZnHTTPSocketFacade
>>>>        Arguments and temporary variables:
>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Receiver's instance variables:
>>>>                superclass:     Object
>>>>                methodDict:     a MethodDictionary()
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('as yet unclassified')
>>>>
>>>>                subclasses:     nil
>>>>                name:   #ZnHTTPSocketFacade
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>>        Receiver: ZnHTTPSocketFacade
>>>>        Arguments and temporary variables:
>>>>                urlObject:      'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
>>>>                queryArguments:         nil
>>>>                username:       'jt'
>>>>                password:       'trimixisg4u'
>>>>                url:    http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>                response:       nil
>>>>        Receiver's instance variables:
>>>>                superclass:     Object
>>>>                methodDict:     a MethodDictionary()
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('as yet unclassified')
>>>>
>>>>                subclasses:     nil
>>>>                name:   #ZnHTTPSocketFacade
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>>        Receiver: HTTPSocket
>>>>        Arguments and temporary variables:
>>>>                url:    'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                queryArguments:         nil
>>>>                username:       'jt'
>>>>                password:       'trimixisg4u'
>>>>        Receiver's instance variables:
>>>>                superclass:     Socket
>>>>                methodDict:     a
>>>> MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
>>>> Compi...etc...
>>>>                format:         144
>>>>                instanceVariables:      #('headerTokens' 'headers' 'responseCode')
>>>>                organization:   ('accessing' contentType contentType: contentsLength:
>>>> getHeader: ...etc...
>>>>                subclasses:     nil
>>>>                name:   #HTTPSocket
>>>>                classPool:      a Dictionary(#HTTPBlabEmail->''
>>>> #HTTPProxyCredentials->'' #HTTPProxy...etc...
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Network-Protocols'
>>>>                traitComposition:       nil
>>>>                localSelectors:         nil
>>>>
>>>> [contents := HTTPSocket
>>>>                                httpGet: (self urlForFileNamed: aString)
>>>>                                args: nil
>>>>                                user: self user
>>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>        Arguments and temporary variables:
>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                contents:       #(nil)
>>>>        Receiver's instance variables:
>>>>                creationTemplate:       'MCHttpRepository
>>>>        location: ''http://git.parspro.com/mc''
>>>>        u...etc...
>>>>                storeDiffs:     nil
>>>>                cache:  a Dictionary()
>>>>                allFileNames:   nil
>>>>                location:       'http://git.parspro.com/mc'
>>>>                user:   'jt'
>>>>                password:       'trimixisg4u'
>>>>                readerCache:    a Dictionary()
>>>>
>>>> [workBlock value] in [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex total
>>>>                                        ifNil: [true]
>>>>                                        ifNotNil: [ex amount == nil])
>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>                                                        or: [ex total = ex amount])
>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>        Arguments and temporary variables:
>>>>                workBlock:      [contents := HTTPSocket
>>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>>        Receiver's instance variables:
>>>>                creationTemplate:       'MCHttpRepository
>>>>        location: ''http://git.parspro.com/mc''
>>>>        u...etc...
>>>>                storeDiffs:     nil
>>>>                cache:  a Dictionary()
>>>>                allFileNames:   nil
>>>>                location:       'http://git.parspro.com/mc'
>>>>                user:   'jt'
>>>>                password:       'trimixisg4u'
>>>>                readerCache:    a Dictionary()
>>>>
>>>> BlockClosure>>on:do:
>>>>        Receiver: [workBlock value]
>>>>        Arguments and temporary variables:
>>>>                exception:      HTTPProgress
>>>>                handlerAction:  [:ex |
>>>> (ex total
>>>>                        ifNil: [true]
>>>>                        ifNotNil: [ex amount == ni...etc...
>>>>                handlerActive:  true
>>>>        Receiver's instance variables:
>>>>                outerContext:   [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex...etc...
>>>>                startpc:        114
>>>>                numArgs:        0
>>>>
>>>> [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex total
>>>>                                        ifNil: [true]
>>>>                                        ifNotNil: [ex amount == nil])
>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>                                                        or: [ex total = ex amount])
>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>        Arguments and temporary variables:
>>>>                workBlock:      [:barValArg |
>>>> | barVal return newBarSize |
>>>> barVal := barValArg.
>>>>        re...etc...
>>>>                nextUpdateTime:         [contents := HTTPSocket
>>>>                                httpGet: (self urlForFileNamed: aSt...etc...
>>>>                bar:    #(0)
>>>>        Receiver's instance variables:
>>>>                creationTemplate:       'MCHttpRepository
>>>>        location: ''http://git.parspro.com/mc''
>>>>        u...etc...
>>>>                storeDiffs:     nil
>>>>                cache:  a Dictionary()
>>>>                allFileNames:   nil
>>>>                location:       'http://git.parspro.com/mc'
>>>>                user:   'jt'
>>>>                password:       'trimixisg4u'
>>>>                readerCache:    a Dictionary()
>>>>
>>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>>                on: ProgressNotification
>>>>                do: [:ex |
>>>>                        ex extraParam isString
>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>> ex extraParam].
>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>                progress:       [:barValArg |
>>>> | barVal return newBarSize |
>>>> barVal := barValArg.
>>>>        ret...etc...
>>>>                result:         #(nil)
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       a MorphicUIManager
>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>                maxVal:         1.0
>>>>                minVal:         0.0
>>>>                aPoint:         960@589
>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>
>>>> BlockClosure>>on:do:
>>>>        Receiver: [result := workBlock value: progress]
>>>>        Arguments and temporary variables:
>>>>                exception:      ProgressNotification
>>>>                handlerAction:  [:ex |
>>>> ex extraParam isString
>>>>                ifTrue: [SystemProgressMorph un...etc...
>>>>                handlerActive:  true
>>>>        Receiver's instance variables:
>>>>                outerContext:   [[result := workBlock value: progress]
>>>>                on: ProgressNotification...etc...
>>>>                startpc:        87
>>>>                numArgs:        0
>>>>
>>>> [[result := workBlock value: progress]
>>>>                on: ProgressNotification
>>>>                do: [:ex |
>>>>                        ex extraParam isString
>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>> ex extraParam].
>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>                progress:       [:barValArg |
>>>> | barVal return newBarSize |
>>>> barVal := barValArg.
>>>>        ret...etc...
>>>>                result:         #(nil)
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       a MorphicUIManager
>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>                maxVal:         1.0
>>>>                minVal:         0.0
>>>>                aPoint:         960@589
>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>
>>>> BlockClosure>>ensure:
>>>>        Receiver: [[result := workBlock value: progress]
>>>>                on: ProgressNotification
>>>>                do: [:ex |
>>>>                        ex extr...etc...
>>>>        Arguments and temporary variables:
>>>>                aBlock:         [SystemProgressMorph close: progress]
>>>>                complete:       nil
>>>>                returnValue:    nil
>>>>        Receiver's instance variables:
>>>>                outerContext:   ProgressInitiationException>>defaultMorphicAction
>>>>                startpc:        81
>>>>                numArgs:        0
>>>>
>>>> ProgressInitiationException>>defaultMorphicAction
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>                progress:       [:barValArg |
>>>> | barVal return newBarSize |
>>>> barVal := barValArg.
>>>>        ret...etc...
>>>>                result:         #(nil)
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       a MorphicUIManager
>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>                maxVal:         1.0
>>>>                minVal:         0.0
>>>>                aPoint:         960@589
>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>
>>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>>        Receiver: a MorphicUIManager
>>>>        Arguments and temporary variables:
>>>>                anException:    ProgressInitiationException
>>>>        Receiver's instance variables:
>>>>                interactiveParser:      nil
>>>>
>>>> ProgressInitiationException>>defaultAction
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       a MorphicUIManager
>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>                maxVal:         1.0
>>>>                minVal:         0.0
>>>>                aPoint:         960@589
>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>
>>>> UndefinedObject>>handleSignal:
>>>>        Receiver: nil
>>>>        Arguments and temporary variables:
>>>>                exception:      ProgressInitiationException
>>>>        Receiver's instance variables:
>>>> nil
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>>                exception:      ProgressInitiationException
>>>>                val:    nil
>>>>        Receiver's instance variables:
>>>>                sender:         PasteUpMorph>>becomeActiveDuring:
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [aBlock value]
>>>>
>>>> ProgressInitiationException(Exception)>>signal
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       a MorphicUIManager
>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>                maxVal:         1.0
>>>>                minVal:         0.0
>>>>                aPoint:         960@589
>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>
>>>> ProgressInitiationException>>display:at:from:to:during:
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>                argString:      'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                argPoint:       960@589
>>>>                argMinVal:      0.0
>>>>                argMaxVal:      1.0
>>>>                argWorkBlock:   [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex...etc...
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       a MorphicUIManager
>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>                maxVal:         1.0
>>>>                minVal:         0.0
>>>>                aPoint:         960@589
>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>
>>>> ProgressInitiationException class>>display:at:from:to:during:
>>>>        Receiver: ProgressInitiationException
>>>>        Arguments and temporary variables:
>>>>                aString:        'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                aPoint:         960@589
>>>>                minVal:         0.0
>>>>                maxVal:         1.0
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>        Receiver's instance variables:
>>>>                superclass:     Exception
>>>>                methodDict:     a
>>>> MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
>>>>                format:         152
>>>>                instanceVariables:      #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
>>>>                organization:   ('*Morphic' defaultMorphicAction)
>>>> ('accessing' maxVal minVal poin...etc...
>>>>                subclasses:     nil
>>>>                name:   #ProgressInitiationException
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'UIManager-Support'
>>>>                traitComposition:       nil
>>>>                localSelectors:         nil
>>>>
>>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>>        Receiver: a MorphicUIManager
>>>>        Arguments and temporary variables:
>>>>                titleString:    'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                aPoint:         960@589
>>>>                minVal:         0.0
>>>>                maxVal:         1.0
>>>>                workBlock:      [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex to...etc...
>>>>        Receiver's instance variables:
>>>>                interactiveParser:      nil
>>>>
>>>> MCHttpRepository>>displayProgress:during:
>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>        Arguments and temporary variables:
>>>>                label:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                workBlock:      [contents := HTTPSocket
>>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>>                nextUpdateTime:         #(0)
>>>>        Receiver's instance variables:
>>>>                creationTemplate:       'MCHttpRepository
>>>>        location: ''http://git.parspro.com/mc''
>>>>        u...etc...
>>>>                storeDiffs:     nil
>>>>                cache:  a Dictionary()
>>>>                allFileNames:   nil
>>>>                location:       'http://git.parspro.com/mc'
>>>>                user:   'jt'
>>>>                password:       'trimixisg4u'
>>>>                readerCache:    a Dictionary()
>>>>
>>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>        Arguments and temporary variables:
>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                aBlock:         [:s | (MCVersionReader readerClassForFileNamed: aString)
>>>>                ifNotNil: [:...etc...
>>>>                contents:       #(nil)
>>>>        Receiver's instance variables:
>>>>                creationTemplate:       'MCHttpRepository
>>>>        location: ''http://git.parspro.com/mc''
>>>>        u...etc...
>>>>                storeDiffs:     nil
>>>>                cache:  a Dictionary()
>>>>                allFileNames:   nil
>>>>                location:       'http://git.parspro.com/mc'
>>>>                user:   'jt'
>>>>                password:       'trimixisg4u'
>>>>                readerCache:    a Dictionary()
>>>>
>>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>        Arguments and temporary variables:
>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>                aBlock:         [:r | r
>>>>                ifNotNil: [readerCache at: aString put: r]]
>>>>        Receiver's instance variables:
>>>>                creationTemplate:       'MCHttpRepository
>>>>        location: ''http://git.parspro.com/mc''
>>>>        u...etc...
>>>>                storeDiffs:     nil
>>>>                cache:  a Dictionary()
>>>>                allFileNames:   nil
>>>>                location:       'http://git.parspro.com/mc'
>>>>                user:   'jt'
>>>>                password:       'trimixisg4u'
>>>>                readerCache:    a Dictionary()
>>>>
>>>>
>>>> --- The full stack ---
>>>> ZnUTF8Encoder(Object)>>error:
>>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>                        = 128
>>>>                ifTrue: [code := (code bitShift: 6)
>>>>                                                + (nextByte bitAnd: 63)]
>>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>>> ZnUTF8Encoder>>nextFromStream:
>>>> ZnUTF8Encoder>>nextFromStream:
>>>> [:stringStream |
>>>> [readStream atEnd]
>>>>                whileFalse: [stringStream
>>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>> String class(SequenceableCollection class)>>streamContents:
>>>> ZnStringEntity>>readLimitedFrom:
>>>> ZnStringEntity>>readFrom:
>>>> ZnEntity class>>readFrom:usingType:andLength:
>>>> ZnEntityReader>>readEntityFromStream
>>>> ZnEntityReader>>readEntity
>>>> ZnResponse(ZnMessage)>>readFrom:
>>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>> ZnClient class>>execute:on:
>>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>> BlockClosure>>ensure:
>>>> ZnHTTPSocketFacade class>>execute:on:
>>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>> [contents := HTTPSocket
>>>>                                httpGet: (self urlForFileNamed: aString)
>>>>                                args: nil
>>>>                                user: self user
>>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>> [workBlock value] in [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex total
>>>>                                        ifNil: [true]
>>>>                                        ifNotNil: [ex amount == nil])
>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>                                                        or: [ex total = ex amount])
>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>> BlockClosure>>on:do:
>>>> [:bar | [workBlock value]
>>>>                on: HTTPProgress
>>>>                do: [:ex |
>>>>                        (ex total
>>>>                                        ifNil: [true]
>>>>                                        ifNotNil: [ex amount == nil])
>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>                                                        or: [ex total = ex amount])
>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>>                on: ProgressNotification
>>>>                do: [:ex |
>>>>                        ex extraParam isString
>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>> ex extraParam].
>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>> BlockClosure>>on:do:
>>>> [[result := workBlock value: progress]
>>>>                on: ProgressNotification
>>>>                do: [:ex |
>>>>                        ex extraParam isString
>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>> ex extraParam].
>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>> BlockClosure>>ensure:
>>>> ProgressInitiationException>>defaultMorphicAction
>>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>> ProgressInitiationException>>defaultAction
>>>> UndefinedObject>>handleSignal:
>>>> MethodContext(ContextPart)>>handleSignal:
>>>> ProgressInitiationException(Exception)>>signal
>>>> ProgressInitiationException>>display:at:from:to:during:
>>>> ProgressInitiationException class>>display:at:from:to:during:
>>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>> MCHttpRepository>>displayProgress:during:
>>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>>  - - - - - - - - - - - - - - -
>>>>                        - - - - - - - - - - - - - - - - - -
>>>> [self resizeCache: readerCache.
>>>>        super
>>>>                versionReaderForFileNamed: aString
>>>>                do: [:r | r
>>>>                                ifNotNil: [readerCache at: aString put: r]]] in
>>>> MCHttpRepository>>versionReaderForFileNamed:
>>>> Dictionary>>at:ifAbsent:
>>>> MCHttpRepository>>versionReaderForFileNamed:
>>>> MCHttpRepository>>versionReaderForFileNamed:do:
>>>> MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
>>>> [self loadVersionFromFileNamed: aString] in
>>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>>> Dictionary>>at:ifAbsent:
>>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>>> [version := repository versionFromFileNamed: selectedVersion] in
>>>> MCFileRepositoryInspector>>version
>>>> BlockClosure>>ensure:
>>>> CursorWithMask(Cursor)>>showWhile:
>>>> MCFileRepositoryInspector>>version
>>>> MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
>>>> MCFileRepositoryInspector(MCVersionInspector)>>summary
>>>> PluggableTextMorph>>getText
>>>> PluggableTextMorph>>update:
>>>> [:aDependent | aDependent update: aParameter] in
>>>> MCFileRepositoryInspector(Object)>>changed:
>>>> DependentsArray>>do:
>>>> MCFileRepositoryInspector(Object)>>changed:
>>>> MCFileRepositoryInspector>>versionSelection:
>>>> PluggableListMorph>>changeModelSelection:
>>>> PluggableListMorph>>mouseUpOnSingle:
>>>> PluggableListMorph>>mouseUp:
>>>> PluggableListMorph(Morph)>>handleMouseUp:
>>>> MouseButtonEvent>>sentTo:
>>>> PluggableListMorph(Morph)>>handleEvent:
>>>> MorphicEventDispatcher>>dispatchDefault:with:
>>>> MorphicEventDispatcher>>dispatchEvent:with:
>>>> PluggableListMorph(Morph)>>processEvent:using:
>>>> PluggableListMorph(Morph)>>processEvent:
>>>> PluggableListMorph>>handleFocusEvent:
>>>> [ActiveHand := self.
>>>>        ActiveEvent := anEvent.
>>>>        result := focusHolder
>>>>                                handleFocusEvent: (anEvent
>>>>                                                transformedBy: (focusHolder transformedFrom: self))] in
>>>> HandMorph>>sendFocusEvent:to:clear:
>>>> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
>>>> BlockClosure>>on:do:
>>>> PasteUpMorph>>becomeActiveDuring:
>>>> HandMorph>>sendFocusEvent:to:clear:
>>>> HandMorph>>sendEvent:focus:clear:
>>>> HandMorph>>sendMouseEvent:
>>>> HandMorph>>handleEvent:
>>>> HandMorph>>processEvents
>>>> [:h |
>>>> ActiveHand := h.
>>>>        h processEvents.
>>>>        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
>>>> Array(SequenceableCollection)>>do:
>>>> WorldState>>handsDo:
>>>> WorldState>>doOneCycleNowFor:
>>>> WorldState>>doOneCycleFor:
>>>> PasteUpMorph>>doOneCycle
>>>> [[World doOneCycle.
>>>>        Processor yield.
>>>>        false] whileFalse.
>>>>        nil] in Project class>>spawnNewProcess
>>>> [self value.
>>>>        Processor terminateActive] in BlockClosure>>newProcess
>>>>
>>>>
>>>>
>>>>
>>>> On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:
>>>>>
>>>>> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>>>>>
>>>>>> Many thanks. Unfortunately this version throws errors when I try to
>>>>>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>>>>>> try to build my image. Can you tell me what is the *most* stable
>>>>>> version that I can use with Cog and SS 3.x?
>>>>>>
>>>>>
>>>>> This one. I have never seen that error. So.. a case for the bug tracker.
>>>>>
>>>>>        http://code.google.com/p/pharo/issues
>>>>>
>>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>>
>>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>>
>>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>>> from hudson to jenkins. And, and...
>>>>>>>
>>>>>>> So for now:
>>>>>>>
>>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>>
>>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>>
>>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>>> one package, where I can just update the image.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> ~JT
>>>>>>
>>>>>
>>>>> --
>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ~JT
>>>>
>>>
>>>
>>>
>>> --
>>> ~JT
>>>
>>
>>
>>
>
>
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Sven Van Caekenberghe
John,

I think I found it: your server (currently) serves .mcz files as text/plain;utf-8 and not as application/octet-stream (or some other binary mime type) as it should be. Pharo 1.3 and up (actually Zinc HTTP Components) correctly interprets the response and tries to decode it as an utf-8 string. Since it is arbitrary binary data (actually a zip fle) this is bound to fail at some point.

HTH,

Sven

On 08 Sep 2011, at 19:45, John Toohey wrote:

> Great, please let me know if I can do anything to help out.
>
> On Thu, Sep 8, 2011 at 13:41, Sven Van Caekenberghe <[hidden email]> wrote:
>> Hey John,
>>
>> Yes there seems to be a problem.
>> I will try to investigate as soon as possible but I won't have time tonight, at earliest tomorrow morning EU time.
>> Sorry for the inconvenience.
>>
>> Sven
>>
>> On 08 Sep 2011, at 19:25, John Toohey wrote:
>>
>>> Just tried it on Linux, and its the same. MC cannot read my source
>>> repos. This is a little scary.
>>>
>>> On Thu, Sep 8, 2011 at 12:44, John Toohey <[hidden email]> wrote:
>>>> If it helps I can give access to the code repo, and anyone can then
>>>> reproduce the bug.
>>>>
>>>> On Thu, Sep 8, 2011 at 11:55, John Toohey <[hidden email]> wrote:
>>>>> Bug tracker tells me that my comment is too long! Anyhow here is what
>>>>> I tried to post. Would love a solution as all my sources code is now
>>>>> locked out of Pharo.
>>>>>
>>>>> Pharo image: Pharo 1.3
>>>>> Pharo core version: Latest update: #13298
>>>>> Virtual machine used: 1.3 One-Click with Cog
>>>>> Description
>>>>>
>>>>> When I open MC and create a package for my code, I get an "Illegal
>>>>> UTF-8 encoding" error when I try to open any of my packages.
>>>>>
>>>>> 8 September 2011 11:49:57 am
>>>>>
>>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>>> VMMaker-oscog.54] Pharo Development 1.1
>>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>>
>>>>> ZnUTF8Encoder(Object)>>error:
>>>>>        Receiver: a ZnUTF8Encoder
>>>>>        Arguments and temporary variables:
>>>>>                aString:        'illegal UTF-8 encoding'
>>>>>        Receiver's instance variables:
>>>>> a ZnUTF8Encoder
>>>>>
>>>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>>                        = 128
>>>>>                ifTrue: [code := (code bitShift: 6)
>>>>>                                                + (nextByte bitAnd: 63)]
>>>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>>        Receiver: a ZnUTF8Encoder
>>>>>        Arguments and temporary variables:
>>>>>                stream:         a ZnLimitedReadStream
>>>>>                code:   #(26)
>>>>>                nextByte:       94
>>>>>        Receiver's instance variables:
>>>>> a ZnUTF8Encoder
>>>>>
>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>>        Receiver: a ZnUTF8Encoder
>>>>>        Arguments and temporary variables:
>>>>>                stream:         a ZnLimitedReadStream
>>>>>                byte:   218
>>>>>                next:   [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>>                        = 128
>>>>>                ifTrue: ...etc...
>>>>>                code:   #(26)
>>>>>        Receiver's instance variables:
>>>>> a ZnUTF8Encoder
>>>>>
>>>>> [:stringStream |
>>>>> [readStream atEnd]
>>>>>                whileFalse: [stringStream
>>>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>        Arguments and temporary variables:
>>>>>                readStream:     a WriteStream 'PK    '
>>>>>                stringStream:   a ZnLimitedReadStream
>>>>>        Receiver's instance variables:
>>>>>                contentType:    text/plain;charset=UTF-8
>>>>>                contentLength:  9025
>>>>>                string:         nil
>>>>>                encoder:        a ZnUTF8Encoder
>>>>>
>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>        Receiver: String
>>>>>        Arguments and temporary variables:
>>>>>                newSize:        100
>>>>>                blockWithArg:   [:stringStream |
>>>>> [readStream atEnd]
>>>>>                whileFalse: [stringStream
>>>>> ...etc...
>>>>>                stream:         a WriteStream 'PK    '
>>>>>        Receiver's instance variables:
>>>>>                superclass:     ArrayedCollection
>>>>>                methodDict:     a MethodDictionary(size 267)
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>> isLegalInstVar...etc...
>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>                name:   #String
>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>> 13 14 15 16...etc...
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Collections-Strings'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>        Receiver: String
>>>>>        Arguments and temporary variables:
>>>>>                blockWithArg:   [:stringStream |
>>>>> [readStream atEnd]
>>>>>                whileFalse: [stringStream
>>>>> ...etc...
>>>>>        Receiver's instance variables:
>>>>>                superclass:     ArrayedCollection
>>>>>                methodDict:     a MethodDictionary(size 267)
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>> isLegalInstVar...etc...
>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>                name:   #String
>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>> 13 14 15 16...etc...
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Collections-Strings'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> ZnStringEntity>>readLimitedFrom:
>>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>        Arguments and temporary variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                readStream:     a ZnLimitedReadStream
>>>>>                newString:      nil
>>>>>        Receiver's instance variables:
>>>>>                contentType:    text/plain;charset=UTF-8
>>>>>                contentLength:  9025
>>>>>                string:         nil
>>>>>                encoder:        a ZnUTF8Encoder
>>>>>
>>>>> ZnStringEntity>>readFrom:
>>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>        Arguments and temporary variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Receiver's instance variables:
>>>>>                contentType:    text/plain;charset=UTF-8
>>>>>                contentLength:  9025
>>>>>                string:         nil
>>>>>                encoder:        a ZnUTF8Encoder
>>>>>
>>>>> ZnEntity class>>readFrom:usingType:andLength:
>>>>>        Receiver: ZnEntity
>>>>>        Arguments and temporary variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                mimeType:       text/plain;charset=UTF-8
>>>>>                length:         9025
>>>>>                newEntity:      a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Object
>>>>>                methodDict:     a
>>>>> MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
>>>>> Com...etc...
>>>>>                format:         134
>>>>>                instanceVariables:      #('contentType' 'contentLength')
>>>>>                organization:   ('accessing' contentLength contentLength: contentType
>>>>> contentType...etc...
>>>>>                subclasses:     {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
>>>>> ZnMultiPartF...etc...
>>>>>                name:   #ZnEntity
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Zinc-HTTP-Core'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> ZnEntityReader>>readEntityFromStream
>>>>>        Receiver: a ZnEntityReader
>>>>>        Arguments and temporary variables:
>>>>>                entity:         nil
>>>>>                decodedEntityLength:    9025
>>>>>                chunkedStream:  nil
>>>>>        Receiver's instance variables:
>>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                streaming:      nil
>>>>>                allowReadingUpToEnd:    true
>>>>>
>>>>> ZnEntityReader>>readEntity
>>>>>        Receiver: a ZnEntityReader
>>>>>        Arguments and temporary variables:
>>>>>                entity:         nil
>>>>>        Receiver's instance variables:
>>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                streaming:      nil
>>>>>                allowReadingUpToEnd:    true
>>>>>
>>>>> ZnResponse(ZnMessage)>>readFrom:
>>>>>        Receiver: a ZnResponse(200 OK)
>>>>>        Arguments and temporary variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Receiver's instance variables:
>>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>>                entity:         nil
>>>>>                statusLine:     a ZnStatusLine(200 OK)
>>>>>
>>>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>>>        Receiver: ZnResponse
>>>>>        Arguments and temporary variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Receiver's instance variables:
>>>>>                superclass:     ZnMessage
>>>>>                methodDict:     a
>>>>> MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
>>>>> Compile...etc...
>>>>>                format:         136
>>>>>                instanceVariables:      #('statusLine')
>>>>>                organization:   ('accessing' addCookie: code location location:
>>>>> setKeepAliveFor: ...etc...
>>>>>                subclasses:     nil
>>>>>                name:   #ZnResponse
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Zinc-HTTP-Core'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> ZnClient class>>execute:on:
>>>>>        Receiver: ZnClient
>>>>>        Arguments and temporary variables:
>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Object
>>>>>                methodDict:     a MethodDictionary()
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('as yet unclassified')
>>>>>
>>>>>                subclasses:     nil
>>>>>                name:   #ZnClient
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>>>        Receiver: ZnHTTPSocketFacade
>>>>>        Arguments and temporary variables:
>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Object
>>>>>                methodDict:     a MethodDictionary()
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('as yet unclassified')
>>>>>
>>>>>                subclasses:     nil
>>>>>                name:   #ZnHTTPSocketFacade
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> BlockClosure>>ensure:
>>>>>        Receiver: [ZnClient execute: request on: stream]
>>>>>        Arguments and temporary variables:
>>>>>                aBlock:         [stream close]
>>>>>                complete:       nil
>>>>>                returnValue:    nil
>>>>>        Receiver's instance variables:
>>>>>                outerContext:   ZnHTTPSocketFacade class>>execute:on:
>>>>>                startpc:        42
>>>>>                numArgs:        0
>>>>>
>>>>> ZnHTTPSocketFacade class>>execute:on:
>>>>>        Receiver: ZnHTTPSocketFacade
>>>>>        Arguments and temporary variables:
>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Object
>>>>>                methodDict:     a MethodDictionary()
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('as yet unclassified')
>>>>>
>>>>>                subclasses:     nil
>>>>>                name:   #ZnHTTPSocketFacade
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>>>        Receiver: ZnHTTPSocketFacade
>>>>>        Arguments and temporary variables:
>>>>>                urlObject:      'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
>>>>>                queryArguments:         nil
>>>>>                username:       'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                url:    http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>                response:       nil
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Object
>>>>>                methodDict:     a MethodDictionary()
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('as yet unclassified')
>>>>>
>>>>>                subclasses:     nil
>>>>>                name:   #ZnHTTPSocketFacade
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>>>        Receiver: HTTPSocket
>>>>>        Arguments and temporary variables:
>>>>>                url:    'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                queryArguments:         nil
>>>>>                username:       'jt'
>>>>>                password:       'trimixisg4u'
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Socket
>>>>>                methodDict:     a
>>>>> MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
>>>>> Compi...etc...
>>>>>                format:         144
>>>>>                instanceVariables:      #('headerTokens' 'headers' 'responseCode')
>>>>>                organization:   ('accessing' contentType contentType: contentsLength:
>>>>> getHeader: ...etc...
>>>>>                subclasses:     nil
>>>>>                name:   #HTTPSocket
>>>>>                classPool:      a Dictionary(#HTTPBlabEmail->''
>>>>> #HTTPProxyCredentials->'' #HTTPProxy...etc...
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Network-Protocols'
>>>>>                traitComposition:       nil
>>>>>                localSelectors:         nil
>>>>>
>>>>> [contents := HTTPSocket
>>>>>                                httpGet: (self urlForFileNamed: aString)
>>>>>                                args: nil
>>>>>                                user: self user
>>>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>        Arguments and temporary variables:
>>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                contents:       #(nil)
>>>>>        Receiver's instance variables:
>>>>>                creationTemplate:       'MCHttpRepository
>>>>>        location: ''http://git.parspro.com/mc''
>>>>>        u...etc...
>>>>>                storeDiffs:     nil
>>>>>                cache:  a Dictionary()
>>>>>                allFileNames:   nil
>>>>>                location:       'http://git.parspro.com/mc'
>>>>>                user:   'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                readerCache:    a Dictionary()
>>>>>
>>>>> [workBlock value] in [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex total
>>>>>                                        ifNil: [true]
>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>                                                        or: [ex total = ex amount])
>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>        Arguments and temporary variables:
>>>>>                workBlock:      [contents := HTTPSocket
>>>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>>>        Receiver's instance variables:
>>>>>                creationTemplate:       'MCHttpRepository
>>>>>        location: ''http://git.parspro.com/mc''
>>>>>        u...etc...
>>>>>                storeDiffs:     nil
>>>>>                cache:  a Dictionary()
>>>>>                allFileNames:   nil
>>>>>                location:       'http://git.parspro.com/mc'
>>>>>                user:   'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                readerCache:    a Dictionary()
>>>>>
>>>>> BlockClosure>>on:do:
>>>>>        Receiver: [workBlock value]
>>>>>        Arguments and temporary variables:
>>>>>                exception:      HTTPProgress
>>>>>                handlerAction:  [:ex |
>>>>> (ex total
>>>>>                        ifNil: [true]
>>>>>                        ifNotNil: [ex amount == ni...etc...
>>>>>                handlerActive:  true
>>>>>        Receiver's instance variables:
>>>>>                outerContext:   [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex...etc...
>>>>>                startpc:        114
>>>>>                numArgs:        0
>>>>>
>>>>> [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex total
>>>>>                                        ifNil: [true]
>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>                                                        or: [ex total = ex amount])
>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>        Arguments and temporary variables:
>>>>>                workBlock:      [:barValArg |
>>>>> | barVal return newBarSize |
>>>>> barVal := barValArg.
>>>>>        re...etc...
>>>>>                nextUpdateTime:         [contents := HTTPSocket
>>>>>                                httpGet: (self urlForFileNamed: aSt...etc...
>>>>>                bar:    #(0)
>>>>>        Receiver's instance variables:
>>>>>                creationTemplate:       'MCHttpRepository
>>>>>        location: ''http://git.parspro.com/mc''
>>>>>        u...etc...
>>>>>                storeDiffs:     nil
>>>>>                cache:  a Dictionary()
>>>>>                allFileNames:   nil
>>>>>                location:       'http://git.parspro.com/mc'
>>>>>                user:   'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                readerCache:    a Dictionary()
>>>>>
>>>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>>>                on: ProgressNotification
>>>>>                do: [:ex |
>>>>>                        ex extraParam isString
>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>> ex extraParam].
>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>                progress:       [:barValArg |
>>>>> | barVal return newBarSize |
>>>>> barVal := barValArg.
>>>>>        ret...etc...
>>>>>                result:         #(nil)
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       a MorphicUIManager
>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>                maxVal:         1.0
>>>>>                minVal:         0.0
>>>>>                aPoint:         960@589
>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>
>>>>> BlockClosure>>on:do:
>>>>>        Receiver: [result := workBlock value: progress]
>>>>>        Arguments and temporary variables:
>>>>>                exception:      ProgressNotification
>>>>>                handlerAction:  [:ex |
>>>>> ex extraParam isString
>>>>>                ifTrue: [SystemProgressMorph un...etc...
>>>>>                handlerActive:  true
>>>>>        Receiver's instance variables:
>>>>>                outerContext:   [[result := workBlock value: progress]
>>>>>                on: ProgressNotification...etc...
>>>>>                startpc:        87
>>>>>                numArgs:        0
>>>>>
>>>>> [[result := workBlock value: progress]
>>>>>                on: ProgressNotification
>>>>>                do: [:ex |
>>>>>                        ex extraParam isString
>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>> ex extraParam].
>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>                progress:       [:barValArg |
>>>>> | barVal return newBarSize |
>>>>> barVal := barValArg.
>>>>>        ret...etc...
>>>>>                result:         #(nil)
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       a MorphicUIManager
>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>                maxVal:         1.0
>>>>>                minVal:         0.0
>>>>>                aPoint:         960@589
>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>
>>>>> BlockClosure>>ensure:
>>>>>        Receiver: [[result := workBlock value: progress]
>>>>>                on: ProgressNotification
>>>>>                do: [:ex |
>>>>>                        ex extr...etc...
>>>>>        Arguments and temporary variables:
>>>>>                aBlock:         [SystemProgressMorph close: progress]
>>>>>                complete:       nil
>>>>>                returnValue:    nil
>>>>>        Receiver's instance variables:
>>>>>                outerContext:   ProgressInitiationException>>defaultMorphicAction
>>>>>                startpc:        81
>>>>>                numArgs:        0
>>>>>
>>>>> ProgressInitiationException>>defaultMorphicAction
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>                progress:       [:barValArg |
>>>>> | barVal return newBarSize |
>>>>> barVal := barValArg.
>>>>>        ret...etc...
>>>>>                result:         #(nil)
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       a MorphicUIManager
>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>                maxVal:         1.0
>>>>>                minVal:         0.0
>>>>>                aPoint:         960@589
>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>
>>>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>>>        Receiver: a MorphicUIManager
>>>>>        Arguments and temporary variables:
>>>>>                anException:    ProgressInitiationException
>>>>>        Receiver's instance variables:
>>>>>                interactiveParser:      nil
>>>>>
>>>>> ProgressInitiationException>>defaultAction
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       a MorphicUIManager
>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>                maxVal:         1.0
>>>>>                minVal:         0.0
>>>>>                aPoint:         960@589
>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>
>>>>> UndefinedObject>>handleSignal:
>>>>>        Receiver: nil
>>>>>        Arguments and temporary variables:
>>>>>                exception:      ProgressInitiationException
>>>>>        Receiver's instance variables:
>>>>> nil
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>>                exception:      ProgressInitiationException
>>>>>                val:    nil
>>>>>        Receiver's instance variables:
>>>>>                sender:         PasteUpMorph>>becomeActiveDuring:
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [aBlock value]
>>>>>
>>>>> ProgressInitiationException(Exception)>>signal
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       a MorphicUIManager
>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>                maxVal:         1.0
>>>>>                minVal:         0.0
>>>>>                aPoint:         960@589
>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>
>>>>> ProgressInitiationException>>display:at:from:to:during:
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>                argString:      'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                argPoint:       960@589
>>>>>                argMinVal:      0.0
>>>>>                argMaxVal:      1.0
>>>>>                argWorkBlock:   [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex...etc...
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       a MorphicUIManager
>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>                maxVal:         1.0
>>>>>                minVal:         0.0
>>>>>                aPoint:         960@589
>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>
>>>>> ProgressInitiationException class>>display:at:from:to:during:
>>>>>        Receiver: ProgressInitiationException
>>>>>        Arguments and temporary variables:
>>>>>                aString:        'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                aPoint:         960@589
>>>>>                minVal:         0.0
>>>>>                maxVal:         1.0
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Exception
>>>>>                methodDict:     a
>>>>> MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
>>>>>                format:         152
>>>>>                instanceVariables:      #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
>>>>>                organization:   ('*Morphic' defaultMorphicAction)
>>>>> ('accessing' maxVal minVal poin...etc...
>>>>>                subclasses:     nil
>>>>>                name:   #ProgressInitiationException
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'UIManager-Support'
>>>>>                traitComposition:       nil
>>>>>                localSelectors:         nil
>>>>>
>>>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>>>        Receiver: a MorphicUIManager
>>>>>        Arguments and temporary variables:
>>>>>                titleString:    'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                aPoint:         960@589
>>>>>                minVal:         0.0
>>>>>                maxVal:         1.0
>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex to...etc...
>>>>>        Receiver's instance variables:
>>>>>                interactiveParser:      nil
>>>>>
>>>>> MCHttpRepository>>displayProgress:during:
>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>        Arguments and temporary variables:
>>>>>                label:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                workBlock:      [contents := HTTPSocket
>>>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>>>                nextUpdateTime:         #(0)
>>>>>        Receiver's instance variables:
>>>>>                creationTemplate:       'MCHttpRepository
>>>>>        location: ''http://git.parspro.com/mc''
>>>>>        u...etc...
>>>>>                storeDiffs:     nil
>>>>>                cache:  a Dictionary()
>>>>>                allFileNames:   nil
>>>>>                location:       'http://git.parspro.com/mc'
>>>>>                user:   'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                readerCache:    a Dictionary()
>>>>>
>>>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>        Arguments and temporary variables:
>>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                aBlock:         [:s | (MCVersionReader readerClassForFileNamed: aString)
>>>>>                ifNotNil: [:...etc...
>>>>>                contents:       #(nil)
>>>>>        Receiver's instance variables:
>>>>>                creationTemplate:       'MCHttpRepository
>>>>>        location: ''http://git.parspro.com/mc''
>>>>>        u...etc...
>>>>>                storeDiffs:     nil
>>>>>                cache:  a Dictionary()
>>>>>                allFileNames:   nil
>>>>>                location:       'http://git.parspro.com/mc'
>>>>>                user:   'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                readerCache:    a Dictionary()
>>>>>
>>>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>        Arguments and temporary variables:
>>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>                aBlock:         [:r | r
>>>>>                ifNotNil: [readerCache at: aString put: r]]
>>>>>        Receiver's instance variables:
>>>>>                creationTemplate:       'MCHttpRepository
>>>>>        location: ''http://git.parspro.com/mc''
>>>>>        u...etc...
>>>>>                storeDiffs:     nil
>>>>>                cache:  a Dictionary()
>>>>>                allFileNames:   nil
>>>>>                location:       'http://git.parspro.com/mc'
>>>>>                user:   'jt'
>>>>>                password:       'trimixisg4u'
>>>>>                readerCache:    a Dictionary()
>>>>>
>>>>>
>>>>> --- The full stack ---
>>>>> ZnUTF8Encoder(Object)>>error:
>>>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>>                        = 128
>>>>>                ifTrue: [code := (code bitShift: 6)
>>>>>                                                + (nextByte bitAnd: 63)]
>>>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>> [:stringStream |
>>>>> [readStream atEnd]
>>>>>                whileFalse: [stringStream
>>>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>> ZnStringEntity>>readLimitedFrom:
>>>>> ZnStringEntity>>readFrom:
>>>>> ZnEntity class>>readFrom:usingType:andLength:
>>>>> ZnEntityReader>>readEntityFromStream
>>>>> ZnEntityReader>>readEntity
>>>>> ZnResponse(ZnMessage)>>readFrom:
>>>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>>> ZnClient class>>execute:on:
>>>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>>> BlockClosure>>ensure:
>>>>> ZnHTTPSocketFacade class>>execute:on:
>>>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>>> [contents := HTTPSocket
>>>>>                                httpGet: (self urlForFileNamed: aString)
>>>>>                                args: nil
>>>>>                                user: self user
>>>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>>> [workBlock value] in [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex total
>>>>>                                        ifNil: [true]
>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>                                                        or: [ex total = ex amount])
>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>> BlockClosure>>on:do:
>>>>> [:bar | [workBlock value]
>>>>>                on: HTTPProgress
>>>>>                do: [:ex |
>>>>>                        (ex total
>>>>>                                        ifNil: [true]
>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>                                                        or: [ex total = ex amount])
>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>>>                on: ProgressNotification
>>>>>                do: [:ex |
>>>>>                        ex extraParam isString
>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>> ex extraParam].
>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>> BlockClosure>>on:do:
>>>>> [[result := workBlock value: progress]
>>>>>                on: ProgressNotification
>>>>>                do: [:ex |
>>>>>                        ex extraParam isString
>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>> ex extraParam].
>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>> BlockClosure>>ensure:
>>>>> ProgressInitiationException>>defaultMorphicAction
>>>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>>> ProgressInitiationException>>defaultAction
>>>>> UndefinedObject>>handleSignal:
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>> ProgressInitiationException(Exception)>>signal
>>>>> ProgressInitiationException>>display:at:from:to:during:
>>>>> ProgressInitiationException class>>display:at:from:to:during:
>>>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>>> MCHttpRepository>>displayProgress:during:
>>>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>>>  - - - - - - - - - - - - - - -
>>>>>                        - - - - - - - - - - - - - - - - - -
>>>>> [self resizeCache: readerCache.
>>>>>        super
>>>>>                versionReaderForFileNamed: aString
>>>>>                do: [:r | r
>>>>>                                ifNotNil: [readerCache at: aString put: r]]] in
>>>>> MCHttpRepository>>versionReaderForFileNamed:
>>>>> Dictionary>>at:ifAbsent:
>>>>> MCHttpRepository>>versionReaderForFileNamed:
>>>>> MCHttpRepository>>versionReaderForFileNamed:do:
>>>>> MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
>>>>> [self loadVersionFromFileNamed: aString] in
>>>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>>>> Dictionary>>at:ifAbsent:
>>>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>>>> [version := repository versionFromFileNamed: selectedVersion] in
>>>>> MCFileRepositoryInspector>>version
>>>>> BlockClosure>>ensure:
>>>>> CursorWithMask(Cursor)>>showWhile:
>>>>> MCFileRepositoryInspector>>version
>>>>> MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
>>>>> MCFileRepositoryInspector(MCVersionInspector)>>summary
>>>>> PluggableTextMorph>>getText
>>>>> PluggableTextMorph>>update:
>>>>> [:aDependent | aDependent update: aParameter] in
>>>>> MCFileRepositoryInspector(Object)>>changed:
>>>>> DependentsArray>>do:
>>>>> MCFileRepositoryInspector(Object)>>changed:
>>>>> MCFileRepositoryInspector>>versionSelection:
>>>>> PluggableListMorph>>changeModelSelection:
>>>>> PluggableListMorph>>mouseUpOnSingle:
>>>>> PluggableListMorph>>mouseUp:
>>>>> PluggableListMorph(Morph)>>handleMouseUp:
>>>>> MouseButtonEvent>>sentTo:
>>>>> PluggableListMorph(Morph)>>handleEvent:
>>>>> MorphicEventDispatcher>>dispatchDefault:with:
>>>>> MorphicEventDispatcher>>dispatchEvent:with:
>>>>> PluggableListMorph(Morph)>>processEvent:using:
>>>>> PluggableListMorph(Morph)>>processEvent:
>>>>> PluggableListMorph>>handleFocusEvent:
>>>>> [ActiveHand := self.
>>>>>        ActiveEvent := anEvent.
>>>>>        result := focusHolder
>>>>>                                handleFocusEvent: (anEvent
>>>>>                                                transformedBy: (focusHolder transformedFrom: self))] in
>>>>> HandMorph>>sendFocusEvent:to:clear:
>>>>> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
>>>>> BlockClosure>>on:do:
>>>>> PasteUpMorph>>becomeActiveDuring:
>>>>> HandMorph>>sendFocusEvent:to:clear:
>>>>> HandMorph>>sendEvent:focus:clear:
>>>>> HandMorph>>sendMouseEvent:
>>>>> HandMorph>>handleEvent:
>>>>> HandMorph>>processEvents
>>>>> [:h |
>>>>> ActiveHand := h.
>>>>>        h processEvents.
>>>>>        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
>>>>> Array(SequenceableCollection)>>do:
>>>>> WorldState>>handsDo:
>>>>> WorldState>>doOneCycleNowFor:
>>>>> WorldState>>doOneCycleFor:
>>>>> PasteUpMorph>>doOneCycle
>>>>> [[World doOneCycle.
>>>>>        Processor yield.
>>>>>        false] whileFalse.
>>>>>        nil] in Project class>>spawnNewProcess
>>>>> [self value.
>>>>>        Processor terminateActive] in BlockClosure>>newProcess
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:
>>>>>>
>>>>>> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>>>>>>
>>>>>>> Many thanks. Unfortunately this version throws errors when I try to
>>>>>>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>>>>>>> try to build my image. Can you tell me what is the *most* stable
>>>>>>> version that I can use with Cog and SS 3.x?
>>>>>>>
>>>>>>
>>>>>> This one. I have never seen that error. So.. a case for the bug tracker.
>>>>>>
>>>>>>        http://code.google.com/p/pharo/issues
>>>>>>
>>>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>>>
>>>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>>>
>>>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>>>> from hudson to jenkins. And, and...
>>>>>>>>
>>>>>>>> So for now:
>>>>>>>>
>>>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>>>
>>>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>>>
>>>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>>>> one package, where I can just update the image.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> ~JT
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ~JT
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ~JT
>>>>
>>>
>>>
>>>
>>
>>
>>
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
Perfect, working now. Many thanks. I guess I was just lucky until now,
and never thought to set a mime type for MC files.


On Thu, Sep 8, 2011 at 16:06, Sven Van Caekenberghe <[hidden email]> wrote:

> John,
>
> I think I found it: your server (currently) serves .mcz files as text/plain;utf-8 and not as application/octet-stream (or some other binary mime type) as it should be. Pharo 1.3 and up (actually Zinc HTTP Components) correctly interprets the response and tries to decode it as an utf-8 string. Since it is arbitrary binary data (actually a zip fle) this is bound to fail at some point.
>
> HTH,
>
> Sven
>
> On 08 Sep 2011, at 19:45, John Toohey wrote:
>
>> Great, please let me know if I can do anything to help out.
>>
>> On Thu, Sep 8, 2011 at 13:41, Sven Van Caekenberghe <[hidden email]> wrote:
>>> Hey John,
>>>
>>> Yes there seems to be a problem.
>>> I will try to investigate as soon as possible but I won't have time tonight, at earliest tomorrow morning EU time.
>>> Sorry for the inconvenience.
>>>
>>> Sven
>>>
>>> On 08 Sep 2011, at 19:25, John Toohey wrote:
>>>
>>>> Just tried it on Linux, and its the same. MC cannot read my source
>>>> repos. This is a little scary.
>>>>
>>>> On Thu, Sep 8, 2011 at 12:44, John Toohey <[hidden email]> wrote:
>>>>> If it helps I can give access to the code repo, and anyone can then
>>>>> reproduce the bug.
>>>>>
>>>>> On Thu, Sep 8, 2011 at 11:55, John Toohey <[hidden email]> wrote:
>>>>>> Bug tracker tells me that my comment is too long! Anyhow here is what
>>>>>> I tried to post. Would love a solution as all my sources code is now
>>>>>> locked out of Pharo.
>>>>>>
>>>>>> Pharo image: Pharo 1.3
>>>>>> Pharo core version: Latest update: #13298
>>>>>> Virtual machine used: 1.3 One-Click with Cog
>>>>>> Description
>>>>>>
>>>>>> When I open MC and create a package for my code, I get an "Illegal
>>>>>> UTF-8 encoding" error when I try to open any of my packages.
>>>>>>
>>>>>> 8 September 2011 11:49:57 am
>>>>>>
>>>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>>>> VMMaker-oscog.54] Pharo Development 1.1
>>>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>>>
>>>>>> ZnUTF8Encoder(Object)>>error:
>>>>>>        Receiver: a ZnUTF8Encoder
>>>>>>        Arguments and temporary variables:
>>>>>>                aString:        'illegal UTF-8 encoding'
>>>>>>        Receiver's instance variables:
>>>>>> a ZnUTF8Encoder
>>>>>>
>>>>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>>>                        = 128
>>>>>>                ifTrue: [code := (code bitShift: 6)
>>>>>>                                                + (nextByte bitAnd: 63)]
>>>>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>>>        Receiver: a ZnUTF8Encoder
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         a ZnLimitedReadStream
>>>>>>                code:   #(26)
>>>>>>                nextByte:       94
>>>>>>        Receiver's instance variables:
>>>>>> a ZnUTF8Encoder
>>>>>>
>>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>>>        Receiver: a ZnUTF8Encoder
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         a ZnLimitedReadStream
>>>>>>                byte:   218
>>>>>>                next:   [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>>>                        = 128
>>>>>>                ifTrue: ...etc...
>>>>>>                code:   #(26)
>>>>>>        Receiver's instance variables:
>>>>>> a ZnUTF8Encoder
>>>>>>
>>>>>> [:stringStream |
>>>>>> [readStream atEnd]
>>>>>>                whileFalse: [stringStream
>>>>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>>        Arguments and temporary variables:
>>>>>>                readStream:     a WriteStream 'PK    '
>>>>>>                stringStream:   a ZnLimitedReadStream
>>>>>>        Receiver's instance variables:
>>>>>>                contentType:    text/plain;charset=UTF-8
>>>>>>                contentLength:  9025
>>>>>>                string:         nil
>>>>>>                encoder:        a ZnUTF8Encoder
>>>>>>
>>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>>        Receiver: String
>>>>>>        Arguments and temporary variables:
>>>>>>                newSize:        100
>>>>>>                blockWithArg:   [:stringStream |
>>>>>> [readStream atEnd]
>>>>>>                whileFalse: [stringStream
>>>>>> ...etc...
>>>>>>                stream:         a WriteStream 'PK    '
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     ArrayedCollection
>>>>>>                methodDict:     a MethodDictionary(size 267)
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>> isLegalInstVar...etc...
>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>                name:   #String
>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>> 13 14 15 16...etc...
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Collections-Strings'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>>        Receiver: String
>>>>>>        Arguments and temporary variables:
>>>>>>                blockWithArg:   [:stringStream |
>>>>>> [readStream atEnd]
>>>>>>                whileFalse: [stringStream
>>>>>> ...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     ArrayedCollection
>>>>>>                methodDict:     a MethodDictionary(size 267)
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>> isLegalInstVar...etc...
>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>                name:   #String
>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>> 13 14 15 16...etc...
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Collections-Strings'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> ZnStringEntity>>readLimitedFrom:
>>>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                readStream:     a ZnLimitedReadStream
>>>>>>                newString:      nil
>>>>>>        Receiver's instance variables:
>>>>>>                contentType:    text/plain;charset=UTF-8
>>>>>>                contentLength:  9025
>>>>>>                string:         nil
>>>>>>                encoder:        a ZnUTF8Encoder
>>>>>>
>>>>>> ZnStringEntity>>readFrom:
>>>>>>        Receiver: a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Receiver's instance variables:
>>>>>>                contentType:    text/plain;charset=UTF-8
>>>>>>                contentLength:  9025
>>>>>>                string:         nil
>>>>>>                encoder:        a ZnUTF8Encoder
>>>>>>
>>>>>> ZnEntity class>>readFrom:usingType:andLength:
>>>>>>        Receiver: ZnEntity
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                mimeType:       text/plain;charset=UTF-8
>>>>>>                length:         9025
>>>>>>                newEntity:      a ZnStringEntity(text/plain;charset=UTF-8 9025B)
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Object
>>>>>>                methodDict:     a
>>>>>> MethodDictionary(#contentLength->(ZnEntity>>#contentLength "a
>>>>>> Com...etc...
>>>>>>                format:         134
>>>>>>                instanceVariables:      #('contentType' 'contentLength')
>>>>>>                organization:   ('accessing' contentLength contentLength: contentType
>>>>>> contentType...etc...
>>>>>>                subclasses:     {ZnApplicationFormUrlEncodedEntity. ZnByteArrayEntity.
>>>>>> ZnMultiPartF...etc...
>>>>>>                name:   #ZnEntity
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Zinc-HTTP-Core'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> ZnEntityReader>>readEntityFromStream
>>>>>>        Receiver: a ZnEntityReader
>>>>>>        Arguments and temporary variables:
>>>>>>                entity:         nil
>>>>>>                decodedEntityLength:    9025
>>>>>>                chunkedStream:  nil
>>>>>>        Receiver's instance variables:
>>>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                streaming:      nil
>>>>>>                allowReadingUpToEnd:    true
>>>>>>
>>>>>> ZnEntityReader>>readEntity
>>>>>>        Receiver: a ZnEntityReader
>>>>>>        Arguments and temporary variables:
>>>>>>                entity:         nil
>>>>>>        Receiver's instance variables:
>>>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                streaming:      nil
>>>>>>                allowReadingUpToEnd:    true
>>>>>>
>>>>>> ZnResponse(ZnMessage)>>readFrom:
>>>>>>        Receiver: a ZnResponse(200 OK)
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Receiver's instance variables:
>>>>>>                headers:        a ZnHeaders('Accept-Ranges'->'bytes'
>>>>>> 'Cache-Control'->'max-age=-543414...etc...
>>>>>>                entity:         nil
>>>>>>                statusLine:     a ZnStatusLine(200 OK)
>>>>>>
>>>>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>>>>        Receiver: ZnResponse
>>>>>>        Arguments and temporary variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     ZnMessage
>>>>>>                methodDict:     a
>>>>>> MethodDictionary(#addCookie:->(ZnResponse>>#addCookie: "a
>>>>>> Compile...etc...
>>>>>>                format:         136
>>>>>>                instanceVariables:      #('statusLine')
>>>>>>                organization:   ('accessing' addCookie: code location location:
>>>>>> setKeepAliveFor: ...etc...
>>>>>>                subclasses:     nil
>>>>>>                name:   #ZnResponse
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Zinc-HTTP-Core'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> ZnClient class>>execute:on:
>>>>>>        Receiver: ZnClient
>>>>>>        Arguments and temporary variables:
>>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Object
>>>>>>                methodDict:     a MethodDictionary()
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('as yet unclassified')
>>>>>>
>>>>>>                subclasses:     nil
>>>>>>                name:   #ZnClient
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>>>>        Receiver: ZnHTTPSocketFacade
>>>>>>        Arguments and temporary variables:
>>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Object
>>>>>>                methodDict:     a MethodDictionary()
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('as yet unclassified')
>>>>>>
>>>>>>                subclasses:     nil
>>>>>>                name:   #ZnHTTPSocketFacade
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> BlockClosure>>ensure:
>>>>>>        Receiver: [ZnClient execute: request on: stream]
>>>>>>        Arguments and temporary variables:
>>>>>>                aBlock:         [stream close]
>>>>>>                complete:       nil
>>>>>>                returnValue:    nil
>>>>>>        Receiver's instance variables:
>>>>>>                outerContext:   ZnHTTPSocketFacade class>>execute:on:
>>>>>>                startpc:        42
>>>>>>                numArgs:        0
>>>>>>
>>>>>> ZnHTTPSocketFacade class>>execute:on:
>>>>>>        Receiver: ZnHTTPSocketFacade
>>>>>>        Arguments and temporary variables:
>>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Object
>>>>>>                methodDict:     a MethodDictionary()
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('as yet unclassified')
>>>>>>
>>>>>>                subclasses:     nil
>>>>>>                name:   #ZnHTTPSocketFacade
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>>>>        Receiver: ZnHTTPSocketFacade
>>>>>>        Arguments and temporary variables:
>>>>>>                urlObject:      'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz...etc...
>>>>>>                queryArguments:         nil
>>>>>>                username:       'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                url:    http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                request:        a ZnRequest(GET /mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz)
>>>>>>                response:       nil
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Object
>>>>>>                methodDict:     a MethodDictionary()
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('as yet unclassified')
>>>>>>
>>>>>>                subclasses:     nil
>>>>>>                name:   #ZnHTTPSocketFacade
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Zinc-HTTP-Client-Server'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>>>>        Receiver: HTTPSocket
>>>>>>        Arguments and temporary variables:
>>>>>>                url:    'http://git.parspro.com/mc/JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                queryArguments:         nil
>>>>>>                username:       'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Socket
>>>>>>                methodDict:     a
>>>>>> MethodDictionary(#contentType->(HTTPSocket>>#contentType "a
>>>>>> Compi...etc...
>>>>>>                format:         144
>>>>>>                instanceVariables:      #('headerTokens' 'headers' 'responseCode')
>>>>>>                organization:   ('accessing' contentType contentType: contentsLength:
>>>>>> getHeader: ...etc...
>>>>>>                subclasses:     nil
>>>>>>                name:   #HTTPSocket
>>>>>>                classPool:      a Dictionary(#HTTPBlabEmail->''
>>>>>> #HTTPProxyCredentials->'' #HTTPProxy...etc...
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Network-Protocols'
>>>>>>                traitComposition:       nil
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> [contents := HTTPSocket
>>>>>>                                httpGet: (self urlForFileNamed: aString)
>>>>>>                                args: nil
>>>>>>                                user: self user
>>>>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>>        Arguments and temporary variables:
>>>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                contents:       #(nil)
>>>>>>        Receiver's instance variables:
>>>>>>                creationTemplate:       'MCHttpRepository
>>>>>>        location: ''http://git.parspro.com/mc''
>>>>>>        u...etc...
>>>>>>                storeDiffs:     nil
>>>>>>                cache:  a Dictionary()
>>>>>>                allFileNames:   nil
>>>>>>                location:       'http://git.parspro.com/mc'
>>>>>>                user:   'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                readerCache:    a Dictionary()
>>>>>>
>>>>>> [workBlock value] in [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex total
>>>>>>                                        ifNil: [true]
>>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>>                                                        or: [ex total = ex amount])
>>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>>        Arguments and temporary variables:
>>>>>>                workBlock:      [contents := HTTPSocket
>>>>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                creationTemplate:       'MCHttpRepository
>>>>>>        location: ''http://git.parspro.com/mc''
>>>>>>        u...etc...
>>>>>>                storeDiffs:     nil
>>>>>>                cache:  a Dictionary()
>>>>>>                allFileNames:   nil
>>>>>>                location:       'http://git.parspro.com/mc'
>>>>>>                user:   'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                readerCache:    a Dictionary()
>>>>>>
>>>>>> BlockClosure>>on:do:
>>>>>>        Receiver: [workBlock value]
>>>>>>        Arguments and temporary variables:
>>>>>>                exception:      HTTPProgress
>>>>>>                handlerAction:  [:ex |
>>>>>> (ex total
>>>>>>                        ifNil: [true]
>>>>>>                        ifNotNil: [ex amount == ni...etc...
>>>>>>                handlerActive:  true
>>>>>>        Receiver's instance variables:
>>>>>>                outerContext:   [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex...etc...
>>>>>>                startpc:        114
>>>>>>                numArgs:        0
>>>>>>
>>>>>> [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex total
>>>>>>                                        ifNil: [true]
>>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>>                                                        or: [ex total = ex amount])
>>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>>        Arguments and temporary variables:
>>>>>>                workBlock:      [:barValArg |
>>>>>> | barVal return newBarSize |
>>>>>> barVal := barValArg.
>>>>>>        re...etc...
>>>>>>                nextUpdateTime:         [contents := HTTPSocket
>>>>>>                                httpGet: (self urlForFileNamed: aSt...etc...
>>>>>>                bar:    #(0)
>>>>>>        Receiver's instance variables:
>>>>>>                creationTemplate:       'MCHttpRepository
>>>>>>        location: ''http://git.parspro.com/mc''
>>>>>>        u...etc...
>>>>>>                storeDiffs:     nil
>>>>>>                cache:  a Dictionary()
>>>>>>                allFileNames:   nil
>>>>>>                location:       'http://git.parspro.com/mc'
>>>>>>                user:   'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                readerCache:    a Dictionary()
>>>>>>
>>>>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>>>>                on: ProgressNotification
>>>>>>                do: [:ex |
>>>>>>                        ex extraParam isString
>>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>>> ex extraParam].
>>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>                progress:       [:barValArg |
>>>>>> | barVal return newBarSize |
>>>>>> barVal := barValArg.
>>>>>>        ret...etc...
>>>>>>                result:         #(nil)
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       a MorphicUIManager
>>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>                maxVal:         1.0
>>>>>>                minVal:         0.0
>>>>>>                aPoint:         960@589
>>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>
>>>>>> BlockClosure>>on:do:
>>>>>>        Receiver: [result := workBlock value: progress]
>>>>>>        Arguments and temporary variables:
>>>>>>                exception:      ProgressNotification
>>>>>>                handlerAction:  [:ex |
>>>>>> ex extraParam isString
>>>>>>                ifTrue: [SystemProgressMorph un...etc...
>>>>>>                handlerActive:  true
>>>>>>        Receiver's instance variables:
>>>>>>                outerContext:   [[result := workBlock value: progress]
>>>>>>                on: ProgressNotification...etc...
>>>>>>                startpc:        87
>>>>>>                numArgs:        0
>>>>>>
>>>>>> [[result := workBlock value: progress]
>>>>>>                on: ProgressNotification
>>>>>>                do: [:ex |
>>>>>>                        ex extraParam isString
>>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>>> ex extraParam].
>>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>                progress:       [:barValArg |
>>>>>> | barVal return newBarSize |
>>>>>> barVal := barValArg.
>>>>>>        ret...etc...
>>>>>>                result:         #(nil)
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       a MorphicUIManager
>>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>                maxVal:         1.0
>>>>>>                minVal:         0.0
>>>>>>                aPoint:         960@589
>>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>
>>>>>> BlockClosure>>ensure:
>>>>>>        Receiver: [[result := workBlock value: progress]
>>>>>>                on: ProgressNotification
>>>>>>                do: [:ex |
>>>>>>                        ex extr...etc...
>>>>>>        Arguments and temporary variables:
>>>>>>                aBlock:         [SystemProgressMorph close: progress]
>>>>>>                complete:       nil
>>>>>>                returnValue:    nil
>>>>>>        Receiver's instance variables:
>>>>>>                outerContext:   ProgressInitiationException>>defaultMorphicAction
>>>>>>                startpc:        81
>>>>>>                numArgs:        0
>>>>>>
>>>>>> ProgressInitiationException>>defaultMorphicAction
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>                progress:       [:barValArg |
>>>>>> | barVal return newBarSize |
>>>>>> barVal := barValArg.
>>>>>>        ret...etc...
>>>>>>                result:         #(nil)
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       a MorphicUIManager
>>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>                maxVal:         1.0
>>>>>>                minVal:         0.0
>>>>>>                aPoint:         960@589
>>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>
>>>>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>>>>        Receiver: a MorphicUIManager
>>>>>>        Arguments and temporary variables:
>>>>>>                anException:    ProgressInitiationException
>>>>>>        Receiver's instance variables:
>>>>>>                interactiveParser:      nil
>>>>>>
>>>>>> ProgressInitiationException>>defaultAction
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       a MorphicUIManager
>>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>                maxVal:         1.0
>>>>>>                minVal:         0.0
>>>>>>                aPoint:         960@589
>>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>
>>>>>> UndefinedObject>>handleSignal:
>>>>>>        Receiver: nil
>>>>>>        Arguments and temporary variables:
>>>>>>                exception:      ProgressInitiationException
>>>>>>        Receiver's instance variables:
>>>>>> nil
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>>                exception:      ProgressInitiationException
>>>>>>                val:    nil
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         PasteUpMorph>>becomeActiveDuring:
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [aBlock value]
>>>>>>
>>>>>> ProgressInitiationException(Exception)>>signal
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       a MorphicUIManager
>>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>                maxVal:         1.0
>>>>>>                minVal:         0.0
>>>>>>                aPoint:         960@589
>>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>
>>>>>> ProgressInitiationException>>display:at:from:to:during:
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>                argString:      'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                argPoint:       960@589
>>>>>>                argMinVal:      0.0
>>>>>>                argMaxVal:      1.0
>>>>>>                argWorkBlock:   [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       a MorphicUIManager
>>>>>>                signalContext:  ProgressInitiationException(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>                maxVal:         1.0
>>>>>>                minVal:         0.0
>>>>>>                aPoint:         960@589
>>>>>>                progressTitle:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>
>>>>>> ProgressInitiationException class>>display:at:from:to:during:
>>>>>>        Receiver: ProgressInitiationException
>>>>>>        Arguments and temporary variables:
>>>>>>                aString:        'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                aPoint:         960@589
>>>>>>                minVal:         0.0
>>>>>>                maxVal:         1.0
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Exception
>>>>>>                methodDict:     a
>>>>>> MethodDictionary(#defaultAction->(ProgressInitiationException>>#d...etc...
>>>>>>                format:         152
>>>>>>                instanceVariables:      #('workBlock' 'maxVal' 'minVal' 'aPoint' 'progressTitle')
>>>>>>                organization:   ('*Morphic' defaultMorphicAction)
>>>>>> ('accessing' maxVal minVal poin...etc...
>>>>>>                subclasses:     nil
>>>>>>                name:   #ProgressInitiationException
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'UIManager-Support'
>>>>>>                traitComposition:       nil
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>>>>        Receiver: a MorphicUIManager
>>>>>>        Arguments and temporary variables:
>>>>>>                titleString:    'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                aPoint:         960@589
>>>>>>                minVal:         0.0
>>>>>>                maxVal:         1.0
>>>>>>                workBlock:      [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex to...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                interactiveParser:      nil
>>>>>>
>>>>>> MCHttpRepository>>displayProgress:during:
>>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>>        Arguments and temporary variables:
>>>>>>                label:  'Downloading JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                workBlock:      [contents := HTTPSocket
>>>>>>                                httpGet: (self urlForFileNamed: aString)...etc...
>>>>>>                nextUpdateTime:         #(0)
>>>>>>        Receiver's instance variables:
>>>>>>                creationTemplate:       'MCHttpRepository
>>>>>>        location: ''http://git.parspro.com/mc''
>>>>>>        u...etc...
>>>>>>                storeDiffs:     nil
>>>>>>                cache:  a Dictionary()
>>>>>>                allFileNames:   nil
>>>>>>                location:       'http://git.parspro.com/mc'
>>>>>>                user:   'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                readerCache:    a Dictionary()
>>>>>>
>>>>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>>        Arguments and temporary variables:
>>>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                aBlock:         [:s | (MCVersionReader readerClassForFileNamed: aString)
>>>>>>                ifNotNil: [:...etc...
>>>>>>                contents:       #(nil)
>>>>>>        Receiver's instance variables:
>>>>>>                creationTemplate:       'MCHttpRepository
>>>>>>        location: ''http://git.parspro.com/mc''
>>>>>>        u...etc...
>>>>>>                storeDiffs:     nil
>>>>>>                cache:  a Dictionary()
>>>>>>                allFileNames:   nil
>>>>>>                location:       'http://git.parspro.com/mc'
>>>>>>                user:   'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                readerCache:    a Dictionary()
>>>>>>
>>>>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>>>>        Receiver: a MCHttpRepository(http://git.parspro.com/mc)
>>>>>>        Arguments and temporary variables:
>>>>>>                aString:        'JQWidgetBox-Spinner-Core-JohnToohey.3.mcz'
>>>>>>                aBlock:         [:r | r
>>>>>>                ifNotNil: [readerCache at: aString put: r]]
>>>>>>        Receiver's instance variables:
>>>>>>                creationTemplate:       'MCHttpRepository
>>>>>>        location: ''http://git.parspro.com/mc''
>>>>>>        u...etc...
>>>>>>                storeDiffs:     nil
>>>>>>                cache:  a Dictionary()
>>>>>>                allFileNames:   nil
>>>>>>                location:       'http://git.parspro.com/mc'
>>>>>>                user:   'jt'
>>>>>>                password:       'trimixisg4u'
>>>>>>                readerCache:    a Dictionary()
>>>>>>
>>>>>>
>>>>>> --- The full stack ---
>>>>>> ZnUTF8Encoder(Object)>>error:
>>>>>> [| nextByte | ((nextByte := stream next) bitAnd: 192)
>>>>>>                        = 128
>>>>>>                ifTrue: [code := (code bitShift: 6)
>>>>>>                                                + (nextByte bitAnd: 63)]
>>>>>>                ifFalse: [self error: 'illegal UTF-8 encoding']] in
>>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>>> ZnUTF8Encoder>>nextFromStream:
>>>>>> [:stringStream |
>>>>>> [readStream atEnd]
>>>>>>                whileFalse: [stringStream
>>>>>>                                nextPut: (encoder nextFromStream: readStream)].
>>>>>>        nil] in ZnStringEntity>>readLimitedFrom:
>>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>> ZnStringEntity>>readLimitedFrom:
>>>>>> ZnStringEntity>>readFrom:
>>>>>> ZnEntity class>>readFrom:usingType:andLength:
>>>>>> ZnEntityReader>>readEntityFromStream
>>>>>> ZnEntityReader>>readEntity
>>>>>> ZnResponse(ZnMessage)>>readFrom:
>>>>>> ZnResponse class(ZnMessage class)>>readFrom:
>>>>>> ZnClient class>>execute:on:
>>>>>> [ZnClient execute: request on: stream] in ZnHTTPSocketFacade class>>execute:on:
>>>>>> BlockClosure>>ensure:
>>>>>> ZnHTTPSocketFacade class>>execute:on:
>>>>>> ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
>>>>>> HTTPSocket class>>httpGet:args:user:passwd:
>>>>>> [contents := HTTPSocket
>>>>>>                                httpGet: (self urlForFileNamed: aString)
>>>>>>                                args: nil
>>>>>>                                user: self user
>>>>>>                                passwd: self password] in MCHttpRepository>>readStreamForFileNamed:do:
>>>>>> [workBlock value] in [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex total
>>>>>>                                        ifNil: [true]
>>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>>                                                        or: [ex total = ex amount])
>>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>>> BlockClosure>>on:do:
>>>>>> [:bar | [workBlock value]
>>>>>>                on: HTTPProgress
>>>>>>                do: [:ex |
>>>>>>                        (ex total
>>>>>>                                        ifNil: [true]
>>>>>>                                        ifNotNil: [ex amount == nil])
>>>>>>                                ifFalse: [(nextUpdateTime < Time millisecondClockValue
>>>>>>                                                        or: [ex total = ex amount])
>>>>>>                                                ifTrue: [bar value: ex amount asFloat / ex total asFloat.
>>>>>>                                                        nextUpdateTime := Time millisecondClockValue + 100]].
>>>>>>                        ex resume]] in MCHttpRepository>>displayProgress:during:
>>>>>> [result := workBlock value: progress] in [[result := workBlock value: progress]
>>>>>>                on: ProgressNotification
>>>>>>                do: [:ex |
>>>>>>                        ex extraParam isString
>>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>>> ex extraParam].
>>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>>> BlockClosure>>on:do:
>>>>>> [[result := workBlock value: progress]
>>>>>>                on: ProgressNotification
>>>>>>                do: [:ex |
>>>>>>                        ex extraParam isString
>>>>>>                                ifTrue: [SystemProgressMorph uniqueInstance labelAt: progress put:
>>>>>> ex extraParam].
>>>>>>                        ex resume]] in ProgressInitiationException>>defaultMorphicAction
>>>>>> BlockClosure>>ensure:
>>>>>> ProgressInitiationException>>defaultMorphicAction
>>>>>> MorphicUIManager>>progressInitiationExceptionDefaultAction:
>>>>>> ProgressInitiationException>>defaultAction
>>>>>> UndefinedObject>>handleSignal:
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>> ProgressInitiationException(Exception)>>signal
>>>>>> ProgressInitiationException>>display:at:from:to:during:
>>>>>> ProgressInitiationException class>>display:at:from:to:during:
>>>>>> MorphicUIManager>>displayProgress:at:from:to:during:
>>>>>> MCHttpRepository>>displayProgress:during:
>>>>>> MCHttpRepository>>readStreamForFileNamed:do:
>>>>>> MCHttpRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
>>>>>>  - - - - - - - - - - - - - - -
>>>>>>                        - - - - - - - - - - - - - - - - - -
>>>>>> [self resizeCache: readerCache.
>>>>>>        super
>>>>>>                versionReaderForFileNamed: aString
>>>>>>                do: [:r | r
>>>>>>                                ifNotNil: [readerCache at: aString put: r]]] in
>>>>>> MCHttpRepository>>versionReaderForFileNamed:
>>>>>> Dictionary>>at:ifAbsent:
>>>>>> MCHttpRepository>>versionReaderForFileNamed:
>>>>>> MCHttpRepository>>versionReaderForFileNamed:do:
>>>>>> MCHttpRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
>>>>>> [self loadVersionFromFileNamed: aString] in
>>>>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>>>>> Dictionary>>at:ifAbsent:
>>>>>> MCHttpRepository(MCFileBasedRepository)>>versionFromFileNamed:
>>>>>> [version := repository versionFromFileNamed: selectedVersion] in
>>>>>> MCFileRepositoryInspector>>version
>>>>>> BlockClosure>>ensure:
>>>>>> CursorWithMask(Cursor)>>showWhile:
>>>>>> MCFileRepositoryInspector>>version
>>>>>> MCFileRepositoryInspector(MCVersionInspector)>>versionSummary
>>>>>> MCFileRepositoryInspector(MCVersionInspector)>>summary
>>>>>> PluggableTextMorph>>getText
>>>>>> PluggableTextMorph>>update:
>>>>>> [:aDependent | aDependent update: aParameter] in
>>>>>> MCFileRepositoryInspector(Object)>>changed:
>>>>>> DependentsArray>>do:
>>>>>> MCFileRepositoryInspector(Object)>>changed:
>>>>>> MCFileRepositoryInspector>>versionSelection:
>>>>>> PluggableListMorph>>changeModelSelection:
>>>>>> PluggableListMorph>>mouseUpOnSingle:
>>>>>> PluggableListMorph>>mouseUp:
>>>>>> PluggableListMorph(Morph)>>handleMouseUp:
>>>>>> MouseButtonEvent>>sentTo:
>>>>>> PluggableListMorph(Morph)>>handleEvent:
>>>>>> MorphicEventDispatcher>>dispatchDefault:with:
>>>>>> MorphicEventDispatcher>>dispatchEvent:with:
>>>>>> PluggableListMorph(Morph)>>processEvent:using:
>>>>>> PluggableListMorph(Morph)>>processEvent:
>>>>>> PluggableListMorph>>handleFocusEvent:
>>>>>> [ActiveHand := self.
>>>>>>        ActiveEvent := anEvent.
>>>>>>        result := focusHolder
>>>>>>                                handleFocusEvent: (anEvent
>>>>>>                                                transformedBy: (focusHolder transformedFrom: self))] in
>>>>>> HandMorph>>sendFocusEvent:to:clear:
>>>>>> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
>>>>>> BlockClosure>>on:do:
>>>>>> PasteUpMorph>>becomeActiveDuring:
>>>>>> HandMorph>>sendFocusEvent:to:clear:
>>>>>> HandMorph>>sendEvent:focus:clear:
>>>>>> HandMorph>>sendMouseEvent:
>>>>>> HandMorph>>handleEvent:
>>>>>> HandMorph>>processEvents
>>>>>> [:h |
>>>>>> ActiveHand := h.
>>>>>>        h processEvents.
>>>>>>        ActiveHand := nil] in WorldState>>doOneCycleNowFor:
>>>>>> Array(SequenceableCollection)>>do:
>>>>>> WorldState>>handsDo:
>>>>>> WorldState>>doOneCycleNowFor:
>>>>>> WorldState>>doOneCycleFor:
>>>>>> PasteUpMorph>>doOneCycle
>>>>>> [[World doOneCycle.
>>>>>>        Processor yield.
>>>>>>        false] whileFalse.
>>>>>>        nil] in Project class>>spawnNewProcess
>>>>>> [self value.
>>>>>>        Processor terminateActive] in BlockClosure>>newProcess
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Sep 8, 2011 at 10:24, Marcus Denker <[hidden email]> wrote:
>>>>>>>
>>>>>>> On Sep 8, 2011, at 4:19 PM, John Toohey wrote:
>>>>>>>
>>>>>>>> Many thanks. Unfortunately this version throws errors when I try to
>>>>>>>> load my code from MC. "Error: Illegal UTF-8 encoding" from MC when I
>>>>>>>> try to build my image. Can you tell me what is the *most* stable
>>>>>>>> version that I can use with Cog and SS 3.x?
>>>>>>>>
>>>>>>>
>>>>>>> This one. I have never seen that error. So.. a case for the bug tracker.
>>>>>>>
>>>>>>>        http://code.google.com/p/pharo/issues
>>>>>>>
>>>>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>>>>
>>>>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>>>>
>>>>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>>>>> from hudson to jenkins. And, and...
>>>>>>>>>
>>>>>>>>> So for now:
>>>>>>>>>
>>>>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>>>>
>>>>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>>>>
>>>>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>>>>> one package, where I can just update the image.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> ~JT
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> ~JT
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ~JT
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>>
>
>
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
In reply to this post by Marcus Denker-4
I am experiencing a lot of random crashes with this VM on OSX 10.6. It
just crashed again, and this time I cannot get it to restart. It seems
to be crashing in a socket receive class. The stack trace is here :-

THERE_BE_DRAGONS_HERE
MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
9 September 2011 2:28:41 pm

VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
VMMaker-oscog-IgorStasenko.123] 21.0
Image: Pharo1.3 [Latest update: #13298]

PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
in a Socket[invalidSocketHandl...etc...
        Arguments and temporary variables:
                t1: isEmptyOrNil
                t2: MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
                t3: nil
        Receiver's instance variables:
                messageText: 'primitive #primSocketReceiveDataAvailable: in a
Socket[invalidSoc...etc...
                tag: nil
                signaler: a Socket[invalidSocketHandle]
                signalContext: PrimitiveFailed(Exception)>>signal
                handlerContext: BlockClosure>>on:do:
                outerContext: nil
                selector: #primSocketReceiveDataAvailable:


[:t1 |
| t2 |
t1 << self class name.
        (t2 := self messageText) isEmptyOrNil
                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
        Receiver: <<error during printing>>
        Arguments and temporary variables:
                t1: a WriteStream 'Error'
                t2: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
        Receiver's instance variables:
                messageText: PrimitiveFailed: primitive
#primSocketReceiveDataAvailable: in a S...etc...
                tag: nil
                signaler: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-T...etc...
                signalContext: Error(Exception)>>signal
                handlerContext: nil
                outerContext: nil


String class(SequenceableCollection class)>>new:streamContents:
        Receiver: String
        Arguments and temporary variables:
                t1: 100
                t2: [:t1 |
| t2 |
t1 << self class name.
        (t2 := self messageText) isEmptyOrNi...etc...
                t3: a WriteStream 'Error'
        Receiver's instance variables:
                superclass: ArrayedCollection
                methodDict: a MethodDictionary(size 303)
                format: 2
                instanceVariables: nil
                organization: ('*Compiler-Kernel' inviolateInstanceVariableNames
isLegalInstVar...etc...
                subclasses: {ByteString. WideString. Symbol}
                name: #String
                classPool: a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16...etc...
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Collections-Strings'
                traitComposition: {}
                localSelectors: nil


String class(SequenceableCollection class)>>streamContents:
        Receiver: String
        Arguments and temporary variables:
                t1: [:t1 |
| t2 |
t1 << self class name.
        (t2 := self messageText) isEmptyOrNi...etc...
        Receiver's instance variables:
                superclass: ArrayedCollection
                methodDict: a MethodDictionary(size 303)
                format: 2
                instanceVariables: nil
                organization: ('*Compiler-Kernel' inviolateInstanceVariableNames
isLegalInstVar...etc...
                subclasses: {ByteString. WideString. Symbol}
                name: #String
                classPool: a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16...etc...
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Collections-Strings'
                traitComposition: {}
                localSelectors: nil


Error(Exception)>>description
        Receiver: <<error during printing>>
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: PrimitiveFailed: primitive
#primSocketReceiveDataAvailable: in a S...etc...
                tag: nil
                signaler: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-T...etc...
                signalContext: Error(Exception)>>signal
                handlerContext: nil
                outerContext: nil


StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
        Receiver: a StartupUIManager
        Arguments and temporary variables:
<<error during printing>
        Receiver's instance variables:
                uiManager: a MorphicUIManager
                doNotQuitOnRestart: false


UnhandledError>>defaultAction
        Receiver: UnhandledError
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: <<error during printing>>

UndefinedObject>>handleSignal:
        Receiver: nil
        Arguments and temporary variables:
                t1: UnhandledError
        Receiver's instance variables:
nil

MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
                t1: UnhandledError
                t2: nil
        Receiver's instance variables:
                sender: [[[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | ni...etc...


MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
                t1: UnhandledError
                t2: nil
        Receiver's instance variables:
                sender: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil]...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [self announceNextCommand]


UnhandledError(Exception)>>signal
        Receiver: UnhandledError
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: nil
                tag: nil
                signaler: <<error during printing>>

UnhandledError class>>signalForException:
        Receiver: UnhandledError
        Arguments and temporary variables:
<<error during printing>
        Receiver's instance variables:
                superclass: Exception
                methodDict: a
MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
...etc...
                format: 144
                instanceVariables: #('exception')
                organization: ('*UIManager' defaultAction)
('as yet unclassified' exception exc...etc...
                subclasses: nil
                name: #UnhandledError
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Kernel-Exceptions'
                traitComposition: nil
                localSelectors: nil


Error>>defaultAction
        Receiver: <<error during printing>>
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: PrimitiveFailed: primitive
#primSocketReceiveDataAvailable: in a S...etc...
                tag: nil
                signaler: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-T...etc...
                signalContext: Error(Exception)>>signal
                handlerContext: nil
                outerContext: nil


UndefinedObject>>handleSignal:
        Receiver: nil
        Arguments and temporary variables:
<<error during printing>
        Receiver's instance variables:
nil

MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
<<error during printing>
        Receiver's instance variables:
                sender: [[[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | ni...etc...


MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
<<error during printing>
        Receiver's instance variables:
                sender: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil]...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [self announceNextCommand]


Error(Exception)>>signal
        Receiver: <<error during printing>>
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: PrimitiveFailed: primitive
#primSocketReceiveDataAvailable: in a S...etc...
                tag: nil
                signaler: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-T...etc...
                signalContext: Error(Exception)>>signal
                handlerContext: nil
                outerContext: nil


Error(Exception)>>signal:
        Receiver: <<error during printing>>
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
        Receiver's instance variables:
                messageText: PrimitiveFailed: primitive
#primSocketReceiveDataAvailable: in a S...etc...
                tag: nil
                signaler: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-T...etc...
                signalContext: Error(Exception)>>signal
                handlerContext: nil
                outerContext: nil


CoreMQStompConnection(Object)>>error:
        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-Tooheys-MacBook-Pro.lo...etc...
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
        Receiver's instance variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                connectResponse: CONNECTED
session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
                subscriptions: an OrderedCollection('/topic/parspro-core.juliet-core-events')
                commandDestination: '/topic/parspro-core.juliet-core-events'
                process: a Process in nil
                logger: a JulietLogger


[:t1 |
self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
        self error: t1.
        t1 return] in [[[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil]] repeat.
        nil]
                on: Error
                do: [:t1 |
                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
                        self error: t1.
                        t1 return]] in CoreMQStompConnection>>startAnnouncing
        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
session: ID:John-Tooheys-MacBook-Pro.lo...etc...
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
        Receiver's instance variables:
                stream: SocketStream[inbuf:4kb/outbuf:4kb]
                connectResponse: CONNECTED
session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
                subscriptions: an OrderedCollection('/topic/parspro-core.juliet-core-events')
                commandDestination: '/topic/parspro-core.juliet-core-events'
                process: a Process in nil
                logger: a JulietLogger


BlockClosure>>cull:
        Receiver: [:t1 |
self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
        self erro...etc...
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
        Receiver's instance variables:
                outerContext: [[[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1...etc...
                startpc: 118
                numArgs: 1


[(self tempAt: 2)
                cull: t1] in MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
        Receiver's instance variables:
                sender: [[[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | ni...etc...


BlockClosure>>ensure:
        Receiver: [(self tempAt: 2)
                cull: t1]
        Arguments and temporary variables:
                aBlock: [self tempAt: 3 put: true]
                complete: nil
                returnValue: nil
        Receiver's instance variables:
                outerContext: MethodContext(ContextPart)>>handleSignal:
                startpc: 98
                numArgs: 0


MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
                t2: nil
        Receiver's instance variables:
                sender: [[[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | ni...etc...


MethodContext(ContextPart)>>handleSignal:
        Receiver: BlockClosure>>on:do:
        Arguments and temporary variables:
                t1: PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
a Socket[inv...etc...
                t2: nil
        Receiver's instance variables:
                sender: [[[self announceNextCommand]
                on: ConnectionTimedOut
                do: [:t1 | nil]...etc...
                pc: 17
                stackp: 3
                method: (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
                closureOrNil: nil
                receiver: [self announceNextCommand]


PrimitiveFailed(Exception)>>signal
        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
in a Socket[invalidSocketHandl...etc...
        Arguments and temporary variables:

        Receiver's instance variables:
                messageText: 'primitive #primSocketReceiveDataAvailable: in a
Socket[invalidSoc...etc...
                tag: nil
                signaler: a Socket[invalidSocketHandle]
                signalContext: PrimitiveFailed(Exception)>>signal
                handlerContext: BlockClosure>>on:do:
                outerContext: nil
                selector: #primSocketReceiveDataAvailable:


PrimitiveFailed class(SelectorException class)>>signalFor:
        Receiver: PrimitiveFailed
        Arguments and temporary variables:
                t1: #primSocketReceiveDataAvailable:
        Receiver's instance variables:
                superclass: SelectorException
                methodDict: a
MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
                format: 144
                instanceVariables: nil
                organization: ('printing' standardMessageText)

                subclasses: nil
                name: #PrimitiveFailed
                classPool: nil
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Kernel-Exceptions'
                traitComposition: {}
                localSelectors: nil


Socket(Object)>>primitiveFailed:
        Receiver: a Socket[invalidSocketHandle]
        Arguments and temporary variables:
                t1: #primSocketReceiveDataAvailable:
        Receiver's instance variables:
                semaphore: a Semaphore()
                socketHandle: #[162 57 106 78 0 0 0 0 128 42 86 0]
                readSemaphore: a Semaphore()
                writeSemaphore: a Semaphore()


Socket(Object)>>primitiveFailed
        Receiver: a Socket[invalidSocketHandle]
        Arguments and temporary variables:

        Receiver's instance variables:
                semaphore: a Semaphore()
                socketHandle: #[162 57 106 78 0 0 0 0 128 42 86 0]
                readSemaphore: a Semaphore()
                writeSemaphore: a Semaphore()


Socket>>primSocketReceiveDataAvailable:
        Receiver: a Socket[invalidSocketHandle]
        Arguments and temporary variables:
                t1: #[162 57 106 78 0 0 0 0 128 42 86 0]
        Receiver's instance variables:
                semaphore: a Semaphore()
                socketHandle: #[162 57 106 78 0 0 0 0 128 42 86 0]
                readSemaphore: a Semaphore()
                writeSemaphore: a Semaphore()


Socket>>waitForDataFor:ifClosed:ifTimedOut:
        Receiver: a Socket[invalidSocketHandle]
        Arguments and temporary variables:
                t1: 45
                t2: [ConnectionClosed signal: 'Connection closed while waiting for data.']
                t3: [ConnectionTimedOut signal: 'Data receive timed out.']
                t4: 2210099
                t5: 45000
        Receiver's instance variables:
                semaphore: a Semaphore()
                socketHandle: #[162 57 106 78 0 0 0 0 128 42 86 0]
                readSemaphore: a Semaphore()
                writeSemaphore: a Semaphore()


Socket>>waitForDataFor:
        Receiver: a Socket[invalidSocketHandle]
        Arguments and temporary variables:
                t1: 45
        Receiver's instance variables:
                semaphore: a Semaphore()
                socketHandle: #[162 57 106 78 0 0 0 0 128 42 86 0]
                readSemaphore: a Semaphore()
                writeSemaphore: a Semaphore()


Socket>>receiveDataSignallingTimeout:into:startingAt:
        Receiver: a Socket[invalidSocketHandle]
        Arguments and temporary variables:
                t1: 45
                t2: 'CONNECTED
session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
                t3: 796
        Receiver's instance variables:
                semaphore: a Semaphore()
                socketHandle: #[162 57 106 78 0 0 0 0 128 42 86 0]
                readSemaphore: a Semaphore()
                writeSemaphore: a Semaphore()


SocketStream>>receiveData
        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
        Arguments and temporary variables:

        Receiver's instance variables:
                recentlyRead: 716
                socket: a Socket[invalidSocketHandle]
                inBuffer: 'CONNECTED
session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
                outBuffer: 'SUBSCRIBE
destination: /topic/parspro-core.juliet-core-events



On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:

>
> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>
>> Hi,
>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>> just down load the linux and OSX Cog builds from the Jenkins server?
>
> The script on the hudson is old... we need to update it. And move everything
> from hudson to jenkins. And, and...
>
> So for now:
>
>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>
> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>
>> often run into problems with having different VMs/Plugin on different
>> servers, and like the idea of having both Liux and OSX supported in
>> one package, where I can just update the image.
>
>
>
>
>
> --
> Marcus Denker -- http://marcusdenker.de
>
>
>



--
~JT

Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Igor Stasenko
On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
> just crashed again, and this time I cannot get it to restart. It seems
> to be crashing in a socket receive class. The stack trace is here :-
>

This is not a crash, it just quits to OS due to error at startup.
To avoid imminent leave to OS, put an error handler around your startup code
(i guess it is in CoreMQStompConnection somewhere?).



> THERE_BE_DRAGONS_HERE
> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
> 9 September 2011 2:28:41 pm
>
> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
> VMMaker-oscog-IgorStasenko.123] 21.0
> Image: Pharo1.3 [Latest update: #13298]
>
> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
> in a Socket[invalidSocketHandl...etc...
>        Arguments and temporary variables:
>                t1:     isEmptyOrNil
>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>                t3:     nil
>        Receiver's instance variables:
>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
> Socket[invalidSoc...etc...
>                tag:    nil
>                signaler:       a Socket[invalidSocketHandle]
>                signalContext:  PrimitiveFailed(Exception)>>signal
>                handlerContext:         BlockClosure>>on:do:
>                outerContext:   nil
>                selector:       #primSocketReceiveDataAvailable:
>
>
> [:t1 |
> | t2 |
> t1 << self class name.
>        (t2 := self messageText) isEmptyOrNil
>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>        Receiver: <<error during printing>>
>        Arguments and temporary variables:
>                t1:     a WriteStream 'Error'
>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>        Receiver's instance variables:
>                messageText:    PrimitiveFailed: primitive
> #primSocketReceiveDataAvailable: in a S...etc...
>                tag:    nil
>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-T...etc...
>                signalContext:  Error(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>
>
> String class(SequenceableCollection class)>>new:streamContents:
>        Receiver: String
>        Arguments and temporary variables:
>                t1:     100
>                t2:     [:t1 |
> | t2 |
> t1 << self class name.
>        (t2 := self messageText) isEmptyOrNi...etc...
>                t3:     a WriteStream 'Error'
>        Receiver's instance variables:
>                superclass:     ArrayedCollection
>                methodDict:     a MethodDictionary(size 303)
>                format:         2
>                instanceVariables:      nil
>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
> isLegalInstVar...etc...
>                subclasses:     {ByteString. WideString. Symbol}
>                name:   #String
>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
> 13 14 15 16...etc...
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Collections-Strings'
>                traitComposition:       {}
>                localSelectors:         nil
>
>
> String class(SequenceableCollection class)>>streamContents:
>        Receiver: String
>        Arguments and temporary variables:
>                t1:     [:t1 |
> | t2 |
> t1 << self class name.
>        (t2 := self messageText) isEmptyOrNi...etc...
>        Receiver's instance variables:
>                superclass:     ArrayedCollection
>                methodDict:     a MethodDictionary(size 303)
>                format:         2
>                instanceVariables:      nil
>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
> isLegalInstVar...etc...
>                subclasses:     {ByteString. WideString. Symbol}
>                name:   #String
>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
> 13 14 15 16...etc...
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Collections-Strings'
>                traitComposition:       {}
>                localSelectors:         nil
>
>
> Error(Exception)>>description
>        Receiver: <<error during printing>>
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    PrimitiveFailed: primitive
> #primSocketReceiveDataAvailable: in a S...etc...
>                tag:    nil
>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-T...etc...
>                signalContext:  Error(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>
>
> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>        Receiver: a StartupUIManager
>        Arguments and temporary variables:
> <<error during printing>
>        Receiver's instance variables:
>                uiManager:      a MorphicUIManager
>                doNotQuitOnRestart:     false
>
>
> UnhandledError>>defaultAction
>        Receiver: UnhandledError
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       <<error during printing>>
>
> UndefinedObject>>handleSignal:
>        Receiver: nil
>        Arguments and temporary variables:
>                t1:     UnhandledError
>        Receiver's instance variables:
> nil
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
>                t1:     UnhandledError
>                t2:     nil
>        Receiver's instance variables:
>                sender:         [[[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | ni...etc...
>
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
>                t1:     UnhandledError
>                t2:     nil
>        Receiver's instance variables:
>                sender:         [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil]...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [self announceNextCommand]
>
>
> UnhandledError(Exception)>>signal
>        Receiver: UnhandledError
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    nil
>                tag:    nil
>                signaler:       <<error during printing>>
>
> UnhandledError class>>signalForException:
>        Receiver: UnhandledError
>        Arguments and temporary variables:
> <<error during printing>
>        Receiver's instance variables:
>                superclass:     Exception
>                methodDict:     a
> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
> ...etc...
>                format:         144
>                instanceVariables:      #('exception')
>                organization:   ('*UIManager' defaultAction)
> ('as yet unclassified' exception exc...etc...
>                subclasses:     nil
>                name:   #UnhandledError
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Kernel-Exceptions'
>                traitComposition:       nil
>                localSelectors:         nil
>
>
> Error>>defaultAction
>        Receiver: <<error during printing>>
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    PrimitiveFailed: primitive
> #primSocketReceiveDataAvailable: in a S...etc...
>                tag:    nil
>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-T...etc...
>                signalContext:  Error(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>
>
> UndefinedObject>>handleSignal:
>        Receiver: nil
>        Arguments and temporary variables:
> <<error during printing>
>        Receiver's instance variables:
> nil
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
> <<error during printing>
>        Receiver's instance variables:
>                sender:         [[[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | ni...etc...
>
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
> <<error during printing>
>        Receiver's instance variables:
>                sender:         [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil]...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [self announceNextCommand]
>
>
> Error(Exception)>>signal
>        Receiver: <<error during printing>>
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    PrimitiveFailed: primitive
> #primSocketReceiveDataAvailable: in a S...etc...
>                tag:    nil
>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-T...etc...
>                signalContext:  Error(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>
>
> Error(Exception)>>signal:
>        Receiver: <<error during printing>>
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>        Receiver's instance variables:
>                messageText:    PrimitiveFailed: primitive
> #primSocketReceiveDataAvailable: in a S...etc...
>                tag:    nil
>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-T...etc...
>                signalContext:  Error(Exception)>>signal
>                handlerContext:         nil
>                outerContext:   nil
>
>
> CoreMQStompConnection(Object)>>error:
>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>        Receiver's instance variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                connectResponse:        CONNECTED
> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>                process:        a Process in nil
>                logger:         a JulietLogger
>
>
> [:t1 |
> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>        self error: t1.
>        t1 return] in [[[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil]] repeat.
>        nil]
>                on: Error
>                do: [:t1 |
>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>                        self error: t1.
>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>        Receiver's instance variables:
>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>                connectResponse:        CONNECTED
> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>                process:        a Process in nil
>                logger:         a JulietLogger
>
>
> BlockClosure>>cull:
>        Receiver: [:t1 |
> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>        self erro...etc...
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>        Receiver's instance variables:
>                outerContext:   [[[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1...etc...
>                startpc:        118
>                numArgs:        1
>
>
> [(self tempAt: 2)
>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>        Receiver's instance variables:
>                sender:         [[[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | ni...etc...
>
>
> BlockClosure>>ensure:
>        Receiver: [(self tempAt: 2)
>                cull: t1]
>        Arguments and temporary variables:
>                aBlock:         [self tempAt: 3 put: true]
>                complete:       nil
>                returnValue:    nil
>        Receiver's instance variables:
>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>                startpc:        98
>                numArgs:        0
>
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>                t2:     nil
>        Receiver's instance variables:
>                sender:         [[[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | ni...etc...
>
>
> MethodContext(ContextPart)>>handleSignal:
>        Receiver: BlockClosure>>on:do:
>        Arguments and temporary variables:
>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
> a Socket[inv...etc...
>                t2:     nil
>        Receiver's instance variables:
>                sender:         [[[self announceNextCommand]
>                on: ConnectionTimedOut
>                do: [:t1 | nil]...etc...
>                pc:     17
>                stackp:         3
>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>                closureOrNil:   nil
>                receiver:       [self announceNextCommand]
>
>
> PrimitiveFailed(Exception)>>signal
>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
> in a Socket[invalidSocketHandl...etc...
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
> Socket[invalidSoc...etc...
>                tag:    nil
>                signaler:       a Socket[invalidSocketHandle]
>                signalContext:  PrimitiveFailed(Exception)>>signal
>                handlerContext:         BlockClosure>>on:do:
>                outerContext:   nil
>                selector:       #primSocketReceiveDataAvailable:
>
>
> PrimitiveFailed class(SelectorException class)>>signalFor:
>        Receiver: PrimitiveFailed
>        Arguments and temporary variables:
>                t1:     #primSocketReceiveDataAvailable:
>        Receiver's instance variables:
>                superclass:     SelectorException
>                methodDict:     a
> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>                format:         144
>                instanceVariables:      nil
>                organization:   ('printing' standardMessageText)
>
>                subclasses:     nil
>                name:   #PrimitiveFailed
>                classPool:      nil
>                sharedPools:    nil
>                environment:    a SystemDictionary(lots of globals)
>                category:       #'Kernel-Exceptions'
>                traitComposition:       {}
>                localSelectors:         nil
>
>
> Socket(Object)>>primitiveFailed:
>        Receiver: a Socket[invalidSocketHandle]
>        Arguments and temporary variables:
>                t1:     #primSocketReceiveDataAvailable:
>        Receiver's instance variables:
>                semaphore:      a Semaphore()
>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>                readSemaphore:  a Semaphore()
>                writeSemaphore:         a Semaphore()
>
>
> Socket(Object)>>primitiveFailed
>        Receiver: a Socket[invalidSocketHandle]
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                semaphore:      a Semaphore()
>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>                readSemaphore:  a Semaphore()
>                writeSemaphore:         a Semaphore()
>
>
> Socket>>primSocketReceiveDataAvailable:
>        Receiver: a Socket[invalidSocketHandle]
>        Arguments and temporary variables:
>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>        Receiver's instance variables:
>                semaphore:      a Semaphore()
>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>                readSemaphore:  a Semaphore()
>                writeSemaphore:         a Semaphore()
>
>
> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>        Receiver: a Socket[invalidSocketHandle]
>        Arguments and temporary variables:
>                t1:     45
>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>                t4:     2210099
>                t5:     45000
>        Receiver's instance variables:
>                semaphore:      a Semaphore()
>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>                readSemaphore:  a Semaphore()
>                writeSemaphore:         a Semaphore()
>
>
> Socket>>waitForDataFor:
>        Receiver: a Socket[invalidSocketHandle]
>        Arguments and temporary variables:
>                t1:     45
>        Receiver's instance variables:
>                semaphore:      a Semaphore()
>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>                readSemaphore:  a Semaphore()
>                writeSemaphore:         a Semaphore()
>
>
> Socket>>receiveDataSignallingTimeout:into:startingAt:
>        Receiver: a Socket[invalidSocketHandle]
>        Arguments and temporary variables:
>                t1:     45
>                t2:     'CONNECTED
> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>                t3:     796
>        Receiver's instance variables:
>                semaphore:      a Semaphore()
>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>                readSemaphore:  a Semaphore()
>                writeSemaphore:         a Semaphore()
>
>
> SocketStream>>receiveData
>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>        Arguments and temporary variables:
>
>        Receiver's instance variables:
>                recentlyRead:   716
>                socket:         a Socket[invalidSocketHandle]
>                inBuffer:       'CONNECTED
> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>                outBuffer:      'SUBSCRIBE
> destination: /topic/parspro-core.juliet-core-events
>
>
>
> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>
>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>
>>> Hi,
>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>
>> The script on the hudson is old... we need to update it. And move everything
>> from hudson to jenkins. And, and...
>>
>> So for now:
>>
>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>
>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>
>>> often run into problems with having different VMs/Plugin on different
>>> servers, and like the idea of having both Liux and OSX supported in
>>> one package, where I can just update the image.
>>
>>
>>
>>
>>
>> --
>> Marcus Denker -- http://marcusdenker.de
>>
>>
>>
>
>
>
> --
> ~JT
>
>



--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
This happened after a VM crash, when I try to restart I get this in
the log. Isn't the error caused by the isEmptyOrNil primitive? Is
there anyway for me to access the image now?

On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:

> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>> just crashed again, and this time I cannot get it to restart. It seems
>> to be crashing in a socket receive class. The stack trace is here :-
>>
>
> This is not a crash, it just quits to OS due to error at startup.
> To avoid imminent leave to OS, put an error handler around your startup code
> (i guess it is in CoreMQStompConnection somewhere?).
>
>
>
>> THERE_BE_DRAGONS_HERE
>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>> 9 September 2011 2:28:41 pm
>>
>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>> VMMaker-oscog-IgorStasenko.123] 21.0
>> Image: Pharo1.3 [Latest update: #13298]
>>
>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>> in a Socket[invalidSocketHandl...etc...
>>        Arguments and temporary variables:
>>                t1:     isEmptyOrNil
>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>                t3:     nil
>>        Receiver's instance variables:
>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>> Socket[invalidSoc...etc...
>>                tag:    nil
>>                signaler:       a Socket[invalidSocketHandle]
>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>                handlerContext:         BlockClosure>>on:do:
>>                outerContext:   nil
>>                selector:       #primSocketReceiveDataAvailable:
>>
>>
>> [:t1 |
>> | t2 |
>> t1 << self class name.
>>        (t2 := self messageText) isEmptyOrNil
>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>                t1:     a WriteStream 'Error'
>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> String class(SequenceableCollection class)>>new:streamContents:
>>        Receiver: String
>>        Arguments and temporary variables:
>>                t1:     100
>>                t2:     [:t1 |
>> | t2 |
>> t1 << self class name.
>>        (t2 := self messageText) isEmptyOrNi...etc...
>>                t3:     a WriteStream 'Error'
>>        Receiver's instance variables:
>>                superclass:     ArrayedCollection
>>                methodDict:     a MethodDictionary(size 303)
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>> isLegalInstVar...etc...
>>                subclasses:     {ByteString. WideString. Symbol}
>>                name:   #String
>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>> 13 14 15 16...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Collections-Strings'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>>
>> String class(SequenceableCollection class)>>streamContents:
>>        Receiver: String
>>        Arguments and temporary variables:
>>                t1:     [:t1 |
>> | t2 |
>> t1 << self class name.
>>        (t2 := self messageText) isEmptyOrNi...etc...
>>        Receiver's instance variables:
>>                superclass:     ArrayedCollection
>>                methodDict:     a MethodDictionary(size 303)
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>> isLegalInstVar...etc...
>>                subclasses:     {ByteString. WideString. Symbol}
>>                name:   #String
>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>> 13 14 15 16...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Collections-Strings'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>>
>> Error(Exception)>>description
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>        Receiver: a StartupUIManager
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                uiManager:      a MorphicUIManager
>>                doNotQuitOnRestart:     false
>>
>>
>> UnhandledError>>defaultAction
>>        Receiver: UnhandledError
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       <<error during printing>>
>>
>> UndefinedObject>>handleSignal:
>>        Receiver: nil
>>        Arguments and temporary variables:
>>                t1:     UnhandledError
>>        Receiver's instance variables:
>> nil
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     UnhandledError
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     UnhandledError
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [self announceNextCommand]
>>
>>
>> UnhandledError(Exception)>>signal
>>        Receiver: UnhandledError
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       <<error during printing>>
>>
>> UnhandledError class>>signalForException:
>>        Receiver: UnhandledError
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                superclass:     Exception
>>                methodDict:     a
>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>> ...etc...
>>                format:         144
>>                instanceVariables:      #('exception')
>>                organization:   ('*UIManager' defaultAction)
>> ('as yet unclassified' exception exc...etc...
>>                subclasses:     nil
>>                name:   #UnhandledError
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Kernel-Exceptions'
>>                traitComposition:       nil
>>                localSelectors:         nil
>>
>>
>> Error>>defaultAction
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> UndefinedObject>>handleSignal:
>>        Receiver: nil
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>> nil
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                sender:         [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [self announceNextCommand]
>>
>>
>> Error(Exception)>>signal
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> Error(Exception)>>signal:
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> CoreMQStompConnection(Object)>>error:
>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                connectResponse:        CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>                process:        a Process in nil
>>                logger:         a JulietLogger
>>
>>
>> [:t1 |
>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>        self error: t1.
>>        t1 return] in [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]] repeat.
>>        nil]
>>                on: Error
>>                do: [:t1 |
>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>                        self error: t1.
>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                connectResponse:        CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>                process:        a Process in nil
>>                logger:         a JulietLogger
>>
>>
>> BlockClosure>>cull:
>>        Receiver: [:t1 |
>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>        self erro...etc...
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                outerContext:   [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1...etc...
>>                startpc:        118
>>                numArgs:        1
>>
>>
>> [(self tempAt: 2)
>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> BlockClosure>>ensure:
>>        Receiver: [(self tempAt: 2)
>>                cull: t1]
>>        Arguments and temporary variables:
>>                aBlock:         [self tempAt: 3 put: true]
>>                complete:       nil
>>                returnValue:    nil
>>        Receiver's instance variables:
>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>                startpc:        98
>>                numArgs:        0
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [self announceNextCommand]
>>
>>
>> PrimitiveFailed(Exception)>>signal
>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>> in a Socket[invalidSocketHandl...etc...
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>> Socket[invalidSoc...etc...
>>                tag:    nil
>>                signaler:       a Socket[invalidSocketHandle]
>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>                handlerContext:         BlockClosure>>on:do:
>>                outerContext:   nil
>>                selector:       #primSocketReceiveDataAvailable:
>>
>>
>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>        Receiver: PrimitiveFailed
>>        Arguments and temporary variables:
>>                t1:     #primSocketReceiveDataAvailable:
>>        Receiver's instance variables:
>>                superclass:     SelectorException
>>                methodDict:     a
>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>                format:         144
>>                instanceVariables:      nil
>>                organization:   ('printing' standardMessageText)
>>
>>                subclasses:     nil
>>                name:   #PrimitiveFailed
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Kernel-Exceptions'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>>
>> Socket(Object)>>primitiveFailed:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     #primSocketReceiveDataAvailable:
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket(Object)>>primitiveFailed
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>primSocketReceiveDataAvailable:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     45
>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>                t4:     2210099
>>                t5:     45000
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>waitForDataFor:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     45
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     45
>>                t2:     'CONNECTED
>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>                t3:     796
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> SocketStream>>receiveData
>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                recentlyRead:   716
>>                socket:         a Socket[invalidSocketHandle]
>>                inBuffer:       'CONNECTED
>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>                outBuffer:      'SUBSCRIBE
>> destination: /topic/parspro-core.juliet-core-events
>>
>>
>>
>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>
>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>
>>>> Hi,
>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>
>>> The script on the hudson is old... we need to update it. And move everything
>>> from hudson to jenkins. And, and...
>>>
>>> So for now:
>>>
>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>
>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>
>>>> often run into problems with having different VMs/Plugin on different
>>>> servers, and like the idea of having both Liux and OSX supported in
>>>> one package, where I can just update the image.
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Marcus Denker -- http://marcusdenker.de
>>>
>>>
>>>
>>
>>
>>
>> --
>> ~JT
>>
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Igor Stasenko
On 9 September 2011 20:43, John Toohey <[hidden email]> wrote:
> This happened after a VM crash, when I try to restart I get this in
> the log. Isn't the error caused by the isEmptyOrNil primitive? Is
> there anyway for me to access the image now?
>

an error caused by a primitive failure with invalid socket:

SocketStream>>receiveData

>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                recentlyRead:   716
>>                socket:         a Socket[invalidSocketHandle]
>>                inBuffer:       'CONNECTED
>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>                outBuffer:      'SUBSCRIBE
>> destination: /topic/parspro-core.juliet-core-events


looks like your image was saved with socket being open and upon
restart it tries to read data from it.
This , of course , causing failure and leads to error signaled.

If you want to track down the error, there is an option in system settings:
'Make a snapshot of new version before quit
On unhandled exception, save a new version of image before quit'
in 'Headless mode' group.

> On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:
>> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>>> just crashed again, and this time I cannot get it to restart. It seems
>>> to be crashing in a socket receive class. The stack trace is here :-
>>>
>>
>> This is not a crash, it just quits to OS due to error at startup.
>> To avoid imminent leave to OS, put an error handler around your startup code
>> (i guess it is in CoreMQStompConnection somewhere?).
>>
>>
>>
>>> THERE_BE_DRAGONS_HERE
>>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>> 9 September 2011 2:28:41 pm
>>>
>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>> VMMaker-oscog-IgorStasenko.123] 21.0
>>> Image: Pharo1.3 [Latest update: #13298]
>>>
>>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>> in a Socket[invalidSocketHandl...etc...
>>>        Arguments and temporary variables:
>>>                t1:     isEmptyOrNil
>>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>                t3:     nil
>>>        Receiver's instance variables:
>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>> Socket[invalidSoc...etc...
>>>                tag:    nil
>>>                signaler:       a Socket[invalidSocketHandle]
>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>                handlerContext:         BlockClosure>>on:do:
>>>                outerContext:   nil
>>>                selector:       #primSocketReceiveDataAvailable:
>>>
>>>
>>> [:t1 |
>>> | t2 |
>>> t1 << self class name.
>>>        (t2 := self messageText) isEmptyOrNil
>>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>>        Receiver: <<error during printing>>
>>>        Arguments and temporary variables:
>>>                t1:     a WriteStream 'Error'
>>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>        Receiver's instance variables:
>>>                messageText:    PrimitiveFailed: primitive
>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>                tag:    nil
>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-T...etc...
>>>                signalContext:  Error(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>
>>>
>>> String class(SequenceableCollection class)>>new:streamContents:
>>>        Receiver: String
>>>        Arguments and temporary variables:
>>>                t1:     100
>>>                t2:     [:t1 |
>>> | t2 |
>>> t1 << self class name.
>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>                t3:     a WriteStream 'Error'
>>>        Receiver's instance variables:
>>>                superclass:     ArrayedCollection
>>>                methodDict:     a MethodDictionary(size 303)
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>> isLegalInstVar...etc...
>>>                subclasses:     {ByteString. WideString. Symbol}
>>>                name:   #String
>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>> 13 14 15 16...etc...
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Collections-Strings'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>>
>>> String class(SequenceableCollection class)>>streamContents:
>>>        Receiver: String
>>>        Arguments and temporary variables:
>>>                t1:     [:t1 |
>>> | t2 |
>>> t1 << self class name.
>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>        Receiver's instance variables:
>>>                superclass:     ArrayedCollection
>>>                methodDict:     a MethodDictionary(size 303)
>>>                format:         2
>>>                instanceVariables:      nil
>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>> isLegalInstVar...etc...
>>>                subclasses:     {ByteString. WideString. Symbol}
>>>                name:   #String
>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>> 13 14 15 16...etc...
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Collections-Strings'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>>
>>> Error(Exception)>>description
>>>        Receiver: <<error during printing>>
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    PrimitiveFailed: primitive
>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>                tag:    nil
>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-T...etc...
>>>                signalContext:  Error(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>
>>>
>>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>>        Receiver: a StartupUIManager
>>>        Arguments and temporary variables:
>>> <<error during printing>
>>>        Receiver's instance variables:
>>>                uiManager:      a MorphicUIManager
>>>                doNotQuitOnRestart:     false
>>>
>>>
>>> UnhandledError>>defaultAction
>>>        Receiver: UnhandledError
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       <<error during printing>>
>>>
>>> UndefinedObject>>handleSignal:
>>>        Receiver: nil
>>>        Arguments and temporary variables:
>>>                t1:     UnhandledError
>>>        Receiver's instance variables:
>>> nil
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>>                t1:     UnhandledError
>>>                t2:     nil
>>>        Receiver's instance variables:
>>>                sender:         [[[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | ni...etc...
>>>
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>>                t1:     UnhandledError
>>>                t2:     nil
>>>        Receiver's instance variables:
>>>                sender:         [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil]...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [self announceNextCommand]
>>>
>>>
>>> UnhandledError(Exception)>>signal
>>>        Receiver: UnhandledError
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    nil
>>>                tag:    nil
>>>                signaler:       <<error during printing>>
>>>
>>> UnhandledError class>>signalForException:
>>>        Receiver: UnhandledError
>>>        Arguments and temporary variables:
>>> <<error during printing>
>>>        Receiver's instance variables:
>>>                superclass:     Exception
>>>                methodDict:     a
>>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>>> ...etc...
>>>                format:         144
>>>                instanceVariables:      #('exception')
>>>                organization:   ('*UIManager' defaultAction)
>>> ('as yet unclassified' exception exc...etc...
>>>                subclasses:     nil
>>>                name:   #UnhandledError
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Kernel-Exceptions'
>>>                traitComposition:       nil
>>>                localSelectors:         nil
>>>
>>>
>>> Error>>defaultAction
>>>        Receiver: <<error during printing>>
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    PrimitiveFailed: primitive
>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>                tag:    nil
>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-T...etc...
>>>                signalContext:  Error(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>
>>>
>>> UndefinedObject>>handleSignal:
>>>        Receiver: nil
>>>        Arguments and temporary variables:
>>> <<error during printing>
>>>        Receiver's instance variables:
>>> nil
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>> <<error during printing>
>>>        Receiver's instance variables:
>>>                sender:         [[[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | ni...etc...
>>>
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>> <<error during printing>
>>>        Receiver's instance variables:
>>>                sender:         [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil]...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [self announceNextCommand]
>>>
>>>
>>> Error(Exception)>>signal
>>>        Receiver: <<error during printing>>
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    PrimitiveFailed: primitive
>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>                tag:    nil
>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-T...etc...
>>>                signalContext:  Error(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>
>>>
>>> Error(Exception)>>signal:
>>>        Receiver: <<error during printing>>
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>        Receiver's instance variables:
>>>                messageText:    PrimitiveFailed: primitive
>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>                tag:    nil
>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-T...etc...
>>>                signalContext:  Error(Exception)>>signal
>>>                handlerContext:         nil
>>>                outerContext:   nil
>>>
>>>
>>> CoreMQStompConnection(Object)>>error:
>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>        Receiver's instance variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                connectResponse:        CONNECTED
>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>                process:        a Process in nil
>>>                logger:         a JulietLogger
>>>
>>>
>>> [:t1 |
>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>        self error: t1.
>>>        t1 return] in [[[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil]] repeat.
>>>        nil]
>>>                on: Error
>>>                do: [:t1 |
>>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>                        self error: t1.
>>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>        Receiver's instance variables:
>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>                connectResponse:        CONNECTED
>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>                process:        a Process in nil
>>>                logger:         a JulietLogger
>>>
>>>
>>> BlockClosure>>cull:
>>>        Receiver: [:t1 |
>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>        self erro...etc...
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>        Receiver's instance variables:
>>>                outerContext:   [[[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1...etc...
>>>                startpc:        118
>>>                numArgs:        1
>>>
>>>
>>> [(self tempAt: 2)
>>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>        Receiver's instance variables:
>>>                sender:         [[[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | ni...etc...
>>>
>>>
>>> BlockClosure>>ensure:
>>>        Receiver: [(self tempAt: 2)
>>>                cull: t1]
>>>        Arguments and temporary variables:
>>>                aBlock:         [self tempAt: 3 put: true]
>>>                complete:       nil
>>>                returnValue:    nil
>>>        Receiver's instance variables:
>>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>>                startpc:        98
>>>                numArgs:        0
>>>
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>                t2:     nil
>>>        Receiver's instance variables:
>>>                sender:         [[[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | ni...etc...
>>>
>>>
>>> MethodContext(ContextPart)>>handleSignal:
>>>        Receiver: BlockClosure>>on:do:
>>>        Arguments and temporary variables:
>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>> a Socket[inv...etc...
>>>                t2:     nil
>>>        Receiver's instance variables:
>>>                sender:         [[[self announceNextCommand]
>>>                on: ConnectionTimedOut
>>>                do: [:t1 | nil]...etc...
>>>                pc:     17
>>>                stackp:         3
>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>                closureOrNil:   nil
>>>                receiver:       [self announceNextCommand]
>>>
>>>
>>> PrimitiveFailed(Exception)>>signal
>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>> in a Socket[invalidSocketHandl...etc...
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>> Socket[invalidSoc...etc...
>>>                tag:    nil
>>>                signaler:       a Socket[invalidSocketHandle]
>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>                handlerContext:         BlockClosure>>on:do:
>>>                outerContext:   nil
>>>                selector:       #primSocketReceiveDataAvailable:
>>>
>>>
>>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>>        Receiver: PrimitiveFailed
>>>        Arguments and temporary variables:
>>>                t1:     #primSocketReceiveDataAvailable:
>>>        Receiver's instance variables:
>>>                superclass:     SelectorException
>>>                methodDict:     a
>>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>>                format:         144
>>>                instanceVariables:      nil
>>>                organization:   ('printing' standardMessageText)
>>>
>>>                subclasses:     nil
>>>                name:   #PrimitiveFailed
>>>                classPool:      nil
>>>                sharedPools:    nil
>>>                environment:    a SystemDictionary(lots of globals)
>>>                category:       #'Kernel-Exceptions'
>>>                traitComposition:       {}
>>>                localSelectors:         nil
>>>
>>>
>>> Socket(Object)>>primitiveFailed:
>>>        Receiver: a Socket[invalidSocketHandle]
>>>        Arguments and temporary variables:
>>>                t1:     #primSocketReceiveDataAvailable:
>>>        Receiver's instance variables:
>>>                semaphore:      a Semaphore()
>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>                readSemaphore:  a Semaphore()
>>>                writeSemaphore:         a Semaphore()
>>>
>>>
>>> Socket(Object)>>primitiveFailed
>>>        Receiver: a Socket[invalidSocketHandle]
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                semaphore:      a Semaphore()
>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>                readSemaphore:  a Semaphore()
>>>                writeSemaphore:         a Semaphore()
>>>
>>>
>>> Socket>>primSocketReceiveDataAvailable:
>>>        Receiver: a Socket[invalidSocketHandle]
>>>        Arguments and temporary variables:
>>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>        Receiver's instance variables:
>>>                semaphore:      a Semaphore()
>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>                readSemaphore:  a Semaphore()
>>>                writeSemaphore:         a Semaphore()
>>>
>>>
>>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>>        Receiver: a Socket[invalidSocketHandle]
>>>        Arguments and temporary variables:
>>>                t1:     45
>>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>>                t4:     2210099
>>>                t5:     45000
>>>        Receiver's instance variables:
>>>                semaphore:      a Semaphore()
>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>                readSemaphore:  a Semaphore()
>>>                writeSemaphore:         a Semaphore()
>>>
>>>
>>> Socket>>waitForDataFor:
>>>        Receiver: a Socket[invalidSocketHandle]
>>>        Arguments and temporary variables:
>>>                t1:     45
>>>        Receiver's instance variables:
>>>                semaphore:      a Semaphore()
>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>                readSemaphore:  a Semaphore()
>>>                writeSemaphore:         a Semaphore()
>>>
>>>
>>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>>        Receiver: a Socket[invalidSocketHandle]
>>>        Arguments and temporary variables:
>>>                t1:     45
>>>                t2:     'CONNECTED
>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>>                t3:     796
>>>        Receiver's instance variables:
>>>                semaphore:      a Semaphore()
>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>                readSemaphore:  a Semaphore()
>>>                writeSemaphore:         a Semaphore()
>>>
>>>
>>> SocketStream>>receiveData
>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                recentlyRead:   716
>>>                socket:         a Socket[invalidSocketHandle]
>>>                inBuffer:       'CONNECTED
>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>                outBuffer:      'SUBSCRIBE
>>> destination: /topic/parspro-core.juliet-core-events
>>>
>>>
>>>
>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>
>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>
>>>>> Hi,
>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>
>>>> The script on the hudson is old... we need to update it. And move everything
>>>> from hudson to jenkins. And, and...
>>>>
>>>> So for now:
>>>>
>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>
>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>
>>>>> often run into problems with having different VMs/Plugin on different
>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>> one package, where I can just update the image.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Marcus Denker -- http://marcusdenker.de
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> ~JT
>>>
>>>
>>
>>
>>
>> --
>> Best regards,
>> Igor Stasenko AKA sig.
>>
>
>
>
> --
> ~JT
>



--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
This is my code :-
startAnnouncing
        process notNil ifTrue: [ ^ self ].
        process := [
                [ [ [ self announceNextCommand ]
                        on: ConnectionTimedOut
                        do: [ :e | ] ] repeat ]
                                on: Error
                                do: [ :e | self logger error: 'Error in startAnnouncing e --> ', e
greaseString.
                                                self error: e.
                                                e return
                                ].
                ] forkAt: Processor highIOPriority named: 'Juliet Stomp Announcer'

How can I make this safer, or make it in such a way that the image
doesn't crash?

Also is the image destroyed now? Is there a way to start it and bypass
this code? Thanks for looking into this.

On Fri, Sep 9, 2011 at 14:55, Igor Stasenko <[hidden email]> wrote:

> On 9 September 2011 20:43, John Toohey <[hidden email]> wrote:
>> This happened after a VM crash, when I try to restart I get this in
>> the log. Isn't the error caused by the isEmptyOrNil primitive? Is
>> there anyway for me to access the image now?
>>
>
> an error caused by a primitive failure with invalid socket:
>
> SocketStream>>receiveData
>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>        Arguments and temporary variables:
>>>
>>>        Receiver's instance variables:
>>>                recentlyRead:   716
>>>                socket:         a Socket[invalidSocketHandle]
>>>                inBuffer:       'CONNECTED
>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>                outBuffer:      'SUBSCRIBE
>>> destination: /topic/parspro-core.juliet-core-events
>
>
> looks like your image was saved with socket being open and upon
> restart it tries to read data from it.
> This , of course , causing failure and leads to error signaled.
>
> If you want to track down the error, there is an option in system settings:
> 'Make a snapshot of new version before quit
> On unhandled exception, save a new version of image before quit'
> in 'Headless mode' group.
>
>> On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:
>>> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>>>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>>>> just crashed again, and this time I cannot get it to restart. It seems
>>>> to be crashing in a socket receive class. The stack trace is here :-
>>>>
>>>
>>> This is not a crash, it just quits to OS due to error at startup.
>>> To avoid imminent leave to OS, put an error handler around your startup code
>>> (i guess it is in CoreMQStompConnection somewhere?).
>>>
>>>
>>>
>>>> THERE_BE_DRAGONS_HERE
>>>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>> 9 September 2011 2:28:41 pm
>>>>
>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>> VMMaker-oscog-IgorStasenko.123] 21.0
>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>
>>>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>> in a Socket[invalidSocketHandl...etc...
>>>>        Arguments and temporary variables:
>>>>                t1:     isEmptyOrNil
>>>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>                t3:     nil
>>>>        Receiver's instance variables:
>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>> Socket[invalidSoc...etc...
>>>>                tag:    nil
>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>                handlerContext:         BlockClosure>>on:do:
>>>>                outerContext:   nil
>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>
>>>>
>>>> [:t1 |
>>>> | t2 |
>>>> t1 << self class name.
>>>>        (t2 := self messageText) isEmptyOrNil
>>>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>>>        Receiver: <<error during printing>>
>>>>        Arguments and temporary variables:
>>>>                t1:     a WriteStream 'Error'
>>>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>        Receiver's instance variables:
>>>>                messageText:    PrimitiveFailed: primitive
>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>                tag:    nil
>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-T...etc...
>>>>                signalContext:  Error(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>
>>>>
>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>        Receiver: String
>>>>        Arguments and temporary variables:
>>>>                t1:     100
>>>>                t2:     [:t1 |
>>>> | t2 |
>>>> t1 << self class name.
>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>                t3:     a WriteStream 'Error'
>>>>        Receiver's instance variables:
>>>>                superclass:     ArrayedCollection
>>>>                methodDict:     a MethodDictionary(size 303)
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>> isLegalInstVar...etc...
>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>                name:   #String
>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>> 13 14 15 16...etc...
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Collections-Strings'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>>
>>>> String class(SequenceableCollection class)>>streamContents:
>>>>        Receiver: String
>>>>        Arguments and temporary variables:
>>>>                t1:     [:t1 |
>>>> | t2 |
>>>> t1 << self class name.
>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>        Receiver's instance variables:
>>>>                superclass:     ArrayedCollection
>>>>                methodDict:     a MethodDictionary(size 303)
>>>>                format:         2
>>>>                instanceVariables:      nil
>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>> isLegalInstVar...etc...
>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>                name:   #String
>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>> 13 14 15 16...etc...
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Collections-Strings'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>>
>>>> Error(Exception)>>description
>>>>        Receiver: <<error during printing>>
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    PrimitiveFailed: primitive
>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>                tag:    nil
>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-T...etc...
>>>>                signalContext:  Error(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>
>>>>
>>>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>>>        Receiver: a StartupUIManager
>>>>        Arguments and temporary variables:
>>>> <<error during printing>
>>>>        Receiver's instance variables:
>>>>                uiManager:      a MorphicUIManager
>>>>                doNotQuitOnRestart:     false
>>>>
>>>>
>>>> UnhandledError>>defaultAction
>>>>        Receiver: UnhandledError
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       <<error during printing>>
>>>>
>>>> UndefinedObject>>handleSignal:
>>>>        Receiver: nil
>>>>        Arguments and temporary variables:
>>>>                t1:     UnhandledError
>>>>        Receiver's instance variables:
>>>> nil
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>>                t1:     UnhandledError
>>>>                t2:     nil
>>>>        Receiver's instance variables:
>>>>                sender:         [[[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | ni...etc...
>>>>
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>>                t1:     UnhandledError
>>>>                t2:     nil
>>>>        Receiver's instance variables:
>>>>                sender:         [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil]...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [self announceNextCommand]
>>>>
>>>>
>>>> UnhandledError(Exception)>>signal
>>>>        Receiver: UnhandledError
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    nil
>>>>                tag:    nil
>>>>                signaler:       <<error during printing>>
>>>>
>>>> UnhandledError class>>signalForException:
>>>>        Receiver: UnhandledError
>>>>        Arguments and temporary variables:
>>>> <<error during printing>
>>>>        Receiver's instance variables:
>>>>                superclass:     Exception
>>>>                methodDict:     a
>>>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>>>> ...etc...
>>>>                format:         144
>>>>                instanceVariables:      #('exception')
>>>>                organization:   ('*UIManager' defaultAction)
>>>> ('as yet unclassified' exception exc...etc...
>>>>                subclasses:     nil
>>>>                name:   #UnhandledError
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Kernel-Exceptions'
>>>>                traitComposition:       nil
>>>>                localSelectors:         nil
>>>>
>>>>
>>>> Error>>defaultAction
>>>>        Receiver: <<error during printing>>
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    PrimitiveFailed: primitive
>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>                tag:    nil
>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-T...etc...
>>>>                signalContext:  Error(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>
>>>>
>>>> UndefinedObject>>handleSignal:
>>>>        Receiver: nil
>>>>        Arguments and temporary variables:
>>>> <<error during printing>
>>>>        Receiver's instance variables:
>>>> nil
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>> <<error during printing>
>>>>        Receiver's instance variables:
>>>>                sender:         [[[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | ni...etc...
>>>>
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>> <<error during printing>
>>>>        Receiver's instance variables:
>>>>                sender:         [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil]...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [self announceNextCommand]
>>>>
>>>>
>>>> Error(Exception)>>signal
>>>>        Receiver: <<error during printing>>
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    PrimitiveFailed: primitive
>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>                tag:    nil
>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-T...etc...
>>>>                signalContext:  Error(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>
>>>>
>>>> Error(Exception)>>signal:
>>>>        Receiver: <<error during printing>>
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>        Receiver's instance variables:
>>>>                messageText:    PrimitiveFailed: primitive
>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>                tag:    nil
>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-T...etc...
>>>>                signalContext:  Error(Exception)>>signal
>>>>                handlerContext:         nil
>>>>                outerContext:   nil
>>>>
>>>>
>>>> CoreMQStompConnection(Object)>>error:
>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>        Receiver's instance variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                connectResponse:        CONNECTED
>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>                process:        a Process in nil
>>>>                logger:         a JulietLogger
>>>>
>>>>
>>>> [:t1 |
>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>        self error: t1.
>>>>        t1 return] in [[[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil]] repeat.
>>>>        nil]
>>>>                on: Error
>>>>                do: [:t1 |
>>>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>                        self error: t1.
>>>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>        Receiver's instance variables:
>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>                connectResponse:        CONNECTED
>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>                process:        a Process in nil
>>>>                logger:         a JulietLogger
>>>>
>>>>
>>>> BlockClosure>>cull:
>>>>        Receiver: [:t1 |
>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>        self erro...etc...
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>        Receiver's instance variables:
>>>>                outerContext:   [[[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1...etc...
>>>>                startpc:        118
>>>>                numArgs:        1
>>>>
>>>>
>>>> [(self tempAt: 2)
>>>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>        Receiver's instance variables:
>>>>                sender:         [[[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | ni...etc...
>>>>
>>>>
>>>> BlockClosure>>ensure:
>>>>        Receiver: [(self tempAt: 2)
>>>>                cull: t1]
>>>>        Arguments and temporary variables:
>>>>                aBlock:         [self tempAt: 3 put: true]
>>>>                complete:       nil
>>>>                returnValue:    nil
>>>>        Receiver's instance variables:
>>>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>>>                startpc:        98
>>>>                numArgs:        0
>>>>
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>                t2:     nil
>>>>        Receiver's instance variables:
>>>>                sender:         [[[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | ni...etc...
>>>>
>>>>
>>>> MethodContext(ContextPart)>>handleSignal:
>>>>        Receiver: BlockClosure>>on:do:
>>>>        Arguments and temporary variables:
>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>> a Socket[inv...etc...
>>>>                t2:     nil
>>>>        Receiver's instance variables:
>>>>                sender:         [[[self announceNextCommand]
>>>>                on: ConnectionTimedOut
>>>>                do: [:t1 | nil]...etc...
>>>>                pc:     17
>>>>                stackp:         3
>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>                closureOrNil:   nil
>>>>                receiver:       [self announceNextCommand]
>>>>
>>>>
>>>> PrimitiveFailed(Exception)>>signal
>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>> in a Socket[invalidSocketHandl...etc...
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>> Socket[invalidSoc...etc...
>>>>                tag:    nil
>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>                handlerContext:         BlockClosure>>on:do:
>>>>                outerContext:   nil
>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>
>>>>
>>>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>>>        Receiver: PrimitiveFailed
>>>>        Arguments and temporary variables:
>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>        Receiver's instance variables:
>>>>                superclass:     SelectorException
>>>>                methodDict:     a
>>>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>>>                format:         144
>>>>                instanceVariables:      nil
>>>>                organization:   ('printing' standardMessageText)
>>>>
>>>>                subclasses:     nil
>>>>                name:   #PrimitiveFailed
>>>>                classPool:      nil
>>>>                sharedPools:    nil
>>>>                environment:    a SystemDictionary(lots of globals)
>>>>                category:       #'Kernel-Exceptions'
>>>>                traitComposition:       {}
>>>>                localSelectors:         nil
>>>>
>>>>
>>>> Socket(Object)>>primitiveFailed:
>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>        Arguments and temporary variables:
>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>        Receiver's instance variables:
>>>>                semaphore:      a Semaphore()
>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>                readSemaphore:  a Semaphore()
>>>>                writeSemaphore:         a Semaphore()
>>>>
>>>>
>>>> Socket(Object)>>primitiveFailed
>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                semaphore:      a Semaphore()
>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>                readSemaphore:  a Semaphore()
>>>>                writeSemaphore:         a Semaphore()
>>>>
>>>>
>>>> Socket>>primSocketReceiveDataAvailable:
>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>        Arguments and temporary variables:
>>>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>        Receiver's instance variables:
>>>>                semaphore:      a Semaphore()
>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>                readSemaphore:  a Semaphore()
>>>>                writeSemaphore:         a Semaphore()
>>>>
>>>>
>>>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>        Arguments and temporary variables:
>>>>                t1:     45
>>>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>>>                t4:     2210099
>>>>                t5:     45000
>>>>        Receiver's instance variables:
>>>>                semaphore:      a Semaphore()
>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>                readSemaphore:  a Semaphore()
>>>>                writeSemaphore:         a Semaphore()
>>>>
>>>>
>>>> Socket>>waitForDataFor:
>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>        Arguments and temporary variables:
>>>>                t1:     45
>>>>        Receiver's instance variables:
>>>>                semaphore:      a Semaphore()
>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>                readSemaphore:  a Semaphore()
>>>>                writeSemaphore:         a Semaphore()
>>>>
>>>>
>>>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>        Arguments and temporary variables:
>>>>                t1:     45
>>>>                t2:     'CONNECTED
>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>>>                t3:     796
>>>>        Receiver's instance variables:
>>>>                semaphore:      a Semaphore()
>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>                readSemaphore:  a Semaphore()
>>>>                writeSemaphore:         a Semaphore()
>>>>
>>>>
>>>> SocketStream>>receiveData
>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                recentlyRead:   716
>>>>                socket:         a Socket[invalidSocketHandle]
>>>>                inBuffer:       'CONNECTED
>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>                outBuffer:      'SUBSCRIBE
>>>> destination: /topic/parspro-core.juliet-core-events
>>>>
>>>>
>>>>
>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>
>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>
>>>>>> Hi,
>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>
>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>> from hudson to jenkins. And, and...
>>>>>
>>>>> So for now:
>>>>>
>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>
>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>
>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>> one package, where I can just update the image.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ~JT
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Best regards,
>>> Igor Stasenko AKA sig.
>>>
>>
>>
>>
>> --
>> ~JT
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Igor Stasenko
On 9 September 2011 21:58, John Toohey <[hidden email]> wrote:

> This is my code :-
> startAnnouncing
>        process notNil ifTrue: [ ^ self ].
>        process := [
>                [ [ [ self announceNextCommand ]
>                        on: ConnectionTimedOut
>                        do: [ :e | ] ] repeat ]
>                                on: Error
>                                do: [ :e | self logger error: 'Error in startAnnouncing e --> ', e
> greaseString.
>                                                self error: e.
>                                                e return

this code looking suspicious. but i not sure what it does,
do you override #error: method in your class? what it does?
if it not overridden, then by sending self error: you causing another
error to be signaled,
which is not handled by any handler block
so, it will signal an unhandled error exception and finally bail out
to OS during startup.
To simplify things, what happens is following:

[ self error: 'hahaha' ] fork.
instead it should be like:

[ [ self error: 'hahaha' ] on: Error do: [:ex | .. handle error here,
and don't let it being unhandled ] ] fork.

>                                ].
>                ] forkAt: Processor highIOPriority named: 'Juliet Stomp Announcer'
>
> How can I make this safer, or make it in such a way that the image
> doesn't crash?
>
> Also is the image destroyed now? Is there a way to start it and bypass
> this code? Thanks for looking into this.
>
> On Fri, Sep 9, 2011 at 14:55, Igor Stasenko <[hidden email]> wrote:
>> On 9 September 2011 20:43, John Toohey <[hidden email]> wrote:
>>> This happened after a VM crash, when I try to restart I get this in
>>> the log. Isn't the error caused by the isEmptyOrNil primitive? Is
>>> there anyway for me to access the image now?
>>>
>>
>> an error caused by a primitive failure with invalid socket:
>>
>> SocketStream>>receiveData
>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>        Arguments and temporary variables:
>>>>
>>>>        Receiver's instance variables:
>>>>                recentlyRead:   716
>>>>                socket:         a Socket[invalidSocketHandle]
>>>>                inBuffer:       'CONNECTED
>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>                outBuffer:      'SUBSCRIBE
>>>> destination: /topic/parspro-core.juliet-core-events
>>
>>
>> looks like your image was saved with socket being open and upon
>> restart it tries to read data from it.
>> This , of course , causing failure and leads to error signaled.
>>
>> If you want to track down the error, there is an option in system settings:
>> 'Make a snapshot of new version before quit
>> On unhandled exception, save a new version of image before quit'
>> in 'Headless mode' group.
>>
>>> On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:
>>>> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>>>>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>>>>> just crashed again, and this time I cannot get it to restart. It seems
>>>>> to be crashing in a socket receive class. The stack trace is here :-
>>>>>
>>>>
>>>> This is not a crash, it just quits to OS due to error at startup.
>>>> To avoid imminent leave to OS, put an error handler around your startup code
>>>> (i guess it is in CoreMQStompConnection somewhere?).
>>>>
>>>>
>>>>
>>>>> THERE_BE_DRAGONS_HERE
>>>>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>> 9 September 2011 2:28:41 pm
>>>>>
>>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>>> VMMaker-oscog-IgorStasenko.123] 21.0
>>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>>
>>>>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>        Arguments and temporary variables:
>>>>>                t1:     isEmptyOrNil
>>>>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>                t3:     nil
>>>>>        Receiver's instance variables:
>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>> Socket[invalidSoc...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>                outerContext:   nil
>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>
>>>>>
>>>>> [:t1 |
>>>>> | t2 |
>>>>> t1 << self class name.
>>>>>        (t2 := self messageText) isEmptyOrNil
>>>>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>>>>        Receiver: <<error during printing>>
>>>>>        Arguments and temporary variables:
>>>>>                t1:     a WriteStream 'Error'
>>>>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>        Receiver's instance variables:
>>>>>                messageText:    PrimitiveFailed: primitive
>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-T...etc...
>>>>>                signalContext:  Error(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>
>>>>>
>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>        Receiver: String
>>>>>        Arguments and temporary variables:
>>>>>                t1:     100
>>>>>                t2:     [:t1 |
>>>>> | t2 |
>>>>> t1 << self class name.
>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>                t3:     a WriteStream 'Error'
>>>>>        Receiver's instance variables:
>>>>>                superclass:     ArrayedCollection
>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>> isLegalInstVar...etc...
>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>                name:   #String
>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>> 13 14 15 16...etc...
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Collections-Strings'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>>
>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>        Receiver: String
>>>>>        Arguments and temporary variables:
>>>>>                t1:     [:t1 |
>>>>> | t2 |
>>>>> t1 << self class name.
>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>        Receiver's instance variables:
>>>>>                superclass:     ArrayedCollection
>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>                format:         2
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>> isLegalInstVar...etc...
>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>                name:   #String
>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>> 13 14 15 16...etc...
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Collections-Strings'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>>
>>>>> Error(Exception)>>description
>>>>>        Receiver: <<error during printing>>
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    PrimitiveFailed: primitive
>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-T...etc...
>>>>>                signalContext:  Error(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>
>>>>>
>>>>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>>>>        Receiver: a StartupUIManager
>>>>>        Arguments and temporary variables:
>>>>> <<error during printing>
>>>>>        Receiver's instance variables:
>>>>>                uiManager:      a MorphicUIManager
>>>>>                doNotQuitOnRestart:     false
>>>>>
>>>>>
>>>>> UnhandledError>>defaultAction
>>>>>        Receiver: UnhandledError
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       <<error during printing>>
>>>>>
>>>>> UndefinedObject>>handleSignal:
>>>>>        Receiver: nil
>>>>>        Arguments and temporary variables:
>>>>>                t1:     UnhandledError
>>>>>        Receiver's instance variables:
>>>>> nil
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>>                t1:     UnhandledError
>>>>>                t2:     nil
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | ni...etc...
>>>>>
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>>                t1:     UnhandledError
>>>>>                t2:     nil
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil]...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [self announceNextCommand]
>>>>>
>>>>>
>>>>> UnhandledError(Exception)>>signal
>>>>>        Receiver: UnhandledError
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    nil
>>>>>                tag:    nil
>>>>>                signaler:       <<error during printing>>
>>>>>
>>>>> UnhandledError class>>signalForException:
>>>>>        Receiver: UnhandledError
>>>>>        Arguments and temporary variables:
>>>>> <<error during printing>
>>>>>        Receiver's instance variables:
>>>>>                superclass:     Exception
>>>>>                methodDict:     a
>>>>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>>>>> ...etc...
>>>>>                format:         144
>>>>>                instanceVariables:      #('exception')
>>>>>                organization:   ('*UIManager' defaultAction)
>>>>> ('as yet unclassified' exception exc...etc...
>>>>>                subclasses:     nil
>>>>>                name:   #UnhandledError
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Kernel-Exceptions'
>>>>>                traitComposition:       nil
>>>>>                localSelectors:         nil
>>>>>
>>>>>
>>>>> Error>>defaultAction
>>>>>        Receiver: <<error during printing>>
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    PrimitiveFailed: primitive
>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-T...etc...
>>>>>                signalContext:  Error(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>
>>>>>
>>>>> UndefinedObject>>handleSignal:
>>>>>        Receiver: nil
>>>>>        Arguments and temporary variables:
>>>>> <<error during printing>
>>>>>        Receiver's instance variables:
>>>>> nil
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>> <<error during printing>
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | ni...etc...
>>>>>
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>> <<error during printing>
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil]...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [self announceNextCommand]
>>>>>
>>>>>
>>>>> Error(Exception)>>signal
>>>>>        Receiver: <<error during printing>>
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    PrimitiveFailed: primitive
>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-T...etc...
>>>>>                signalContext:  Error(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>
>>>>>
>>>>> Error(Exception)>>signal:
>>>>>        Receiver: <<error during printing>>
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>        Receiver's instance variables:
>>>>>                messageText:    PrimitiveFailed: primitive
>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-T...etc...
>>>>>                signalContext:  Error(Exception)>>signal
>>>>>                handlerContext:         nil
>>>>>                outerContext:   nil
>>>>>
>>>>>
>>>>> CoreMQStompConnection(Object)>>error:
>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>        Receiver's instance variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                connectResponse:        CONNECTED
>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>                process:        a Process in nil
>>>>>                logger:         a JulietLogger
>>>>>
>>>>>
>>>>> [:t1 |
>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>        self error: t1.
>>>>>        t1 return] in [[[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil]] repeat.
>>>>>        nil]
>>>>>                on: Error
>>>>>                do: [:t1 |
>>>>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>                        self error: t1.
>>>>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>        Receiver's instance variables:
>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>                connectResponse:        CONNECTED
>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>                process:        a Process in nil
>>>>>                logger:         a JulietLogger
>>>>>
>>>>>
>>>>> BlockClosure>>cull:
>>>>>        Receiver: [:t1 |
>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>        self erro...etc...
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>        Receiver's instance variables:
>>>>>                outerContext:   [[[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1...etc...
>>>>>                startpc:        118
>>>>>                numArgs:        1
>>>>>
>>>>>
>>>>> [(self tempAt: 2)
>>>>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | ni...etc...
>>>>>
>>>>>
>>>>> BlockClosure>>ensure:
>>>>>        Receiver: [(self tempAt: 2)
>>>>>                cull: t1]
>>>>>        Arguments and temporary variables:
>>>>>                aBlock:         [self tempAt: 3 put: true]
>>>>>                complete:       nil
>>>>>                returnValue:    nil
>>>>>        Receiver's instance variables:
>>>>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>>>>                startpc:        98
>>>>>                numArgs:        0
>>>>>
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>                t2:     nil
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | ni...etc...
>>>>>
>>>>>
>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>        Receiver: BlockClosure>>on:do:
>>>>>        Arguments and temporary variables:
>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>> a Socket[inv...etc...
>>>>>                t2:     nil
>>>>>        Receiver's instance variables:
>>>>>                sender:         [[[self announceNextCommand]
>>>>>                on: ConnectionTimedOut
>>>>>                do: [:t1 | nil]...etc...
>>>>>                pc:     17
>>>>>                stackp:         3
>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>                closureOrNil:   nil
>>>>>                receiver:       [self announceNextCommand]
>>>>>
>>>>>
>>>>> PrimitiveFailed(Exception)>>signal
>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>> Socket[invalidSoc...etc...
>>>>>                tag:    nil
>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>                outerContext:   nil
>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>
>>>>>
>>>>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>>>>        Receiver: PrimitiveFailed
>>>>>        Arguments and temporary variables:
>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>        Receiver's instance variables:
>>>>>                superclass:     SelectorException
>>>>>                methodDict:     a
>>>>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>>>>                format:         144
>>>>>                instanceVariables:      nil
>>>>>                organization:   ('printing' standardMessageText)
>>>>>
>>>>>                subclasses:     nil
>>>>>                name:   #PrimitiveFailed
>>>>>                classPool:      nil
>>>>>                sharedPools:    nil
>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>                category:       #'Kernel-Exceptions'
>>>>>                traitComposition:       {}
>>>>>                localSelectors:         nil
>>>>>
>>>>>
>>>>> Socket(Object)>>primitiveFailed:
>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>        Arguments and temporary variables:
>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>        Receiver's instance variables:
>>>>>                semaphore:      a Semaphore()
>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>                readSemaphore:  a Semaphore()
>>>>>                writeSemaphore:         a Semaphore()
>>>>>
>>>>>
>>>>> Socket(Object)>>primitiveFailed
>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                semaphore:      a Semaphore()
>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>                readSemaphore:  a Semaphore()
>>>>>                writeSemaphore:         a Semaphore()
>>>>>
>>>>>
>>>>> Socket>>primSocketReceiveDataAvailable:
>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>        Arguments and temporary variables:
>>>>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>        Receiver's instance variables:
>>>>>                semaphore:      a Semaphore()
>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>                readSemaphore:  a Semaphore()
>>>>>                writeSemaphore:         a Semaphore()
>>>>>
>>>>>
>>>>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>        Arguments and temporary variables:
>>>>>                t1:     45
>>>>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>>>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>>>>                t4:     2210099
>>>>>                t5:     45000
>>>>>        Receiver's instance variables:
>>>>>                semaphore:      a Semaphore()
>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>                readSemaphore:  a Semaphore()
>>>>>                writeSemaphore:         a Semaphore()
>>>>>
>>>>>
>>>>> Socket>>waitForDataFor:
>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>        Arguments and temporary variables:
>>>>>                t1:     45
>>>>>        Receiver's instance variables:
>>>>>                semaphore:      a Semaphore()
>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>                readSemaphore:  a Semaphore()
>>>>>                writeSemaphore:         a Semaphore()
>>>>>
>>>>>
>>>>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>        Arguments and temporary variables:
>>>>>                t1:     45
>>>>>                t2:     'CONNECTED
>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>>>>                t3:     796
>>>>>        Receiver's instance variables:
>>>>>                semaphore:      a Semaphore()
>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>                readSemaphore:  a Semaphore()
>>>>>                writeSemaphore:         a Semaphore()
>>>>>
>>>>>
>>>>> SocketStream>>receiveData
>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                recentlyRead:   716
>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>                inBuffer:       'CONNECTED
>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>                outBuffer:      'SUBSCRIBE
>>>>> destination: /topic/parspro-core.juliet-core-events
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>
>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>
>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>> from hudson to jenkins. And, and...
>>>>>>
>>>>>> So for now:
>>>>>>
>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>
>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>
>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>> one package, where I can just update the image.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ~JT
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Igor Stasenko AKA sig.
>>>>
>>>
>>>
>>>
>>> --
>>> ~JT
>>>
>>
>>
>>
>> --
>> Best regards,
>> Igor Stasenko AKA sig.
>>
>
>
>
> --
> ~JT
>



--
Best regards,
Igor Stasenko.
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
This code is used to keep a socket connection open to an ActiveMQ JMS
server. I use the Stomp protocol to send messages from ST to various
servers in my cluster via JMS. The self error: e code was just meant
to fire up the debugger, so I could trace any errors. I'll remove that
now.

So do I have to rebuild a new image from scratch now? Is there any
command line switch that I can use to by pass the loading of my app on
start up?

On Fri, Sep 9, 2011 at 15:10, Igor Stasenko <[hidden email]> wrote:

> On 9 September 2011 21:58, John Toohey <[hidden email]> wrote:
>> This is my code :-
>> startAnnouncing
>>        process notNil ifTrue: [ ^ self ].
>>        process := [
>>                [ [ [ self announceNextCommand ]
>>                        on: ConnectionTimedOut
>>                        do: [ :e | ] ] repeat ]
>>                                on: Error
>>                                do: [ :e | self logger error: 'Error in startAnnouncing e --> ', e
>> greaseString.
>>                                                self error: e.
>>                                                e return
>
> this code looking suspicious. but i not sure what it does,
> do you override #error: method in your class? what it does?
> if it not overridden, then by sending self error: you causing another
> error to be signaled,
> which is not handled by any handler block
> so, it will signal an unhandled error exception and finally bail out
> to OS during startup.
> To simplify things, what happens is following:
>
> [ self error: 'hahaha' ] fork.
> instead it should be like:
>
> [ [ self error: 'hahaha' ] on: Error do: [:ex | .. handle error here,
> and don't let it being unhandled ] ] fork.
>
>>                                ].
>>                ] forkAt: Processor highIOPriority named: 'Juliet Stomp Announcer'
>>
>> How can I make this safer, or make it in such a way that the image
>> doesn't crash?
>>
>> Also is the image destroyed now? Is there a way to start it and bypass
>> this code? Thanks for looking into this.
>>
>> On Fri, Sep 9, 2011 at 14:55, Igor Stasenko <[hidden email]> wrote:
>>> On 9 September 2011 20:43, John Toohey <[hidden email]> wrote:
>>>> This happened after a VM crash, when I try to restart I get this in
>>>> the log. Isn't the error caused by the isEmptyOrNil primitive? Is
>>>> there anyway for me to access the image now?
>>>>
>>>
>>> an error caused by a primitive failure with invalid socket:
>>>
>>> SocketStream>>receiveData
>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>        Arguments and temporary variables:
>>>>>
>>>>>        Receiver's instance variables:
>>>>>                recentlyRead:   716
>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>                inBuffer:       'CONNECTED
>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>                outBuffer:      'SUBSCRIBE
>>>>> destination: /topic/parspro-core.juliet-core-events
>>>
>>>
>>> looks like your image was saved with socket being open and upon
>>> restart it tries to read data from it.
>>> This , of course , causing failure and leads to error signaled.
>>>
>>> If you want to track down the error, there is an option in system settings:
>>> 'Make a snapshot of new version before quit
>>> On unhandled exception, save a new version of image before quit'
>>> in 'Headless mode' group.
>>>
>>>> On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:
>>>>> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>>>>>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>>>>>> just crashed again, and this time I cannot get it to restart. It seems
>>>>>> to be crashing in a socket receive class. The stack trace is here :-
>>>>>>
>>>>>
>>>>> This is not a crash, it just quits to OS due to error at startup.
>>>>> To avoid imminent leave to OS, put an error handler around your startup code
>>>>> (i guess it is in CoreMQStompConnection somewhere?).
>>>>>
>>>>>
>>>>>
>>>>>> THERE_BE_DRAGONS_HERE
>>>>>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>> 9 September 2011 2:28:41 pm
>>>>>>
>>>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>>>> VMMaker-oscog-IgorStasenko.123] 21.0
>>>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>>>
>>>>>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     isEmptyOrNil
>>>>>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>>                t3:     nil
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>>> Socket[invalidSoc...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>>                outerContext:   nil
>>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>>
>>>>>>
>>>>>> [:t1 |
>>>>>> | t2 |
>>>>>> t1 << self class name.
>>>>>>        (t2 := self messageText) isEmptyOrNil
>>>>>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>>>>>        Receiver: <<error during printing>>
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     a WriteStream 'Error'
>>>>>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-T...etc...
>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>
>>>>>>
>>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>>        Receiver: String
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     100
>>>>>>                t2:     [:t1 |
>>>>>> | t2 |
>>>>>> t1 << self class name.
>>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>>                t3:     a WriteStream 'Error'
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     ArrayedCollection
>>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>> isLegalInstVar...etc...
>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>                name:   #String
>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>> 13 14 15 16...etc...
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Collections-Strings'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>>
>>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>>        Receiver: String
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     [:t1 |
>>>>>> | t2 |
>>>>>> t1 << self class name.
>>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     ArrayedCollection
>>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>>                format:         2
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>> isLegalInstVar...etc...
>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>                name:   #String
>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>> 13 14 15 16...etc...
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Collections-Strings'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>>
>>>>>> Error(Exception)>>description
>>>>>>        Receiver: <<error during printing>>
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-T...etc...
>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>
>>>>>>
>>>>>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>>>>>        Receiver: a StartupUIManager
>>>>>>        Arguments and temporary variables:
>>>>>> <<error during printing>
>>>>>>        Receiver's instance variables:
>>>>>>                uiManager:      a MorphicUIManager
>>>>>>                doNotQuitOnRestart:     false
>>>>>>
>>>>>>
>>>>>> UnhandledError>>defaultAction
>>>>>>        Receiver: UnhandledError
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       <<error during printing>>
>>>>>>
>>>>>> UndefinedObject>>handleSignal:
>>>>>>        Receiver: nil
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     UnhandledError
>>>>>>        Receiver's instance variables:
>>>>>> nil
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     UnhandledError
>>>>>>                t2:     nil
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | ni...etc...
>>>>>>
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     UnhandledError
>>>>>>                t2:     nil
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil]...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [self announceNextCommand]
>>>>>>
>>>>>>
>>>>>> UnhandledError(Exception)>>signal
>>>>>>        Receiver: UnhandledError
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    nil
>>>>>>                tag:    nil
>>>>>>                signaler:       <<error during printing>>
>>>>>>
>>>>>> UnhandledError class>>signalForException:
>>>>>>        Receiver: UnhandledError
>>>>>>        Arguments and temporary variables:
>>>>>> <<error during printing>
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     Exception
>>>>>>                methodDict:     a
>>>>>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>>>>>> ...etc...
>>>>>>                format:         144
>>>>>>                instanceVariables:      #('exception')
>>>>>>                organization:   ('*UIManager' defaultAction)
>>>>>> ('as yet unclassified' exception exc...etc...
>>>>>>                subclasses:     nil
>>>>>>                name:   #UnhandledError
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Kernel-Exceptions'
>>>>>>                traitComposition:       nil
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>>
>>>>>> Error>>defaultAction
>>>>>>        Receiver: <<error during printing>>
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-T...etc...
>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>
>>>>>>
>>>>>> UndefinedObject>>handleSignal:
>>>>>>        Receiver: nil
>>>>>>        Arguments and temporary variables:
>>>>>> <<error during printing>
>>>>>>        Receiver's instance variables:
>>>>>> nil
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>> <<error during printing>
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | ni...etc...
>>>>>>
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>> <<error during printing>
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil]...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [self announceNextCommand]
>>>>>>
>>>>>>
>>>>>> Error(Exception)>>signal
>>>>>>        Receiver: <<error during printing>>
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-T...etc...
>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>
>>>>>>
>>>>>> Error(Exception)>>signal:
>>>>>>        Receiver: <<error during printing>>
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-T...etc...
>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>                handlerContext:         nil
>>>>>>                outerContext:   nil
>>>>>>
>>>>>>
>>>>>> CoreMQStompConnection(Object)>>error:
>>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                connectResponse:        CONNECTED
>>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>>                process:        a Process in nil
>>>>>>                logger:         a JulietLogger
>>>>>>
>>>>>>
>>>>>> [:t1 |
>>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>        self error: t1.
>>>>>>        t1 return] in [[[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil]] repeat.
>>>>>>        nil]
>>>>>>                on: Error
>>>>>>                do: [:t1 |
>>>>>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>                        self error: t1.
>>>>>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>                connectResponse:        CONNECTED
>>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>>                process:        a Process in nil
>>>>>>                logger:         a JulietLogger
>>>>>>
>>>>>>
>>>>>> BlockClosure>>cull:
>>>>>>        Receiver: [:t1 |
>>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>        self erro...etc...
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                outerContext:   [[[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1...etc...
>>>>>>                startpc:        118
>>>>>>                numArgs:        1
>>>>>>
>>>>>>
>>>>>> [(self tempAt: 2)
>>>>>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | ni...etc...
>>>>>>
>>>>>>
>>>>>> BlockClosure>>ensure:
>>>>>>        Receiver: [(self tempAt: 2)
>>>>>>                cull: t1]
>>>>>>        Arguments and temporary variables:
>>>>>>                aBlock:         [self tempAt: 3 put: true]
>>>>>>                complete:       nil
>>>>>>                returnValue:    nil
>>>>>>        Receiver's instance variables:
>>>>>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>>>>>                startpc:        98
>>>>>>                numArgs:        0
>>>>>>
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>                t2:     nil
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | ni...etc...
>>>>>>
>>>>>>
>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>> a Socket[inv...etc...
>>>>>>                t2:     nil
>>>>>>        Receiver's instance variables:
>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>                on: ConnectionTimedOut
>>>>>>                do: [:t1 | nil]...etc...
>>>>>>                pc:     17
>>>>>>                stackp:         3
>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>                closureOrNil:   nil
>>>>>>                receiver:       [self announceNextCommand]
>>>>>>
>>>>>>
>>>>>> PrimitiveFailed(Exception)>>signal
>>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>>> Socket[invalidSoc...etc...
>>>>>>                tag:    nil
>>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>>                outerContext:   nil
>>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>>
>>>>>>
>>>>>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>>>>>        Receiver: PrimitiveFailed
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>>        Receiver's instance variables:
>>>>>>                superclass:     SelectorException
>>>>>>                methodDict:     a
>>>>>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>>>>>                format:         144
>>>>>>                instanceVariables:      nil
>>>>>>                organization:   ('printing' standardMessageText)
>>>>>>
>>>>>>                subclasses:     nil
>>>>>>                name:   #PrimitiveFailed
>>>>>>                classPool:      nil
>>>>>>                sharedPools:    nil
>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>                category:       #'Kernel-Exceptions'
>>>>>>                traitComposition:       {}
>>>>>>                localSelectors:         nil
>>>>>>
>>>>>>
>>>>>> Socket(Object)>>primitiveFailed:
>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>>        Receiver's instance variables:
>>>>>>                semaphore:      a Semaphore()
>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>                readSemaphore:  a Semaphore()
>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>
>>>>>>
>>>>>> Socket(Object)>>primitiveFailed
>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                semaphore:      a Semaphore()
>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>                readSemaphore:  a Semaphore()
>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>
>>>>>>
>>>>>> Socket>>primSocketReceiveDataAvailable:
>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>        Receiver's instance variables:
>>>>>>                semaphore:      a Semaphore()
>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>                readSemaphore:  a Semaphore()
>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>
>>>>>>
>>>>>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     45
>>>>>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>>>>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>>>>>                t4:     2210099
>>>>>>                t5:     45000
>>>>>>        Receiver's instance variables:
>>>>>>                semaphore:      a Semaphore()
>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>                readSemaphore:  a Semaphore()
>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>
>>>>>>
>>>>>> Socket>>waitForDataFor:
>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     45
>>>>>>        Receiver's instance variables:
>>>>>>                semaphore:      a Semaphore()
>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>                readSemaphore:  a Semaphore()
>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>
>>>>>>
>>>>>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>        Arguments and temporary variables:
>>>>>>                t1:     45
>>>>>>                t2:     'CONNECTED
>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>>>>>                t3:     796
>>>>>>        Receiver's instance variables:
>>>>>>                semaphore:      a Semaphore()
>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>                readSemaphore:  a Semaphore()
>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>
>>>>>>
>>>>>> SocketStream>>receiveData
>>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                recentlyRead:   716
>>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>>                inBuffer:       'CONNECTED
>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>>                outBuffer:      'SUBSCRIBE
>>>>>> destination: /topic/parspro-core.juliet-core-events
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>>
>>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>>
>>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>>> from hudson to jenkins. And, and...
>>>>>>>
>>>>>>> So for now:
>>>>>>>
>>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>>
>>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>>
>>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>>> one package, where I can just update the image.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> ~JT
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Best regards,
>>>>> Igor Stasenko AKA sig.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ~JT
>>>>
>>>
>>>
>>>
>>> --
>>> Best regards,
>>> Igor Stasenko AKA sig.
>>>
>>
>>
>>
>> --
>> ~JT
>>
>
>
>
> --
> Best regards,
> Igor Stasenko.
>



--
~JT
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

Igor Stasenko
On 9 September 2011 22:19, John Toohey <[hidden email]> wrote:

> This code is used to keep a socket connection open to an ActiveMQ JMS
> server. I use the Stomp protocol to send messages from ST to various
> servers in my cluster via JMS. The self error: e code was just meant
> to fire up the debugger, so I could trace any errors. I'll remove that
> now.
>
> So do I have to rebuild a new image from scratch now? Is there any
> command line switch that I can use to by pass the loading of my app on
> start up?
>
none.
rebuild an image.

> On Fri, Sep 9, 2011 at 15:10, Igor Stasenko <[hidden email]> wrote:
>> On 9 September 2011 21:58, John Toohey <[hidden email]> wrote:
>>> This is my code :-
>>> startAnnouncing
>>>        process notNil ifTrue: [ ^ self ].
>>>        process := [
>>>                [ [ [ self announceNextCommand ]
>>>                        on: ConnectionTimedOut
>>>                        do: [ :e | ] ] repeat ]
>>>                                on: Error
>>>                                do: [ :e | self logger error: 'Error in startAnnouncing e --> ', e
>>> greaseString.
>>>                                                self error: e.
>>>                                                e return
>>
>> this code looking suspicious. but i not sure what it does,
>> do you override #error: method in your class? what it does?
>> if it not overridden, then by sending self error: you causing another
>> error to be signaled,
>> which is not handled by any handler block
>> so, it will signal an unhandled error exception and finally bail out
>> to OS during startup.
>> To simplify things, what happens is following:
>>
>> [ self error: 'hahaha' ] fork.
>> instead it should be like:
>>
>> [ [ self error: 'hahaha' ] on: Error do: [:ex | .. handle error here,
>> and don't let it being unhandled ] ] fork.
>>
>>>                                ].
>>>                ] forkAt: Processor highIOPriority named: 'Juliet Stomp Announcer'
>>>
>>> How can I make this safer, or make it in such a way that the image
>>> doesn't crash?
>>>
>>> Also is the image destroyed now? Is there a way to start it and bypass
>>> this code? Thanks for looking into this.
>>>
>>> On Fri, Sep 9, 2011 at 14:55, Igor Stasenko <[hidden email]> wrote:
>>>> On 9 September 2011 20:43, John Toohey <[hidden email]> wrote:
>>>>> This happened after a VM crash, when I try to restart I get this in
>>>>> the log. Isn't the error caused by the isEmptyOrNil primitive? Is
>>>>> there anyway for me to access the image now?
>>>>>
>>>>
>>>> an error caused by a primitive failure with invalid socket:
>>>>
>>>> SocketStream>>receiveData
>>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>        Arguments and temporary variables:
>>>>>>
>>>>>>        Receiver's instance variables:
>>>>>>                recentlyRead:   716
>>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>>                inBuffer:       'CONNECTED
>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>>                outBuffer:      'SUBSCRIBE
>>>>>> destination: /topic/parspro-core.juliet-core-events
>>>>
>>>>
>>>> looks like your image was saved with socket being open and upon
>>>> restart it tries to read data from it.
>>>> This , of course , causing failure and leads to error signaled.
>>>>
>>>> If you want to track down the error, there is an option in system settings:
>>>> 'Make a snapshot of new version before quit
>>>> On unhandled exception, save a new version of image before quit'
>>>> in 'Headless mode' group.
>>>>
>>>>> On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:
>>>>>> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>>>>>>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>>>>>>> just crashed again, and this time I cannot get it to restart. It seems
>>>>>>> to be crashing in a socket receive class. The stack trace is here :-
>>>>>>>
>>>>>>
>>>>>> This is not a crash, it just quits to OS due to error at startup.
>>>>>> To avoid imminent leave to OS, put an error handler around your startup code
>>>>>> (i guess it is in CoreMQStompConnection somewhere?).
>>>>>>
>>>>>>
>>>>>>
>>>>>>> THERE_BE_DRAGONS_HERE
>>>>>>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>>> 9 September 2011 2:28:41 pm
>>>>>>>
>>>>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>>>>> VMMaker-oscog-IgorStasenko.123] 21.0
>>>>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>>>>
>>>>>>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     isEmptyOrNil
>>>>>>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>>>                t3:     nil
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>>>> Socket[invalidSoc...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>>>                outerContext:   nil
>>>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>>>
>>>>>>>
>>>>>>> [:t1 |
>>>>>>> | t2 |
>>>>>>> t1 << self class name.
>>>>>>>        (t2 := self messageText) isEmptyOrNil
>>>>>>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>>>>>>        Receiver: <<error during printing>>
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     a WriteStream 'Error'
>>>>>>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-T...etc...
>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>                handlerContext:         nil
>>>>>>>                outerContext:   nil
>>>>>>>
>>>>>>>
>>>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>>>        Receiver: String
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     100
>>>>>>>                t2:     [:t1 |
>>>>>>> | t2 |
>>>>>>> t1 << self class name.
>>>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>>>                t3:     a WriteStream 'Error'
>>>>>>>        Receiver's instance variables:
>>>>>>>                superclass:     ArrayedCollection
>>>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>>>                format:         2
>>>>>>>                instanceVariables:      nil
>>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>>> isLegalInstVar...etc...
>>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>>                name:   #String
>>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>>> 13 14 15 16...etc...
>>>>>>>                sharedPools:    nil
>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>                category:       #'Collections-Strings'
>>>>>>>                traitComposition:       {}
>>>>>>>                localSelectors:         nil
>>>>>>>
>>>>>>>
>>>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>>>        Receiver: String
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     [:t1 |
>>>>>>> | t2 |
>>>>>>> t1 << self class name.
>>>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                superclass:     ArrayedCollection
>>>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>>>                format:         2
>>>>>>>                instanceVariables:      nil
>>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>>> isLegalInstVar...etc...
>>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>>                name:   #String
>>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>>> 13 14 15 16...etc...
>>>>>>>                sharedPools:    nil
>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>                category:       #'Collections-Strings'
>>>>>>>                traitComposition:       {}
>>>>>>>                localSelectors:         nil
>>>>>>>
>>>>>>>
>>>>>>> Error(Exception)>>description
>>>>>>>        Receiver: <<error during printing>>
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-T...etc...
>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>                handlerContext:         nil
>>>>>>>                outerContext:   nil
>>>>>>>
>>>>>>>
>>>>>>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>>>>>>        Receiver: a StartupUIManager
>>>>>>>        Arguments and temporary variables:
>>>>>>> <<error during printing>
>>>>>>>        Receiver's instance variables:
>>>>>>>                uiManager:      a MorphicUIManager
>>>>>>>                doNotQuitOnRestart:     false
>>>>>>>
>>>>>>>
>>>>>>> UnhandledError>>defaultAction
>>>>>>>        Receiver: UnhandledError
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    nil
>>>>>>>                tag:    nil
>>>>>>>                signaler:       <<error during printing>>
>>>>>>>
>>>>>>> UndefinedObject>>handleSignal:
>>>>>>>        Receiver: nil
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     UnhandledError
>>>>>>>        Receiver's instance variables:
>>>>>>> nil
>>>>>>>
>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     UnhandledError
>>>>>>>                t2:     nil
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>
>>>>>>>
>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     UnhandledError
>>>>>>>                t2:     nil
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil]...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [self announceNextCommand]
>>>>>>>
>>>>>>>
>>>>>>> UnhandledError(Exception)>>signal
>>>>>>>        Receiver: UnhandledError
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    nil
>>>>>>>                tag:    nil
>>>>>>>                signaler:       <<error during printing>>
>>>>>>>
>>>>>>> UnhandledError class>>signalForException:
>>>>>>>        Receiver: UnhandledError
>>>>>>>        Arguments and temporary variables:
>>>>>>> <<error during printing>
>>>>>>>        Receiver's instance variables:
>>>>>>>                superclass:     Exception
>>>>>>>                methodDict:     a
>>>>>>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>>>>>>> ...etc...
>>>>>>>                format:         144
>>>>>>>                instanceVariables:      #('exception')
>>>>>>>                organization:   ('*UIManager' defaultAction)
>>>>>>> ('as yet unclassified' exception exc...etc...
>>>>>>>                subclasses:     nil
>>>>>>>                name:   #UnhandledError
>>>>>>>                classPool:      nil
>>>>>>>                sharedPools:    nil
>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>                category:       #'Kernel-Exceptions'
>>>>>>>                traitComposition:       nil
>>>>>>>                localSelectors:         nil
>>>>>>>
>>>>>>>
>>>>>>> Error>>defaultAction
>>>>>>>        Receiver: <<error during printing>>
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-T...etc...
>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>                handlerContext:         nil
>>>>>>>                outerContext:   nil
>>>>>>>
>>>>>>>
>>>>>>> UndefinedObject>>handleSignal:
>>>>>>>        Receiver: nil
>>>>>>>        Arguments and temporary variables:
>>>>>>> <<error during printing>
>>>>>>>        Receiver's instance variables:
>>>>>>> nil
>>>>>>>
>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>> <<error during printing>
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>
>>>>>>>
>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>> <<error during printing>
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil]...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [self announceNextCommand]
>>>>>>>
>>>>>>>
>>>>>>> Error(Exception)>>signal
>>>>>>>        Receiver: <<error during printing>>
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-T...etc...
>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>                handlerContext:         nil
>>>>>>>                outerContext:   nil
>>>>>>>
>>>>>>>
>>>>>>> Error(Exception)>>signal:
>>>>>>>        Receiver: <<error during printing>>
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-T...etc...
>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>                handlerContext:         nil
>>>>>>>                outerContext:   nil
>>>>>>>
>>>>>>>
>>>>>>> CoreMQStompConnection(Object)>>error:
>>>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>                connectResponse:        CONNECTED
>>>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>>>                process:        a Process in nil
>>>>>>>                logger:         a JulietLogger
>>>>>>>
>>>>>>>
>>>>>>> [:t1 |
>>>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>>        self error: t1.
>>>>>>>        t1 return] in [[[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil]] repeat.
>>>>>>>        nil]
>>>>>>>                on: Error
>>>>>>>                do: [:t1 |
>>>>>>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>>                        self error: t1.
>>>>>>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>                connectResponse:        CONNECTED
>>>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>>>                process:        a Process in nil
>>>>>>>                logger:         a JulietLogger
>>>>>>>
>>>>>>>
>>>>>>> BlockClosure>>cull:
>>>>>>>        Receiver: [:t1 |
>>>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>>        self erro...etc...
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                outerContext:   [[[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1...etc...
>>>>>>>                startpc:        118
>>>>>>>                numArgs:        1
>>>>>>>
>>>>>>>
>>>>>>> [(self tempAt: 2)
>>>>>>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>
>>>>>>>
>>>>>>> BlockClosure>>ensure:
>>>>>>>        Receiver: [(self tempAt: 2)
>>>>>>>                cull: t1]
>>>>>>>        Arguments and temporary variables:
>>>>>>>                aBlock:         [self tempAt: 3 put: true]
>>>>>>>                complete:       nil
>>>>>>>                returnValue:    nil
>>>>>>>        Receiver's instance variables:
>>>>>>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>>>>>>                startpc:        98
>>>>>>>                numArgs:        0
>>>>>>>
>>>>>>>
>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>                t2:     nil
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>
>>>>>>>
>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>> a Socket[inv...etc...
>>>>>>>                t2:     nil
>>>>>>>        Receiver's instance variables:
>>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>>                on: ConnectionTimedOut
>>>>>>>                do: [:t1 | nil]...etc...
>>>>>>>                pc:     17
>>>>>>>                stackp:         3
>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>                closureOrNil:   nil
>>>>>>>                receiver:       [self announceNextCommand]
>>>>>>>
>>>>>>>
>>>>>>> PrimitiveFailed(Exception)>>signal
>>>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>>>> Socket[invalidSoc...etc...
>>>>>>>                tag:    nil
>>>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>>>                outerContext:   nil
>>>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>>>
>>>>>>>
>>>>>>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>>>>>>        Receiver: PrimitiveFailed
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>>>        Receiver's instance variables:
>>>>>>>                superclass:     SelectorException
>>>>>>>                methodDict:     a
>>>>>>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>>>>>>                format:         144
>>>>>>>                instanceVariables:      nil
>>>>>>>                organization:   ('printing' standardMessageText)
>>>>>>>
>>>>>>>                subclasses:     nil
>>>>>>>                name:   #PrimitiveFailed
>>>>>>>                classPool:      nil
>>>>>>>                sharedPools:    nil
>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>                category:       #'Kernel-Exceptions'
>>>>>>>                traitComposition:       {}
>>>>>>>                localSelectors:         nil
>>>>>>>
>>>>>>>
>>>>>>> Socket(Object)>>primitiveFailed:
>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>>>        Receiver's instance variables:
>>>>>>>                semaphore:      a Semaphore()
>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>
>>>>>>>
>>>>>>> Socket(Object)>>primitiveFailed
>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                semaphore:      a Semaphore()
>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>
>>>>>>>
>>>>>>> Socket>>primSocketReceiveDataAvailable:
>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>        Receiver's instance variables:
>>>>>>>                semaphore:      a Semaphore()
>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>
>>>>>>>
>>>>>>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     45
>>>>>>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>>>>>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>>>>>>                t4:     2210099
>>>>>>>                t5:     45000
>>>>>>>        Receiver's instance variables:
>>>>>>>                semaphore:      a Semaphore()
>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>
>>>>>>>
>>>>>>> Socket>>waitForDataFor:
>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     45
>>>>>>>        Receiver's instance variables:
>>>>>>>                semaphore:      a Semaphore()
>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>
>>>>>>>
>>>>>>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>        Arguments and temporary variables:
>>>>>>>                t1:     45
>>>>>>>                t2:     'CONNECTED
>>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>>>>>>                t3:     796
>>>>>>>        Receiver's instance variables:
>>>>>>>                semaphore:      a Semaphore()
>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>
>>>>>>>
>>>>>>> SocketStream>>receiveData
>>>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                recentlyRead:   716
>>>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>>>                inBuffer:       'CONNECTED
>>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>>>                outBuffer:      'SUBSCRIBE
>>>>>>> destination: /topic/parspro-core.juliet-core-events
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>>>
>>>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>>>
>>>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>>>> from hudson to jenkins. And, and...
>>>>>>>>
>>>>>>>> So for now:
>>>>>>>>
>>>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>>>
>>>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>>>
>>>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>>>> one package, where I can just update the image.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> ~JT
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Best regards,
>>>>>> Igor Stasenko AKA sig.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ~JT
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Igor Stasenko AKA sig.
>>>>
>>>
>>>
>>>
>>> --
>>> ~JT
>>>
>>
>>
>>
>> --
>> Best regards,
>> Igor Stasenko.
>>
>
>
>
> --
> ~JT
>



--
Best regards,
Igor Stasenko.
Reply | Threaded
Open this post in threaded view
|

Re: 1.3 OneCick with Cog VM

John Toohey
The joys of ST :-( Pharo really needs some kind of safe mode, that you
can boot into, to fix these kinds of problems. Thanks again for you
help.

On Fri, Sep 9, 2011 at 16:59, Igor Stasenko <[hidden email]> wrote:

> On 9 September 2011 22:19, John Toohey <[hidden email]> wrote:
>> This code is used to keep a socket connection open to an ActiveMQ JMS
>> server. I use the Stomp protocol to send messages from ST to various
>> servers in my cluster via JMS. The self error: e code was just meant
>> to fire up the debugger, so I could trace any errors. I'll remove that
>> now.
>>
>> So do I have to rebuild a new image from scratch now? Is there any
>> command line switch that I can use to by pass the loading of my app on
>> start up?
>>
> none.
> rebuild an image.
>
>> On Fri, Sep 9, 2011 at 15:10, Igor Stasenko <[hidden email]> wrote:
>>> On 9 September 2011 21:58, John Toohey <[hidden email]> wrote:
>>>> This is my code :-
>>>> startAnnouncing
>>>>        process notNil ifTrue: [ ^ self ].
>>>>        process := [
>>>>                [ [ [ self announceNextCommand ]
>>>>                        on: ConnectionTimedOut
>>>>                        do: [ :e | ] ] repeat ]
>>>>                                on: Error
>>>>                                do: [ :e | self logger error: 'Error in startAnnouncing e --> ', e
>>>> greaseString.
>>>>                                                self error: e.
>>>>                                                e return
>>>
>>> this code looking suspicious. but i not sure what it does,
>>> do you override #error: method in your class? what it does?
>>> if it not overridden, then by sending self error: you causing another
>>> error to be signaled,
>>> which is not handled by any handler block
>>> so, it will signal an unhandled error exception and finally bail out
>>> to OS during startup.
>>> To simplify things, what happens is following:
>>>
>>> [ self error: 'hahaha' ] fork.
>>> instead it should be like:
>>>
>>> [ [ self error: 'hahaha' ] on: Error do: [:ex | .. handle error here,
>>> and don't let it being unhandled ] ] fork.
>>>
>>>>                                ].
>>>>                ] forkAt: Processor highIOPriority named: 'Juliet Stomp Announcer'
>>>>
>>>> How can I make this safer, or make it in such a way that the image
>>>> doesn't crash?
>>>>
>>>> Also is the image destroyed now? Is there a way to start it and bypass
>>>> this code? Thanks for looking into this.
>>>>
>>>> On Fri, Sep 9, 2011 at 14:55, Igor Stasenko <[hidden email]> wrote:
>>>>> On 9 September 2011 20:43, John Toohey <[hidden email]> wrote:
>>>>>> This happened after a VM crash, when I try to restart I get this in
>>>>>> the log. Isn't the error caused by the isEmptyOrNil primitive? Is
>>>>>> there anyway for me to access the image now?
>>>>>>
>>>>>
>>>>> an error caused by a primitive failure with invalid socket:
>>>>>
>>>>> SocketStream>>receiveData
>>>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>        Arguments and temporary variables:
>>>>>>>
>>>>>>>        Receiver's instance variables:
>>>>>>>                recentlyRead:   716
>>>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>>>                inBuffer:       'CONNECTED
>>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>>>                outBuffer:      'SUBSCRIBE
>>>>>>> destination: /topic/parspro-core.juliet-core-events
>>>>>
>>>>>
>>>>> looks like your image was saved with socket being open and upon
>>>>> restart it tries to read data from it.
>>>>> This , of course , causing failure and leads to error signaled.
>>>>>
>>>>> If you want to track down the error, there is an option in system settings:
>>>>> 'Make a snapshot of new version before quit
>>>>> On unhandled exception, save a new version of image before quit'
>>>>> in 'Headless mode' group.
>>>>>
>>>>>> On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[hidden email]> wrote:
>>>>>>> On 9 September 2011 20:31, John Toohey <[hidden email]> wrote:
>>>>>>>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>>>>>>>> just crashed again, and this time I cannot get it to restart. It seems
>>>>>>>> to be crashing in a socket receive class. The stack trace is here :-
>>>>>>>>
>>>>>>>
>>>>>>> This is not a crash, it just quits to OS due to error at startup.
>>>>>>> To avoid imminent leave to OS, put an error handler around your startup code
>>>>>>> (i guess it is in CoreMQStompConnection somewhere?).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> THERE_BE_DRAGONS_HERE
>>>>>>>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>>>> 9 September 2011 2:28:41 pm
>>>>>>>>
>>>>>>>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>>>>>>>> VMMaker-oscog-IgorStasenko.123] 21.0
>>>>>>>> Image: Pharo1.3 [Latest update: #13298]
>>>>>>>>
>>>>>>>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>>>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     isEmptyOrNil
>>>>>>>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>>>>>>>                t3:     nil
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>>>>> Socket[invalidSoc...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>>>>                outerContext:   nil
>>>>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>>>>
>>>>>>>>
>>>>>>>> [:t1 |
>>>>>>>> | t2 |
>>>>>>>> t1 << self class name.
>>>>>>>>        (t2 := self messageText) isEmptyOrNil
>>>>>>>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>>>>>>>        Receiver: <<error during printing>>
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     a WriteStream 'Error'
>>>>>>>>                t2:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-T...etc...
>>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>>                handlerContext:         nil
>>>>>>>>                outerContext:   nil
>>>>>>>>
>>>>>>>>
>>>>>>>> String class(SequenceableCollection class)>>new:streamContents:
>>>>>>>>        Receiver: String
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     100
>>>>>>>>                t2:     [:t1 |
>>>>>>>> | t2 |
>>>>>>>> t1 << self class name.
>>>>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>>>>                t3:     a WriteStream 'Error'
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                superclass:     ArrayedCollection
>>>>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>>>>                format:         2
>>>>>>>>                instanceVariables:      nil
>>>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>>>> isLegalInstVar...etc...
>>>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>>>                name:   #String
>>>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>>>> 13 14 15 16...etc...
>>>>>>>>                sharedPools:    nil
>>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>>                category:       #'Collections-Strings'
>>>>>>>>                traitComposition:       {}
>>>>>>>>                localSelectors:         nil
>>>>>>>>
>>>>>>>>
>>>>>>>> String class(SequenceableCollection class)>>streamContents:
>>>>>>>>        Receiver: String
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     [:t1 |
>>>>>>>> | t2 |
>>>>>>>> t1 << self class name.
>>>>>>>>        (t2 := self messageText) isEmptyOrNi...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                superclass:     ArrayedCollection
>>>>>>>>                methodDict:     a MethodDictionary(size 303)
>>>>>>>>                format:         2
>>>>>>>>                instanceVariables:      nil
>>>>>>>>                organization:   ('*Compiler-Kernel' inviolateInstanceVariableNames
>>>>>>>> isLegalInstVar...etc...
>>>>>>>>                subclasses:     {ByteString. WideString. Symbol}
>>>>>>>>                name:   #String
>>>>>>>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 9 10 11 12
>>>>>>>> 13 14 15 16...etc...
>>>>>>>>                sharedPools:    nil
>>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>>                category:       #'Collections-Strings'
>>>>>>>>                traitComposition:       {}
>>>>>>>>                localSelectors:         nil
>>>>>>>>
>>>>>>>>
>>>>>>>> Error(Exception)>>description
>>>>>>>>        Receiver: <<error during printing>>
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-T...etc...
>>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>>                handlerContext:         nil
>>>>>>>>                outerContext:   nil
>>>>>>>>
>>>>>>>>
>>>>>>>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>>>>>>>        Receiver: a StartupUIManager
>>>>>>>>        Arguments and temporary variables:
>>>>>>>> <<error during printing>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                uiManager:      a MorphicUIManager
>>>>>>>>                doNotQuitOnRestart:     false
>>>>>>>>
>>>>>>>>
>>>>>>>> UnhandledError>>defaultAction
>>>>>>>>        Receiver: UnhandledError
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    nil
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       <<error during printing>>
>>>>>>>>
>>>>>>>> UndefinedObject>>handleSignal:
>>>>>>>>        Receiver: nil
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     UnhandledError
>>>>>>>>        Receiver's instance variables:
>>>>>>>> nil
>>>>>>>>
>>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     UnhandledError
>>>>>>>>                t2:     nil
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>>
>>>>>>>>
>>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     UnhandledError
>>>>>>>>                t2:     nil
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil]...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [self announceNextCommand]
>>>>>>>>
>>>>>>>>
>>>>>>>> UnhandledError(Exception)>>signal
>>>>>>>>        Receiver: UnhandledError
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    nil
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       <<error during printing>>
>>>>>>>>
>>>>>>>> UnhandledError class>>signalForException:
>>>>>>>>        Receiver: UnhandledError
>>>>>>>>        Arguments and temporary variables:
>>>>>>>> <<error during printing>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                superclass:     Exception
>>>>>>>>                methodDict:     a
>>>>>>>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>>>>>>>> ...etc...
>>>>>>>>                format:         144
>>>>>>>>                instanceVariables:      #('exception')
>>>>>>>>                organization:   ('*UIManager' defaultAction)
>>>>>>>> ('as yet unclassified' exception exc...etc...
>>>>>>>>                subclasses:     nil
>>>>>>>>                name:   #UnhandledError
>>>>>>>>                classPool:      nil
>>>>>>>>                sharedPools:    nil
>>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>>                category:       #'Kernel-Exceptions'
>>>>>>>>                traitComposition:       nil
>>>>>>>>                localSelectors:         nil
>>>>>>>>
>>>>>>>>
>>>>>>>> Error>>defaultAction
>>>>>>>>        Receiver: <<error during printing>>
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-T...etc...
>>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>>                handlerContext:         nil
>>>>>>>>                outerContext:   nil
>>>>>>>>
>>>>>>>>
>>>>>>>> UndefinedObject>>handleSignal:
>>>>>>>>        Receiver: nil
>>>>>>>>        Arguments and temporary variables:
>>>>>>>> <<error during printing>
>>>>>>>>        Receiver's instance variables:
>>>>>>>> nil
>>>>>>>>
>>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>> <<error during printing>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>>
>>>>>>>>
>>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>> <<error during printing>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil]...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [self announceNextCommand]
>>>>>>>>
>>>>>>>>
>>>>>>>> Error(Exception)>>signal
>>>>>>>>        Receiver: <<error during printing>>
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-T...etc...
>>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>>                handlerContext:         nil
>>>>>>>>                outerContext:   nil
>>>>>>>>
>>>>>>>>
>>>>>>>> Error(Exception)>>signal:
>>>>>>>>        Receiver: <<error during printing>>
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    PrimitiveFailed: primitive
>>>>>>>> #primSocketReceiveDataAvailable: in a S...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-T...etc...
>>>>>>>>                signalContext:  Error(Exception)>>signal
>>>>>>>>                handlerContext:         nil
>>>>>>>>                outerContext:   nil
>>>>>>>>
>>>>>>>>
>>>>>>>> CoreMQStompConnection(Object)>>error:
>>>>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>>                connectResponse:        CONNECTED
>>>>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>>>>                process:        a Process in nil
>>>>>>>>                logger:         a JulietLogger
>>>>>>>>
>>>>>>>>
>>>>>>>> [:t1 |
>>>>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>>>        self error: t1.
>>>>>>>>        t1 return] in [[[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil]] repeat.
>>>>>>>>        nil]
>>>>>>>>                on: Error
>>>>>>>>                do: [:t1 |
>>>>>>>>                        self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>>>                        self error: t1.
>>>>>>>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>>>>>>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>>>>>>>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>>                connectResponse:        CONNECTED
>>>>>>>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>>>>>>>                subscriptions:  an OrderedCollection('/topic/parspro-core.juliet-core-events')
>>>>>>>>                commandDestination:     '/topic/parspro-core.juliet-core-events'
>>>>>>>>                process:        a Process in nil
>>>>>>>>                logger:         a JulietLogger
>>>>>>>>
>>>>>>>>
>>>>>>>> BlockClosure>>cull:
>>>>>>>>        Receiver: [:t1 |
>>>>>>>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>>>>>>>        self erro...etc...
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                outerContext:   [[[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1...etc...
>>>>>>>>                startpc:        118
>>>>>>>>                numArgs:        1
>>>>>>>>
>>>>>>>>
>>>>>>>> [(self tempAt: 2)
>>>>>>>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>>
>>>>>>>>
>>>>>>>> BlockClosure>>ensure:
>>>>>>>>        Receiver: [(self tempAt: 2)
>>>>>>>>                cull: t1]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                aBlock:         [self tempAt: 3 put: true]
>>>>>>>>                complete:       nil
>>>>>>>>                returnValue:    nil
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>>>>>>>                startpc:        98
>>>>>>>>                numArgs:        0
>>>>>>>>
>>>>>>>>
>>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>                t2:     nil
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | ni...etc...
>>>>>>>>
>>>>>>>>
>>>>>>>> MethodContext(ContextPart)>>handleSignal:
>>>>>>>>        Receiver: BlockClosure>>on:do:
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     PrimitiveFailed: primitive #primSocketReceiveDataAvailable: in
>>>>>>>> a Socket[inv...etc...
>>>>>>>>                t2:     nil
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                sender:         [[[self announceNextCommand]
>>>>>>>>                on: ConnectionTimedOut
>>>>>>>>                do: [:t1 | nil]...etc...
>>>>>>>>                pc:     17
>>>>>>>>                stackp:         3
>>>>>>>>                method:         (BlockClosure>>#on:do: "a CompiledMethod(137625600)")
>>>>>>>>                closureOrNil:   nil
>>>>>>>>                receiver:       [self announceNextCommand]
>>>>>>>>
>>>>>>>>
>>>>>>>> PrimitiveFailed(Exception)>>signal
>>>>>>>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>>>>>>>> in a Socket[invalidSocketHandl...etc...
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                messageText:    'primitive #primSocketReceiveDataAvailable: in a
>>>>>>>> Socket[invalidSoc...etc...
>>>>>>>>                tag:    nil
>>>>>>>>                signaler:       a Socket[invalidSocketHandle]
>>>>>>>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>>>>>>>                handlerContext:         BlockClosure>>on:do:
>>>>>>>>                outerContext:   nil
>>>>>>>>                selector:       #primSocketReceiveDataAvailable:
>>>>>>>>
>>>>>>>>
>>>>>>>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>>>>>>>        Receiver: PrimitiveFailed
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                superclass:     SelectorException
>>>>>>>>                methodDict:     a
>>>>>>>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>>>>>>>                format:         144
>>>>>>>>                instanceVariables:      nil
>>>>>>>>                organization:   ('printing' standardMessageText)
>>>>>>>>
>>>>>>>>                subclasses:     nil
>>>>>>>>                name:   #PrimitiveFailed
>>>>>>>>                classPool:      nil
>>>>>>>>                sharedPools:    nil
>>>>>>>>                environment:    a SystemDictionary(lots of globals)
>>>>>>>>                category:       #'Kernel-Exceptions'
>>>>>>>>                traitComposition:       {}
>>>>>>>>                localSelectors:         nil
>>>>>>>>
>>>>>>>>
>>>>>>>> Socket(Object)>>primitiveFailed:
>>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     #primSocketReceiveDataAvailable:
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                semaphore:      a Semaphore()
>>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>>
>>>>>>>>
>>>>>>>> Socket(Object)>>primitiveFailed
>>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                semaphore:      a Semaphore()
>>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>>
>>>>>>>>
>>>>>>>> Socket>>primSocketReceiveDataAvailable:
>>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                semaphore:      a Semaphore()
>>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>>
>>>>>>>>
>>>>>>>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     45
>>>>>>>>                t2:     [ConnectionClosed signal: 'Connection closed while waiting for data.']
>>>>>>>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>>>>>>>                t4:     2210099
>>>>>>>>                t5:     45000
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                semaphore:      a Semaphore()
>>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>>
>>>>>>>>
>>>>>>>> Socket>>waitForDataFor:
>>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     45
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                semaphore:      a Semaphore()
>>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>>
>>>>>>>>
>>>>>>>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>>>>>>>        Receiver: a Socket[invalidSocketHandle]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>                t1:     45
>>>>>>>>                t2:     'CONNECTED
>>>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>>>>>>>                t3:     796
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                semaphore:      a Semaphore()
>>>>>>>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>>>>>>>                readSemaphore:  a Semaphore()
>>>>>>>>                writeSemaphore:         a Semaphore()
>>>>>>>>
>>>>>>>>
>>>>>>>> SocketStream>>receiveData
>>>>>>>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>>>>>>>        Arguments and temporary variables:
>>>>>>>>
>>>>>>>>        Receiver's instance variables:
>>>>>>>>                recentlyRead:   716
>>>>>>>>                socket:         a Socket[invalidSocketHandle]
>>>>>>>>                inBuffer:       'CONNECTED
>>>>>>>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>>>>>>>                outBuffer:      'SUBSCRIBE
>>>>>>>> destination: /topic/parspro-core.juliet-core-events
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[hidden email]> wrote:
>>>>>>>>>
>>>>>>>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>>>>>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>>>>>>>
>>>>>>>>> The script on the hudson is old... we need to update it. And move everything
>>>>>>>>> from hudson to jenkins. And, and...
>>>>>>>>>
>>>>>>>>> So for now:
>>>>>>>>>
>>>>>>>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>>>>>>>
>>>>>>>>> hand-build one-click with Cog as build from https://ci.lille.inria.fr/pharo/view/Cog/
>>>>>>>>>
>>>>>>>>>> often run into problems with having different VMs/Plugin on different
>>>>>>>>>> servers, and like the idea of having both Liux and OSX supported in
>>>>>>>>>> one package, where I can just update the image.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Marcus Denker -- http://marcusdenker.de
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> ~JT
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Best regards,
>>>>>>> Igor Stasenko AKA sig.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> ~JT
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Best regards,
>>>>> Igor Stasenko AKA sig.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ~JT
>>>>
>>>
>>>
>>>
>>> --
>>> Best regards,
>>> Igor Stasenko.
>>>
>>
>>
>>
>> --
>> ~JT
>>
>
>
>
> --
> Best regards,
> Igor Stasenko.
>



--
~JT
12