diff options
author | Andreas Boll <andreas.boll.dev@gmail.com> | 2013-04-17 18:14:44 +0200 |
---|---|---|
committer | Andreas Boll <andreas.boll.dev@gmail.com> | 2013-05-01 21:42:02 +0200 |
commit | ca79b72c00f035e2b48d554b42361829523f38ff (patch) | |
tree | 8d449ac7f14617059ee03ff96173a9193a4067c2 /bin | |
parent | f6aab27d439d9a3ddc398fdcaedc625248f4dfe0 (diff) |
mesa: Add a script to generate the list of fixed bugs
This list appears in the fixed bugs section of the release notes.
v2: Add usage examples
NOTE: This is a candidate for the stable branches.
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/bugzilla_mesa.sh | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/bin/bugzilla_mesa.sh b/bin/bugzilla_mesa.sh new file mode 100755 index 0000000000..491ca0e7c0 --- /dev/null +++ b/bin/bugzilla_mesa.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +# This script is used to generate the list of fixed bugs that +# appears in the release notes files, with HTML formatting. +# +# Note: This script could take a while until all details have +# been fetched from bugzilla. +# +# Usage examples: +# +# $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 +# $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 > bugfixes +# $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 | tee bugfixes +# $ DRYRUN=yes bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 +# $ DRYRUN=yes bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 | wc -l + + +# regex pattern: trim before url +trim_before='s/.*\(http\)/\1/' + +# regex pattern: trim after url +trim_after='s/\(show_bug.cgi?id=[0-9]*\).*/\1/' + +# regex pattern: always use https +use_https='s/http:/https:/' + +# extract fdo urls from commit log +urls=$(git log $* | grep 'bugs.freedesktop.org/show_bug' | sed -e $trim_before -e $trim_after -e $use_https | sort | uniq) + +# if DRYRUN is set to "yes", simply print the URLs and don't fetch the +# details from fdo bugzilla. +#DRYRUN=yes + +if [ "x$DRYRUN" = xyes ]; then + for i in $urls + do + echo $i + done +else + echo "<ul>" + echo "" + + for i in $urls + do + id=$(echo $i | cut -d'=' -f2) + summary=$(wget --quiet -O - $i | grep -e '<title>.*</title>' | sed -e 's/ *<title>Bug [0-9]\+ – \(.*\)<\/title>/\1/') + echo "<li><a href=\"$i\">Bug $id</a> - $summary</li>" + echo "" + done + + echo "</ul>" +fi |