[squeak-dev] The Trunk: Monticello-cmm.427.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Mar 15 19:17:17 UTC 2011


Chris Muller uploaded a new version of Monticello to project The Trunk:
http://source.squeak.org/trunk/Monticello-cmm.427.mcz

==================== Summary ====================

Name: Monticello-cmm.427
Author: cmm
Time: 4 March 2011, 4:46:46.242 pm
UUID: 7e6f2dc7-d2a5-4273-87c2-dd7d99edc4ac
Ancestors: Monticello-cmm.426

- Now reintroduced MCFileRepositoryInspector to recapture the performance of the original.

=============== Diff against Monticello-cmm.426 ===============

Item was changed:
  ----- Method: MCFileBasedRepository>>morphicOpen: (in category 'overriding') -----
  morphicOpen: aWorkingCopy
+ 	(MCFileRepositoryInspector repository: self workingCopy: aWorkingCopy)
- 	(MCRepositoryInspector repository: self workingCopy: aWorkingCopy)
  		show!

Item was changed:
  ----- Method: MCFileBasedRepository>>versionNamesForPackageNamed: (in category 'versions') -----
  versionNamesForPackageNamed: packageName 
  	^ Array streamContents:
+ 		[ : stream | self allFileNamesOrCache do:
- 		[ : stream | self allFileNames do:
  			[ : each | | mcFileName |
  			mcFileName := each asMCVersionName.
  			mcFileName packageName = packageName ifTrue: [ stream nextPut: mcFileName ] ] ]!

Item was added:
+ MCRepositoryInspector subclass: #MCFileRepositoryInspector
+ 	instanceVariableNames: 'allVersionNames'
+ 	classVariableNames: ''
+ 	poolDictionaries: ''
+ 	category: 'Monticello-UI'!

Item was added:
+ ----- Method: MCFileRepositoryInspector>>allVersionNames (in category 'private') -----
+ allVersionNames
+ 	^ allVersionNames ifNil:
+ 		[ self initializeVersionNames.
+ 		allVersionNames ]!

Item was added:
+ ----- Method: MCFileRepositoryInspector>>initializeVersionNames (in category 'private') -----
+ initializeVersionNames
+ 	repository cacheAllFileNamesDuring:
+ 		[ super initializeVersionNames.
+ 		allVersionNames := repository readableFileNames ]!

Item was added:
+ ----- Method: MCFileRepositoryInspector>>versionNamesForNoPackageSelection (in category 'private') -----
+ versionNamesForNoPackageSelection
+ 	^ self allVersionNames!

Item was added:
+ ----- Method: MCFileRepositoryInspector>>versionNamesForSelectedPackage (in category 'private') -----
+ versionNamesForSelectedPackage
+ 	^ self allVersionNames select:
+ 		[ : each | each packageName = selectedPackage ]!

Item was changed:
+ ----- Method: MCRepositoryInspector>>identifyNewerVersionsOf: (in category 'initialize-release') -----
- ----- Method: MCRepositoryInspector>>identifyNewerVersionsOf: (in category 'private') -----
  identifyNewerVersionsOf: aMCWorkingCopy 
  	(repository possiblyNewerVersionsOfAnyOf: aMCWorkingCopy ancestry names) do:
  		[ : eachNewerVersionName | newer add: eachNewerVersionName packageName ]!

Item was added:
+ ----- Method: MCRepositoryInspector>>initializeVersionNames (in category 'initialize-release') -----
+ initializeVersionNames
+ 	repository cacheAllFileNamesDuring:
+ 		[ versionNames := repository versionNamesForPackageNamed: selectedPackage.
+ 		self refreshEmphasis ]!

Item was changed:
+ ----- Method: MCRepositoryInspector>>postAcceptBrowseFor: (in category 'initialize-release') -----
- ----- Method: MCRepositoryInspector>>postAcceptBrowseFor: (in category 'private') -----
  postAcceptBrowseFor: aModel
  	"Make the same selections as in aModel."
  	self 
  		packageSelection: aModel packageSelection ;
  		versionSelection: aModel versionSelection!

Item was changed:
+ ----- Method: MCRepositoryInspector>>repository (in category 'access') -----
- ----- Method: MCRepositoryInspector>>repository (in category 'private') -----
  repository
  	^ repository!

Item was changed:
  ----- Method: MCRepositoryInspector>>setRepository:workingCopy: (in category 'initialize-release') -----
+ setRepository: aFileBasedRepository workingCopy: aWorkingCopy 
- setRepository: aFileBasedRepository workingCopy: aWorkingCopy
  	order := self class order.
  	repository := aFileBasedRepository.
  	self refresh.
+ 	aWorkingCopy ifNotNil:
+ 		[ selectedPackage := aWorkingCopy ancestry ancestors ifNotEmpty:
+ 			[ : ancestors | ancestors anyOne name asMCVersionName packageName ] ].
+ 	MCWorkingCopy addDependent: self!
- 	aWorkingCopy
- 		ifNil: [selectedPackage := self packageList isEmpty ifFalse: [self packageList first]]
- 		ifNotNil: [ selectedPackage := aWorkingCopy ancestry ancestorString copyUpToLast: $- ].
- 	MCWorkingCopy addDependent: self.
- !

Item was changed:
  ----- Method: MCRepositoryInspector>>versionList (in category 'morphic ui') -----
  versionList
  	| result |
+ 	result := selectedPackage
+ 		ifNil: [ self versionNamesForNoPackageSelection ]
+ 		ifNotNil: [ self versionNamesForSelectedPackage ].
- 	result := self versionNames.
  	"Not sure why we need this ugly Error trapping here.."
  	(self orderSpecs at: order) value ifNotNil:
  		[ : sortBlock | result sort:
  			[ : a : b | [ sortBlock
  				value: a
  				value: b ]
  				on: Error
  				do: [ true ] ] ].
+ 	^ result collect:
+ 		[ : each | self versionHighlight: each ]!
- 	^ result collect: [ : each | self versionHighlight: each ]!

Item was changed:
+ ----- Method: MCRepositoryInspector>>versionNames (in category 'access') -----
- ----- Method: MCRepositoryInspector>>versionNames (in category 'private') -----
  versionNames
  	^ versionNames ifNil:
+ 		[ self initializeVersionNames.
+ 		versionNames ]!
- 		[ selectedPackage
- 			ifNil: [ Array empty ]
- 			ifNotNil:
- 				[ versionNames := repository versionNamesForPackageNamed: selectedPackage.
- 				self refreshEmphasis.
- 				versionNames ] ]!

Item was added:
+ ----- Method: MCRepositoryInspector>>versionNamesForNoPackageSelection (in category 'access') -----
+ versionNamesForNoPackageSelection
+ 	^ Array empty!

Item was added:
+ ----- Method: MCRepositoryInspector>>versionNamesForSelectedPackage (in category 'morphic ui') -----
+ versionNamesForSelectedPackage
+ 	^ self versionNames!




More information about the Squeak-dev mailing list