How do I display a version release date in a custom release notes velocity template?

After a bit of searching, I found that the "$version.getReleaseDate()" function will return a date object that has the information I'm trying to display. But the problem is that I can't figure out how to format the returned object so that it will render as a string in the release notes. It seems like it should be simple, but I just haven't been able to get anything to work. Can anyone provide a function that will format this date as a string?



Edit - Here's the template I'm trying to use. Everything works except the release date:

#macro (getReleaseNoteComment $issue $customFieldManager)
    #set ($customFields = $customFieldManager.getCustomFieldObjects($issue.project.getLong("id"), $issue.issueType.getString("id")))
    #foreach($customField in $customFields)
        #if($"Release Notes"))
<title>$action.getText('release.notes.text.title', $project, $version) </title>
    <h1>$action.getText('release.notes.heading', $project, $version)<br>$!dateFormatter.format($version.getReleaseDate())</h1><P>
                    #foreach ($issueType in $issueTypes)
                         #if($issueType.issues.size() > 0)
                             #if ($textUtils.htmlEncode($ == "Bug")
                                #set ($FixedIssueTypeName = "Resolved Issues")
                             #elseif ($textUtils.htmlEncode($ == "Improvement")
                                #set ($FixedIssueTypeName = "Enhancements")
                                #set ($FixedIssueTypeName = $textUtils.htmlEncode($
                                 #foreach ($issue in $issueType.issues)
                                 <li style="padding-bottom:12pt;"><Strong>[<a xhref='$!appProps.getString("jira.baseurl")/browse/$issue.key'>$issue.key</a>] -
                                     $textUtils.htmlEncode($issue.summary)</Strong><BR>#getReleaseNoteComment($issue $customFieldManager)</li>

2 answers

1 accepted

0 votes
Accepted answer

Not very clean but this code works:

#macro (getVersionDate $issueTypes $versionName)
#set( $seen = "0" )
#foreach ($issueType in $issueTypes)
#if($issueType.issues.size() > 0)
#foreach ($issue in $issueType.issues)
#foreach ($vv in $issue.fixVersions)
#if($seen.equals("0") && $$versionName))
$textUtils.htmlEncode($vv.getReleaseDate().toLocaleString().replace('00:00:00', '')) #set( $seen = "1" )

<h1>#getVersionDate($issueTypes $version) $textUtils.htmlEncode($project) version $textUtils.htmlEncode($version)</h1>

Please feel free to make it better.

THANK YOU! That did exactly what I wanted!

Oops - I did have to change the '00:00:00' to '12:00:00 AM' to get rid of the time, but otherwise it did what I wanted. :)

Try dateformatter.formatDMYHMS or dateformatter.format

hope this helps


Sherry - thanks for responding! Unfortunately neither of these worked. All I got back was "$dateFormatter.format($version.getReleaseDate())" or "$dateFormatter.formatDMYHMS($version.getReleaseDate())". I also tried "$outlookDate.format($version.getReleaseDate())" with no luck. I know somebody else must have done this before...

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Jan 08, 2019 in Jira

How to Jira for designers

I’m a designer on the Jira team. For a long time, I’ve fielded questions from other designers about how they should be using Jira Software with their design team. I’ve also heard feedback from other ...

1,231 views 5 10
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you