20236
----- Issue 6467: Remove SystemChangeNotifier 2 - All events using SystemAnnouncer http://code.google.com/p/pharo/issues/detail?id=6467 the beast is not dead yet... but almost :) |
On Fri, Jul 27, 2012 at 9:18 PM, Esteban Lorenzano <[hidden email]> wrote:
> 20236 > ----- > > Issue 6467: Remove SystemChangeNotifier 2 - All events using SystemAnnouncer > http://code.google.com/p/pharo/issues/detail?id=6467 > > the beast is not dead yet... but almost :) > Hi Esteban, the shrinking to the Pharo Kernel now fails with this error: PharoKernel shrinking report Error: MessageNotUnderstood: receiver of "isRemoved" is nil 441 [:e | | rep | rep := FileStream forceNewFileNamed: 'PharoDebug.log'. rep nextPutAll: 'PharoKernel shrinking report'; cr. rep nextPutAll: 'Error:'; cr. rep nextPutAll: e asString; cr. rep nextPutAll: thisContext stack size asString. thisContext stack copy withIndexDo: [:stck :i | [rep nextPutAll: i asString; space; nextPutAll: stck asString; cr] ifError: []]. rep close. Smalltalk exitFailure] in SmalltalkImage>>privShrinkingProcess 2 BlockClosure>>cull: 3 BlockClosure>>cull:cull: 4 [:ex | errorHandlerBlock cull: ex description cull: ex receiver] in BlockClosure>>ifError: 5 BlockClosure>>cull: 6 [(self tempAt: 2) cull: exception] in MethodContext(ContextPart)>>handleSignal: 7 BlockClosure>>ensure: 8 MethodContext(ContextPart)>>handleSignal: 9 MethodContext(ContextPart)>>handleSignal: 10 MessageNotUnderstood(Exception)>>signal 11 UndefinedObject(Object)>>doesNotUnderstand: #isRemoved 12 ChangesLog>>logEvent: 13 ChangesLog>>logAnnouncement: 14 MessageSend>>value: 15 MessageSend>>cull: 16 MessageSend>>cull:cull: 17 [action cull: anAnnouncement cull: announcer] in AnnouncementSubscription>>deliver: 18 BlockClosure>>on:do: 19 BlockClosure>>on:fork: 20 AnnouncementSubscription>>deliver: 21 [subscription deliver: anAnnouncement] in SubscriptionRegistry>>deliver:to:startingAt: 22 BlockClosure>>ifCurtailed: 23 SubscriptionRegistry>>deliver:to:startingAt: 24 SubscriptionRegistry>>deliver:to: 25 SubscriptionRegistry>>deliver: 26 SystemAnnouncer(Announcer)>>announce: 27 SystemAnnouncer>>basicAnnounce: 28 SystemAnnouncer>>announce: 29 SystemAnnouncer>>trigger: 30 SystemAnnouncer>>classRemoved:fromCategory: 31 SystemDictionary>>forgetClass:logged: 32 ClassRenameFixTest class(Class)>>removeFromSystem: 33 ClassRenameFixTest class(Class)>>removeFromSystem 34 [SystemChangeNotifier uniqueInstance noMoreNotificationsFor: class. SystemAnnouncer unsubscribe: class. class isTrait ifFalse: [(class class includesSelector: #unload) ifTrue: [class removeSelector: #unload]]. class removeFromSystem] in [:className | | class | class := Smalltalk globals classOrTraitNamed: className. class allSubclasses ifEmpty: [SystemChangeNotifier uniqueInstance noMoreNotificationsFor: class. SystemAnnouncer unsubscribe: class. class isTrait ifFalse: [(class class includesSelector: #unload) ifTrue: [class removeSelector: #unload]]. class removeFromSystem]] in SystemNavigation>>removeAllButPackages: 35 OrderedCollection(Collection)>>ifEmpty: 36 [:className | | class | class := Smalltalk globals classOrTraitNamed: className. class allSubclasses ifEmpty: [SystemChangeNotifier uniqueInstance noMoreNotificationsFor: class. SystemAnnouncer unsubscribe: class. class isTrait ifFalse: [(class class includesSelector: #unload) ifTrue: [class removeSelector: #unload]]. class removeFromSystem]] in SystemNavigation>>removeAllButPackages: 37 SortedCollection(OrderedCollection)>>do: 38 SystemNavigation>>removeAllButPackages: 39 [| packages | 10 timesRepeat: [(Delay forMilliseconds: 100) wait. Processor yield]. Author fullName: 'Mr.Shrinker'. self privCleanMonticello. UIManager default: DummyUIManager new. UIManager default progressBarEnabled: false. self privCleanProcesses. self privCleanGlobals. 5 timesRepeat: [Smalltalk garbageCollect]. MCDataStream initialize. Beeper instVarNamed: #default put: nil. Smalltalk cleanOutUndeclared. 5 timesRepeat: [Smalltalk garbageCollect]. Author reset. KMPragmaKeymapBuilder release. self privShrinkUnicodeTables. Display newDepth: 1. self privCleanStartUpList. self privCleanShutDownList. Object subclass: #Model instanceVariableNames: 'dependents' classVariableNames: '' poolDictionaries: '' category: 'Kernel-Objects'. self privCleanTextConstants. SoundService default: nil. SoundService unregister: DummySoundSystem. ThreadSafeTranscript install. self privCleanUnloadMethods. SystemNavigation new removeAllButPackages: self kernelPackageNames. Smalltalk flushClassNameCache. 3 timesRepeat: [Smalltalk garbageCollect. Symbol compactSymbolTable]. Undeclared removeUnreferencedKeys. self privRecompileAll. self privCleanChangeSets. SystemEventManager allInstances do: [:i | i instVarNamed: #actionMap put: IdentityDictionary new]. FileServices removeObsolete. DebuggerMethodMap voidMapCache. Object flushEvents. MCDataStream initialize. Locale classPool at: #LocaleChangeListeners put: nil. SmalltalkImage classPool at: #Tools put: nil. Behavior flushObsoleteSubclasses. Smalltalk flushClassNameCache. Smalltalk organization removeEmptyCategories. WeakArray restartFinalizationProcess. Smalltalk saveImageInNewContext] in SmalltalkImage>>privShrinkingProcess 40 BlockClosure>>on:do: 41 BlockClosure>>ifError: 42 SmalltalkImage>>privShrinkingProcess 43 [self privShrinkingProcess] in SmalltalkImage>>shrinkToKernel 44 [self value. Processor terminateActive] in BlockClosure>>newProcess |
Yes there is still mess in ChangesLog>>logEvent: . I'll clean up this tomorrow. By the way, does somone knows why ChangesLog only logs classes and methods deletion and nothing more?
2012/7/28 Pavel Krivanek <[hidden email]>
|
On Sun, Jul 29, 2012 at 12:34 AM, camille teruel <[hidden email]> wrote: Yes there is still mess in ChangesLog>>logEvent: . I'll clean up this tomorrow. By the way, does somone knows why ChangesLog only logs classes and methods deletion and nothing more? But the mess is consistent :/. If I evaluate in a workspace: (RemovedEvent class: SystemChangeNotifier category: 'aCategoryName') asAnnouncement event
It yields to the event and not to nil.... So there is another problem in the shrinking maybe...
|
Sorry, this was not an issue in the Announcements but in a wrong
automatic line break in the shrinking script. Pharo Kernel 2.0 job is green now. -- Pavel On Sun, Jul 29, 2012 at 12:45 PM, Guillermo Polito <[hidden email]> wrote: > > > On Sun, Jul 29, 2012 at 12:34 AM, camille teruel <[hidden email]> > wrote: >> >> Yes there is still mess in ChangesLog>>logEvent: . I'll clean up this >> tomorrow. By the way, does somone knows why ChangesLog only logs classes and >> methods deletion and nothing more? >> > > But the mess is consistent :/. If I evaluate in a workspace: > > (RemovedEvent class: SystemChangeNotifier category: 'aCategoryName') > asAnnouncement event > > It yields to the event and not to nil.... So there is another problem in the > shrinking maybe... > >> >> >> 2012/7/28 Pavel Krivanek <[hidden email]> >>> >>> On Fri, Jul 27, 2012 at 9:18 PM, Esteban Lorenzano <[hidden email]> >>> wrote: >>> > 20236 >>> > ----- >>> > >>> > Issue 6467: Remove SystemChangeNotifier 2 - All events using >>> > SystemAnnouncer >>> > http://code.google.com/p/pharo/issues/detail?id=6467 >>> > >>> > the beast is not dead yet... but almost :) >>> > >>> >>> Hi Esteban, >>> >>> the shrinking to the Pharo Kernel now fails with this error: >>> >>> PharoKernel shrinking report >>> Error: >>> MessageNotUnderstood: receiver of "isRemoved" is nil >>> 441 [:e | >>> | rep | >>> rep := FileStream forceNewFileNamed: 'PharoDebug.log'. >>> rep nextPutAll: 'PharoKernel shrinking report'; >>> cr. >>> rep nextPutAll: 'Error:'; >>> cr. >>> rep nextPutAll: e asString; >>> cr. >>> rep nextPutAll: thisContext stack size asString. >>> thisContext stack copy >>> withIndexDo: [:stck :i | [rep nextPutAll: i asString; >>> space; >>> nextPutAll: stck asString; >>> cr] >>> ifError: []]. >>> rep close. >>> Smalltalk exitFailure] in SmalltalkImage>>privShrinkingProcess >>> 2 BlockClosure>>cull: >>> 3 BlockClosure>>cull:cull: >>> 4 [:ex | errorHandlerBlock cull: ex description cull: ex receiver] in >>> BlockClosure>>ifError: >>> 5 BlockClosure>>cull: >>> 6 [(self tempAt: 2) >>> cull: exception] in >>> MethodContext(ContextPart)>>handleSignal: >>> 7 BlockClosure>>ensure: >>> 8 MethodContext(ContextPart)>>handleSignal: >>> 9 MethodContext(ContextPart)>>handleSignal: >>> 10 MessageNotUnderstood(Exception)>>signal >>> 11 UndefinedObject(Object)>>doesNotUnderstand: #isRemoved >>> 12 ChangesLog>>logEvent: >>> 13 ChangesLog>>logAnnouncement: >>> 14 MessageSend>>value: >>> 15 MessageSend>>cull: >>> 16 MessageSend>>cull:cull: >>> 17 [action cull: anAnnouncement cull: announcer] in >>> AnnouncementSubscription>>deliver: >>> 18 BlockClosure>>on:do: >>> 19 BlockClosure>>on:fork: >>> 20 AnnouncementSubscription>>deliver: >>> 21 [subscription deliver: anAnnouncement] in >>> SubscriptionRegistry>>deliver:to:startingAt: >>> 22 BlockClosure>>ifCurtailed: >>> 23 SubscriptionRegistry>>deliver:to:startingAt: >>> 24 SubscriptionRegistry>>deliver:to: >>> 25 SubscriptionRegistry>>deliver: >>> 26 SystemAnnouncer(Announcer)>>announce: >>> 27 SystemAnnouncer>>basicAnnounce: >>> 28 SystemAnnouncer>>announce: >>> 29 SystemAnnouncer>>trigger: >>> 30 SystemAnnouncer>>classRemoved:fromCategory: >>> 31 SystemDictionary>>forgetClass:logged: >>> 32 ClassRenameFixTest class(Class)>>removeFromSystem: >>> 33 ClassRenameFixTest class(Class)>>removeFromSystem >>> 34 [SystemChangeNotifier uniqueInstance noMoreNotificationsFor: class. >>> SystemAnnouncer unsubscribe: class. >>> class isTrait >>> ifFalse: [(class class includesSelector: #unload) >>> ifTrue: [class removeSelector: #unload]]. >>> class removeFromSystem] in [:className | >>> | class | >>> class := Smalltalk globals classOrTraitNamed: className. >>> class allSubclasses >>> ifEmpty: [SystemChangeNotifier uniqueInstance >>> noMoreNotificationsFor: class. >>> SystemAnnouncer unsubscribe: class. >>> class isTrait >>> ifFalse: [(class class includesSelector: >>> #unload) >>> ifTrue: [class >>> removeSelector: #unload]]. >>> class removeFromSystem]] in >>> SystemNavigation>>removeAllButPackages: >>> 35 OrderedCollection(Collection)>>ifEmpty: >>> 36 [:className | >>> | class | >>> class := Smalltalk globals classOrTraitNamed: className. >>> class allSubclasses >>> ifEmpty: [SystemChangeNotifier uniqueInstance >>> noMoreNotificationsFor: class. >>> SystemAnnouncer unsubscribe: class. >>> class isTrait >>> ifFalse: [(class class includesSelector: >>> #unload) >>> ifTrue: [class >>> removeSelector: #unload]]. >>> class removeFromSystem]] in >>> SystemNavigation>>removeAllButPackages: >>> 37 SortedCollection(OrderedCollection)>>do: >>> 38 SystemNavigation>>removeAllButPackages: >>> 39 [| packages | >>> 10 >>> timesRepeat: [(Delay forMilliseconds: 100) wait. >>> Processor yield]. >>> Author fullName: 'Mr.Shrinker'. >>> self privCleanMonticello. >>> UIManager default: DummyUIManager new. >>> UIManager default progressBarEnabled: false. >>> self privCleanProcesses. >>> self privCleanGlobals. >>> 5 >>> timesRepeat: [Smalltalk garbageCollect]. >>> MCDataStream initialize. >>> Beeper instVarNamed: #default put: nil. >>> Smalltalk cleanOutUndeclared. >>> 5 >>> timesRepeat: [Smalltalk garbageCollect]. >>> Author reset. >>> KMPragmaKeymapBuilder release. >>> self privShrinkUnicodeTables. >>> Display newDepth: 1. >>> self privCleanStartUpList. >>> self privCleanShutDownList. >>> Object >>> subclass: #Model >>> instanceVariableNames: 'dependents' >>> classVariableNames: '' >>> poolDictionaries: '' >>> category: 'Kernel-Objects'. >>> self privCleanTextConstants. >>> SoundService default: nil. >>> SoundService unregister: DummySoundSystem. >>> ThreadSafeTranscript install. >>> self privCleanUnloadMethods. >>> SystemNavigation new removeAllButPackages: self >>> kernelPackageNames. >>> Smalltalk flushClassNameCache. >>> 3 >>> timesRepeat: [Smalltalk garbageCollect. >>> Symbol compactSymbolTable]. >>> Undeclared removeUnreferencedKeys. >>> self privRecompileAll. >>> self privCleanChangeSets. >>> SystemEventManager allInstances >>> do: [:i | i instVarNamed: #actionMap put: >>> IdentityDictionary new]. >>> FileServices removeObsolete. >>> DebuggerMethodMap voidMapCache. >>> Object flushEvents. >>> MCDataStream initialize. >>> Locale classPool at: #LocaleChangeListeners put: nil. >>> SmalltalkImage classPool at: #Tools put: nil. >>> Behavior flushObsoleteSubclasses. >>> Smalltalk flushClassNameCache. >>> Smalltalk organization removeEmptyCategories. >>> WeakArray restartFinalizationProcess. >>> Smalltalk saveImageInNewContext] in >>> SmalltalkImage>>privShrinkingProcess >>> 40 BlockClosure>>on:do: >>> 41 BlockClosure>>ifError: >>> 42 SmalltalkImage>>privShrinkingProcess >>> 43 [self privShrinkingProcess] in SmalltalkImage>>shrinkToKernel >>> 44 [self value. >>> Processor terminateActive] in BlockClosure>>newProcess >>> >> > |
Thanks pavel.
stef On Jul 29, 2012, at 3:19 PM, Pavel Krivanek wrote: > Sorry, this was not an issue in the Announcements but in a wrong > automatic line break in the shrinking script. Pharo Kernel 2.0 job is > green now. > > -- Pavel > > On Sun, Jul 29, 2012 at 12:45 PM, Guillermo Polito > <[hidden email]> wrote: >> >> >> On Sun, Jul 29, 2012 at 12:34 AM, camille teruel <[hidden email]> >> wrote: >>> >>> Yes there is still mess in ChangesLog>>logEvent: . I'll clean up this >>> tomorrow. By the way, does somone knows why ChangesLog only logs classes and >>> methods deletion and nothing more? >>> >> >> But the mess is consistent :/. If I evaluate in a workspace: >> >> (RemovedEvent class: SystemChangeNotifier category: 'aCategoryName') >> asAnnouncement event >> >> It yields to the event and not to nil.... So there is another problem in the >> shrinking maybe... >> >>> >>> >>> 2012/7/28 Pavel Krivanek <[hidden email]> >>>> >>>> On Fri, Jul 27, 2012 at 9:18 PM, Esteban Lorenzano <[hidden email]> >>>> wrote: >>>>> 20236 >>>>> ----- >>>>> >>>>> Issue 6467: Remove SystemChangeNotifier 2 - All events using >>>>> SystemAnnouncer >>>>> http://code.google.com/p/pharo/issues/detail?id=6467 >>>>> >>>>> the beast is not dead yet... but almost :) >>>>> >>>> >>>> Hi Esteban, >>>> >>>> the shrinking to the Pharo Kernel now fails with this error: >>>> >>>> PharoKernel shrinking report >>>> Error: >>>> MessageNotUnderstood: receiver of "isRemoved" is nil >>>> 441 [:e | >>>> | rep | >>>> rep := FileStream forceNewFileNamed: 'PharoDebug.log'. >>>> rep nextPutAll: 'PharoKernel shrinking report'; >>>> cr. >>>> rep nextPutAll: 'Error:'; >>>> cr. >>>> rep nextPutAll: e asString; >>>> cr. >>>> rep nextPutAll: thisContext stack size asString. >>>> thisContext stack copy >>>> withIndexDo: [:stck :i | [rep nextPutAll: i asString; >>>> space; >>>> nextPutAll: stck asString; >>>> cr] >>>> ifError: []]. >>>> rep close. >>>> Smalltalk exitFailure] in SmalltalkImage>>privShrinkingProcess >>>> 2 BlockClosure>>cull: >>>> 3 BlockClosure>>cull:cull: >>>> 4 [:ex | errorHandlerBlock cull: ex description cull: ex receiver] in >>>> BlockClosure>>ifError: >>>> 5 BlockClosure>>cull: >>>> 6 [(self tempAt: 2) >>>> cull: exception] in >>>> MethodContext(ContextPart)>>handleSignal: >>>> 7 BlockClosure>>ensure: >>>> 8 MethodContext(ContextPart)>>handleSignal: >>>> 9 MethodContext(ContextPart)>>handleSignal: >>>> 10 MessageNotUnderstood(Exception)>>signal >>>> 11 UndefinedObject(Object)>>doesNotUnderstand: #isRemoved >>>> 12 ChangesLog>>logEvent: >>>> 13 ChangesLog>>logAnnouncement: >>>> 14 MessageSend>>value: >>>> 15 MessageSend>>cull: >>>> 16 MessageSend>>cull:cull: >>>> 17 [action cull: anAnnouncement cull: announcer] in >>>> AnnouncementSubscription>>deliver: >>>> 18 BlockClosure>>on:do: >>>> 19 BlockClosure>>on:fork: >>>> 20 AnnouncementSubscription>>deliver: >>>> 21 [subscription deliver: anAnnouncement] in >>>> SubscriptionRegistry>>deliver:to:startingAt: >>>> 22 BlockClosure>>ifCurtailed: >>>> 23 SubscriptionRegistry>>deliver:to:startingAt: >>>> 24 SubscriptionRegistry>>deliver:to: >>>> 25 SubscriptionRegistry>>deliver: >>>> 26 SystemAnnouncer(Announcer)>>announce: >>>> 27 SystemAnnouncer>>basicAnnounce: >>>> 28 SystemAnnouncer>>announce: >>>> 29 SystemAnnouncer>>trigger: >>>> 30 SystemAnnouncer>>classRemoved:fromCategory: >>>> 31 SystemDictionary>>forgetClass:logged: >>>> 32 ClassRenameFixTest class(Class)>>removeFromSystem: >>>> 33 ClassRenameFixTest class(Class)>>removeFromSystem >>>> 34 [SystemChangeNotifier uniqueInstance noMoreNotificationsFor: class. >>>> SystemAnnouncer unsubscribe: class. >>>> class isTrait >>>> ifFalse: [(class class includesSelector: #unload) >>>> ifTrue: [class removeSelector: #unload]]. >>>> class removeFromSystem] in [:className | >>>> | class | >>>> class := Smalltalk globals classOrTraitNamed: className. >>>> class allSubclasses >>>> ifEmpty: [SystemChangeNotifier uniqueInstance >>>> noMoreNotificationsFor: class. >>>> SystemAnnouncer unsubscribe: class. >>>> class isTrait >>>> ifFalse: [(class class includesSelector: >>>> #unload) >>>> ifTrue: [class >>>> removeSelector: #unload]]. >>>> class removeFromSystem]] in >>>> SystemNavigation>>removeAllButPackages: >>>> 35 OrderedCollection(Collection)>>ifEmpty: >>>> 36 [:className | >>>> | class | >>>> class := Smalltalk globals classOrTraitNamed: className. >>>> class allSubclasses >>>> ifEmpty: [SystemChangeNotifier uniqueInstance >>>> noMoreNotificationsFor: class. >>>> SystemAnnouncer unsubscribe: class. >>>> class isTrait >>>> ifFalse: [(class class includesSelector: >>>> #unload) >>>> ifTrue: [class >>>> removeSelector: #unload]]. >>>> class removeFromSystem]] in >>>> SystemNavigation>>removeAllButPackages: >>>> 37 SortedCollection(OrderedCollection)>>do: >>>> 38 SystemNavigation>>removeAllButPackages: >>>> 39 [| packages | >>>> 10 >>>> timesRepeat: [(Delay forMilliseconds: 100) wait. >>>> Processor yield]. >>>> Author fullName: 'Mr.Shrinker'. >>>> self privCleanMonticello. >>>> UIManager default: DummyUIManager new. >>>> UIManager default progressBarEnabled: false. >>>> self privCleanProcesses. >>>> self privCleanGlobals. >>>> 5 >>>> timesRepeat: [Smalltalk garbageCollect]. >>>> MCDataStream initialize. >>>> Beeper instVarNamed: #default put: nil. >>>> Smalltalk cleanOutUndeclared. >>>> 5 >>>> timesRepeat: [Smalltalk garbageCollect]. >>>> Author reset. >>>> KMPragmaKeymapBuilder release. >>>> self privShrinkUnicodeTables. >>>> Display newDepth: 1. >>>> self privCleanStartUpList. >>>> self privCleanShutDownList. >>>> Object >>>> subclass: #Model >>>> instanceVariableNames: 'dependents' >>>> classVariableNames: '' >>>> poolDictionaries: '' >>>> category: 'Kernel-Objects'. >>>> self privCleanTextConstants. >>>> SoundService default: nil. >>>> SoundService unregister: DummySoundSystem. >>>> ThreadSafeTranscript install. >>>> self privCleanUnloadMethods. >>>> SystemNavigation new removeAllButPackages: self >>>> kernelPackageNames. >>>> Smalltalk flushClassNameCache. >>>> 3 >>>> timesRepeat: [Smalltalk garbageCollect. >>>> Symbol compactSymbolTable]. >>>> Undeclared removeUnreferencedKeys. >>>> self privRecompileAll. >>>> self privCleanChangeSets. >>>> SystemEventManager allInstances >>>> do: [:i | i instVarNamed: #actionMap put: >>>> IdentityDictionary new]. >>>> FileServices removeObsolete. >>>> DebuggerMethodMap voidMapCache. >>>> Object flushEvents. >>>> MCDataStream initialize. >>>> Locale classPool at: #LocaleChangeListeners put: nil. >>>> SmalltalkImage classPool at: #Tools put: nil. >>>> Behavior flushObsoleteSubclasses. >>>> Smalltalk flushClassNameCache. >>>> Smalltalk organization removeEmptyCategories. >>>> WeakArray restartFinalizationProcess. >>>> Smalltalk saveImageInNewContext] in >>>> SmalltalkImage>>privShrinkingProcess >>>> 40 BlockClosure>>on:do: >>>> 41 BlockClosure>>ifError: >>>> 42 SmalltalkImage>>privShrinkingProcess >>>> 43 [self privShrinkingProcess] in SmalltalkImage>>shrinkToKernel >>>> 44 [self value. >>>> Processor terminateActive] in BlockClosure>>newProcess >>>> >>> >> > |
Free forum by Nabble | Edit this page |