diff --git a/build.gradle b/build.gradle index a99aad525b1fabcf9568b96657e145ab8296465a..629e5bd35f8068eae889f10d3c30ca2d2d05213d 100644 --- a/build.gradle +++ b/build.gradle @@ -287,22 +287,26 @@ task changelog << { grgit.tag.list().reverse().each{ t -> tags += t.getName() } - fileChangelog.delete() + def builder + def commits; def numTags = tags.size() - for (int i = 0; i < numTags - 1; i++) { + for (int i = 0; i < numTags; i++) { builder = new StringBuilder() builder.append("- Version ${tags[i]}:\n".replaceAll('Version HEAD', 'Upcoming version')) - grgit.log { - range tags[i+1], tags[i]; - }.inject(builder) { bldr, commit -> + if (tags[i+1] == null) { + commits = grgit.log(includes: [tags[i]]) + } else { + commits = grgit.log { range tags[i+1], tags[i]; } + } + + commits.inject(builder) { bldr, commit -> bldr.append(' - ') bldr.append(commit.shortMessage) bldr.append('\n') } - fileChangelog << builder.toString() } }