mirror of
https://github.com/python/cpython
synced 2024-09-16 02:49:57 +00:00
93f18f6f77
that row; the row is commented out in that case (this makes it easier to modify the table after generation)
86 lines
2.3 KiB
Python
Executable file
86 lines
2.3 KiB
Python
Executable file
#! /usr/bin/env python
|
|
#
|
|
# Simple script to create the table that lists the packages available
|
|
# for download. This expects the downloadable files and the Makefile
|
|
# to be in the current directory.
|
|
#
|
|
# The output of this script can be pasted directly into the download
|
|
# page for the documentation.
|
|
|
|
import os
|
|
import sys
|
|
|
|
from os.path import isfile
|
|
|
|
|
|
PKG_TYPES = [
|
|
# human name, filename prefix
|
|
("HTML", "html"),
|
|
("PDF (US-Letter)", "pdf-letter"),
|
|
("PDF (A4)", "pdf-a4"),
|
|
("PostScript (US-Letter)", "postscript-letter"),
|
|
("PostScript (A4)", "postscript-a4"),
|
|
("GNU info", "info"),
|
|
("iSilo", "isilo"),
|
|
("LaTeX", "latex"),
|
|
]
|
|
|
|
getversioninfo = os.path.join(os.path.dirname(__file__), "getversioninfo")
|
|
fp = os.popen('"%s" "%s"' % (sys.executable, getversioninfo), "r")
|
|
release = fp.readline().strip()
|
|
fp.close()
|
|
|
|
print '''\
|
|
<table border="1" cellpadding="3" align="center">
|
|
<thead>
|
|
<tr bgcolor="#99ccff"><th rowspan="2">Content</th>
|
|
<th colspan="3">Format</th></tr>
|
|
<tr bgcolor="#99ccff"><th>ZIP</th><th>GZip</th><th>BZip2</th></tr>
|
|
</thead>
|
|
<tbody>'''
|
|
|
|
# formatted using FILE_TEMPLATE % (release, prefix, release, extension)
|
|
FILE_TEMPLATE = '''\
|
|
<td><a href="../../ftp/python/doc/%s/%s-%s%s"
|
|
>%dK</a></td>'''
|
|
|
|
NO_FILE_TEMPLATE = '''\
|
|
<td> </td>'''
|
|
|
|
def get_size(prefix, ext):
|
|
fn = "%s-%s%s" % (prefix, release, ext)
|
|
return int(round(os.path.getsize(fn) / 1024.0))
|
|
|
|
def get_file_cell(prefix, ext, have):
|
|
if have:
|
|
kb = get_size(prefix, ext)
|
|
return FILE_TEMPLATE % (release, prefix, release, ext, kb)
|
|
else:
|
|
return NO_FILE_TEMPLATE
|
|
|
|
for name, prefix in PKG_TYPES:
|
|
zip_fn = "%s-%s.zip" % (prefix, release)
|
|
tgz_fn = "%s-%s.tgz" % (prefix, release)
|
|
bz2_fn = "%s-%s.tar.bz2" % (prefix, release)
|
|
|
|
have_zip = isfile(zip_fn)
|
|
have_tgz = isfile(tgz_fn)
|
|
have_bz2 = isfile(bz2_fn)
|
|
|
|
have_some = have_zip or have_tgz or have_bz2
|
|
|
|
if not have_some:
|
|
print " <!--"
|
|
print " <tr><td>%s</td>" % name
|
|
print get_file_cell(prefix, ".zip", have_zip)
|
|
print get_file_cell(prefix, ".tgz", have_tgz)
|
|
print get_file_cell(prefix, ".tar.bz2", have_bz2)
|
|
print " </tr>"
|
|
if not have_some:
|
|
print " -->"
|
|
|
|
print '''\
|
|
</tbody>
|
|
</table>
|
|
'''
|