mirror of
https://github.com/fergalmoran/picard.git
synced 2026-03-06 13:34:05 +00:00
PICARD-1447: Generate appdata release list on build
Generates the release list in appdata XML from NEWS.txt
This commit is contained in:
@@ -93,16 +93,6 @@
|
||||
</content_rating>
|
||||
|
||||
<releases>
|
||||
<release date="2018-01-29" version="2.1.2"/>
|
||||
<release date="2018-01-29" version="2.1.1"/>
|
||||
<release date="2018-12-20" version="2.1.0"/>
|
||||
<release date="2018-09-05" version="2.0.4"/>
|
||||
<release date="2018-08-10" version="2.0.3"/>
|
||||
<release date="2018-07-30" version="2.0.2"/>
|
||||
<release date="2018-07-21" version="2.0.1"/>
|
||||
<release date="2018-07-18" version="2.0.0"/>
|
||||
<release date="2017-06-20" version="1.4.2"/>
|
||||
<release date="2017-04-15" version="1.4.1"/>
|
||||
<release date="2017-02-14" version="1.4.0"/>
|
||||
%(releases)s
|
||||
</releases>
|
||||
</component>
|
||||
|
||||
16
setup.py
16
setup.py
@@ -344,6 +344,8 @@ class picard_build_appdata(Command):
|
||||
description = 'Build appdata metadata file'
|
||||
user_options = []
|
||||
|
||||
re_release = re.compile('Version (\d+(?:\.\d+){1,2}) - (\d{4}-\d{2}-\d{2})')
|
||||
|
||||
def initialize_options(self):
|
||||
pass
|
||||
|
||||
@@ -351,12 +353,24 @@ class picard_build_appdata(Command):
|
||||
pass
|
||||
|
||||
def run(self):
|
||||
tmp_file = 'org.musicbrainz.Picard.appdata.xml.tmp'
|
||||
self.spawn([
|
||||
'msgfmt', '--xml',
|
||||
'--template=org.musicbrainz.Picard.appdata.xml.in',
|
||||
'-d', 'po/appstream',
|
||||
'-o', 'org.musicbrainz.Picard.appdata.xml',
|
||||
'-o', tmp_file,
|
||||
])
|
||||
self.add_release_list(tmp_file)
|
||||
os.unlink(tmp_file)
|
||||
|
||||
def add_release_list(self, source_file):
|
||||
with open('NEWS.txt', 'r') as newsfile:
|
||||
news = newsfile.read()
|
||||
releases = []
|
||||
for (version, date) in self.re_release.findall(news):
|
||||
releases.append('<release date="%s" version="%s"/>' % (date, version))
|
||||
args = {'releases': '\n '.join(releases)}
|
||||
generate_file(source_file, 'org.musicbrainz.Picard.appdata.xml', args)
|
||||
|
||||
|
||||
class picard_regen_appdata_pot_file(Command):
|
||||
|
||||
Reference in New Issue
Block a user