aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlloyd <[email protected]>2014-12-06 12:59:45 +0000
committerlloyd <[email protected]>2014-12-06 12:59:45 +0000
commitf2db2cd88fd868d282d2782de2499eb7ee0d29bc (patch)
treeb95fb79b3d92b582ae4b04a66194453f4a58f9b4
parent2f884827b2aa1b070795230ebe012f1708ded73a (diff)
Combine release notes into single text file on install
-rwxr-xr-xsrc/scripts/combine_relnotes.py45
-rwxr-xr-xsrc/scripts/install.py5
2 files changed, 38 insertions, 12 deletions
diff --git a/src/scripts/combine_relnotes.py b/src/scripts/combine_relnotes.py
index df6bd5168..1503a0676 100755
--- a/src/scripts/combine_relnotes.py
+++ b/src/scripts/combine_relnotes.py
@@ -1,11 +1,20 @@
#!/usr/bin/python
+"""
+(C) 2014 Jack Lloyd
+
+Distributed under the terms of the Botan license
+"""
+
import re
import sys
+import os
-def main(args = None):
- if args is None:
- args = sys.argv
+def combine_relnotes(relnote_dir):
+
+ relnotes = [p for p in os.listdir(relnote_dir) if p.startswith(('0', '1', '2'))]
+
+ print relnotes
re_version = re.compile('Version (\d+\.\d+\.\d+), ([0-9]{4}-[0-9]{2}-[0-9]{2})$')
re_nyr = re.compile('Version (\d+\.\d+\.\d+), Not Yet Released$')
@@ -15,8 +24,8 @@ def main(args = None):
versions = []
versions_nyr = []
- for f in args[1:]:
- contents = open(f).readlines()
+ for f in relnotes:
+ contents = open(os.path.join(relnote_dir, f)).readlines()
match = re_version.match(contents[0])
@@ -38,9 +47,11 @@ def main(args = None):
def make_label(v):
return ".. _v%s:\n" % (v.replace('.', '_'))
- print "Release Notes"
- print "========================================"
- print
+ s = ''
+
+ s += "Release Notes\n"
+ s += "========================================\n"
+ s += "\n"
date_to_version = {}
for (v,d) in version_date.items():
@@ -48,13 +59,23 @@ def main(args = None):
if len(versions_nyr) > 0:
for v in versions_nyr:
- print make_label(v)
- print version_contents[v], "\n"
+ s += make_label(v) + "\n"
+ s += version_contents[v]
+ s += "\n\n"
for d in sorted(date_to_version.keys(), reverse=True):
for v in sorted(date_to_version[d]):
- print make_label(v)
- print version_contents[v], "\n"
+ s += make_label(v) + "\n"
+ s += version_contents[v]
+ s += "\n\n"
+
+ return s
+
+def main(args = None):
+ if args is None:
+ args = sys.argv
+
+ print combine_relnotes(args[1])
if __name__ == '__main__':
sys.exit(main())
diff --git a/src/scripts/install.py b/src/scripts/install.py
index 52b197619..a6f25e955 100755
--- a/src/scripts/install.py
+++ b/src/scripts/install.py
@@ -8,6 +8,8 @@ import shutil
import string
import sys
+import combine_relnotes
+
def parse_command_line(args):
parser = optparse.OptionParser()
@@ -191,6 +193,9 @@ def main(args = None):
with open(os.path.join(botan_doc_dir, 'license.txt'), 'w+') as lic:
lic.write(license_text('doc/license.rst'))
+ with open(os.path.join(botan_doc_dir, 'news.txt'), 'w+') as news:
+ news.write(combine_relnotes.combine_relnotes('doc/relnotes'))
+
logging.info('Botan %s installation complete', build_vars['version'])
if __name__ == '__main__':