The Trunk: ReleaseBuilder-mt.156.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: ReleaseBuilder-mt.156.mcz

commits-2
Marcel Taeumel uploaded a new version of ReleaseBuilder to project The Trunk:
http://source.squeak.org/trunk/ReleaseBuilder-mt.156.mcz

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

Name: ReleaseBuilder-mt.156
Author: mt
Time: 15 August 2016, 4:28:52.546884 pm
UUID: 142d5783-4c1c-0949-b0d7-ccc8918668c3
Ancestors: ReleaseBuilder-mt.155

Small fix for getting the changes between releases. Account for a broken MC acenstry.

=============== Diff against ReleaseBuilder-mt.155 ===============

Item was changed:
  ----- Method: ReleaseBuilder class>>changesBetween:and: (in category 'scripts - support') -----
  changesBetween: startConfiguration and: endConfiguration
 
  | a b d |
  a := startConfiguration.
  b := endConfiguration.
  d := OrderedDictionary new.
 
  b dependencies do: [:dep |
  | begin end finished started |
  finished := false. started := false.
  begin := a dependencies
  detect: [:ea | ea package = dep package]
  ifFound: [:x | x versionInfo]
  ifNone: [nil].
  end := dep versionInfo.
 
  d at: dep package put: OrderedDictionary new.
  dep package workingCopy ancestry allAncestorsDo: [:ver |
+ started := started or: [(ver name findTokens: '.') last asNumber <= (end name findTokens: '.') last asNumber].
+ finished := finished or: [begin notNil and: [(ver name findTokens: '.') last asNumber <= (begin name findTokens: '.') last asNumber]].
- started := started or: [ver name = end name].
- finished := finished or: [begin notNil and: [ver name = begin name]].
  started & finished not ifTrue: [(d at: dep package) at: ver put: ver message]]].
  ^ d!

Item was changed:
  ----- Method: ReleaseBuilder class>>fileOutChangesBetweenReleases (in category 'scripts - support') -----
  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 |
- FileStream fileNamed: fileNames last do: [:strm |
  c keysAndValuesDo: [:pkg :changes |
  strm nextPutAll: '# '; nextPutAll: pkg name; 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]]]]]].
 
  self inform: 'Files written:\' withCRs, (fileNames joinSeparatedBy: String cr).!