[Pharo-project] [update 2.0] #20236

Pavel Krivanek pavel.krivanek at gmail.com
Sun Jul 29 09:19:04 EDT 2012


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
<guillermopolito at gmail.com> wrote:
>
>
> On Sun, Jul 29, 2012 at 12:34 AM, camille teruel <camille.teruel at gmail.com>
> 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 <pavel.krivanek at gmail.com>
>>>
>>> On Fri, Jul 27, 2012 at 9:18 PM, Esteban Lorenzano <estebanlm at gmail.com>
>>> 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
>>>
>>
>




More information about the Pharo-dev mailing list