summaryrefslogtreecommitdiffstats
path: root/build/bin/svnlog-to-rn.py
diff options
context:
space:
mode:
Diffstat (limited to 'build/bin/svnlog-to-rn.py')
-rw-r--r--build/bin/svnlog-to-rn.py109
1 files changed, 0 insertions, 109 deletions
diff --git a/build/bin/svnlog-to-rn.py b/build/bin/svnlog-to-rn.py
deleted file mode 100644
index 5cca3705f9..0000000000
--- a/build/bin/svnlog-to-rn.py
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/usr/bin/python
-################################################################################
-# SVN Log to ChangeLog generator for Release Notes
-#
-# Generates list of changes in HTML for ChangeLog
-# from SVN Log in XML format. You typically generate the log with
-# a command such as:
-# svn log -v -r 1234:HEAD > svnlog-1234:HEAD.log.xml
-# The command must be executed in the root directory of Toolkit project,
-# either in the trunk or in the proper branch. The converter is then
-# used as follows:
-# ./build/bin/svnlog-to-rn.py svnlog-1234:HEAD.log.xml
-#
-# The ChangeLog generator will strip away any merges that begin with
-# "Merged [...] from trunk to x.x branch."
-#
-# The generator will handle the following markup:
-# - Changeset tags such as [1234] to links to dev.itmill.com/changeset/1234
-# - Ticket references such as #1234 to links to dev.itmill.com/ticket/1234
-# - If ticket reference does not have explanation in parentheses,
-# the script will fetch the summary of the ticket from Trac and
-# add it in parentheses after the reference, such as:
-# "fixes #1234 (A nasty bug I found)".
-#
-# Requirements:
-# - Xalan
-################################################################################
-
-import sys,re,os,httplib,urllib
-
-################################################################################
-# Convert XML to XHTML
-# - The transformation includes various relevent information
-# and does basic formatting
-################################################################################
-
-# Determine path to XSLT file
-pathToScript = sys.argv[0]
-sloc = pathToScript.rfind("/")
-pathToScript = pathToScript[:sloc]
-
-if len(sys.argv) != 2:
- print "Usage: svnlog-to-rn.py <logfile.xml>"
- print "Read the svnlog-to-rn.py header for more info."
- sys.exit(1)
-
-# Open Xalan
-filename = sys.argv[1]
-fin = open(filename, "r")
-(pout,pin) = os.popen2("xalan -xsl %s/svnlog-to-rn.xsl" % (pathToScript))
-
-# Preprocessing before feeding to XSLT Processor
-lines = fin.readlines()
-out = ""
-for line in lines:
- if line.find("action") != -1:
- line = line.replace(r'>[^<]+/', '')
- #print line,
- pout.write(line)
-pout.close()
-
-################################################################################
-# Helper functions for postprocessing
-################################################################################
-
-# Retrieves summary string with HTTP
-def fetchSummary(ticketno):
- params = urllib.urlencode({'format': 'tab'})
- conn = httplib.HTTPConnection("dev.itmill.com")
- conn.request("GET", "/ticket/%d?%s" % (ticketno, params) )
- response = conn.getresponse()
- data = response.read()
- conn.close()
-
- lines = data.split("\n")
- cols = lines[1].split("\t")
- return cols[1]
-
-# Adds summary to ticket number, unless the context already has it
-def addSummary(m):
- ticketnum = int(m.group(1))
- context = m.group(2)
- if re.match(" *\(", context):
- # The context already has ticket summary
- return "#%d%s" % (ticketnum, context)
-
- summary = fetchSummary(ticketnum)
-
- return "#%s (<i>%s</i>) %s" % (ticketnum, summary, context)
-
-################################################################################
-# Postprocessing for XSLT output
-################################################################################
-
-lines = pin.readlines()
-for line in lines:
- # Add ticket summary after ticket number, if missing
- line = re.sub(r'#([0-9]+)(.*)', addSummary, line)
-
- # Change ticket numbers to references to tickets
- line = re.sub(r'#([0-9]+)', '#<a href="http://dev.itmill.com/ticket/\\1">\\1</a>', line)
-
- # Change changeset numbers to references to changesets
- #line = re.sub(r'\[([0-9]+)\]', '[<a href="http://dev.itmill.com/changeset/\\1">\\1</a>]', line)
-
- # Remove prefix about merging
- line = re.sub(r'Merged.+from trunk to [0-9]+.[0-9]+ branch: ', '', line)
-
- print line,