Marcel Taeumel uploaded a new version of ReleaseBuilder to project The Trunk:
http://source.squeak.org/trunk/ReleaseBuilder-mt.131.mcz ==================== Summary ==================== Name: ReleaseBuilder-mt.131 Author: mt Time: 12 May 2016, 4:51:52.306309 pm UUID: 2adf101d-9026-1f49-a311-0a6af2533db8 Ancestors: ReleaseBuilder-mt.130 CLEAN-UP RELEASE BUILDER - make use of latest project refactorings - support for local release builds (enabled by default) - add update map to release repository - do code update during the process - unload foreign packages (i.e. the ones not in the update map) - provide option to re-load dirty packages automatically - disable full-screen when setting the display extent - automatically quit the VM after saving the build artifact Try out local builds via "ReleaseBuilder saveAsNewRelease". =============== Diff against ReleaseBuilder-mt.130 =============== Item was changed: Object subclass: #ReleaseBuilder instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'ReleaseBuilder'! + !ReleaseBuilder commentStamp: 'mt 5/12/2016 16:50' prior: 0! + I'm the script that prepares a trunk image for release. For the next release version please update #releaseVersionMajor and #releaseVersionMinor. + + Prepare and save this image as a release image via "ReleaseBuilder saveAsNewRelease." + If you want to save this image as the next alpha release, do: "ReleaseBuilder saveAsNextVersionAlpha." + + If you want to try it locally, change #localBuild to return true. + + Most of the code operates (read-only) on the build repository, which is usually the trunk. For releases, there is a release repository, to which some package versions will be copied from trunk.! - !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.! Item was added: + ----- Method: ReleaseBuilder class>>buildConfiguration (in category 'accessing') ----- + buildConfiguration + + | max versionName | + max := 0. + versionName := ''. + + (self buildRepository versionNamesForPackageNamed: 'update') do: [:nm | + ((nm findTokens: $.) atLast: 2) asInteger in: [:versionNumber | + versionNumber > max ifTrue: [max := versionNumber. versionName := nm]]]. + + ^ self buildRepository versionNamed: versionName + ! Item was changed: + ----- Method: ReleaseBuilder class>>buildRepository (in category 'accessing') ----- - ----- Method: ReleaseBuilder class>>buildRepository (in category 'private') ----- buildRepository ^ MCRepository trunk! Item was added: + ----- Method: ReleaseBuilder class>>buildRepositoryUrl (in category 'accessing') ----- + buildRepositoryUrl + ^ self buildRepository description! Item was changed: ----- Method: ReleaseBuilder class>>checkForDirtyPackages (in category 'scripts') ----- checkForDirtyPackages + + | modifiedWorkingCopies unmergedWorkingCopies | MCWorkingCopy checkModified: true. + modifiedWorkingCopies := MCWorkingCopy allManagers + select: [:wc | wc ancestors size = 1 and: [wc modified] ]. + unmergedWorkingCopies := MCWorkingCopy allManagers + select: [:wc | (wc ancestors size = 1) not ]. + + unmergedWorkingCopies ifNotEmpty: [ + "Sort to simplify exploration. MC browser does also show packages sorted." + (modifiedWorkingCopies sortBy: [:wc1 :wc2 | wc1 packageName <= wc2 packageName]) explore. + Warning signal: 'There are unmerged packages.']. + + modifiedWorkingCopies ifNotEmpty: [ + "Sort to simplify exploration. MC browser does also show packages sorted." + (modifiedWorkingCopies sortBy: [:wc1 :wc2 | wc1 packageName <= wc2 packageName]) explore. + + (Project current uiManager + confirm: 'Do you want to discard all local changes?' + orCancel: [^ Error signal: 'Release building canceled.'] + title: 'Dirty Packages Found') + ifTrue: [modifiedWorkingCopies do: [:wc | + [(self buildRepository versionWithInfo: wc ancestors first) load] + on: Warning do: [:warning | warning resume]]]].! - (MCWorkingCopy allManagers anySatisfy: - [ : wc | (wc ancestors size = 1) not or: [ wc modified ] ]) ifTrue: [ Warning signal: 'There are dirty and/or unmerged packages.' ]! Item was changed: + ----- Method: ReleaseBuilder class>>configureDesktop (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>configureDesktop (in category 'private') ----- configureDesktop self deleteAllWindows. - MorphicProject initialize. Project current resourceManager reset. "Zap eventual resources" "Replace docking bar instance in case its code has changed." Project current removeMainDockingBar. TheWorldMainDockingBar updateInstances! Item was added: + ----- Method: ReleaseBuilder class>>copyPackagesFrom:to:depth: (in category 'scripts') ----- + copyPackagesFrom: sourceRepository to: targetRepository depth: historyDepth + "Copy the packages currently loaded in the image from the source repository to a target repository. Follow ancestry up to the depth specified." + + | currentDepth nextVersions currentVersions ignoredVersions | + currentDepth := 0. + nextVersions := (MCWorkingCopy allManagers gather: [:wc | wc ancestors]) asOrderedCollection. + ignoredVersions := OrderedCollection new. + + [nextVersions notEmpty] whileTrue: [ + currentVersions := nextVersions. + nextVersions := OrderedCollection new. + currentDepth := currentDepth + 1. + + currentVersions do: [:versionInfo | + (targetRepository includesVersionNamed: versionInfo versionName) + ifTrue: [Transcript showln: ('[ReleaseBuilder] Version {1} already exists in {2}' + format: {versionInfo versionName. targetRepository description})] + ifFalse: [(sourceRepository versionWithInfo: versionInfo) + ifNil: [ignoredVersions add: versionInfo] + ifNotNil: [:version | targetRepository storeVersion: version ] ]. + currentDepth < historyDepth ifTrue: [ + nextVersions addAll: versionInfo ancestors]]]. + + ignoredVersions ifNotEmpty: [ + ignoredVersions explore. + Warning signal: 'There were versions not found in the source repository.'].! Item was added: + ----- Method: ReleaseBuilder class>>copyUpdateMapTo: (in category 'scripts') ----- + copyUpdateMapTo: targetRepository + + self buildConfiguration in: [:config | + | newConfig | + newConfig := MCConfiguration new. + newConfig repositories add: targetRepository. + newConfig dependencies addAll: config dependencies. + newConfig name: config name. + + targetRepository storeVersion: newConfig].! Item was changed: + ----- Method: ReleaseBuilder class>>deleteAllWindows (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>deleteAllWindows (in category 'private') ----- deleteAllWindows (SystemWindow + windowsIn: Project current world - windowsIn: ActiveWorld satisfying: [ : window | true ]) do: [ : window | [ window makeClosable; delete ] on: ProvideAnswerNotification do: [ : noti | noti resume: true ] ]! Item was changed: + ----- Method: ReleaseBuilder class>>loadWellKnownPackages (in category 'scripts') ----- - ----- 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! Item was added: + ----- Method: ReleaseBuilder class>>localBuild (in category 'accessing') ----- + localBuild + "If true, use a local, directory-based repository. Usually in the working directory." + + ^ true! Item was changed: + ----- Method: ReleaseBuilder class>>openWelcomeWorkspaces (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>openWelcomeWorkspaces (in category 'private') ----- openWelcomeWorkspaces |offset | offset:= 50@50. #('License Information' 'The Squeak User Interface' 'Working With Squeak' 'Release Notes') with: #(#licenseInformation #squeakUserInterface #workingWithSqueak #releaseNotes) do: [ : eachLabel : eachAccessor | TheWorldMainDockingBar instance showWelcomeText: eachAccessor label: eachLabel in: (offset extent: 500@300). offset := offset + (30@30)]! Item was added: + ----- Method: ReleaseBuilder class>>prepareEnvironment (in category 'preparing') ----- + prepareEnvironment + "Prepare everything that should be done for a new image build. Clear caches, passwords, etc." + "ReleaseBuilder prepareNewBuild" + + TTCFont registerAll. + FileList initialize. + RealEstateAgent standardSize: 600 @ 400. + SMLoaderPlus setDefaultFilters: (OrderedCollection with: #filterSafelyAvailable). + " Preferences outOfTheBox." "<-- uncomment after #defaultValueTableForCurrentRelease is fixed up." + self + setDisplayExtent: 800 @ 600 ; + setPreferences ; "<-- remove this after defaultValueTableForCurrentRelease is fixed up." + discardUserObjects ; + configureDesktop. + Smalltalk cleanUp: true. + MCFileBasedRepository flushAllCaches. + MCHttpRepository clearCredentials. + Utilities setAuthorInitials: String empty. + Environment allInstancesDo: [ : env | env purgeUndeclared ]. + Undeclared removeUnreferencedKeys. + Smalltalk garbageCollect. + [ self loadWellKnownPackages "<-- 4.5 is not ready for unloaded / reloaded packages" ]. + Compiler recompileAll. + self openWelcomeWorkspaces.! Item was removed: - ----- Method: ReleaseBuilder class>>prepareNewBuild (in category 'scripts') ----- - prepareNewBuild - self prepareNewBuild: self buildRepository.! Item was removed: - ----- 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. - FileList initialize. - RealEstateAgent standardSize: 600 @ 400. - SystemVersion newVersion: self versionString. - SMLoaderPlus setDefaultFilters: (OrderedCollection with: #filterSafelyAvailable). - " Preferences outOfTheBox." "<-- uncomment after #defaultValueTableForCurrentRelease is fixed up." - self - setDisplayExtent: 800 @ 600 ; - switchToNewRepository: anMCRepository ; - setPreferences ; "<-- remove this after defaultValueTableForCurrentRelease is fixed up." - checkForDirtyPackages ; - discardUserObjects ; - configureDesktop. - Smalltalk cleanUp: true. - MCFileBasedRepository flushAllCaches. - MCHttpRepository clearCredentials. - Utilities setAuthorInitials: String empty. - Environment allInstancesDo: [ : env | env purgeUndeclared ]. - Undeclared removeUnreferencedKeys. - Smalltalk garbageCollect. - [ self loadWellKnownPackages "<-- 4.5 is not ready for unloaded / reloaded packages" ]. - Compiler recompileAll. - self - setProjectBackground: Color darkGray ; - openWelcomeWorkspaces! Item was changed: + ----- Method: ReleaseBuilder class>>prepareNewRelease (in category 'preparing') ----- - ----- Method: ReleaseBuilder class>>prepareNewRelease (in category 'scripts') ----- prepareNewRelease "This method is run at time of release to transfer the top trunk versions into my releaseRepository, and produce a release image." + + | source target | + source := self buildRepository. + target := self releaseRepository. + + [ self + setTopProject; + prepareSourceCode; + copyPackagesFrom: source to: target depth: 1; + copyUpdateMapTo: target; + prepareEnvironment; + switchToNewRepository: target. + ] on: MCEmptyVersion do: [:warning | warning resume]. + + SystemVersion newVersion: self versionString.! - self - transferCurrentPackagesAsUser: Utilities authorInitials - password: (UIManager default requestPassword: 'Enter password for ' , self projectUrl). - self prepareNewBuild: self releaseRepository! Item was changed: + ----- Method: ReleaseBuilder class>>prepareNextVersionAlpha (in category 'preparing') ----- - ----- Method: ReleaseBuilder class>>prepareNextVersionAlpha (in category 'scripts') ----- prepareNextVersionAlpha "Prepare the first alpha image for next release." + + self + setTopProject; + prepareSourceCode; + prepareEnvironment; + switchToNewRepository: self buildRepository. + + SystemVersion newVersion: self versionStringAlpha.! - SystemVersion - newVersion: ((UIManager default request: 'Please specify the name of the\new version of Squeak.' withCRs initialAnswer: SystemVersion current version) - ifEmpty: [^ self inform: 'Aborted.']). - MCFileBasedRepository flushAllCaches. - MCHttpRepository clearCredentials. - Utilities setAuthorInitials: String empty. - self switchToNewRepository: self buildRepository! Item was added: + ----- Method: ReleaseBuilder class>>prepareSourceCode (in category 'preparing') ----- + prepareSourceCode + "Update code. Remove foreign packages." + + MCMcmUpdater defaultUpdateURL: self buildRepository description. + + MCMcmUpdater updateMissingPackages: true. + MCMcmUpdater enableUpdatesForAllPackages. + + MCMcmUpdater default doUpdate: false. "non-interactive". + + self unloadForeignPackages. + self checkForDirtyPackages.! Item was removed: - ----- Method: ReleaseBuilder class>>projectUrl (in category 'private') ----- - projectUrl - ^ (self repositoryUrl , '/', (self versionString copyWithout: $.)) asLowercase! Item was changed: + ----- Method: ReleaseBuilder class>>releaseRepository (in category 'accessing') ----- - ----- Method: ReleaseBuilder class>>releaseRepository (in category 'private') ----- releaseRepository + + ^ (MCRepository location: self releaseRepositoryUrl) in: [:repo | + self localBuild ifFalse: [ + repo + user: (UIManager default + request: 'Enter user for ', self releaseRepositoryUrl + initialAnswer: Utilities authorInitials); + password: (UIManager default + requestPassword: 'Enter password for ' , self releaseRepositoryUrl)]. + repo].! - ^ MCRepository location: self projectUrl! Item was added: + ----- Method: ReleaseBuilder class>>releaseRepositoryUrl (in category 'accessing') ----- + releaseRepositoryUrl + + ^ self localBuild + ifFalse: [(self serverUrl, '/', (self versionString copyWithout: $.)) asLowercase] + ifTrue: [(FileDirectory default on: 'repositories', FileDirectory slash, (self versionString copyWithout: $.) asLowercase) + assureExistence; + fullName]! Item was added: + ----- Method: ReleaseBuilder class>>releaseVersionMajor (in category 'accessing') ----- + releaseVersionMajor + + ^ 5! Item was added: + ----- Method: ReleaseBuilder class>>releaseVersionMinor (in category 'accessing') ----- + releaseVersionMinor + + ^ 1! Item was removed: - ----- Method: ReleaseBuilder class>>repositoryUrl (in category 'private') ----- - repositoryUrl - ^ 'http://source.squeak.org'! Item was added: + ----- Method: ReleaseBuilder class>>saveAsNewRelease (in category 'saving') ----- + saveAsNewRelease + "ReleaseManager saveAsNewRelease" + + (Project current uiManager + confirm: 'About to build new release', (self localBuild ifTrue: [' (locally!!)'] ifFalse: ['']),': ', self versionString, String cr, String cr, 'The VM will quit after that. Continue?' + title: 'Release Builder') ifFalse: [^ self]. + + self prepareNewRelease. + Smalltalk saveAs: self versionString, '-', SystemVersion current highestUpdate asString. + Smalltalk snapshot: true "Important!!" andQuit: true.! Item was added: + ----- Method: ReleaseBuilder class>>saveAsNextVersionAlpha (in category 'saving') ----- + saveAsNextVersionAlpha + "ReleaseBuilder saveNextVersionAlpha." + + (Project current uiManager + confirm: 'About to build new release', (self localBuild ifTrue: [' (locally!!)'] ifFalse: ['']),': ', self versionStringAlpha, String cr, String cr, 'The VM will quit after that. Continue?' + title: 'Release Builder') ifFalse: [^ self]. + + self prepareNextVersionAlpha. + Smalltalk saveAs: self versionStringAlpha, '-', SystemVersion current highestUpdate asString. + Smalltalk snapshot: true "Important!!" andQuit: true.! Item was added: + ----- Method: ReleaseBuilder class>>serverUrl (in category 'accessing') ----- + serverUrl + ^ 'http://source.squeak.org'! Item was changed: + ----- Method: ReleaseBuilder class>>setDisplayExtent: (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>setDisplayExtent: (in category 'private') ----- setDisplayExtent: extent + + DisplayScreen + fullScreenOff; + setNewScreenSize: extent. + + self assert: Display extent = 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 ]! Item was changed: + ----- Method: ReleaseBuilder class>>setPreferences (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>setPreferences (in category 'preferences') ----- setPreferences "Preferences class defaultValueTableForCurrentRelease" self setProjectBackground: Color darkGray. "General User interaction" Preferences enable: #generalizedYellowButtonMenu ; disable: #mouseOverForKeyboardFocus ; enable: #swapMouseButtons. Morph indicateKeyboardFocus: true. + ToolBuilder openToolsAttachedToMouseCursor: false. SearchBar useScratchPad: false. "Text input." TextEditor autoEnclose: true ; autoIndent: true ; destructiveBackWord: false ; blinkingCursor: true ; dumbbellCursor: false. Preferences insertionPointColor: Color red. PluggableTextMorph simpleFrameAdornments: false. "Windows" Preferences installUniformWindowColors. SystemWindow reuseWindows: false. Model windowActiveOnFirstClick: false. "Not good for 800x600" Preferences disable: #showSplitterHandles; enable: #fastDragWindowForMorphic. CornerGripMorph drawCornerResizeHandles: false. ProportionalSplitterMorph smartHorizontalSplitters: false ; smartVerticalSplitters: false. "Scroll bars." Preferences enable: #scrollBarsNarrow; enable: #scrollBarsOnRight; disable: #alwaysHideHScrollbar; disable: #alwaysShowHScrollbar; disable: #alwaysShowVScrollbar. ScrollBar scrollBarsWithoutArrowButtons: true; scrollBarsWithoutMenuButton: true. ScrollPane useRetractableScrollBars: false. "Rounded corners." Morph preferredCornerRadius: 6. Preferences disable: #roundedWindowCorners. PluggableButtonMorph roundedButtonCorners: false. FillInTheBlankMorph roundedDialogCorners: false. MenuMorph roundedMenuCorners: false. ScrollBar roundedScrollBarLook: false. "Gradients." Preferences disable: #gradientScrollBars. SystemWindow gradientWindow: false. MenuMorph gradientMenu: false. PluggableButtonMorph gradientButton: false. "Shadows" Preferences enable: #menuAppearance3d. MenuMorph menuBorderWidth: 1; menuBorderColor: Color lightGray; menuLineColor: Color lightGray. Morph useSoftDropShadow: true.. "Lists and Trees" PluggableListMorph filterableLists: true; clearFilterAutomatically: false; highlightHoveredRow: true; menuRequestUpdatesSelection: true. PluggableTreeMorph filterByLabelsOnly: false; maximumSearchDepth: 1. LazyListMorph listSelectionTextColor: Color black; listSelectionColor: (Color r: 0.72 g: 0.72 b: 0.9). "Standard Tools" BalloonMorph balloonColor: (TranslucentColor r: 0.92 g: 0.92 b: 0.706 alpha: 0.75). Workspace shouldStyle: false. Browser listClassesHierarchically: true; showClassIcons: true; showMessageIcons: true; sortMessageCategoriesAlphabetically: true. Preferences enable: #annotationPanes; enable: #optionalButtons; enable: #diffsWithPrettyPrint; enable: #traceMessages; enable: #alternativeBrowseIt; enable: #menuWithIcons; enable: #visualExplorer. + SystemNavigation thoroughSenders: true. + Preferences disable: #debugLogTimestamp. - SystemNavigation thoroughSenders: true. "Halo" Preferences enable: #showBoundsInHalo ; disable: #alternateHandlesLook. "System" NetNameResolver enableIPv6: false. Scanner allowUnderscoreAsAssignment: true; prefAllowUnderscoreSelectors: true. "that's all, folks"! Item was changed: + ----- Method: ReleaseBuilder class>>setProjectBackground: (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>setProjectBackground: (in category 'private') ----- setProjectBackground: aFormOrColorOrFillStyle MorphicProject defaultFill: (aFormOrColorOrFillStyle isForm ifTrue: [InfiniteForm with: aFormOrColorOrFillStyle] ifFalse: [aFormOrColorOrFillStyle isColor ifTrue: [SolidFillStyle color: aFormOrColorOrFillStyle] ifFalse: [aFormOrColorOrFillStyle]]). ActiveWorld fillStyle: MorphicProject defaultFill.! Item was added: + ----- Method: ReleaseBuilder class>>setTopProject (in category 'scripts') ----- + setTopProject + + Project current isMorphic ifFalse: [ + Warning signal: 'The current project is not Morphic. A new Morphic project will be created and entered. Please restart the release building process after that.'. + MorphicProject new enter "current process terminates after this"]. + + Project current removeAllOtherProjects.! Item was changed: + ----- Method: ReleaseBuilder class>>switchToNewRepository: (in category 'scripts') ----- - ----- Method: ReleaseBuilder class>>switchToNewRepository: (in category 'private') ----- switchToNewRepository: anMCRepository MCMcmUpdater defaultUpdateURL: anMCRepository description. MCRepositoryGroup reset. MCRepositoryGroup default addRepository: anMCRepository. MCWorkingCopy allManagers do: [ : each | each repositoryGroup: (MCRepositoryGroup new addRepository: anMCRepository ; yourself) ]! Item was removed: - ----- 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 ] ] ] ]! Item was added: + ----- Method: ReleaseBuilder class>>unloadForeignPackages (in category 'scripts') ----- + unloadForeignPackages + "Removes all packages that are not present in the build configuration." + + self buildConfiguration in: [:config | + MCWorkingCopy allManagers + reject: [:wc | config dependencies anySatisfy: [:dep | dep package name = wc package name]] + thenDo: [:wc | wc unload]].! Item was changed: + ----- Method: ReleaseBuilder class>>versionString (in category 'accessing') ----- - ----- Method: ReleaseBuilder class>>versionString (in category 'private') ----- versionString + "Result format is specified in SystemVersion." + ^ 'Squeak{1}.{2}' format: {self releaseVersionMajor. self releaseVersionMinor}! - ^ 'Squeak5.0'! Item was added: + ----- Method: ReleaseBuilder class>>versionStringAlpha (in category 'accessing') ----- + versionStringAlpha + "Result format is specified in SystemVersion." + ^ 'Squeak{1}.{2}alpha' format: {self releaseVersionMajor. self releaseVersionMinor+1}! |
Hey Chris, hey all,
do we still need "TrunkScript-cmm.5"? And "50Deprecated-mt.2", which is empty? They are not on the current update map. If not, would we have to account for their version number in "Squeak-Version"? Best, Marcel |
Hi, IIRC, the TrunkScript's were for when a major method of the trunk
update process, itself, needed to change, and use the new version immediately even if there were more updates to process. I'm sure we need them anymore. No one would try to update such an old image from trunk.. 50Deprecated-mt.2 is a truly empty package (no scripts). Only you would know whether its needed. :) Best, Chris On Thu, May 12, 2016 at 9:19 AM, marcel.taeumel <[hidden email]> wrote: > Hey Chris, hey all, > > do we still need "TrunkScript-cmm.5"? And "50Deprecated-mt.2", which is > empty? They are not on the current update map. If not, would we have to > account for their version number in "Squeak-Version"? > > Best, > Marcel > > > > -- > View this message in context: http://forum.world.st/The-Trunk-ReleaseBuilder-mt-131-mcz-tp4894490p4894491.html > Sent from the Squeak - Dev mailing list archive at Nabble.com. > |
On Thu, 12 May 2016, Chris Muller wrote:
> Hi, IIRC, the TrunkScript's were for when a major method of the trunk > update process, itself, needed to change, and use the new version > immediately even if there were more updates to process. I'm sure we > need them anymore. No one would try to update such an old image from > trunk.. I wouldn't be so sure about that. It would bea lot more convenient if you could specify a configuration you'd like your image to be updated to. Also, why break the update mechanism for basically no benefit? In an ideal world, you would be able to update your 3.11 image to 4.6 using the classic VM. Levente > > 50Deprecated-mt.2 is a truly empty package (no scripts). Only you > would know whether its needed. :) > > Best, > Chris > > On Thu, May 12, 2016 at 9:19 AM, marcel.taeumel <[hidden email]> wrote: >> Hey Chris, hey all, >> >> do we still need "TrunkScript-cmm.5"? And "50Deprecated-mt.2", which is >> empty? They are not on the current update map. If not, would we have to >> account for their version number in "Squeak-Version"? >> >> Best, >> Marcel >> >> >> >> -- >> View this message in context: http://forum.world.st/The-Trunk-ReleaseBuilder-mt-131-mcz-tp4894490p4894491.html >> Sent from the Squeak - Dev mailing list archive at Nabble.com. >> > > |
Free forum by Nabble | Edit this page |