Andreas Raab uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-ar.269.mcz ==================== Summary ==================== Name: System-ar.269 Author: ar Time: 27 February 2010, 12:05:58.683 am UUID: af094bf2-ca86-0c46-a0f6-d966aa0cfa10 Ancestors: System-ul.268 Cleanup for AppRegistry, ChangeSet, DataStream, EventManager, ExternalDropHandler, FileServices, NaturalLanguageTranslator, NaturalLanguageFormTranslator, Project, ProjectHistory, SpaceTally, SystemDictionary, Smalltalk, SystemOrganizer, Utilities. Phew. =============== Diff against System-ul.268 =============== Item was added: + ----- Method: SystemDictionary>>cleanUp: (in category 'housekeeping') ----- + cleanUp: aggressive + "Clean up. When aggressive is true, this will destroy projects, change sets, etc." + "Smalltalk cleanUp: false" + "Smalltalk cleanUp: true" + | classes | + aggressive ifTrue:[ + "Give the user a chance to bail" + (self confirm: 'Aggressive cleanup will destroy projects, change sets and more. + Are you sure you want to proceed?') ifFalse:[^self]. + ]. + + "Find all classes implementing #cleanUp or cleanUp:" + classes := Smalltalk allClasses select:[:aClass| + (aClass class includesSelector: #cleanUp) + or:[aClass class includesSelector: #cleanUp:] + ]. + + "Arrange them in inverse superclass order, subclasses before superclasses" + classes := (ChangeSet superclassOrder: classes) reversed. + + "Run the cleanup code" + classes + do:[:aClass| aClass cleanUp: aggressive] + displayingProgress:[:aClass| 'Cleaning up in ', aClass name].! Item was added: + ----- Method: AppRegistry class>>cleanUp (in category 'class initialization') ----- + cleanUp + "AppRegistry cleanUp" + + self registeredClasses copy do:[:cls| + (cls class isObsolete or:[cls isBehavior and:[cls isObsolete]]) + ifTrue:[self unregister: cls]].! Item was added: + ----- Method: ProjectHistory class>>cleanUp (in category 'class initialization') ----- + cleanUp + "Re-initialize current history" + + self currentHistory initialize! Item was added: + ----- Method: EventManager class>>cleanUp: (in category 'class initialization') ----- + cleanUp: aggressive + "Dump all ActionMaps but only when we're aggressively cleaning" + + aggressive ifTrue:[ActionMaps := nil].! Item was added: + ----- Method: SystemDictionary>>cleanUp (in category 'housekeeping') ----- + cleanUp "Smalltalk cleanUp" + "Gently clean up" + ^self cleanUp: false! Item was added: + ----- Method: ChangeSet class>>cleanUp: (in category 'current changeset') ----- + cleanUp: aggressive + "Only delete change sets when being aggressive" + + aggressive ifTrue:[ + ChangeSet removeChangeSetsNamedSuchThat: + [:cs| cs name ~= ChangeSet current name]. + ChangeSet current clear. + ChangeSet current name: 'Unnamed1'. + ].! Item was added: + ----- Method: Project class>>cleanUp: (in category 'class initialization') ----- + cleanUp: agressive + "Remove all projects but only when cleaning aggressively" + + agressive ifTrue:[self removeAllButCurrent].! Item was added: + ----- Method: NaturalLanguageTranslator class>>cleanUp (in category 'class initialization') ----- + cleanUp + "Flush caches" + + CachedTranslations := nil. + AllKnownPhrases := nil.! Item was added: + ----- Method: SystemOrganizer class>>cleanUp: (in category 'class initialization') ----- + cleanUp: agressive + "Remove empty categories when cleaning aggressively" + + agressive ifTrue:[SystemOrganization removeEmptyCategories]. + ! Item was added: + ----- Method: SystemDictionary class>>cleanUp (in category 'initialization') ----- + cleanUp + "Flush caches" + + Smalltalk flushClassNameCache. + Smalltalk cleanUpUndoCommands. + Undeclared removeUnreferencedKeys. + Smalltalk forgetDoIts.! Item was added: + ----- Method: Utilities class>>cleanUp: (in category 'class initialization') ----- + cleanUp: agressive + "Nuke the scraps book when cleaning aggressively" + + agressive ifTrue:[ScrapsBook := nil].! Item was added: + ----- Method: DataStream class>>cleanUp (in category 'class initialization') ----- + cleanUp + "Re-initialize DataStream to avoid hanging onto obsolete classes" + + self initialize! Item was added: + ----- Method: NaturalLanguageFormTranslator class>>cleanUp (in category 'class initialization') ----- + cleanUp + "Flush caches" + + CachedTranslations := nil! Item was changed: ----- Method: SpaceTally>>printSpaceAnalysis (in category 'fileOut') ----- printSpaceAnalysis "SpaceTally new printSpaceAnalysis" + ^ self printSpaceAnalysis: 1 on: 'STspace.text'! - ^ self printSpaceAnalysis: 0 on: 'STspace.text'! Item was added: + ----- Method: ExternalDropHandler class>>cleanUp (in category 'class initialization') ----- + cleanUp + "Reset and reinstall the drop handlers" + + self resetRegisteredHandlers. + self registerStandardExternalDropHandlers.! Item was added: + ----- Method: FileServices class>>cleanUp (in category 'class initialization') ----- + cleanUp + "Remove obsolete services" + + self removeObsolete! |
Free forum by Nabble | Edit this page |