[squeak-dev] The Trunk: ReleaseBuilder-ct.217.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Dec 9 13:50:56 UTC 2021


Marcel Taeumel uploaded a new version of ReleaseBuilder to project The Trunk:
http://source.squeak.org/trunk/ReleaseBuilder-ct.217.mcz

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

Name: ReleaseBuilder-ct.217
Author: ct
Time: 18 October 2021, 6:22:31.185498 pm
UUID: 8ead8d23-1488-af45-8b0c-3d7413f65aff
Ancestors: ReleaseBuilder-mt.216

Revises format of auto-generated Markdown changelogs. Don't abuse horizontal lines and enumeration points for all items. Sort the changes by package and time before printing them. For reference, include the version name for every change note.

Also bumps the version number in #changesBetweenReleases to 5.3.

Depends on Collections-ct.958.

=============== Diff against ReleaseBuilder-mt.216 ===============

Item was changed:
  ----- Method: ReleaseBuilder class>>changesBetweenReleases (in category 'scripts - changes') -----
  changesBetweenReleases
  	
  	| repos configs result |
+ 	repos :=#(53) collect: [:ea |
- 	repos :=#(52) collect: [:ea |
  		(MCHttpRepository
  		    location: 'http://source.squeak.org/squeak', ea
  		    user: 'squeak'
  		    password: 'squeak')].
  	configs := repos collect: [:ea | ea description -> (self firstConfigurationIn: ea map: 'update')].
  	configs := configs, {(self buildRepository description -> self buildConfiguration)}.
  	
  	result := OrderedDictionary new.
  	configs overlappingPairsDo: [:c1 :c2 |
  		result
  			at: c2 key
  			put: (self changesBetween: c1 value and: c2 value)].
  		
  	^ result
  		!

Item was changed:
  ----- Method: ReleaseBuilder class>>fileOutChangesBetweenReleases (in category 'scripts - changes') -----
  fileOutChangesBetweenReleases
  	"Generate mark-down files with all commit messages by release. To be used to write release notes."
  	
  	| fileNames |
  	fileNames := OrderedCollection new.
  	
  	self changesBetweenReleases keysAndValuesDo: [:location :c |
  		fileNames add: ('commits-{1}.md' format: {(location findTokens: '/') last}).
  		FileStream forceNewFileNamed: fileNames last do: [:strm |
+ 		c withKeysSortedSafely keysAndValuesDo: [:pkg :changes |
- 		c keysAndValuesDo: [:pkg :changes |
  			strm nextPutAll: '# '; nextPutAll: pkg name; cr.
+ 			(changes withKeysSorted: #dateAndTime ascending) keysAndValuesDo: [:ver :msg |
+ 				strm
+ 					nextPutAll: '- **';
+ 					nextPutAll: ver name;
+ 					nextPutAll: ':** '.
+ 				msg lines withIndexDo: [:line :index | line ifNotEmpty: [:m |
+ 					index > 1 ifTrue: [strm nextPutAll: '  '].
+ 					strm nextPutAll: m.
+ 					strm cr]]]]]].
- 			changes keysAndValuesDo: [:ver :msg |
- 				msg linesDo: [:line | line withBlanksTrimmed ifNotEmpty: [:m |
- 					(m first isDigit or: [{$*. $-} includes: m first])
- 						ifTrue: [strm nextPutAll: '   ', m]
- 						ifFalse: [strm nextPutAll: ' - ', m].
- 					strm cr]].
- 				strm nextPutAll: '------------------'; cr]]]].
  
  	self inform: 'Files written:\' withCRs, (fileNames joinSeparatedBy: String cr).!



More information about the Squeak-dev mailing list