2016-01-14 5 views
6

Ich möchte das Glamorous Toolkit deinstallieren (mir scheint überladenen Versionen von klassischen Smalltalk-Tools werden) mein Code in Pharo 4 oder 5Wie deinstallieren Pharo Glamorous Toolkit?

hier:

| config configName | 
configName := #ConfigurationOfGTInspectorCore. 
config := (MBConfigurationInfo 
      configurationClass: (Smalltalk globals at: (configName asSymbol))) 
      configurationRoot: MBConfigurationRoot new; 
      yourself. 
config workingCopy unload 

aber mein Skript entlädt die Konfiguration , aber nicht die Pakete oder Klassen und Methoden, die es enthält, und ich möchte alle GT-Pakete in der Konfiguration entladen.

Was mache ich falsch? Jede Hilfe wird sehr geschätzt!

Vielen Dank im Voraus.

Antwort

5

Ich bevorzuge auch, dass GT optional ist, die Tatsache, dass das Pharo-Board GT in den kommenden Pharos standardmäßig vorschreibt, lässt mich über den Transparenzprozess nachdenken, und wie weit ist ein Pharo-Fork, wenn diese Politik fortfährt.

Das heißt, kann GT-Tools nicht einfach deinstalliert werden (und es viel Zeit in Anspruch nimmt):

Workspace openContents: 'GTPlayground setGTPlaygroundEnabledStatus: false. 
" ========== Debuggers ========== " 

Nautilus pluginClasses: nil. 
SpecDebugger closeAllDebuggers. 
GTGenericStackDebugger closeAllDebuggers. 
GTGenericStackDebugger setGTDebuggerEnabledStatus: false. 

" ========== Miscellany ========== " 

GTInspector setGTInspectorEnabledStatus: false. 
GTExampleOrganizer stop. 
GTEventRecorder cleanUp. 
GTEventRecorderSettings cleanUp. 
GTSnippets reset. 
GTPlayBook reset. 
GTPlayBook resetDirectories. 
GTSpotter cleanUp. 
GTSpotterGlobalShortcut reset. 

GlobalIdentifier cleanUp. 
Privacy cleanUp. 

" ========== QA ========== " 
QASettings inspectorPluggin: false. 
QASettings spotterPlugin: false. 
QAEventCollector unload. 
(MCPackage named: ''QualityAssistant'') unload. 

" ========== RPackage ========== " 
RPackageOrganizer default packageNames 
    select: [ :each | each beginsWith: ''GT'' ] 
    thenDo: [ :each | 
     (MCPackage named: each) unload. 
     RPackageOrganizer default unregisterPackageNamed: each. 
     " Possibly unnecessary... " 
     Smalltalk removeEmptyMessageCategories. 
     Smalltalk cleanOutUndeclared. 
     Smalltalk fixObsoleteReferences. 
     Smalltalk globals flushClassNameCache ]. 
Behavior flushEvents. 
Behavior flushObsoleteSubclasses. 
SmalltalkImage current resetTools.' 
4

Wenn Sie ältere Versionen verwenden möchten, müssen Sie nur zu den Einstellungen gehen und sie deaktivieren (gehen Sie zu Einstellungen im Menü: Welt Menü/System/Einstellungen), dann suchen Sie nach "Glamorous Toolkit".

Das Entladen von Paketen ist viel komplizierter: Sie müssen jedes Paket in der richtigen Reihenfolge durchlaufen und es entladen.

Nun, beachten Sie, dass GT-Tools die offiziellen Werkzeuge sind (Überladen für Sie, leistungsfähig für uns) ... Wahrscheinlich werden zukünftige Versionen von Pharo die älteren Werkzeuge nicht enthalten.

Ich schlage vor, Sie ihnen zu versuchen ... Sie werden die Vorteile sehr schnell sehen.

+0

btw, wenn Sie nur Pakete entladen, ohne zuvor die GT-Tools deaktivieren (wie beschrieben), werden Sie am Ende mit einem unbrauchbaren System ... – EstebanLM