Bug in PharoCore1.1ALPHA [Latest update: #11192]

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

Bug in PharoCore1.1ALPHA [Latest update: #11192]

Yanni Chiu
When attempting to load Seaside-2.8, with the image updated to 11192, I got:

UndefinedObject(Object)>>doesNotUnderstand: #do:
WriteStream(Stream)>>nextPutAll:
WriteStream>>nextPutAll:
WriteStream(Stream)>>basicNextPutAll:
UTF8TextConverter(TextConverter)>>nextPutAll:toStream:
ByteString(String)>>convertToWithConverter:
WAKomEncoded39 class>>setUpConversionTables
WAKomEncoded39 class>>initialize

It actually gave me an emergency evaluator, and failed to save the
entire stack trace to PharoDebug.log - maybe due to UTF8 issues. I had
to use the send bug report feature to capture the stack trace.

I think the problem is that WAKomEncoded39 is setting things up for
codepoints 0..255, but the newly optimized UTF8TextConverter has nil
entries for codepoints less than 128.

--
Yanni


VM: Mac OS - intel - 1058 - Squeak3.8.1 of '28 Aug 2006' [latest update:
#6747] Squeak VM 4.2.1b1
Image: PharoCore1.1ALPHA [Latest update: #11192]

--- The full stack ---
UndefinedObject(Object)>>doesNotUnderstand: #do:
WriteStream(Stream)>>nextPutAll:
WriteStream>>nextPutAll:
WriteStream(Stream)>>basicNextPutAll:
UTF8TextConverter(TextConverter)>>nextPutAll:toStream:
ByteString(String)>>convertToWithConverter:
WAKomEncoded39 class>>setUpConversionTables
WAKomEncoded39 class>>initialize
MCMethodDefinition>>postloadOver:
[] in [] in [] in MCPackageLoader>>basicLoad
[] in [] in
OrderedCollection(SequenceableCollection)>>do:displayingProgress:
OrderedCollection(SequenceableCollection)>>withIndexDo:
[] in OrderedCollection(SequenceableCollection)>>do:displayingProgress:
[] in ProgressInitiationException>>defaultAction
BlockClosure>>ensure:
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
OrderedCollection(SequenceableCollection)>>do:displayingProgress:
[] in [] in MCPackageLoader>>basicLoad
BlockClosure>>on:do:
[] in MCPackageLoader>>basicLoad
BlockClosure>>ensure:
MCPackageLoader>>basicLoad
[] in MCPackageLoader>>loadWithNameLike:
[] in MCPackageLoader>>useChangeSetNamed:during:
BlockClosure>>ensure:
MCPackageLoader>>useChangeSetNamed:during:
MCPackageLoader>>useNewChangeSetNamedLike:during:
MCPackageLoader>>loadWithNameLike:
MCVersionLoader>>loadWithNameLike:
MCVersionLoader>>load
 - - - - - - - - - - - - - - -  
                        - - - - - - - - - - - - - - - - - -
GoferLoad>>execute
Gofer>>execute:do:
Gofer>>execute:
Gofer>>load
[] in UndefinedObject>>DoIt
[] in BlockClosure>>valueSupplyingAnswers:
BlockClosure>>on:do:
BlockClosure>>valueSupplyingAnswers:
UndefinedObject>>DoIt
Compiler>>evaluate:in:to:notifying:ifFail:logged:
Compiler class>>evaluate:for:notifying:logged:
Compiler class>>evaluate:for:logged:
Compiler class>>evaluate:logged:
[] in [] in MultiByteFileStream(PositionableStream)>>fileInAnnouncing:
BlockClosure>>on:do:
[] in MultiByteFileStream(PositionableStream)>>fileInAnnouncing:
[] in ProgressInitiationException>>defaultAction
BlockClosure>>ensure:
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
MultiByteFileStream(PositionableStream)>>fileInAnnouncing:
MultiByteFileStream(FileStream)>>fileIn
MultiByteFileStream>>fileIn
FileStream class>>fileIn:
SimpleServiceEntry>>performServiceFor:
[] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
ToggleMenuItemMorph(MenuItemMorph)>>mouseUp:
ToggleMenuItemMorph(MenuItemMorph)>>handleMouseUp:
MouseButtonEvent>>sentTo:
ToggleMenuItemMorph(Morph)>>handleEvent:
MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
ToggleMenuItemMorph(Morph)>>processEvent:using:
MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
MenuMorph(Morph)>>processEvent:using:
MenuMorph(Morph)>>processEvent:
MenuMorph>>handleFocusEvent:
[] in HandMorph>>sendFocusEvent:to:clear:
[] in PasteUpMorph>>becomeActiveDuring:
BlockClosure>>on:do:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendMouseEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[] in WorldState>>doOneCycleNowFor:
Array(SequenceableCollection)>>do:
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
PasteUpMorph>>doOneCycle
[] in Project class>>spawnNewProcess
[] in BlockClosure>>newProcess

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Stéphane Ducasse
Thanks!
Indeed there were some work on UTF8Encoder and friends.
do you know if the same happened in latest squeak?

On Feb 3, 2010, at 10:57 PM, Yanni Chiu wrote:

> When attempting to load Seaside-2.8, with the image updated to 11192, I got:
>
> UndefinedObject(Object)>>doesNotUnderstand: #do:
> WriteStream(Stream)>>nextPutAll:
> WriteStream>>nextPutAll:
> WriteStream(Stream)>>basicNextPutAll:
> UTF8TextConverter(TextConverter)>>nextPutAll:toStream:
> ByteString(String)>>convertToWithConverter:
> WAKomEncoded39 class>>setUpConversionTables
> WAKomEncoded39 class>>initialize
>
> It actually gave me an emergency evaluator, and failed to save the entire stack trace to PharoDebug.log - maybe due to UTF8 issues. I had to use the send bug report feature to capture the stack trace.
>
> I think the problem is that WAKomEncoded39 is setting things up for codepoints 0..255, but the newly optimized UTF8TextConverter has nil entries for codepoints less than 128.
>
> --
> Yanni
>
> VM: Mac OS - intel - 1058 - Squeak3.8.1 of '28 Aug 2006' [latest update:
> #6747] Squeak VM 4.2.1b1
> Image: PharoCore1.1ALPHA [Latest update: #11192]
>
> --- The full stack ---
> UndefinedObject(Object)>>doesNotUnderstand: #do:
> WriteStream(Stream)>>nextPutAll:
> WriteStream>>nextPutAll:
> WriteStream(Stream)>>basicNextPutAll:
> UTF8TextConverter(TextConverter)>>nextPutAll:toStream:
> ByteString(String)>>convertToWithConverter:
> WAKomEncoded39 class>>setUpConversionTables
> WAKomEncoded39 class>>initialize
> MCMethodDefinition>>postloadOver:
> [] in [] in [] in MCPackageLoader>>basicLoad
> [] in [] in
> OrderedCollection(SequenceableCollection)>>do:displayingProgress:
> OrderedCollection(SequenceableCollection)>>withIndexDo:
> [] in OrderedCollection(SequenceableCollection)>>do:displayingProgress:
> [] in ProgressInitiationException>>defaultAction
> BlockClosure>>ensure:
> ProgressInitiationException>>defaultAction
> UndefinedObject>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> ProgressInitiationException(Exception)>>signal
> ProgressInitiationException>>display:at:from:to:during:
> ProgressInitiationException class>>display:at:from:to:during:
> ByteString(String)>>displayProgressAt:from:to:during:
> OrderedCollection(SequenceableCollection)>>do:displayingProgress:
> [] in [] in MCPackageLoader>>basicLoad
> BlockClosure>>on:do:
> [] in MCPackageLoader>>basicLoad
> BlockClosure>>ensure:
> MCPackageLoader>>basicLoad
> [] in MCPackageLoader>>loadWithNameLike:
> [] in MCPackageLoader>>useChangeSetNamed:during:
> BlockClosure>>ensure:
> MCPackageLoader>>useChangeSetNamed:during:
> MCPackageLoader>>useNewChangeSetNamedLike:during:
> MCPackageLoader>>loadWithNameLike:
> MCVersionLoader>>loadWithNameLike:
> MCVersionLoader>>load
> - - - - - - - - - - - - - - -  
> - - - - - - - - - - - - - - - - - -
> GoferLoad>>execute
> Gofer>>execute:do:
> Gofer>>execute:
> Gofer>>load
> [] in UndefinedObject>>DoIt
> [] in BlockClosure>>valueSupplyingAnswers:
> BlockClosure>>on:do:
> BlockClosure>>valueSupplyingAnswers:
> UndefinedObject>>DoIt
> Compiler>>evaluate:in:to:notifying:ifFail:logged:
> Compiler class>>evaluate:for:notifying:logged:
> Compiler class>>evaluate:for:logged:
> Compiler class>>evaluate:logged:
> [] in [] in MultiByteFileStream(PositionableStream)>>fileInAnnouncing:
> BlockClosure>>on:do:
> [] in MultiByteFileStream(PositionableStream)>>fileInAnnouncing:
> [] in ProgressInitiationException>>defaultAction
> BlockClosure>>ensure:
> ProgressInitiationException>>defaultAction
> UndefinedObject>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> ProgressInitiationException(Exception)>>signal
> ProgressInitiationException>>display:at:from:to:during:
> ProgressInitiationException class>>display:at:from:to:during:
> ByteString(String)>>displayProgressAt:from:to:during:
> MultiByteFileStream(PositionableStream)>>fileInAnnouncing:
> MultiByteFileStream(FileStream)>>fileIn
> MultiByteFileStream>>fileIn
> FileStream class>>fileIn:
> SimpleServiceEntry>>performServiceFor:
> [] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
> BlockClosure>>ensure:
> CursorWithMask(Cursor)>>showWhile:
> ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
> ToggleMenuItemMorph(MenuItemMorph)>>mouseUp:
> ToggleMenuItemMorph(MenuItemMorph)>>handleMouseUp:
> MouseButtonEvent>>sentTo:
> ToggleMenuItemMorph(Morph)>>handleEvent:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> ToggleMenuItemMorph(Morph)>>processEvent:using:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> MenuMorph(Morph)>>processEvent:using:
> MenuMorph(Morph)>>processEvent:
> MenuMorph>>handleFocusEvent:
> [] in HandMorph>>sendFocusEvent:to:clear:
> [] in PasteUpMorph>>becomeActiveDuring:
> BlockClosure>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendMouseEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [] in WorldState>>doOneCycleNowFor:
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [] in Project class>>spawnNewProcess
> [] in BlockClosure>>newProcess
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Yanni Chiu
Stéphane Ducasse wrote:
> Thanks!
> Indeed there were some work on UTF8Encoder and friends.
> do you know if the same happened in latest squeak?

I've not tried it on a recent Squeak.


> On Feb 3, 2010, at 10:57 PM, Yanni Chiu wrote:
>
>> When attempting to load Seaside-2.8, with the image updated to 11192, I got:
>>
>> UndefinedObject(Object)>>doesNotUnderstand: #do:
>> WriteStream(Stream)>>nextPutAll:
>> WriteStream>>nextPutAll:
>> WriteStream(Stream)>>basicNextPutAll:
>> UTF8TextConverter(TextConverter)>>nextPutAll:toStream:
>> ByteString(String)>>convertToWithConverter:
>> WAKomEncoded39 class>>setUpConversionTables
>> WAKomEncoded39 class>>initialize



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Stéphane Ducasse
what is the script you use to load seaisde2.8 so that I can have a look
On Feb 4, 2010, at 8:57 AM, Yanni Chiu wrote:

> Stéphane Ducasse wrote:
>> Thanks!
>> Indeed there were some work on UTF8Encoder and friends.
>> do you know if the same happened in latest squeak?
>
> I've not tried it on a recent Squeak.
>
>
>> On Feb 3, 2010, at 10:57 PM, Yanni Chiu wrote:
>>
>>> When attempting to load Seaside-2.8, with the image updated to 11192, I got:
>>>
>>> UndefinedObject(Object)>>doesNotUnderstand: #do:
>>> WriteStream(Stream)>>nextPutAll:
>>> WriteStream>>nextPutAll:
>>> WriteStream(Stream)>>basicNextPutAll:
>>> UTF8TextConverter(TextConverter)>>nextPutAll:toStream:
>>> ByteString(String)>>convertToWithConverter:
>>> WAKomEncoded39 class>>setUpConversionTables
>>> WAKomEncoded39 class>>initialize
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Yanni Chiu
Stéphane Ducasse wrote:
> what is the script you use to load seaisde2.8 so that I can have a look

The following build scripts are run via Hudson, on a Ubuntu 8.X server.
First, core11.st updates and saves the image, starting from a
PharoCore-1.1-11184-UNSTABLE image. Then core11-seaside28.st loads
Seaside-2.8.

--
Yanni

":::::"
"file: /home/yanni/pub/builder/scripts/before.st"
":::::"
"Preparations"
MCCacheRepository instVarNamed: 'default' put: nil.
!
":::::"
"file: /home/yanni/pub/builder/scripts/gofer.st"
":::::"
"Update Gofer"
[ Gofer gofer load ]
        on: Error
        do: [ :err | err retry ].
Gofer upgrade; upgrade.
!
"Remove empty categories"
Smalltalk organization removeEmptyCategories.
!
":::::"
"file: /home/yanni/pub/builder/scripts/update.st"
":::::"
"Install latest updates"
[Utilities updateFromServer] valueSuppressingAllMessages
!
":::::"
"file: /home/yanni/pub/builder/scripts/settings.st"
":::::"
"Select Fonts"
StrikeFont installDejaVu.
Preferences setDefaultFonts: #(
        (setBalloonHelpFontTo: 'BitmapDejaVu' 9)
        (setButtonFontTo: 'BitmapDejaVu' 9)
        (setCodeFontTo: 'BitmapDejaVu' 9)
        (setHaloLabelFontTo: 'BitmapDejaVu' 9)
        (setListFontTo: 'BitmapDejaVu' 9)
        (setMenuFontTo: 'BitmapDejaVu' 9)
        (setSystemFontTo: 'BitmapDejaVu' 9)
        (setWindowTitleFontTo: 'BitmapDejaVuBold' 12)).
!
"Cleanup Environment"
"UIThemeStandardSqueak beCurrent."
"Choose a UITheme to avoid a walkback during automated operation"
UIThemeWatery beCurrent.
World submorphs do: [ :each |
        (each isKindOf: SketchMorph)
                ifTrue: [ each delete ] ].
!
"Set decent Preferences"
Preferences enable: #scrollBarsNarrow.
Preferences enable: #menuColorFromWorld.
Preferences disable: #scrollBarsWithoutMenuButton.
Preferences disable: #useNewDiffToolsForMC.
Preferences disable: #duplicateAllControlAndAltKeys.
Preferences disable: #fadedBackgroundWindows.
Preferences disable: #windowAnimation.
Preferences disable: #noWindowAnimationForClosing.
!
":::::"
"file: /home/yanni/pub/builder/scripts/after.st"
":::::"
"Clear Author"
Author reset.
!
"Clear Monticello Caches"
MCCacheRepository instVarNamed: 'default' put: nil.
MCFileBasedRepository flushAllCaches.
MCMethodDefinition shutDown.
MCDefinition clearInstances.
!
"Cleanup Smalltalk"
Smalltalk flushClassNameCache.
Smalltalk organization removeEmptyCategories.
Smalltalk allClassesAndTraitsDo: [ :each |
        each organization removeEmptyCategories; sortCategories.
        each class organization removeEmptyCategories; sortCategories ].
!
"Cleanup System Memory"
3 timesRepeat: [
        Smalltalk garbageCollect.
        Symbol compactSymbolTable ].
!
"Save and Quit"
SmalltalkImage current snapshot: true andQuit: true.
!

":::::"
"file: /home/yanni/pub/builder/scripts/before.st"
":::::"
"Preparations"
MCCacheRepository instVarNamed: 'default' put: nil.
!
":::::"
"file: /home/yanni/pub/builder/scripts/seaside28.st"
":::::"
"Kom"
Gofer new
        squeaksource: 'KomHttpServer';
        package: 'DynamicBindings';
        package: 'KomServices';
        package: 'KomHttpServer';
        load.
!
"Seaside"
[ Gofer new
        squeaksource: 'Seaside';
        package: 'Seaside2.8a1';
        load ]
                valueSupplyingAnswers: {
                        { 'username'. 'admin' }.
                        { 'password'. 'seaside' }.
                }.
!
":::::"
"file: /home/yanni/pub/builder/scripts/after.st"
":::::"
"Clear Author"
Author reset.
!
"Clear Monticello Caches"
MCCacheRepository instVarNamed: 'default' put: nil.
MCFileBasedRepository flushAllCaches.
MCMethodDefinition shutDown.
MCDefinition clearInstances.
!
"Cleanup Smalltalk"
Smalltalk flushClassNameCache.
Smalltalk organization removeEmptyCategories.
Smalltalk allClassesAndTraitsDo: [ :each |
        each organization removeEmptyCategories; sortCategories.
        each class organization removeEmptyCategories; sortCategories ].
!
"Cleanup System Memory"
3 timesRepeat: [
        Smalltalk garbageCollect.
        Symbol compactSymbolTable ].
!
"Save and Quit"
SmalltalkImage current snapshot: true andQuit: true.
!

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Mariano Martinez Peck

"file: /home/yanni/pub/builder/scripts/seaside28.st"
":::::"
"Kom"
Gofer new
       squeaksource: 'KomHttpServer';
       package: 'DynamicBindings';
       package: 'KomServices';
       package: 'KomHttpServer';
       load.
!
"Seaside"
[ Gofer new
       squeaksource: 'Seaside';
       package: 'Seaside2.8a1';
       load ]
               valueSupplyingAnswers: {
                       { 'username'. 'admin' }.
                       { 'password'. 'seaside' }.
               }.
!

Can you try using ConfigurationOfSeaside ?

The first thing you have to do is to install the configuration (as always):"
   
    Gofer new
       squeaksource: ''MetacelloRepository'';
       package: ''ConfigurationOfSeaside'';
   load.
   
"Then pick the Seaside variant you want to load:"

 "Seaside 2.8"
 ConfigurationOfSeaside project latestVersion load: ''Seaside 2.8''.
 ConfigurationOfSeaside project latestVersion load: ''Seaside 2.8 Examples''.
 ConfigurationOfSeaside project latestVersion load: ''Magritte''.
 ConfigurationOfSeaside project latestVersion load: ''Magritte Tests''.
 ConfigurationOfSeaside project latestVersion load: ''Pier''.
 ConfigurationOfSeaside project latestVersion load: ''Pier Tests''.
 ConfigurationOfSeaside project latestVersion load: ''Pier AddOns''.

 "Seaside 3.0"
 ConfigurationOfSeaside project latestVersion load: ''Seaside 3.0''.
 ConfigurationOfSeaside project latestVersion load: ''Seaside 3.0 Tests''.
 ConfigurationOfSeaside project latestVersion load: ''Magritte2''.
 ConfigurationOfSeaside project latestVersion load: ''Magritte2 Tests''.
 ConfigurationOfSeaside project latestVersion load: ''Pier2''.
 ConfigurationOfSeaside project latestVersion load: ''Pier2 Tests''.
 ConfigurationOfSeaside project latestVersion load: ''Pier2 AddOns''.





 
":::::"
"file: /home/yanni/pub/builder/scripts/after.st"
":::::"
"Clear Author"
Author reset.
!
"Clear Monticello Caches"
MCCacheRepository instVarNamed: 'default' put: nil.
MCFileBasedRepository flushAllCaches.
MCMethodDefinition shutDown.
MCDefinition clearInstances.
!
"Cleanup Smalltalk"
Smalltalk flushClassNameCache.
Smalltalk organization removeEmptyCategories.
Smalltalk allClassesAndTraitsDo: [ :each |
       each organization removeEmptyCategories; sortCategories.
       each class organization removeEmptyCategories; sortCategories ].
!
"Cleanup System Memory"
3 timesRepeat: [
       Smalltalk garbageCollect.
       Symbol compactSymbolTable ].
!
"Save and Quit"
SmalltalkImage current snapshot: true andQuit: true.
!

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Stéphane Ducasse
In reply to this post by Yanni Chiu
Nicolas nicely answered to the problem
Thanks a lot.


Comment 1 by nicolas.cellier.aka.nice, Today (10 hours ago)
I tested with this:

(TextConverter allSubclasses reject: [:e | e subclasses size > 0])
select: [:e | (e latin1Encodings copyFrom: 129 to: 256) anySatisfy: [:e2 | e2 isNil]]
-> a Set(MacRomanTextConverter Latin1TextConverter)

Then this:

(TextConverter allSubclasses reject: [:e | e subclasses size > 0]) collect: [:e | e
->((129 to: 256) select: [:e2 | (e latin1Encodings at: e2) isNil])]

-> MacRomanTextConverter->#(163 164 170 178 182)
-> Latin1TextConverter-> (129 to: 256)

All problems disappear if I do this:
Latin1TextConverter initializeLatin1Encodings.
MacRomanTextConverter initializeLatin1Encodings.

Don't know why something went wrong with lazy initialization leading to a class
instance variables notNil, but not initialized correctly...
Maybe the #initializeLatin1Encodings should be called in each text converter class
initialize...

I will integrate that soon :)

Stef



On Feb 4, 2010, at 5:43 PM, Yanni Chiu wrote:

> Stéphane Ducasse wrote:
>> what is the script you use to load seaisde2.8 so that I can have a look
>
> The following build scripts are run via Hudson, on a Ubuntu 8.X server. First, core11.st updates and saves the image, starting from a PharoCore-1.1-11184-UNSTABLE image. Then core11-seaside28.st loads Seaside-2.8.
>
> --
> Yanni
> ":::::"
> "file: /home/yanni/pub/builder/scripts/before.st"
> ":::::"
> "Preparations"
> MCCacheRepository instVarNamed: 'default' put: nil.
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/gofer.st"
> ":::::"
> "Update Gofer"
> [ Gofer gofer load ]
> on: Error
> do: [ :err | err retry ].
> Gofer upgrade; upgrade.
> !
> "Remove empty categories"
> Smalltalk organization removeEmptyCategories.
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/update.st"
> ":::::"
> "Install latest updates"
> [Utilities updateFromServer] valueSuppressingAllMessages
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/settings.st"
> ":::::"
> "Select Fonts"
> StrikeFont installDejaVu.
> Preferences setDefaultFonts: #(
>        (setBalloonHelpFontTo: 'BitmapDejaVu' 9)
>        (setButtonFontTo: 'BitmapDejaVu' 9)
>        (setCodeFontTo: 'BitmapDejaVu' 9)
>        (setHaloLabelFontTo: 'BitmapDejaVu' 9)
>        (setListFontTo: 'BitmapDejaVu' 9)
>        (setMenuFontTo: 'BitmapDejaVu' 9)
>        (setSystemFontTo: 'BitmapDejaVu' 9)
>        (setWindowTitleFontTo: 'BitmapDejaVuBold' 12)).
> !
> "Cleanup Environment"
> "UIThemeStandardSqueak beCurrent."
> "Choose a UITheme to avoid a walkback during automated operation"
> UIThemeWatery beCurrent.
> World submorphs do: [ :each |
>        (each isKindOf: SketchMorph)
>                ifTrue: [ each delete ] ].
> !
> "Set decent Preferences"
> Preferences enable: #scrollBarsNarrow.
> Preferences enable: #menuColorFromWorld.
> Preferences disable: #scrollBarsWithoutMenuButton.
> Preferences disable: #useNewDiffToolsForMC.
> Preferences disable: #duplicateAllControlAndAltKeys.
> Preferences disable: #fadedBackgroundWindows.
> Preferences disable: #windowAnimation.
> Preferences disable: #noWindowAnimationForClosing.
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/after.st"
> ":::::"
> "Clear Author"
> Author reset.
> !
> "Clear Monticello Caches"
> MCCacheRepository instVarNamed: 'default' put: nil.
> MCFileBasedRepository flushAllCaches.
> MCMethodDefinition shutDown.
> MCDefinition clearInstances.
> !
> "Cleanup Smalltalk"
> Smalltalk flushClassNameCache.
> Smalltalk organization removeEmptyCategories.
> Smalltalk allClassesAndTraitsDo: [ :each |
> each organization removeEmptyCategories; sortCategories.
> each class organization removeEmptyCategories; sortCategories ].
> !
> "Cleanup System Memory"
> 3 timesRepeat: [
> Smalltalk garbageCollect.
> Symbol compactSymbolTable ].
> !
> "Save and Quit"
> SmalltalkImage current snapshot: true andQuit: true.
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/before.st"
> ":::::"
> "Preparations"
> MCCacheRepository instVarNamed: 'default' put: nil.
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/seaside28.st"
> ":::::"
> "Kom"
> Gofer new
> squeaksource: 'KomHttpServer';
> package: 'DynamicBindings';
> package: 'KomServices';
> package: 'KomHttpServer';
> load.
> !
> "Seaside"
> [ Gofer new
> squeaksource: 'Seaside';
> package: 'Seaside2.8a1';
> load ]
> valueSupplyingAnswers: {
> { 'username'. 'admin' }.
> { 'password'. 'seaside' }.
> }.
> !
> ":::::"
> "file: /home/yanni/pub/builder/scripts/after.st"
> ":::::"
> "Clear Author"
> Author reset.
> !
> "Clear Monticello Caches"
> MCCacheRepository instVarNamed: 'default' put: nil.
> MCFileBasedRepository flushAllCaches.
> MCMethodDefinition shutDown.
> MCDefinition clearInstances.
> !
> "Cleanup Smalltalk"
> Smalltalk flushClassNameCache.
> Smalltalk organization removeEmptyCategories.
> Smalltalk allClassesAndTraitsDo: [ :each |
> each organization removeEmptyCategories; sortCategories.
> each class organization removeEmptyCategories; sortCategories ].
> !
> "Cleanup System Memory"
> 3 timesRepeat: [
> Smalltalk garbageCollect.
> Symbol compactSymbolTable ].
> !
> "Save and Quit"
> SmalltalkImage current snapshot: true andQuit: true.
> !
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Henrik Sperre Johansen
On 04.02.2010 21:11, Stéphane Ducasse wrote:

> Nicolas nicely answered to the problem
> Thanks a lot.
>
>
> Comment 1 by nicolas.cellier.aka.nice, Today (10 hours ago)
> I tested with this:
>
> (TextConverter allSubclasses reject: [:e | e subclasses size>  0])
> select: [:e | (e latin1Encodings copyFrom: 129 to: 256) anySatisfy: [:e2 | e2 isNil]]
> ->  a Set(MacRomanTextConverter Latin1TextConverter)
>
> Then this:
>
> (TextConverter allSubclasses reject: [:e | e subclasses size>  0]) collect: [:e | e
> ->((129 to: 256) select: [:e2 | (e latin1Encodings at: e2) isNil])]
>
> ->  MacRomanTextConverter->#(163 164 170 178 182)
> ->  Latin1TextConverter->  (129 to: 256)
>
> All problems disappear if I do this:
> Latin1TextConverter initializeLatin1Encodings.
> MacRomanTextConverter initializeLatin1Encodings.
>
> Don't know why something went wrong with lazy initialization leading to a class
> instance variables notNil, but not initialized correctly...
> Maybe the #initializeLatin1Encodings should be called in each text converter class
> initialize...
>
> I will integrate that soon :)
>
> Stef
>    
That is strange...
Classes were recompiled when I changed the method name from
initializeLatin1MapAndEncodings to initializeLatin1Encodings, and
removed the latin1Map (Now called nonAsciiMap, residing in ByteString.
If there's a better suggestion of where to put it, please speak up).
Not sure how the reinitialization could have failed though, especially
seeing how calling them again works :/

Cheers,
Henry

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Stéphane Ducasse
This makes me thinking that relying on class initialization is not that robust
may be lazy accessor (but this is boring to have to pay that price all the time).
Lazy class var accessors are good when you have dependencies between classVar.
So if somebody has some good idea to have robust and fast....

Stef

On Feb 4, 2010, at 9:34 PM, Henrik Sperre Johansen wrote:

> On 04.02.2010 21:11, Stéphane Ducasse wrote:
>> Nicolas nicely answered to the problem
>> Thanks a lot.
>>
>>
>> Comment 1 by nicolas.cellier.aka.nice, Today (10 hours ago)
>> I tested with this:
>>
>> (TextConverter allSubclasses reject: [:e | e subclasses size>  0])
>> select: [:e | (e latin1Encodings copyFrom: 129 to: 256) anySatisfy: [:e2 | e2 isNil]]
>> ->  a Set(MacRomanTextConverter Latin1TextConverter)
>>
>> Then this:
>>
>> (TextConverter allSubclasses reject: [:e | e subclasses size>  0]) collect: [:e | e
>> ->((129 to: 256) select: [:e2 | (e latin1Encodings at: e2) isNil])]
>>
>> ->  MacRomanTextConverter->#(163 164 170 178 182)
>> ->  Latin1TextConverter->  (129 to: 256)
>>
>> All problems disappear if I do this:
>> Latin1TextConverter initializeLatin1Encodings.
>> MacRomanTextConverter initializeLatin1Encodings.
>>
>> Don't know why something went wrong with lazy initialization leading to a class
>> instance variables notNil, but not initialized correctly...
>> Maybe the #initializeLatin1Encodings should be called in each text converter class
>> initialize...
>>
>> I will integrate that soon :)
>>
>> Stef
>>
> That is strange...
> Classes were recompiled when I changed the method name from
> initializeLatin1MapAndEncodings to initializeLatin1Encodings, and
> removed the latin1Map (Now called nonAsciiMap, residing in ByteString.
> If there's a better suggestion of where to put it, please speak up).
> Not sure how the reinitialization could have failed though, especially
> seeing how calling them again works :/
>
> Cheers,
> Henry
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Bug in PharoCore1.1ALPHA [Latest update: #11192]

Yanni Chiu
In reply to this post by Mariano Martinez Peck
Mariano Martinez Peck wrote:
>
> Can you try using ConfigurationOfSeaside ?

I hope to, at some point. It wasn't available when I started my build
task, and I've already spent more time on it than I thought it would
have taken.

--
Yanni


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project