mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-22 13:26:10 +01:00
Added script to extract stub for “release notes”
- gets last two commit hashes for the version file, gets the commit logs between those versions and parses out the messages
This commit is contained in:
parent
174049532e
commit
18845dab7f
33
scripts/releaseNotes.py
Normal file
33
scripts/releaseNotes.py
Normal file
@ -0,0 +1,33 @@
|
||||
import os
|
||||
|
||||
from scriptCommon import catchPath
|
||||
from scriptCommon import runAndCapture
|
||||
|
||||
rootPath = os.path.join( catchPath, 'include/' )
|
||||
versionPath = os.path.join( rootPath, "internal/catch_version.hpp" )
|
||||
|
||||
|
||||
hashes = runAndCapture( ['git', 'log', '-2', '--format="%H"', versionPath] )
|
||||
lines = runAndCapture( ['git', 'log', hashes[1] + ".." + hashes[0], catchPath] )
|
||||
|
||||
prevLine = ""
|
||||
messages = []
|
||||
dates = []
|
||||
for line in lines:
|
||||
if line.startswith( "commit"):
|
||||
pass
|
||||
elif line.startswith( "Author:"):
|
||||
pass
|
||||
elif line.startswith( "Date:"):
|
||||
dates.append( line[5:].lstrip() )
|
||||
pass
|
||||
elif line == "" and prevLine == "":
|
||||
pass
|
||||
else:
|
||||
messages.append( line )
|
||||
prevLine = line
|
||||
|
||||
print "All changes between {0} and {1}:\n".format( dates[-1], dates[0] )
|
||||
|
||||
for line in messages:
|
||||
print line
|
@ -1,4 +1,21 @@
|
||||
import os
|
||||
import sys
|
||||
import subprocess
|
||||
|
||||
catchPath = os.path.dirname(os.path.realpath( os.path.dirname(sys.argv[0])))
|
||||
catchPath = os.path.dirname(os.path.realpath( os.path.dirname(sys.argv[0])))
|
||||
|
||||
def runAndCapture( args ):
|
||||
child = subprocess.Popen(" ".join( args ), shell=True, stdout=subprocess.PIPE)
|
||||
lines = []
|
||||
line = ""
|
||||
while True:
|
||||
out = child.stdout.read(1)
|
||||
if out == '' and child.poll() != None:
|
||||
break
|
||||
if out != '':
|
||||
if out == '\n':
|
||||
lines.append( line )
|
||||
line = ""
|
||||
else:
|
||||
line = line + out
|
||||
return lines
|
Loading…
Reference in New Issue
Block a user