diff options
author | David Robillard <d@drobilla.net> | 2012-04-17 00:04:32 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-04-17 00:04:32 +0000 |
commit | e520d6a8aa0f8ba9920a4d55ed4d94753c5f6e7a (patch) | |
tree | ddedb507ffa8c980b8a01f3cb62995814bd60087 | |
parent | a179bbf32788769632be1b8317f486f10b780fb6 (diff) | |
download | autowaf-e520d6a8aa0f8ba9920a4d55ed4d94753c5f6e7a.tar.gz autowaf-e520d6a8aa0f8ba9920a4d55ed4d94753c5f6e7a.tar.bz2 autowaf-e520d6a8aa0f8ba9920a4d55ed4d94753c5f6e7a.zip |
Parse all seeAlso file for generating NEWS, and be more tolerant of flaky release markup.
git-svn-id: http://svn.drobilla.net/autowaf@67 e2e4594f-ea7b-45dc-bc5a-5f5301e603aa
-rw-r--r-- | autowaf.py | 18 |
1 files changed, 14 insertions, 4 deletions
@@ -613,7 +613,11 @@ def write_news(name, in_files, out_file): Logs.warn('Error parsing data, unable to generate NEWS') return - proj = m.value(None, rdf.type, doap.Project) + proj = m.value(None, rdf.type, doap.Project) + for f in m.triples([proj, rdfs.seeAlso, None]): + if f[2].endswith('.ttl'): + m.parse(f[2], format='n3') + entries = {} for r in m.triples([proj, doap.release, None]): release = r[2] @@ -629,9 +633,15 @@ def write_news(name, in_files, out_file): entry += '\n * ' + '\n '.join( textwrap.wrap(m.value(i[2], rdfs.label, None), width=79)) - entry += '\n\n -- %s <%s> %s\n\n' % ( - m.value(blamee, foaf.name, None), - m.value(blamee, foaf.mbox, None).replace('mailto:', ''), + entry += '\n\n --' + + blamee_name = m.value(blamee, foaf.name, None) + blamee_mbox = m.value(blamee, foaf.mbox, None) + if blamee_name and blamee_mbox: + entry += ' %s <%s>' % (blamee_name, + blamee_mbox.replace('mailto:', '')) + + entry += ' %s\n\n' % ( strftime('%a, %d %b %Y %H:%M:%S +0000', strptime(date, '%Y-%m-%d'))) entries[revision] = entry |