r10296 - /man-cgi/static-repository/bin/fetch-man-pages.sh
Author: jfs
Date: Wed Oct 30 01:56:11 2013
New Revision: 10296
URL: http://svn.debian.org/wsvn/?sc=1&rev=10296
Log:
Document BUGs/issues found while running the scripts in glinka
Modified:
man-cgi/static-repository/bin/fetch-man-pages.sh
Modified: man-cgi/static-repository/bin/fetch-man-pages.sh
URL: http://svn.debian.org/wsvn/man-cgi/static-repository/bin/fetch-man-pages.sh?rev=10296&op=diff
==============================================================================
--- man-cgi/static-repository/bin/fetch-man-pages.sh (original)
+++ man-cgi/static-repository/bin/fetch-man-pages.sh Wed Oct 30 01:56:11 2013
@@ -50,10 +50,13 @@
fi
src_pkg=`dpkg -I "$DEB" | egrep "^ Package: |^ Source: " | tail -n1 | sed "s/^.*: //"`
+# BUG: Cruft gets created in /tmp/, it would be better to use a location specific for the script (work directory)
#printf "%s\n" "INFO: Extracting manpages from [$DEB]"
TEMPDIR=`mktemp -d -t doc-XXXXXX`
trap "rm -rf $TEMPDIR 2>/dev/null || true" EXIT HUP INT QUIT TERM
+# BUG: script uses dpkg-deb -x which extracts the full package, should try to use --fsys-tarfile instead
+# (see Debian's extractor script)
dpkg-deb -x "$DEB" "$TEMPDIR"
for i in $man; do
#printf "%s\n" "INFO: Considering entry [$i]"
@@ -91,10 +94,15 @@
# Note: we send stderr to /dev/null due to the following error
# "defined(%hash) is deprecated at /usr/lib/w3m/cgi-bin/w3mman2html.cgi line 223."
BODY=`/usr/lib/w3m/cgi-bin/w3mman2html.cgi "local=$manpage" 2>/dev/null | grep -A 1000000 "^<b>" | sed -e '/<\/body>/,+100 d' -e 's:^<b>\(.*\)</b>$:</pre><h4><b>\1</b></h4><pre>:g' -e 's:<a href="file\:///[^?]*?\([^(]*\)(\([^)]*\))">:<a href="../man\2/\1.\2.html">:g'`
+ # BUG: The w3mman2html.cgi process gets stuck generating ja/man5/apt_preferences
+ # (never returns). The script should put a limit to this call and kill the process
+ # if it does not return
TITLE=`printf "%s" "$BODY" | head -n2 | tail -n1 | sed "s/<[^>]\+>//g"`
BIN_PKG=`printf "%s" "$NAME_AND_VER" | sed s/_.*$//g`
PKG_LINK="http://packages.debian.org/$DIST/$BIN_PKG"
BUG_LINK="http://bugs.debian.org/$src_pkg"
+ # FIXME: The use of includes might not be OK form some servers,
+ # as an option read the www file and include it 'as is'
printf "%s\n" "<!--#include virtual='/above1.html' -->" > "$out"
printf "%s\n" "$TITLE" >> "$out"
printf "%s\n" "<!--#include virtual='/above2.html' -->" >> "$out"
Reply to: