@@ -106,7 +106,7 @@ def changeLogFileTask = tasks.register( "changeLogFile" ) {
106
106
107
107
doFirst {
108
108
logger. lifecycle( " Appending version `${ project.releaseVersion} ` to changelog..." )
109
- ChangeLogFile . update( ormBuildDetails. hibernateVersion. fullName );
109
+ ChangeLogFile . update( ormBuildDetails. hibernateVersion. fullName, rootProject );
110
110
}
111
111
}
112
112
@@ -478,9 +478,9 @@ static String inputStreamToString(InputStream inputStream) {
478
478
class ChangeLogFile {
479
479
480
480
// Get the Release Notes from Jira and add them to the Hibernate changelog.txt file
481
- static void update (String releaseVersion ) {
481
+ static void update (String releaseVersion , Project project ) {
482
482
def text = " "
483
- File changelog = new File ( " changelog.txt" )
483
+ File changelog = project . rootProject . layout . projectDirectory . file ( " changelog.txt" ). asFile
484
484
def newReleaseNoteBlock = getNewReleaseNoteBlock(releaseVersion)
485
485
changelog. eachLine {
486
486
line ->
@@ -503,24 +503,33 @@ class ChangeLogFile {
503
503
else {
504
504
restReleaseVersion = releaseVersion
505
505
}
506
- def apiString = " https://hibernate.atlassian.net/rest/api/2/search/?jql=project=HHH%20AND%20fixVersion=${ restReleaseVersion} %20order%20by%20issuetype%20ASC"
507
- def apiUrl = new URL ( apiString )
508
- def jsonReleaseNotes = new JsonSlurper (). parse( apiUrl )
509
- def releaseDate = new Date (). format( ' MMMM dd, YYYY' )
510
- def versionId = getVersionId( jsonReleaseNotes, restReleaseVersion )
511
-
512
- ReleaseNote releaseNotes = new ReleaseNote ( releaseVersion, releaseDate, versionId )
513
-
514
- def issuetype
515
- jsonReleaseNotes. issues. each {
516
- issue ->
517
- if ( issuetype != issue. fields. issuetype. name ) {
518
- issuetype = issue. fields. issuetype. name
519
- releaseNotes. addEmptyLine();
520
- releaseNotes. addLine( " ** ${ issue.fields.issuetype.name} " )
521
- }
522
- releaseNotes. addLine( " * [" + issue. key + " ] - " + issue. fields. summary )
523
- }
506
+ def ReleaseNote releaseNotes = null
507
+ def String nextPageToken = null
508
+ def issuetype = null
509
+ do {
510
+ def apiString = " https://hibernate.atlassian.net/rest/api/3/search/jql/?jql=project=HHH%20AND%20fixVersion=${ restReleaseVersion} %20AND%20statusCategory%20%3D%20Done%20order%20by%20issuetype%20ASC&fields=issuetype,summary&maxResults=200${ nextPageToken == null ? '' : '&nextPageToken=' + nextPageToken} "
511
+ def apiUrl = new URI (apiString). toURL()
512
+ def jsonReleaseNotes = new JsonSlurper (). parse(apiUrl)
513
+ if (releaseNotes == null ) {
514
+ def releaseDate = new Date (). format( ' MMMM dd, YYYY' )
515
+ def versionId = getVersionId(jsonReleaseNotes, restReleaseVersion)
516
+ releaseNotes = new ReleaseNote (releaseVersion, releaseDate, versionId)
517
+ }
518
+
519
+ jsonReleaseNotes. issues. each {
520
+ issue ->
521
+ if ( issuetype != issue. fields. issuetype. name ) {
522
+ issuetype = issue. fields. issuetype. name
523
+ releaseNotes. addEmptyLine();
524
+ releaseNotes. addLine( " ** ${ issue.fields.issuetype.name} " )
525
+ }
526
+ releaseNotes. addLine( " * [" + issue. key + " ] - " + issue. fields. summary )
527
+ }
528
+
529
+ nextPageToken = jsonReleaseNotes. nextPageToken
530
+
531
+ } while (nextPageToken != null )
532
+
524
533
releaseNotes. addEmptyLine()
525
534
return releaseNotes. notes
526
535
}
0 commit comments