st/nine: Add ff key hash to help debug
[mesa.git] / bin / bugzilla_mesa.sh
index 491ca0e7c0b1e56f3bc1cc6e38e31863690bd8af..9095bc9deeae2f1509407b6b90ef1b2060877ba7 100755 (executable)
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
 
 # This script is used to generate the list of fixed bugs that
 # appears in the release notes files, with HTML formatting.
 # $ 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 before bug number
+trim_before='s/.*show_bug.cgi?id=\([0-9]*\).*/\1/'
 
-# regex pattern: trim after url
-trim_after='s/\(show_bug.cgi?id=[0-9]*\).*/\1/'
+# regex pattern: reconstruct the url
+use_after='s,^,https://bugs.freedesktop.org/show_bug.cgi?id=,'
 
-# regex pattern: always use https
-use_https='s/http:/https:/'
+echo "<ul>"
+echo ""
 
 # 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>"
+git log --pretty=medium $* | grep 'bugs.freedesktop.org/show_bug' | sed -e $trim_before | sort -n -u | sed -e $use_after |\
+while read url
+do
+       id=$(echo $url | cut -d'=' -f2)
+       summary=$(wget --quiet -O - $url | grep -e '<title>.*</title>' | sed -e 's/ *<title>[0-9]\+ &ndash; \(.*\)<\/title>/\1/')
+       echo "<li><a href=\"$url\">Bug $id</a> - $summary</li>"
        echo ""
+done
 
-       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]\+ &ndash; \(.*\)<\/title>/\1/')
-               echo "<li><a href=\"$i\">Bug $id</a> - $summary</li>"
-               echo ""
-       done
-
-       echo "</ul>"
-fi
+echo "</ul>"