OK, as promised on the call, this is how I generate the data for the JIRA and commit reviews:
Firstly the commits: replace 647124 with the revision that you want to start from in this line: svn log https://svn.apache.org/repos/asf/incubator/qpid --xml -r 647124:HEAD | tr '\n\r|' ' -' | xsltproc svnlog2wiki.xsl - | grep r | sed -e 's/^ *//' | sed -e 's/\(QPID-[0-9]*\)/\[\1 | https:\/\/issues.apache.org\/jira\/browse\/\1 \]/g' And the JIRAs (this uses a public filter I created which gets new JIRAs for the last 8 days): wget -q -O - https://issues.apache.org/jira/sr/jira.issueviews:searchrequest-xml/12312564/SearchRequest-12312564.xml?tempMax=1000 | tr '[]|' '()-' | xsltproc jiraRSS2wiki.xsl - | grep '|' | sed -e 's/^ *//' And you'll need the two attached XSL files... Hope this helps, Rob
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="text"></xsl:output> <xsl:template match="/"> || revision || committer || date || comment || || <xsl:apply-templates select="log/logentry"></xsl:apply-templates> </xsl:template> <xsl:template match="logentry"> | [r<xsl:value-of select="@revision"/> | <![CDATA[http://svn.apache.org/viewvc/?view=rev&revision=]]><xsl:value-of select="@revision"/> ] | <xsl:value-of select="author"/> | <xsl:value-of select="substring( date, 1, 10 )"/> | <xsl:value-of select="substring(msg, 1, 200)"/><xsl:if test="string-length( msg ) > 200"> ... </xsl:if> | | </xsl:template> </xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="text"></xsl:output> <xsl:template match="/"> || Key || Component(s) || Affects Version/s|| Summary || Status || Assignee || Reporter || Review Comments || <xsl:apply-templates select="rss/channel/item"></xsl:apply-templates> </xsl:template> <xsl:template match="item"> | [<xsl:value-of select="key"/> | <![CDATA[https://issues.apache.org/jira/browse/]]><xsl:value-of select="key"/> ] | <xsl:apply-templates select="component"/> | <xsl:apply-templates select="version"/> | <xsl:value-of select="title"/> | <xsl:value-of select="status"/> | <xsl:value-of select="assignee"/> | <xsl:value-of select="reporter"/> | | </xsl:template> <xsl:template match="component"> <xsl:value-of select="."/><xsl:if test="following-sibling::node()[name() = 'component']">, </xsl:if> </xsl:template> <xsl:template match="version"> <xsl:value-of select="."/><xsl:if test="following-sibling::node()[name() = 'version']">, </xsl:if> </xsl:template> </xsl:stylesheet>
