'From Squeak3.7gamma of ''17 July 2004'' [latest update: #5983] on 4 August 2004 at 9:34:38 pm'! "Change Set: PrepareRelImageAdd-dew Date: 4 August 2004 Author: Doug Way A small addition to the SmalltalkImage>>prepareReleaseImage method, a DoIt which executes 'SMSqueakMap default purge'."! !SmalltalkImage methodsFor: 'image cleanup' stamp: 'dew 8/4/2004 21:34'! prepareReleaseImage "Perform various image cleanups in preparation for making a Squeak gamma release candidate image." "SmalltalkImage current prepareReleaseImage" | projectChangeSetNames | (self confirm: 'Are you sure you want to prepare a release image? This will perform several irreversible cleanups on this image.') ifFalse: [^ self]. Undeclared removeUnreferencedKeys. StandardScriptingSystem initialize. Preferences initialize. Preferences chooseInitialSettings. (Object classPool at: #DependentsFields) size > 1 ifTrue: [self error:'Still have dependents']. Undeclared isEmpty ifFalse: [self error:'Please clean out Undeclared']. Browser initialize. ScriptingSystem deletePrivateGraphics. "?" "Delete all changesets except those currently used by existing projects." projectChangeSetNames _ Project allSubInstances collect: [:proj | proj changeSet name]. ChangeSorter removeChangeSetsNamedSuchThat: [:cs | (projectChangeSetNames includes: cs) not]. ChangeSet current clear. ChangeSet current name: 'Unnamed1'. Smalltalk garbageCollect. "Reinitialize DataStream; it may hold on to some zapped entitities" DataStream initialize. "Remove existing player references" References keys do:[:k| References removeKey: k]. "?" Smalltalk garbageCollect. ScheduledControllers _ nil. Smalltalk garbageCollect. Language recreateFlaps. SMSqueakMap default purge. Behavior flushObsoleteSubclasses. Smalltalk garbageCollect; garbageCollect. Smalltalk obsoleteBehaviors isEmpty ifFalse:[self error:'Still have obsolete behaviors']. DataStream initialize. self fixObsoleteReferences. Smalltalk forgetDoIts. "?" Smalltalk flushClassNameCache. "?" 3 timesRepeat: [ Smalltalk garbageCollect. Symbol compactSymbolTable. ]. ! !