[squeak-dev] The Trunk: MonticelloConfigurations-cmm.97.mcz
Chris Muller
asqueaker at gmail.com
Tue Aug 16 14:53:06 UTC 2011
Yes, it can "have" multiple repositories, but in terms of storing, it
ignores them and interrupts the user to pick a repository from a menu
in order to store the configuration - which I never understood.
On Tue, Aug 16, 2011 at 5:04 AM, Bert Freudenberg <bert at freudenbergs.de> wrote:
> On 16.08.2011, at 02:52, commits at source.squeak.org wrote:
>
>> Chris Muller uploaded a new version of MonticelloConfigurations to project The Trunk:
>> http://source.squeak.org/trunk/MonticelloConfigurations-cmm.97.mcz
>>
>> ==================== Summary ====================
>>
>> Name: MonticelloConfigurations-cmm.97
>> Author: cmm
>> Time: 13 August 2011, 7:39:26.257 pm
>> UUID: 1824aaa0-7327-4eb5-9f64-b76f259b116a
>> Ancestors: MonticelloConfigurations-bf.96
>>
>> - When storing a Configuration, instead of complaining to the user about what versions are missing in the target repository, just copy the missing versions in automatically.
>
>
> Uh oh. Why would you think that's a good idea? A configuration can have multiple repositories, so just copying all into into one is not always the right thing to do.
>
> At the very least this should warn that it's not just going to store a config, but copy versions over, too.
>
> - Bert -
>
>> =============== Diff against MonticelloConfigurations-bf.96 ===============
>>
>> Item was changed:
>> ----- Method: MCConfigurationBrowser>>checkDependencies (in category 'dependencies') -----
>> checkDependencies
>> + | missing |
>> + missing := (self dependencies collect:
>> + [ : ea | ea versionInfo name ]) asSet.
>> + self repositories do:
>> + [ : eachRepository | eachRepository cacheAllFileNamesDuring:
>> + [ missing copy do:
>> + [ : eachVersionName | (eachRepository includesVersionNamed: eachVersionName) ifTrue: [ missing remove: eachVersionName ] ] ] ].
>> + ^ missing isEmpty or:
>> + [ self selectDependency: missing anyOne.
>> + self confirm:
>> + (String streamContents:
>> + [ : strm | strm
>> + nextPutAll: 'No repository found for' ;
>> + cr.
>> + missing do:
>> + [ : r | strm
>> + nextPutAll: r ;
>> + cr ].
>> + strm nextPutAll: 'Do you still want to store?' ]) ]!
>> - ^self checkModified and: [self checkMissing]!
>>
>> Item was removed:
>> - ----- Method: MCConfigurationBrowser>>checkMissing (in category 'dependencies') -----
>> - checkMissing
>> - | missing |
>> - missing := (self dependencies collect:
>> - [ : ea | ea versionInfo name ]) asSet.
>> - self repositories do:
>> - [ : eachRepository | eachRepository cacheAllFileNamesDuring:
>> - [ missing copy do:
>> - [ : eachVersionName | (eachRepository includesVersionNamed: eachVersionName) ifTrue: [ missing remove: eachVersionName ] ] ] ].
>> - ^ missing isEmpty or:
>> - [ self selectDependency: missing anyOne.
>> - self confirm:
>> - (String streamContents:
>> - [ : strm | strm
>> - nextPutAll: 'No repository found for' ;
>> - cr.
>> - missing do:
>> - [ : r | strm
>> - nextPutAll: r ;
>> - cr ].
>> - strm nextPutAll: 'Do you still want to store?' ]) ]!
>>
>> Item was changed:
>> ----- Method: MCConfigurationBrowser>>store (in category 'actions') -----
>> store
>> + (self checkRepositories and: [ self checkDependencies ]) ifFalse: [ ^ self ].
>> + self pickName ifNotNil:
>> + [ : name | self configuration name: name.
>> + self pickRepository ifNotNil:
>> + [ : repo | repo cacheAllFileNamesDuring:
>> + [ self configuration dependencies do:
>> + [ : each | repo
>> + versionWithInfo: each versionInfo
>> + ifAbsent: [ repo storeVersion: (MCRepositoryGroup default versionWithInfo: each versionInfo) ] ] ].
>> + repo storeVersion: self configuration ] ]!
>> - (self checkRepositories and: [self checkDependencies]) ifFalse: [^self].
>> - self pickName ifNotNil: [:name |
>> - self configuration name: name.
>> - self pickRepository ifNotNil: [:repo |
>> - repo storeVersion: self configuration]].!
>>
>>
>
>
>
>
More information about the Squeak-dev
mailing list
|