@@ -286,7 +286,7 @@ def changeLogFileTask = tasks.register( "changeLogFile" ) {
286
286
287
287
doFirst {
288
288
logger. lifecycle( " Appending version `${ project.releaseVersion} ` to changelog..." )
289
- ChangeLogFile . update( ormVersion. fullName );
289
+ ChangeLogFile . update( ormVersion. fullName, rootProject );
290
290
}
291
291
}
292
292
@@ -433,9 +433,9 @@ static String inputStreamToString(InputStream inputStream) {
433
433
class ChangeLogFile {
434
434
435
435
// Get the Release Notes from Jira and add them to the Hibernate changelog.txt file
436
- static void update (String releaseVersion ) {
436
+ static void update (String releaseVersion , Project project ) {
437
437
def text = " "
438
- File changelog = new File ( " changelog.txt" )
438
+ File changelog = project . rootProject . layout . projectDirectory . file ( " changelog.txt" ). asFile
439
439
def newReleaseNoteBlock = getNewReleaseNoteBlock(releaseVersion)
440
440
changelog. eachLine {
441
441
line ->
@@ -458,24 +458,33 @@ class ChangeLogFile {
458
458
else {
459
459
restReleaseVersion = releaseVersion
460
460
}
461
- def apiString = " https://hibernate.atlassian.net/rest/api/2/search/?jql=project=HHH%20AND%20fixVersion=${ restReleaseVersion} %20order%20by%20issuetype%20ASC"
462
- def apiUrl = new URL ( apiString )
463
- def jsonReleaseNotes = new JsonSlurper (). parse( apiUrl )
464
- def releaseDate = new Date (). format( ' MMMM dd, YYYY' )
465
- def versionId = getVersionId( jsonReleaseNotes, restReleaseVersion )
466
-
467
- ReleaseNote releaseNotes = new ReleaseNote ( releaseVersion, releaseDate, versionId )
468
-
469
- def issuetype
470
- jsonReleaseNotes. issues. each {
471
- issue ->
472
- if ( issuetype != issue. fields. issuetype. name ) {
473
- issuetype = issue. fields. issuetype. name
474
- releaseNotes. addEmptyLine();
475
- releaseNotes. addLine( " ** ${ issue.fields.issuetype.name} " )
476
- }
477
- releaseNotes. addLine( " * [" + issue. key + " ] - " + issue. fields. summary )
478
- }
461
+ def ReleaseNote releaseNotes = null
462
+ def String nextPageToken = null
463
+ def issuetype = null
464
+ do {
465
+ 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,fixVersions&maxResults=200${ nextPageToken == null ? '' : '&nextPageToken=' + nextPageToken} "
466
+ def apiUrl = new URI (apiString). toURL()
467
+ def jsonReleaseNotes = new JsonSlurper (). parse(apiUrl)
468
+ if (releaseNotes == null ) {
469
+ def releaseDate = new Date (). format( ' MMMM dd, YYYY' )
470
+ def versionId = getVersionId(jsonReleaseNotes, restReleaseVersion)
471
+ releaseNotes = new ReleaseNote (releaseVersion, releaseDate, versionId)
472
+ }
473
+
474
+ jsonReleaseNotes. issues. each {
475
+ issue ->
476
+ if ( issuetype != issue. fields. issuetype. name ) {
477
+ issuetype = issue. fields. issuetype. name
478
+ releaseNotes. addEmptyLine();
479
+ releaseNotes. addLine( " ** ${ issue.fields.issuetype.name} " )
480
+ }
481
+ releaseNotes. addLine( " * [" + issue. key + " ] - " + issue. fields. summary )
482
+ }
483
+
484
+ nextPageToken = jsonReleaseNotes. nextPageToken
485
+
486
+ } while (nextPageToken != null )
487
+
479
488
releaseNotes. addEmptyLine()
480
489
return releaseNotes. notes
481
490
}
0 commit comments