[squeak-dev] Too many update configs in trunk?

Casey Ransberger casey.obrien.r at gmail.com
Fri Jun 10 00:07:28 UTC 2011


Well, my comment is perpendicular, but people have been asking me for a new trunk image for a few weeks now, which could be related. 

I don't have a real computer with me right now, otherwise I'd just do it tonight. I can probably find some time to do it tomorrow, unless someone wants to beat me to the punch. 

Doesn't solve the underlying problem, but does take some of the pain away. 

On Jun 9, 2011, at 2:51 PM, Bert Freudenberg <bert at freudenbergs.de> wrote:

> Hi folks,
> 
> I just tried to update an older trunk image to the current one. It took ages.
> 
> I have the impression that people are committing way more update configs than necessary. These are not cheap, but they force an incremental update process. Instead of just loading the latest version, they force me to load many many intermediate versions. I cannot imagine it is necessary to have so many. We are close to 200 now.
> 
> Normally we only need a new config map when the load order of packages needs to change. But I see many configs where the order does not change at all. Attached below.
> 
> Sometimes it might be necessary to force a specific version to be loaded before a subsequent version. But is that really necessary that often?
> 
> If it is indeed necessary, then we need to figure out a way to only force-loading a specific package, not all packages. That would speed up the updates quite a bit.
> 
> 
> - Bert -
> 
> 
> ----
> update-ul.118.mcm
> ----
> update-ul.119.mcm
> ----
> update-nice.120.mcm
> ----
> update-nice.121.mcm
> ----
> update-ul.122.mcm
> ----
> update-ul.123.mcm
> ----
> update-ul.124.mcm
> ----
> update-nice.125.mcm
> ----
> update-nice.126.mcm
> ----
> update-nice.127.mcm
> ----
> update-ar.128.mcm
> + Monticello
> Compiler
> EToys
> Exceptions
> Files
> FlexibleVocabularies
> Graphics
> GraphicsTests
> Installer-Core
> Kernel
> KernelTests
> MonticelloConfigurations
> - Monticello
> ----
> update-ar.129.mcm
> ----
> update-ar.130.mcm
> ----
> update-nice.131.mcm
> ----
> update-nice.132.mcm
> ----
> update-ul.133.mcm
> ----
> update-laza.134.mcm
> ----
> update-nice.135.mcm
> ----
> update-nice.136.mcm
> ----
> update-ul.137.mcm
> ----
> update-ul.138.mcm
> + Kernel
> Compiler
> EToys
> Exceptions
> Files
> FlexibleVocabularies
> Graphics
> GraphicsTests
> Installer-Core
> - Kernel
> ----
> update-ar.139.mcm
> + System
> Morphic
> Multilingual
> MorphicExtras
> MorphicTests
> MultilingualTests
> Nebraska
> Network
> NetworkTests
> PackageInfo-Base
> PreferenceBrowser
> Protocols
> SMBase
> SMLoader
> ST80
> SUnit
> SUnitGUI
> ScriptLoader
> Services-Base
> Sound
> - System
> ----
> update-nice.140.mcm
> ----
> update-ul.141.mcm
> ----
> update-ul.142.mcm
> ----
> update-nice.143.mcm
> ----
> update-ul.144.mcm
> ----
> update-ar.145.mcm
> ----
> update-ul.146.mcm
> ----
> update-bf.147.mcm
> + HelpSystem-Core
> + HelpSystem-Tests
> + Help-Squeak-Project
> ----
> update-ul.148.mcm
> ----
> update-ar.149.mcm
> ----
> update-nice.150.mcm
> ----
> update-ar.151.mcm
> + Network
> Collections
> CollectionsTests
> Compression
> Monticello
> Kernel
> Compiler
> EToys
> Exceptions
> Files
> FlexibleVocabularies
> Graphics
> GraphicsTests
> Installer-Core
> KernelTests
> MonticelloConfigurations
> System
> Morphic
> Multilingual
> MorphicExtras
> MorphicTests
> MultilingualTests
> Nebraska
> - Network
> ----
> update-ar.152.mcm
> + Compression
> Collections
> CollectionsTests
> - Compression
> ----
> update-ul.153.mcm
> ----
> update-ul.154.mcm
> ----
> update-ul.155.mcm
> ----
> update-ul.156.mcm
> ----
> update-ul.157.mcm
> ----
> update-ul.158.mcm
> ----
> update-ul.159.mcm
> ----
> update-ul.160.mcm
> ----
> update-ul.161.mcm
> ----
> update-ul.162.mcm
> ----
> update-ul.163.mcm
> ----
> update-dtl.164.mcm
> + Help-Squeak-TerseGuide
> ----
> update-ul.165.mcm
> ----
> update-ul.166.mcm
> ----
> update-ul.167.mcm
> ----
> update-ul.168.mcm
> ----
> update-nice.169.mcm
> ----
> update-dtl.170.mcm
> + SystemReporter
> ----
> update-ul.171.mcm
> ----
> update-ul.172.mcm
> ----
> update-ul.173.mcm
> ----
> update-ul.174.mcm
> ----
> update-ul.175.mcm
> ----
> update-dtl.176.mcm
> ----
> update-ul.177.mcm
> + BalloonTests
> ----
> update-ul.178.mcm
> ----
> update-cmm.179.mcm
> + TrunkScript
> ----
> update-cmm.180.mcm
> - TrunkScript
> ----
> update-ul.182.mcm
> ----
> update-cmm.183.mcm
> ----
> update-nice.184.mcm
> ----
> update-ul.185.mcm
> ----
> update-ul.186.mcm
> ----
> update-ul.187.mcm
> ----
> update-kb.188.mcm
> ----
> update-nice.189.mcm
> ----
> update-ul.190.mcm
> ----
> update-ul.191.mcm
> 
> 
> repo := MCRepositoryGroup default repositories detect: [:r | r description = 'http://source.squeak.org/trunk'].
> updates := repo allFileNames select: [ :f | (f beginsWith: 'update-') and: [f endsWith: '.mcm'] ].
> updates := updates asSortedCollection: [ :a :b | (a allButLast: 4) numericSuffix < (b allButLast: 4) numericSuffix].
> Transcript clear.
> updates do: [ :update |
>    Transcript show: '----'; cr; show: update; cr.
>    config := repo versionNamed: update.
>    pkgs := String streamContents: [:s | config dependencies do: [:dep | s nextPutAll: dep package name; cr] ].
>    prev ifNotNil: [
>        context := nil.
>        (TextDiffBuilder from: prev to: pkgs) 
>            patchSequenceDoIfMatch: [ :string | context ifNotNil: [context := context, string ] ]
>            ifInsert: [ :string | context ifNotNil: [Transcript show: context]. Transcript show: '+ ', string. context := '']
>            ifRemove: [ :string | context ifNotNil: [Transcript show: context]. Transcript show: '- ', string. context := ''].
>        ].
>    prev := pkgs]. 
> 
> 
> 



More information about the Squeak-dev mailing list