[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
|