<news label="News" href="news.html"/>
<team label="Who We Are" href="team.html"/>
<status label="Status" href="status.html"/>
- <!--changes label="Changes" href="changes.html"/-->
+ <changes label="Changes" href="changes.html"/>
<!--todo label="Todo" href="todo.html"/-->
</project>
<!--
--- /dev/null
+<?xml version="1.0"?>
+<!--
+ Copyright 2002-2005 The Apache Software Foundation or its licensors,
+ as applicable.
+
+ Licensed 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.
+-->
+
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+
+ <xsl:param name="path"/>
+ <xsl:param name="versionNumber"/>
+ <xsl:include href="dotdots.xsl"/> <!-- FIXME: howto include from forrest core -->
+
+ <!-- Calculate path to site root, eg '../../' -->
+ <xsl:variable name="root">
+ <xsl:call-template name="dotdots">
+ <xsl:with-param name="path" select="$path"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <!-- FIXME (JJP): bugzilla is hardwired -->
+ <xsl:variable name="bugzilla" select="'http://issues.apache.org/bugzilla/buglist.cgi?bug_id='"/>
+
+ <xsl:param name="bugtracking-url" select="$bugzilla"/>
+
+ <xsl:template match="/">
+ <xsl:apply-templates select="//changes"/>
+ </xsl:template>
+
+ <xsl:template match="changes">
+ <document>
+ <header>
+ <title>
+ <xsl:choose>
+ <xsl:when test="@title!=''">
+ <xsl:value-of select="@title"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>History of Changes</xsl:text> <xsl:value-of select="$versionNumber"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </title>
+ </header>
+ <body>
+
+ <!--p><link href="changes.rss"><img src="{$root}images/rss.png" alt="RSS"/></link></p-->
+ <xsl:choose>
+ <xsl:when test="$versionNumber">
+ <xsl:apply-templates select="release[@version=$versionNumber]"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </body>
+ </document>
+ </xsl:template>
+
+ <xsl:key name="contextes" match="changes/release/action" use="concat(../@version, '_', @context)"/>
+
+ <xsl:template match="release">
+ <section id="version_{@version}">
+ <title>Version <xsl:value-of select="@version"/> (<xsl:value-of select="@date"/>)</title>
+ <xsl:for-each select="action[generate-id()=generate-id(key('contextes',concat(../@version, '_', @context)))]">
+ <xsl:sort select="@context"/>
+ <section>
+ <xsl:variable name="context" select="@context"/>
+ <title>
+ <xsl:choose>
+ <xsl:when test="//contexts/context[@id=$context]">
+ <xsl:value-of select="//contexts/context[@id=$context]/@title"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@context"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </title>
+ <ul>
+ <xsl:apply-templates select="key('contextes',concat(../@version, '_', @context) )">
+ <xsl:sort select="@type"/>
+ </xsl:apply-templates>
+ </ul>
+ </section>
+ </xsl:for-each>
+ </section>
+ </xsl:template>
+
+ <xsl:template match="action">
+ <li>
+ <icon src="{$root}images/{@type}.jpg" alt="{@type}"/>
+ <xsl:apply-templates/>
+ <xsl:text>(</xsl:text><xsl:value-of select="@dev"/><xsl:text>)</xsl:text>
+
+ <xsl:if test="@due-to and @due-to!=''">
+ <xsl:text> Thanks to </xsl:text>
+ <xsl:choose>
+ <xsl:when test="@due-to-email and @due-to-email!=''">
+ <link href="mailto:{@due-to-email}">
+ <xsl:value-of select="@due-to"/>
+ </link>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@due-to"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:text>.</xsl:text>
+ </xsl:if>
+
+ <xsl:if test="@fixes-bug">
+ <xsl:text> Fixes </xsl:text>
+ <xsl:call-template name="print-bugs">
+ <xsl:with-param name="buglist" select="translate(normalize-space(@fixes-bug),' ','')"/>
+ </xsl:call-template>
+ <!--
+ <xsl:choose>
+ <xsl:when test="contains(@fixes-bug, ',')">
+ <!-<link href="{$bugtracking-url}{translate(normalize-space(@fixes-bug),' ','')}">->
+ <link href="{$bugtracking-url}">
+ <xsl:text>bugs </xsl:text><xsl:value-of select="normalize-space(@fixes-bug)"/>
+ </link>
+ </xsl:when>
+ <xsl:otherwise>
+ <link href="{$bugtracking-url}{@fixes-bug}">
+ <xsl:text>bug </xsl:text><xsl:value-of select="@fixes-bug"/>
+ </link>
+ </xsl:otherwise>
+ </xsl:choose>
+ -->
+ <xsl:text>.</xsl:text>
+ </xsl:if>
+ </li>
+ </xsl:template>
+
+ <!-- Print each bug id in a comma-separated list -->
+ <xsl:template name="print-bugs">
+ <xsl:param name="buglist"/>
+ <xsl:choose>
+ <xsl:when test="contains($buglist, ',')">
+ <xsl:variable name="current" select="substring-before($buglist, ',')"/>
+ <link href="{concat($bugtracking-url, $current)}">
+ <xsl:value-of select="$current"/>
+ </link>
+ <xsl:text>, </xsl:text>
+ <xsl:call-template name="print-bugs">
+ <xsl:with-param name="buglist" select="substring-after($buglist, ',')"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <link href="{concat($bugtracking-url, $buglist)}"><xsl:value-of select="$buglist"/></link>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <xsl:template match="@*|*|text()|processing-instruction()|comment()">
+ <xsl:copy>
+ <xsl:apply-templates select="@*|*|text()|processing-instruction()|comment()"/>
+ </xsl:copy>
+ </xsl:template>
+
+</xsl:stylesheet>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright 2002-2004 The Apache Software Foundation or its licensors,
+ as applicable.
+
+ Licensed 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.
+-->
+
+<!--
+Contains the 'dotdots' template, which, given a path, will output a set of
+directory traversals to get back to the source directory. Handles both '/' and
+'\' directory separators.
+
+Examples:
+ Input Output
+ index.html ""
+ dir/index.html "../"
+ dir/subdir/index.html "../../"
+ dir//index.html "../"
+ dir/ "../"
+ dir// "../"
+ \some\windows\path "../../"
+ \some\windows\path\ "../../../"
+ \Program Files\mydir "../"
+
+Cannot handle ..'s in the path, so don't expect 'dir/subdir/../index.html' to
+work.
+
+-->
+
+<xsl:stylesheet
+ version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+ <xsl:template name="dotdots">
+ <xsl:param name="path"/>
+ <xsl:variable name="dirs" select="normalize-space(translate(concat($path, 'x'), ' /\', '_ '))"/>
+ <!-- The above does the following:
+ o Adds a trailing character to the path. This prevents us having to deal
+ with the special case of ending with '/'
+ o Translates all directory separators to ' ', and normalize spaces,
+ cunningly eliminating duplicate '//'s. We also translate any real
+ spaces into _ to preserve them.
+ -->
+ <xsl:variable name="remainder" select="substring-after($dirs, ' ')"/>
+ <xsl:if test="$remainder">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="dotdots">
+ <xsl:with-param name="path" select="translate($remainder, ' ', '/')"/>
+ <!-- Translate back to /'s because that's what the template expects. -->
+ </xsl:call-template>
+ </xsl:if>
+ </xsl:template>
+
+<!--
+ Uncomment to test.
+ Usage: saxon dotdots.xsl dotdots.xsl path='/my/test/path'
+
+ <xsl:param name="path"/>
+ <xsl:template match="/">
+ <xsl:message>Path: <xsl:value-of select="$path"/></xsl:message>
+ <xsl:call-template name="dotdots">
+ <xsl:with-param name="path" select="$path"/>
+ </xsl:call-template>
+ </xsl:template>
+ -->
+
+</xsl:stylesheet>
--- /dev/null
+<?xml version="1.0"?>
+<!--
+ Copyright 2002-2005 The Apache Software Foundation or its licensors,
+ as applicable.
+
+ Licensed 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.
+-->
+
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+
+ <xsl:param name="versionNumber"/>
+ <xsl:include href="changes2document.xsl"/>
+
+ <!-- Calculate path to site root, eg '../../' -->
+ <xsl:variable name="root">
+ <xsl:call-template name="dotdots">
+ <xsl:with-param name="path" select="$path"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <!-- FIXME (JJP): bugzilla is hardwired -->
+ <xsl:variable name="bugzilla" select="'http://issues.apache.org/bugzilla/buglist.cgi?bug_id='"/>
+
+ <xsl:param name="bugtracking-url" select="$bugzilla"/>
+
+ <xsl:template match="/">
+ <xsl:apply-templates select="//changes"/>
+ </xsl:template>
+
+ <xsl:template match="changes">
+ <document>
+ <header>
+ <title>
+ <xsl:choose>
+ <xsl:when test="@title!=''">
+ <xsl:value-of select="@title"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>Release Notes for Apache Forrest </xsl:text><xsl:value-of select="$versionNumber"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </title>
+ </header>
+ <body>
+ <xsl:if test="contains($versionNumber, 'dev')">
+ <warning>Version <xsl:value-of select="$versionNumber"/> is a development release,
+ these notes are therefore not complete, they are intended to be an indicator
+ of the major features that are so far included in this version.</warning>
+ </xsl:if>
+
+ <xsl:if test="release[@version=$versionNumber]/notes">
+ <xsl:apply-templates select="release[@version=$versionNumber]/notes"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="release[@version=$versionNumber]"/>
+ </body>
+ </document>
+ </xsl:template>
+
+ <xsl:template match="release">
+ <section id="version_{@version}">
+ <title>Major Changes in Version <xsl:value-of select="@version"/></title>
+ <note>This is not a complete list of changes, a
+ full list of changes in this release
+ <a href="changes_{$versionNumber}.html">is available</a>.</note>
+ <xsl:if test="action[@context='code' and @importance='high']">
+ <section>
+ <title>Important Changes Code Base</title>
+ <ul>
+ <xsl:apply-templates select="action[@context='code' and @importance='high']">
+ <xsl:sort select="@type"/>
+ </xsl:apply-templates>
+ </ul>
+ </section>
+ </xsl:if>
+ <xsl:if test="action[@context='docs' and @importance='high']">
+ <section>
+ <title>Important Changes Documentation</title>
+ <ul>
+ <xsl:apply-templates select="action[@context='docs' and @importance='high']">
+ <xsl:sort select="@type"/>
+ </xsl:apply-templates>
+ </ul>
+ </section>
+ </xsl:if>
+ <xsl:if test="action[@context='admin' and @importance='high']">
+ <section>
+ <title>Important Changes Project Administration</title>
+ <ul>
+ <xsl:apply-templates select="action[@context='admin' and @importance='high']">
+ <xsl:sort select="@type"/>
+ </xsl:apply-templates>
+ </ul>
+ </section>
+ </xsl:if>
+ <xsl:if test="action[@context='design' and @importance='high']">
+ <section>
+ <title>Important Changes Design</title>
+ <ul>
+ <xsl:apply-templates select="action[@context='design' and @importance='high']">
+ <xsl:sort select="@type"/>
+ </xsl:apply-templates>
+ </ul>
+ </section>
+ </xsl:if>
+ <xsl:if test="action[@context='build' and @importance='high']">
+ <section>
+ <title>Important Changes Build</title>
+ <ul>
+ <xsl:apply-templates select="action[@context='build' and @importance='high']">
+ <xsl:sort select="@type"/>
+ </xsl:apply-templates>
+ </ul>
+ </section>
+ </xsl:if>
+ </section>
+ </xsl:template>
+
+</xsl:stylesheet>
--- /dev/null
+<?xml version="1.0"?>
+<!--
+ Copyright 1999-2005 The Apache Software Foundation or its licensors,
+ as applicable.
+
+ Licensed 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.
+-->
+<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
+ <map:components>
+ </map:components>
+
+ <map:pipelines>
+ <map:pipeline>
+
+ <map:match type="regexp" pattern="^(.*?)([^/]*)changes.xml$">
+ <map:generate type="file" src="{project:status}" />
+ <map:transform src="resources/stylesheets/changes2document.xsl" >
+ <map:parameter name="bugtracking-url" value="{defaults:bugtracking-url}"/>
+ <map:parameter name="path" value="{1}{2}"/>
+ </map:transform>
+ <map:serialize type="xml-document"/>
+ </map:match>
+
+ <map:match type="regexp" pattern="^(.*?)([^/]*)changes_(.*).xml$">
+ <map:generate type="file" src="{project:status}" />
+ <map:transform src="resources/stylesheets/changes2document.xsl" >
+ <map:parameter name="bugtracking-url" value="{defaults:bugtracking-url}"/>
+ <map:parameter name="path" value="{1}{2}"/>
+ <map:parameter name="versionNumber" value="{3}"/>
+ </map:transform>
+ <map:serialize type="xml-document"/>
+ </map:match>
+
+ <map:match type="regexp" pattern="^(.*?)([^/]*)releaseNotes_(.*).xml$">
+ <map:generate type="file" src="{project:status}" />
+ <map:transform src="resources/stylesheets/releaseNotes2document.xsl">
+ <map:parameter name="versionNumber" value="{3}"/>
+ </map:transform>
+ <map:serialize type="xml-document"/>
+ </map:match>
+
+ </map:pipeline>
+ </map:pipelines>
+</map:sitemap>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<status>
+
+ <developers>
+ <!-- Maintained in src/documentation/content/xdocs/team.xml -->
+ </developers>
+
+ <todo>
+ <!-- See Bugzilla and http://wiki.apache.org/xmlgraphics-fop/FOPProjectTasks -->
+ </todo>
+
+ <changes>
+ <release version="FOP Trunk">
+ <action context="Code" dev="[dev]" type="update">
+ [your text here]
+ </action>
+ </release>
+ <release version="0.90alpha1" date="Nov 2005">
+ <action context="Code" dev="all" type="update">
+ <strong>Complete redesign of the FOP codebase</strong> in the period between Dec 2001 and Nov 2005.
+ There are just too many changes to list here. If you like to know details, run
+ <code>"svn log --verbose http://svn.apache.org/repos/asf/xmlgraphics/fop/trunk/"</code>.
+ </action>
+ </release>
+ <release version="0.20.5" date="18 July 2003">
+ <action context="Code" dev="all" type="update">
+ For the change log for the maintenance branch
+ (where FOP 0.20.5 came from), please see the "CHANGES" file in the distribution, or
+ <a href="http://svn.apache.org/viewcvs.cgi/xmlgraphics/fop/branches/fop-0_20_2-maintain/CHANGES?view=markup">the CHANGES file in the SVN repository</a>.
+ </action>
+ </release>
+ </changes>
+
+</status>