Fossil SCM

Updates to the website download page generator script.

drh 2010-03-06 19:21 trunk
Commit 10989b5c427ce121d404574c37e4d78f74a046c3

Binary file

Binary file

+52 -44
--- www/mkdownload.tcl
+++ www/mkdownload.tcl
@@ -27,54 +27,62 @@
2727
The historical source code is also available in the
2828
<a href="/fossil/doc/tip/www/selfhost.wiki">self-hosting
2929
Fossil repositories</a>.
3030
</p>
3131
32
-<table cellpadding="5">
33
-}
34
-
35
-proc Product {pattern desc} {
36
- set flist [glob -nocomplain download/$pattern]
37
- foreach file [lsort -dict $flist] {
38
- set file [file tail $file]
39
- if {![regexp -- {-([0-9]+)\.} $file all version]} continue
40
- set mtime [file mtime download/$file]
41
- set date [clock format $mtime -format {%Y-%m-%d %H:%M:%S UTC} -gmt 1]
42
- set size [file size download/$file]
43
- set units bytes
44
- if {$size>1024*1024} {
45
- set size [format %.2f [expr {$size/(1024.0*1024.0)}]]
46
- set units MiB
47
- } elseif {$size>1024} {
48
- set size [format %.2f [expr {$size/(1024.0)}]]
49
- set units KiB
50
- }
51
- puts "<tr><td width=\"10\"></td>"
52
- puts "<td valign=\"top\" align=\"right\">"
53
- puts "<a href=\"download/$file\">$file</a></td>"
54
- puts "<td width=\"5\"></td>"
55
- regsub -all VERSION $desc $version d2
56
- puts "<td valign=\"top\">[string trim $d2].<br>Size: $size $units.<br>"
57
- puts "Created: $date</td></tr>"
58
- }
59
-}
60
-
61
-Product fossil-linux-x86-*.zip {
62
- Prebuilt fossil binary version [VERSION] for Linux on x86
63
-}
64
-Product fossil-linux-amd64-*.zip {
65
- Prebuilt fossil binary version [VERSION] for Linux on amd64
66
-}
67
-Product fossil-macosx-x86-*.zip {
68
- Prebuilt fossil binary version [VERSION] for MacOSX on x86
69
-}
70
-Product fossil-w32-*.zip {
71
- Prebuilt fossil binary version [VERSION] for windows
72
-}
73
-Product fossil-src-*.tar.gz {
74
- Source code tarball for fossil version [VERSION]
75
-}
32
+<table cellpadding="10">
33
+}
34
+
35
+# Find all all unique timestamps.
36
+#
37
+foreach file [glob -nocomplain download/fossil-*.zip] {
38
+ if {[regexp {(\d+).zip$} $file all datetime]
39
+ && [string length $datetime]==14} {
40
+ set adate($datetime) 1
41
+ }
42
+}
43
+
44
+# Do all dates from newest to oldest
45
+#
46
+foreach datetime [lsort -decr [array names adate]] {
47
+ puts "<tr><td colspan=7><hr></td></tr>"
48
+ set dt [string range $datetime 0 3]-[string range $datetime 4 5]-
49
+ append dt "[string range $datetime 6 7] "
50
+ append dt "[string range $datetime 8 9]:[string range $datetime 10 11]:"
51
+ append dt "[string range $datetime 12 13]"
52
+ set link [string map {{ } +} $dt]
53
+ set hr http://www.fossil-scm.org/fossil/timeline?c=$link&y=ci
54
+ puts "<tr><td>Fossil snapshot as of <a href=\"$hr\">$dt</a><td width=30>"
55
+
56
+ foreach {prefix suffix img desc} {
57
+ fossil-linux-x86 zip linux.gif {Linux x86}
58
+ fossil-linux-amd64 zip linux64.gif {Linux x86_64}
59
+ fossil-macosx-x86 zip mac.gif {Mac 10.5 x86}
60
+ fossil-w32 zip win32.gif {Windows}
61
+ fossil-src tar.gz src.gif {Source Tarball}
62
+ } {
63
+ set filename download/$prefix-$datetime.$suffix
64
+ if {[file exists $filename]} {
65
+ set size [file size $filename]
66
+ set units bytes
67
+ if {$size>1024*1024} {
68
+ set size [format %.2f [expr {$size/(1024.0*1024.0)}]]
69
+ set units MiB
70
+ } elseif {$size>1024} {
71
+ set size [format %.2f [expr {$size/(1024.0)}]]
72
+ set units KiB
73
+ }
74
+ puts "<td align=center valign=bottom><a href=\"$filename\">"
75
+ puts "<img src=\"build-icons/$img\" border=0><br>$desc</a><br>"
76
+ puts "$size $units</td>"
77
+ } else {
78
+ puts "<td>&nbsp;</td>"
79
+ }
80
+ }
81
+ puts "</tr>"
82
+}
83
+puts "<tr><td colspan=7><hr></td></tr>"
7684
7785
puts {</table>
7886
</body>
7987
</html>
8088
}
8189
--- www/mkdownload.tcl
+++ www/mkdownload.tcl
@@ -27,54 +27,62 @@
27 The historical source code is also available in the
28 <a href="/fossil/doc/tip/www/selfhost.wiki">self-hosting
29 Fossil repositories</a>.
30 </p>
31
32 <table cellpadding="5">
33 }
34
35 proc Product {pattern desc} {
36 set flist [glob -nocomplain download/$pattern]
37 foreach file [lsort -dict $flist] {
38 set file [file tail $file]
39 if {![regexp -- {-([0-9]+)\.} $file all version]} continue
40 set mtime [file mtime download/$file]
41 set date [clock format $mtime -format {%Y-%m-%d %H:%M:%S UTC} -gmt 1]
42 set size [file size download/$file]
43 set units bytes
44 if {$size>1024*1024} {
45 set size [format %.2f [expr {$size/(1024.0*1024.0)}]]
46 set units MiB
47 } elseif {$size>1024} {
48 set size [format %.2f [expr {$size/(1024.0)}]]
49 set units KiB
50 }
51 puts "<tr><td width=\"10\"></td>"
52 puts "<td valign=\"top\" align=\"right\">"
53 puts "<a href=\"download/$file\">$file</a></td>"
54 puts "<td width=\"5\"></td>"
55 regsub -all VERSION $desc $version d2
56 puts "<td valign=\"top\">[string trim $d2].<br>Size: $size $units.<br>"
57 puts "Created: $date</td></tr>"
58 }
59 }
60
61 Product fossil-linux-x86-*.zip {
62 Prebuilt fossil binary version [VERSION] for Linux on x86
63 }
64 Product fossil-linux-amd64-*.zip {
65 Prebuilt fossil binary version [VERSION] for Linux on amd64
66 }
67 Product fossil-macosx-x86-*.zip {
68 Prebuilt fossil binary version [VERSION] for MacOSX on x86
69 }
70 Product fossil-w32-*.zip {
71 Prebuilt fossil binary version [VERSION] for windows
72 }
73 Product fossil-src-*.tar.gz {
74 Source code tarball for fossil version [VERSION]
75 }
 
 
 
 
 
 
 
 
76
77 puts {</table>
78 </body>
79 </html>
80 }
81
--- www/mkdownload.tcl
+++ www/mkdownload.tcl
@@ -27,54 +27,62 @@
27 The historical source code is also available in the
28 <a href="/fossil/doc/tip/www/selfhost.wiki">self-hosting
29 Fossil repositories</a>.
30 </p>
31
32 <table cellpadding="10">
33 }
34
35 # Find all all unique timestamps.
36 #
37 foreach file [glob -nocomplain download/fossil-*.zip] {
38 if {[regexp {(\d+).zip$} $file all datetime]
39 && [string length $datetime]==14} {
40 set adate($datetime) 1
41 }
42 }
43
44 # Do all dates from newest to oldest
45 #
46 foreach datetime [lsort -decr [array names adate]] {
47 puts "<tr><td colspan=7><hr></td></tr>"
48 set dt [string range $datetime 0 3]-[string range $datetime 4 5]-
49 append dt "[string range $datetime 6 7] "
50 append dt "[string range $datetime 8 9]:[string range $datetime 10 11]:"
51 append dt "[string range $datetime 12 13]"
52 set link [string map {{ } +} $dt]
53 set hr http://www.fossil-scm.org/fossil/timeline?c=$link&y=ci
54 puts "<tr><td>Fossil snapshot as of <a href=\"$hr\">$dt</a><td width=30>"
55
56 foreach {prefix suffix img desc} {
57 fossil-linux-x86 zip linux.gif {Linux x86}
58 fossil-linux-amd64 zip linux64.gif {Linux x86_64}
59 fossil-macosx-x86 zip mac.gif {Mac 10.5 x86}
60 fossil-w32 zip win32.gif {Windows}
61 fossil-src tar.gz src.gif {Source Tarball}
62 } {
63 set filename download/$prefix-$datetime.$suffix
64 if {[file exists $filename]} {
65 set size [file size $filename]
66 set units bytes
67 if {$size>1024*1024} {
68 set size [format %.2f [expr {$size/(1024.0*1024.0)}]]
69 set units MiB
70 } elseif {$size>1024} {
71 set size [format %.2f [expr {$size/(1024.0)}]]
72 set units KiB
73 }
74 puts "<td align=center valign=bottom><a href=\"$filename\">"
75 puts "<img src=\"build-icons/$img\" border=0><br>$desc</a><br>"
76 puts "$size $units</td>"
77 } else {
78 puts "<td>&nbsp;</td>"
79 }
80 }
81 puts "</tr>"
82 }
83 puts "<tr><td colspan=7><hr></td></tr>"
84
85 puts {</table>
86 </body>
87 </html>
88 }
89

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button