[Pharo-dev] Nautilus unload...

Stéphane Ducasse stephane.ducasse at inria.fr
Wed Nov 27 02:05:38 EST 2013

Hi esteban

I'm looking for a change due to the TreePackage introduction. 
Before I could simply do something like the following to unload Nautilus

	Smalltalk tools remove: #browser.
	Smalltalk tools register: Browser as: #browser.
	(MCWorkingCopy forPackage: (MCPackage named: 'NautilusRefactoring')) unload. "OK"

	#Nautilus asClass cleanUp.
	KMRepository reset.
	KMPragmaKeymapBuilder release.
	#NautilusUI asClass allSubInstances do: [ :inst |
  		SystemAnnouncer uniqueInstance unsubscribe: inst].
	Smalltalk garbageCollect.
	(MCWorkingCopy forPackage: (MCPackage named: 'NautilusCommon')) unload.
	(MCWorkingCopy forPackage: (MCPackage named: 'Nautilus')) unload.

And now if does not work anymore. I get some TreePackage around.

Apparently I get a weakMessageSend on classRemoved: and this message refers to an obsoletePackageTreeNautilus class.

buildGroupManagerFor: anInstance

	| holder |
	holder := GroupHolder new.
		addADynamicClassGroupSilentlyNamed: 'Most Viewed Classes' 
		block: [ anInstance recentClassesElements ]) removable: false.
		addADynamicClassGroupSilentlyNamed: 'Last Modified Classes'
		block: [ self lastModifiedClasses ]) removable: false.
		addADynamicGroupSilentlyNamed: 'Work'
		block: [ {} ]) removable: true; isFillable: true.
	^ holder

Do you have any idea? A registration mechanism? from which I forgot to unregister.


More information about the Pharo-dev mailing list