Chris Muller uploaded a new version of ReleaseBuilder to project Squeak 4.5:
http://source.squeak.org/squeak45/ReleaseBuilder-cmm.109.mcz ==================== Summary ==================== Name: ReleaseBuilder-cmm.109 Author: cmm Time: 22 January 2014, 5:31:35.357 pm UUID: 72243ad3-2577-402e-a959-c3614454cacc Ancestors: ReleaseBuilder-cmm.108 Only show the vertical scroll bar if necessary, by default. ==================== Snapshot ==================== SystemOrganization addCategory: #ReleaseBuilder! Object subclass: #ReleaseBuilder instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'ReleaseBuilder'! !ReleaseBuilder commentStamp: 'fbs 5/2/2013 22:36' prior: 0! I'm the script that prepares a trunk image for release. Which version of Squeak I release is stored in ReleaseBuilder class >> squeakVersion.! ----- Method: ReleaseBuilder class>>checkForDirtyPackages (in category 'scripts') ----- checkForDirtyPackages MCWorkingCopy checkModified: true. (MCWorkingCopy allManagers anySatisfy: [ : wc | (wc ancestors size = 1) not or: [ wc modified ] ]) ifTrue: [ Warning signal: 'There are dirty and/or unmerged packages.' ]! ----- Method: ReleaseBuilder class>>configureDesktop (in category 'private') ----- configureDesktop self deleteAllWindows. MorphicProject initialize. "Replace docking bar instance in case its code has changed." Project current removeMainDockingBar. TheWorldMainDockingBar updateInstances! ----- Method: ReleaseBuilder class>>deleteAllWindows (in category 'private') ----- deleteAllWindows (SystemWindow windowsIn: ActiveWorld satisfying: [ : window | true ]) do: [ : window | [ window makeClosable; delete ] on: ProvideAnswerNotification do: [ : noti | noti resume: true ] ]! ----- Method: ReleaseBuilder class>>loadWellKnownPackages (in category 'private') ----- loadWellKnownPackages "Load into the release image those packages that have been stripped from Trunk, but still deemed necessary for a release artifact." Installer new merge: #squeakRelease! ----- Method: ReleaseBuilder class>>prepareNewBuild (in category 'scripts') ----- prepareNewBuild self prepareNewBuild: self releaseRepository.! ----- Method: ReleaseBuilder class>>prepareNewBuild: (in category 'scripts') ----- prepareNewBuild: anMCRepository "ReleaseBuilderTrunk prepareNewBuild" "Prepare everything that should be done for a new image build" MCMcmUpdater updateMissingPackages: true. MCMcmUpdater enableUpdatesForAllPackages. TTCFont registerAll. RealEstateAgent standardSize: 600 @ 400. SystemVersion newVersion: self versionString. SMLoaderPlus setDefaultFilters: (OrderedCollection with: #filterSafelyAvailable). self setDisplayExtent: 800 @ 600 ; setPreferences ; switchToNewRepository: anMCRepository ; checkForDirtyPackages ; configureDesktop. Smalltalk cleanUp: true. Environment allInstancesDo: [ : env | env purgeUndeclared ]. Undeclared removeUnreferencedKeys. Smalltalk garbageCollect. [ self loadWellKnownPackages "<-- 4.5 is not ready for unloaded / reloaded packages" ]. Compiler recompileAll! ----- Method: ReleaseBuilder class>>releaseRepository (in category 'private') ----- releaseRepository "At release time, change 'trunk' to 'squeak45'." ^ MCRepository trunk! ----- Method: ReleaseBuilder class>>repositoryUrl (in category 'private') ----- repositoryUrl ^ 'http://source.squeak.org'! ----- Method: ReleaseBuilder class>>setDisplayExtent: (in category 'private') ----- setDisplayExtent: extent "Uncomment next line when the primitives become available in the Squeak VM." " DisplayScreen hostWindowSize: extent." Display extent = extent ifFalse: [ Warning signal: 'Display extent not set to ', extent ]! ----- Method: ReleaseBuilder class>>setPreferences (in category 'private') ----- setPreferences Workspace shouldStyle: false. SystemWindow reuseWindows: true. TextEditor autoEnclose: true ; autoIndent: false ; destructiveBackWord: false ; blinkingCursor: false ; dumbbellCursor: true. BalloonMorph setBalloonColorTo: (TranslucentColor r: 0.92 g: 0.92 b: 0.706 alpha: 0.75). Preferences installBrightWindowColors ; insertionPointColor: Color red ; enable: #scrollBarsWithoutMenuButton ; enable: #swapMouseButtons ; enable: #annotationPanes ; disable: #showSplitterHandles ; enable: #showBoundsInHalo ; disable: #alternateHandlesLook ; disable: #roundedMenuCorners ; disable: #roundedWindowCorners ; enable: #traceMessages ; enable: #thoroughSenders ; enable: #diffsWithPrettyPrint ; disable: #alwaysShowVScrollbar ; enable: #alternativeBrowseIt. ProportionalSplitterMorph smartHorizontalSplitters: true ; smartVerticalSplitters: true. PluggableButtonMorph roundedButtonCorners: false. FillInTheBlankMorph roundedDialogCorners: false. Workspace shouldStyle: false. NetNameResolver enableIPv6: true! ----- Method: ReleaseBuilder class>>switchToNewRepository: (in category 'private') ----- switchToNewRepository: anMCRepository | old44Repository | MCMcmUpdater defaultUpdateURL: anMCRepository description. old44Repository := MCRepositoryGroup default repositories detect: [:each | each description includesSubString: 'squeak44'] ifNone: [nil]. old44Repository ifNotNil: [MCRepositoryGroup default removeRepository: old44Repository]. MCRepositoryGroup default addRepository: anMCRepository.! ----- Method: ReleaseBuilder class>>transferCurrentPackagesAsUser:password: (in category 'scripts') ----- transferCurrentPackagesAsUser: username password: password "Copy the packages currently loaded in the image from the trunk repository to my releaseRepository." | releaseRep | releaseRep := self releaseRepository user: username; password: password; yourself. MCWorkingCopy allManagers do: [ : eachWorkingCopy | eachWorkingCopy ancestors do: [ : eachVersionInfo | (releaseRep includesVersionNamed: eachVersionInfo versionName) ifFalse: [ (MCRepository trunk versionWithInfo: eachVersionInfo) ifNil: [ Warning signal: eachVersionInfo name , ' not found in trunk.' ] ifNotNilDo: [ : ver | releaseRep storeVersion: ver ] ] ] ]! ----- Method: ReleaseBuilder class>>versionString (in category 'private') ----- versionString ^ 'Squeak4.5'.! |
Free forum by Nabble | Edit this page |