[etoys-dev] Etoys: System-bf.10.mcz

commits at source.squeak.org commits at source.squeak.org
Tue May 4 22:40:31 EDT 2010


Bert Freudenberg uploaded a new version of System to project Etoys:
http://source.squeak.org/etoys/System-bf.10.mcz

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

Name: System-bf.10
Author: bf
Time: 4 May 2010, 7:39:52 pm
UUID: a04c31d3-5dfc-420f-9e3e-e93714a32238
Ancestors: System-bf.9

- add defaultRepositoryChangeLogOn: to Utilities

=============== Diff against System-bf.9 ===============

Item was changed:
  ----- Method: Utilities class>>versionNumberAndDateFromConfig: (in category 'fetching updates') -----
  versionNumberAndDateFromConfig: anMCConfiguration
  	"Answer the latest date found in anMCConfiguration (or the associated working copy), and the sum of its version numbers."
  
  	| versionNumbers versionDates |
  	versionNumbers := anMCConfiguration dependencies collect: [:d |
  		(d versionInfo name copyAfterLast: $.) asInteger].
  	versionDates := anMCConfiguration dependencies collect: [:d |
  		d versionInfo date
+ 			ifNil: [((d package workingCopy ancestry findAncestor: d versionInfo)
+ 				ifNotNilDo: [:v | v date])
+ 					ifNil: [Date fromDays: 0]]].
- 			ifNil: [d package workingCopy ancestors first date
- 				ifNil: [Date fromDays: 0]]].
  	^{versionNumbers sum. versionDates max}.
  !

Item was added:
+ ----- Method: Utilities class>>defaultRepositoryChangeLogOn: (in category 'fetching updates') -----
+ defaultRepositoryChangeLogOn: aStream
+ 	"Transcript clear. Utilities defaultRepositoryChangeLogOn: Transcript"
+ 	| repo updates latest previous latestVersion previousVersion added removed latestPackages previousPackages prevDep prevInfo latestInfo |
+ 	repo := MCRepositoryGroup default repositories detect: [:r |
+ 		r description = MCMcmUpdater defaultUpdateURL].
+ 	updates := repo allFileNames select: [:each | 'update-*.mcm' match: each].
+ 	updates := updates asSortedCollection:
+ 		[:a :b | a splitInteger second > b splitInteger second].
+ 	latest := repo versionFromFileNamed: updates first.
+ 	previous := repo versionFromFileNamed: updates second.
+ 	latestVersion := self versionNumberAndDateFromConfig: latest.
+ 	previousVersion := self versionNumberAndDateFromConfig: previous.
+ 	aStream nextPutAll: 'Changes from v'; print: previousVersion first;
+ 		nextPutAll: ' of '; print: previousVersion second;
+ 		nextPutAll: ' to v'; print: latestVersion first;
+ 		nextPutAll: ' of '; print: latestVersion second;
+ 		nextPutAll: ':'; cr.
+ 	aStream flush.
+ 	latestPackages := latest dependencies collect: [:dep | dep package].
+ 	previousPackages :=  previous dependencies collect: [:dep | dep package].
+ 	added := latestPackages difference: previousPackages.
+ 	removed := previousPackages difference: latestPackages.
+ 	added ifNotEmpty: [
+ 		aStream nextPutAll: 'Added packages:'.
+ 		added do: [:each | aStream space; nextPutAll: each name].
+ 		aStream cr].
+ 	removed ifNotEmpty: [
+ 		aStream nextPutAll: 'Removed packages:'.
+ 		removed do: [:each | aStream space; nextPutAll: each name].
+ 		aStream cr].
+ 	 latest dependencies do: [:latestDep |
+ 		prevDep := previous dependencies detect: [:p | latestDep package = p package] ifNone: [].
+ 		(prevDep notNil and: [prevDep versionInfo ~= latestDep versionInfo])
+ 			ifTrue: [
+ 				aStream nextPutAll: '--------------------'; cr.
+ 				prevInfo := prevDep package workingCopy ancestry findAncestor: prevDep versionInfo.
+ 				latestInfo := latestDep package workingCopy ancestry findAncestor: latestDep versionInfo.
+ 				(latestInfo allAncestorsOnPathTo: prevInfo) reverse, {latestInfo}
+ 					do: [:ver | aStream nextPutAll: ver name; cr; nextPutAll: ver message; cr]
+ 					separatedBy: [aStream cr]]].
+ 	aStream flush
+ !



More information about the etoys-dev mailing list