@@ -106,7 +106,7 @@ def changeLogFileTask = tasks.register( "changeLogFile" ) {
106106
107107 doFirst {
108108 logger. lifecycle( " Appending version `${ project.releaseVersion} ` to changelog..." )
109- ChangeLogFile . update( ormBuildDetails. hibernateVersion. fullName );
109+ ChangeLogFile . update( ormBuildDetails. hibernateVersion. fullName, rootProject );
110110 }
111111}
112112
@@ -478,9 +478,9 @@ static String inputStreamToString(InputStream inputStream) {
478478class ChangeLogFile {
479479
480480 // 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 ) {
482482 def text = " "
483- File changelog = new File ( " changelog.txt" )
483+ File changelog = project . rootProject . layout . projectDirectory . file ( " changelog.txt" ). asFile
484484 def newReleaseNoteBlock = getNewReleaseNoteBlock(releaseVersion)
485485 changelog. eachLine {
486486 line ->
@@ -503,24 +503,33 @@ class ChangeLogFile {
503503 else {
504504 restReleaseVersion = releaseVersion
505505 }
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+
524533 releaseNotes. addEmptyLine()
525534 return releaseNotes. notes
526535 }
0 commit comments