1
0
Fork 0

Release notes on website

website
Mike Gerwitz 2015-05-19 01:29:37 -04:00
parent bdadd2addd
commit c5c072e8fa
No known key found for this signature in database
GPG Key ID: F22BB8158EE30EAB
5 changed files with 75 additions and 5 deletions

10
.gitignore vendored
View File

@ -1,4 +1,6 @@
node_modules
webroot
tools/compiler.jar
build/
/node_modules
/webroot
/tools/compiler.jar
/build
/.release-*.html

View File

@ -34,7 +34,7 @@ output_html := $(addprefix $(outdir)/, $(input_html))
output_images := $(addprefix $(outdir)/, $(input_images))
output_scripts := $(addprefix $(outdir)/, $(input_scripts))
.PHONY: default clean news publish
.PHONY: default clean news publish FORCE
default: $(outdir) $(output_html) $(output_images) \
$(output_scripts) $(outdir)/style.css $(outdir)/fonts
@ -54,6 +54,8 @@ $(outdir)/images/%.png: images/%.png | $(outdir)
$(outdir)/fonts: fonts
mkdir -p "$@" && cp $</*.woff "$@"
$(outdir)/download.html: .release-current.html
$(outdir)/release-notes.html: .release-all.html
$(outdir)/%.html: %.html $(header) $(footer) tools/page-parse | $(outdir)
cat $(header) \
| sed 's/\(<body\)/\1 class="$*"/' \
@ -62,6 +64,12 @@ $(outdir)/%.html: %.html $(header) $(footer) tools/page-parse | $(outdir)
| tools/page-parse \
> $@
.release-current.html: FORCE
./tools/release-notes 1 > $@
.release-all.html: FORCE
./tools/release-notes > $@
# requires git-weblog from mikegerwitz's git-supp package
news:
tools/news-fmt < NEWS \
@ -81,3 +89,5 @@ publish: | default
clean:
${RM} -r webroot doc-cp
FORCE:

View File

@ -74,3 +74,12 @@
See <a href="manual/Integration.html#Integration">Chapter 1 of the manual</a>
for more information on downloading and integrating ease.js into your own
projects.
<h3>Release Notes</h3>
Below are the release notes for the current release of GNU
ease.js. <a href="release-notes.html">Historical release notes</a> are also
available. GPG signatures for each of the releases and their respective
notes can be found in their respective tags in the <a href="source.html">Git
repository</a>.
<!--%inc .release-current.html-->

View File

@ -0,0 +1,9 @@
<p>
All historical release notes are included below in descending order,
beginning with the <a href="download.html">current release</a>. GPG
signatures for each of the releases and the corresponding notes can be
found in their respective tags in the <a href="source.html">Git
repository</a>.
</p>
<!--%inc .release-all.html-->

View File

@ -0,0 +1,40 @@
#!/bin/bash
release-tags() {
local -i limit="$1"
git tag -l '[0-9]*' \
| tac \
| { test $limit -gt 0 \
&& head -n$limit \
|| cat; }
}
tag-subject() {
local tag="${1?Missing tag}"
git tag -n1 -l "$tag" \
| sed 's/ \+/: /'
}
tag-body() {
local tag="${1?Missing tag}"
git cat-file tag "$tag" \
| awk '/^-----BEGIN PGP SIGNATURE-----$/ { exit; }
nl>=2 { print; next; }
/^$/ { nl++; }' \
| sed 's/&/\&amp\;/g
s/</\&lt\;/g;
s/>/\&gt\;/g;'
}
# optional limit
declare -i limit="$1"
for t in $( release-tags "$limit" ); do
cat <<EOF
<h4>$( tag-subject "$t" )</h4>
<pre>$( tag-body "$t" )</pre>
EOF
done