Add release notes pages.

Also get rid of the defunct "chronology" link at the bottom of the
community page.  It was a very old (pre-svn/git) leftover from a time
where that was relevant for people who want to participate.
This commit is contained in:
Eli Barzilay 2011-05-27 17:24:18 -04:00
parent 62d758ca56
commit c8c7898093
2 changed files with 56 additions and 26 deletions

View File

@ -21,8 +21,9 @@
@input[type: 'submit value: "Download" onclick: "do_jump();"] @input[type: 'submit value: "Download" onclick: "do_jump();"]
@|br hr| @|br hr|
@div[align: "center"]{ @div[align: "center"]{
@(let ([links (list all-version-pages @(let ([links (list ((release-page release) "Release Notes")
@license{License} @license{License}
all-version-pages
@pre:installers{Nightly installers})]) @pre:installers{Nightly installers})])
(small (add-between links @list{ @nbsp @bull @nbsp })))} (small (add-between links @list{ @nbsp @bull @nbsp })))}
@hr @hr
@ -41,32 +42,65 @@
(equal? package (installer-package i)))) (equal? package (installer-package i))))
@li{@(installer->page i 'only-platform)})}}}) @li{@(installer->page i 'only-platform)})}}})
(define (release-page* rel)
(define ver (release-version rel))
(define title @list{v@ver Release Notes})
@page[#:file (format "v~a.html" ver) #:title title #:part-of 'download]{
@h2{Release Announcements for Version @ver}
@pre{@release-announcement[rel]}
})
(define release-page
(let ([t (make-hash)])
(lambda (rel) (hash-ref! t rel (lambda () (release-page* rel))))))
(define all-version-pages (define all-version-pages
(let () (let ()
(define (make-page rel pkg) (define (make-page rel pkg)
(define ver (release-version rel)) (define ver (release-version rel))
(define file (format "~a-v~a.html" pkg ver)) (define file (format "~a-v~a.html" pkg ver))
(define title @list{@(package->name pkg) v@ver}) (define title @list{Download @(package->name pkg) v@ver})
(define label @list{v@ver @small{(@(release-date-string rel))}}) @page[#:file file #:title title #:part-of 'download]{
(define the-page @(render-download-page rel pkg)})
@page[#:file file #:title title #:part-of 'download]{ (define style
@(render-download-page rel pkg)}) @style/inline[type: 'text/css]{
(the-page label)) .version-row {
@page[#:id 'all-versions #:title "All Versions" #:part-of 'download]{ background-color: #ffffc0;
@table[width: "90%" align: 'center cellspacing: 10 cellpadding: 10 }
rules: 'cols frame: 'box]{ .version-row:hover {
background-color: #e0e0a0;
}
.version-row a {
text-decoration: none;
}
.version-row a:hover {
background-color: #eeee22;
}})
@page[#:id 'all-versions #:title "All Versions" #:part-of 'download
#:extra-headers style]{
@table[align: 'center cellspacing: 0 cellpadding: 4 frame: 'box
rules: 'groups]{
@thead{ @thead{
@tr[style: "border-bottom: 1px solid;"]{ @tr{@td{@nbsp @strong{Version & Release Notes}}
@(map (lambda (p) @(map (lambda (p) @th[align: 'center]{@(package->name p)})
@th[width: "50%" align: 'center]{@(package->name p)}) all-packages)}}
all-packages)}} @(let ([sep (tr style: "height: 4px; margin: 0; padding: 0;"
@tbody{ (td) (map (lambda (_) (td)) all-packages))])
@(map (lambda (r) (define (cell rel pkg)
(tr (map (lambda (p) (td align: 'center (make-page r p))) @td[align: 'center]{
all-packages))) @nbsp @(make-page rel pkg){[download]} @nbsp})
all-releases) @tbody{
@tr{@td[align: 'center colspan: 2 style: "border-top: solid 1px;"]{ @sep
@pre:installers}}}}})) @(map (lambda (r)
@list{
@tr[class: 'version-row]{
@td{@|nbsp nbsp| @strong{Version @release-version[r]},
@(release-page r){@release-date-string[r]} @nbsp}
@(map (lambda (p) (cell r p)) all-packages)}
@sep})
all-releases)})
@tfoot{
@tr[class: 'version-row]{@td[align: 'center colspan: 3]{
@pre:installers}}}}}))
(define license (define license
@page[#:title "Software License" #:part-of 'download]{ @page[#:title "Software License" #:part-of 'download]{

View File

@ -16,8 +16,4 @@
@parlist[@strong{Development} @parlist[@strong{Development}
@text{@git (also available on @text{@git (also available on
@a[href: "http://github.com/plt/racket/"]{GitHub})} @a[href: "http://github.com/plt/racket/"]{GitHub})}
@text{@pre:installers and @|pre:index|.} @text{@pre:installers and @|pre:index|.}]})
;;TODO: proper reference
@a[href: "http://download.racket-lang.org/chronology/"]{
Release Announcements}
]})