18
18
along with this program. If not, see <http://www.gnu.org/licenses/>.
23
23
def findLatest(path, valid):
24
rx = re.compile('(.*)r(\d+)(.*)')
24
rx = re.compile(r'(.*)(\d+\.\d+\.\d+\.\d+)(.*)')
30
30
mt = rx.search(name)
32
32
ls = results.get((mt.group(1), mt.group(3)), [])
33
ls.append(int(mt.group(2)))
33
ls.append(map(int, mt.group(2).split('.')))
34
34
results[(mt.group(1), mt.group(3))] = ls
38
38
for (part1, part3), versions in results.items():
40
packages.append('%sr%d%s' % (part1, versions[-1], part3))
40
packages.append('%s%s%s' % (part1, '.'.join(map(str, versions[-1])), part3))
54
54
for pkgname in findLatest(path, isSource):
55
print '<li><a href="http://www.fraca7.net/TaskCoach-packages/%s">%s</a></li>' % (pkgname, pkgname)
55
if path == '.' or path == 'all':
56
print '<li><a href="http://www.fraca7.net/TaskCoach-packages/%s">%s</a></li>' % (pkgname, pkgname)
58
print '<li><a href="http://www.fraca7.net/TaskCoach-packages/%s/%s">%s</a></li>' % (path, pkgname, pkgname)
62
65
for pkgname in findLatest(path, lambda x: not isSource(x)):
63
print '<li><a href="http://www.fraca7.net/TaskCoach-packages/%s">%s</a></li>' % (pkgname, pkgname)
66
if path == '.' or path == 'all':
67
print '<li><a href="http://www.fraca7.net/TaskCoach-packages/%s">%s</a></li>' % (pkgname, pkgname)
69
print '<li><a href="http://www.fraca7.net/TaskCoach-packages/%s/%s">%s</a></li>' % (path, pkgname, pkgname)
68
74
print 'Content-type: text/html'
71
77
print '<html><head><title>Latest Task Coach builds</title>'
72
78
print '<style type="text/css" media="screen">@import "default.css";</style>'
73
79
print '</head></body>'
74
print '<h1>From Trunk</h1>'
77
for name in os.listdir('branches'):
78
fname = os.path.join('branches', name)
79
if os.path.isdir(fname):
80
print '<h1>From %s</h1>' % name
81
if path == '.' or path == 'all':
82
print '<h1>New developments (from trunk)</h1>'
86
for name in os.listdir(path):
87
if name.startswith('Release'):
88
fname = os.path.join(path, name)
89
if os.path.isdir(fname):
90
print '<h1>Bug fixes (from %s)</h1>' % name
83
93
print '<a href="http://www.taskcoach.org/download.html>Back to Task Coach downloads</a>'
85
95
print '</body></html>'
87
97
if __name__ == '__main__':
98
if sys.argv[0].endswith('latest_features.py'):
100
elif sys.argv[0].endswith('latest_bugfixes.py'):