Hi Birger, Merged and added to debian/changelog.
Thanks! Bye, Joost On Sat, Oct 26, 2019 at 09:21:22AM +0200, Birger Schacht wrote: > Hi, > > I have created a merge request on salsa to migrate debian-timeline to > python3 > https://salsa.debian.org/publicity-team/debian-timeline/merge_requests/16. > > The same changes are also attached as a patch. > > cheers, > Birger > >From 321cdb108f86eb9becd21cd573d294dc0f44cf07 Mon Sep 17 00:00:00 2001 > From: Birger Schacht <bir...@rantanplan.org> > Date: Thu, 24 Oct 2019 09:43:03 +0200 > Subject: [PATCH] Migrate to python3 > > This is based on lambys patch to port the tails-timeline to python3 > (see > https://salsa.debian.org/tails-team/tails-timeline/commit/053b85c715f4d752d1e5c91e2e1498e3a1eec19b) > --- > Makefile | 2 +- > build.py | 41 +++++++++++++++++++++++++---------------- > debian/control | 6 +++--- > 3 files changed, 29 insertions(+), 20 deletions(-) > > diff --git a/Makefile b/Makefile > index 104dbfd..26381b8 100644 > --- a/Makefile > +++ b/Makefile > @@ -12,7 +12,7 @@ INSMEDIA := $(addprefix ${DESTDIR}${datadir}/,$(wildcard > media/debian*) media/ti > > xml/%.xml: data/% data/%/* build.py > @mkdir -p xml > - python build.py $< >$@ > + python3 build.py $< >$@ > > media/timeline_js: /usr/share/javascript/timeline_js > ln -sf /usr/share/javascript/timeline_js $@ > diff --git a/build.py b/build.py > index ec5fd95..c20a256 100755 > --- a/build.py > +++ b/build.py > @@ -1,4 +1,4 @@ > -#!/usr/bin/env python > +#!/usr/bin/env python3 > > import os > import sys > @@ -22,16 +22,18 @@ def main(basedir): > > for filename in sorted(filenames): > if e: > - print >>sys.stderr > - print >>sys.stderr, "Reading events from %s" % filename, > - input = file(filename).read().decode('utf-8').split('\n') > + print(file=sys.stderr) > + print("Reading events from {}".format(filename), end='', > file=sys.stderr) > + with open(filename) as f: > + input = f.read().split('\n') > > e = [] > para_num = 0 > for para in deb822.Deb822.iter_paragraphs(input, use_apt_pkg=False): > if 'Title' not in para: > - title = "para %s" % para_num > - e.append("Start-Date should be before End-Date for %s" % > title) > + title = "para {}".format(para_num) > + e.append("Start-Date should be before End-Date for > {}".format( > + title)) > else: > title = para['Title'] > dates = {} > @@ -41,31 +43,35 @@ def main(basedir): > try: > dates[header] = date_parse(para[header]) > except (TypeError, ValueError): > - e.append("Invalid date header %s for %s" % (header, > title)) > + e.append("Invalid date header {} for {}".format( > + header, title, > + )) > if 'Start-Date' in para and 'End-Date' in para: > if 'Start-Date' in dates and 'End-Date' in dates: > if dates['Start-Date'] > dates['End-Date']: > - e.append("Start-Date is after End-Date for %s" % > title) > + e.append("Start-Date is after End-Date for > {}".format( > + title)) > elif 'Start-Date' in para or 'End-Date' in para: > - e.append("Missing Start-Date or End-Date for %s" % title) > + e.append("Missing Start-Date or End-Date for {}".format( > + title)) > elif 'Date' not in para: > - e.append("Missing date or date range for %s" % title) > + e.append("Missing date or date range for {}".format(title)) > events.appendChild(create_event(doc, para)) > sys.stderr.write('.') > num += 1 > para_num += 1 > - print >>sys.stderr > + print(file=sys.stderr) > if e: > for error in e: > - print >>sys.stderr, error > + print(error, file=sys.stderr) > error = True > > if error: > return 1 > - print >>sys.stderr, "Writing %s events" % num > + print("Writing {} events".format(num), file=sys.stderr) > > - print '<!-- Generated from %s/* - do not edit -->' % basedir > - print events.toprettyxml(indent=' ').encode('utf-8') > + print('<!-- Generated from {}/* - do not edit -->'.format(basedir)) > + print(events.toprettyxml(indent=' ')) > > > def create_event(doc, para): > @@ -80,10 +86,13 @@ def create_event(doc, para): > entry.setAttribute('start', para['Date']) > > if 'Source' in para: > - text = doc.createTextNode('<a href="%s" > target="debian-timeline-source">Source</a>' % para['Source']) > + text = doc.createTextNode( > + '<a href="{}" target="debian-timeline-source">Source</a>' > + .format(para['Source'])) > entry.appendChild(text) > > return entry > > + > if __name__ == '__main__': > sys.exit(main(sys.argv[1])) > diff --git a/debian/control b/debian/control > index ee15799..5b87b5e 100644 > --- a/debian/control > +++ b/debian/control > @@ -6,9 +6,9 @@ Priority: optional > Build-Depends: debhelper-compat (= 12) > Build-Depends-Indep: libjs-simile-timeline, > libjs-jquery, > - python, > - python-dateutil, > - python-debian > + python3, > + python3-dateutil, > + python3-debian > Standards-Version: 4.4.0 > Vcs-Browser: https://salsa.debian.org/publicity-team/debian-timeline > Vcs-Git: https://salsa.debian.org/publicity-team/debian-timeline.git > -- > 2.23.0 >