147 lines
4.7 KiB
XML
147 lines
4.7 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<!--
|
|
* ========================================================================
|
|
*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* contributor license agreements. See the NOTICE file distributed with
|
|
* this work for additional information regarding copyright ownership.
|
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
* (the "License"); you may not use this file except in compliance with
|
|
* the License. You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*
|
|
* ========================================================================
|
|
-->
|
|
|
|
<!--
|
|
Customized version of maven annnouncement plugin style sheet to create
|
|
release notes for commons-math.
|
|
-->
|
|
|
|
<jsl:stylesheet
|
|
select="$doc"
|
|
xmlns:j="jelly:core"
|
|
xmlns:jsl="jelly:jsl"
|
|
xmlns:x="jelly:xml"
|
|
xmlns:u="jelly:util"
|
|
xmlns:maven="jelly:maven"
|
|
xmlns="dummy" trim="true">
|
|
|
|
<!-- This stylesheet expects the versionVariable to be defined before calling it -->
|
|
<jsl:template match="document/body/release">
|
|
|
|
<x:set var="version" select="string(@version)"/>
|
|
<x:set var="description" select="string(@description)"/>
|
|
<j:if test="${versionVariable.equals(version)}">
|
|
<j:whitespace trim="false">
|
|
Apache Commons Math Version ${version}
|
|
RELEASE NOTES
|
|
|
|
</j:whitespace>
|
|
|
|
<j:useBean var="formatter" class="org.apache.maven.announcement.Formatter"/>
|
|
|
|
<j:set var="header" trim="true" value="${description}"/>
|
|
|
|
<j:forEach var="line" items="${formatter.format(header,78)}">
|
|
<j:whitespace trim="false">
|
|
${line}</j:whitespace>
|
|
</j:forEach>
|
|
|
|
For more information on Apache Commons Math, see
|
|
${pom.url}
|
|
<j:whitespace trim="false">
|
|
|
|
SUMMARY OF CHANGES</j:whitespace>
|
|
|
|
<x:set var="actions" select="action[@type='add']" sort="@type" />
|
|
<j:if test="${!empty(actions)}">
|
|
<j:whitespace trim="false">
|
|
|
|
ADDITIONS
|
|
</j:whitespace>
|
|
<j:forEach var="action" items="${actions}">
|
|
<x:set var="item" select="."/><jsl:applyTemplates select="$action"/>
|
|
<j:whitespace trim="false">
|
|
</j:whitespace>
|
|
</j:forEach>
|
|
</j:if>
|
|
<x:set var="actions" select="action[@type='fix']" sort="@type" />
|
|
<j:if test="${!empty(actions)}">
|
|
<j:whitespace trim="false">
|
|
|
|
BUG FIXES
|
|
</j:whitespace>
|
|
<j:forEach var="action" items="${actions}">
|
|
<x:set var="item" select="."/><jsl:applyTemplates select="$action"/>
|
|
<j:whitespace trim="false">
|
|
</j:whitespace>
|
|
</j:forEach>
|
|
</j:if>
|
|
<x:set var="actions" select="action[@type='update']" sort="@type" />
|
|
<j:if test="${!empty(actions)}">
|
|
<j:whitespace trim="false">
|
|
|
|
UPDATES
|
|
</j:whitespace>
|
|
<j:forEach var="action" items="${actions}">
|
|
<x:set var="item" select="."/><jsl:applyTemplates select="$action"/>
|
|
<j:whitespace trim="false">
|
|
</j:whitespace>
|
|
</j:forEach>
|
|
</j:if>
|
|
<x:set var="actions" select="action[@type='remove']" sort="@type" />
|
|
<j:if test="${!empty(actions)}">
|
|
<j:whitespace trim="false">
|
|
|
|
Removed features:
|
|
</j:whitespace>
|
|
<j:forEach var="action" items="${actions}">
|
|
<x:set var="item" select="."/><jsl:applyTemplates select="$action"/>
|
|
</j:forEach>
|
|
</j:if>
|
|
</j:if>
|
|
</jsl:template>
|
|
|
|
<jsl:template match="action" trim="true">
|
|
<x:set var="body" select="string(.)"/>
|
|
<j:set var="counter" value=""/>
|
|
|
|
<j:set var="issue"><x:expr select="@issue"/></j:set>
|
|
<j:set var="dueto"><x:expr select="@due-to"/></j:set>
|
|
|
|
<j:set var="text" trim="true">
|
|
<j:if test="${issue != ''}"><j:whitespace>${issue}.</j:whitespace></j:if>
|
|
${body}
|
|
<j:if test="${dueto != ''}"><j:whitespace> Thanks to ${dueto}.</j:whitespace></j:if>
|
|
</j:set>
|
|
|
|
<j:forEach var="line" items="${formatter.format(text,75)}">
|
|
<j:choose>
|
|
<j:when test="${counter.length() == '0'}">
|
|
<j:whitespace trim="false">
|
|
* ${line}</j:whitespace>
|
|
</j:when>
|
|
<j:otherwise>
|
|
<j:whitespace trim="false">
|
|
${line}</j:whitespace>
|
|
</j:otherwise>
|
|
</j:choose>
|
|
<j:set var="counter" value="${counter}X"/>
|
|
</j:forEach>
|
|
</jsl:template>
|
|
|
|
<jsl:template match="@*"/>
|
|
|
|
<jsl:template match="text()"/>
|
|
|
|
</jsl:stylesheet>
|