On Sb, 10 mai 14, 18:56:24, Holger Levsen wrote: > > Having these bugs rott in a corner of the BTS almost nobody ever looks at is > a > disservice to our users. IMO there should be 0 bugs open against > https://bugs.debian.org/cgi-bin/pkgreport.cgi?maint=
To also bring some numbers to this: $ unk-pkg count any all 1066 > Oh, and emacs bugs "only" make up 20% of those bugs... IMO all should > be dealt with, i just picked emacs as the emacs23 removal announce > mail reminded me... $ unk-pkg count any open 1043 $ unk-pkg count emacs open 255 Last time someone (Bcc'd) tried to tackle these (admittedly without contacting the maintainer in advance) the contributor was prevented from doing so and was requested to either check them against emacs24 or leave them alone. It's not hard to imagine what happened... For anyone wishing to work on these I attach the script I have been using. Kind regards, Andrei -- http://wiki.debian.org/FAQsFromDebianUser Offtopic discussions among Debian users and developers: http://lists.alioth.debian.org/mailman/listinfo/d-community-offtopic http://nuvreauspam.ro/gpg-transition.txt
#!/bin/sh -e # script to handle bugs with no maintainer # # Needs: # w3m - to retrieve the webpage with bugs # mail - to be able to close bugs # # Suggested workflow would be: # # $ unk-pkg list any all # # to get a full list of bugs and look for patterns # # unk-pkg list <pkg-pattern> open # # this should provide you with a list of bugs for a package/pattern to # decide on further action, contact maintainers, etc. # # unk-pkg list <pkg-pattern> patch # # these bugs contain patches, you might want to investigate # whether they are still valuable # # unk-pkg close <pkg-pattern> open # # assuming you already created the message body (after discussing # with maintainers) as $PKG.mail this will send a test message # # To: $bugs-done@localhost # Bcc: $USER@localhost # # add 'notest' to send a real -done message to all bugs, # Bcc: debian...@lists.debian.org BTS_URL="http://bugs.debian.org/cgi-bin/pkgreport.cgi?maint=" DUMP="$(date +%F).dump" ACTION="$1" PKG="$2" CRITERIA="$3" CRIT_RE="\[.*\]" BTS="bugs.debian.org" QA="debian...@lists.debian.org" if [ "any" = "$PKG" ]; then PKG_RE="^.*#[[:digit:]].*\[.*\].*\[.*\]" else PKG_RE="^.*#[[:digit:]].*\[.*\].*\[.*${PKG}.*\]" fi if ! [ "notest" = "$4" ]; then BTS="localhost" QA="$USER@localhost" fi do_get_dump() { if ! [ -f $DUMP ]; then w3m -dump -cols 200 "$BTS_URL" > "$DUMP" fi } do_filter() { do_get_dump grep "$PKG_RE" $DUMP | grep $COUNT $MATCH $CRIT_RE } do_get_bugs() { do_filter | sed -e 's/^.*#\([[:digit:]]*\)[[:space:]]\[.*$/\1/' } do_close () { if [ "any" = "$PKG" ]; then echo "You are trying to close too many bugs, try specific packages (or patterns) first" exit 1 fi if ! [ -f $PKG.mail ]; then echo "Missing file containing message body" exit 1 fi for BUG_NR in `do_get_bugs`; do BUGS_DONE="$BUG_NR-done@$BTS $BUGS_DONE" done cat $PKG.mail | mail -E -s "Closing old bugs filed against $PKG (or related packages)" \ -b $QA \ $BUGS_DONE } do_usage() { echo "Usage: $0 <command> <pkg-pattern> <criteria>" exit 1 } if [ x"$1" = "x" ]; then do_usage fi case "$CRITERIA" in open) CRIT_RE="\[.*|.*|.*☺.*\]" MATCH="--invert-match" ;; closed) if [ "close" = "$1" ]; then echo "You are trying to close already closed bugs..." exit 1 fi CRIT_RE="\[.*|.*|.*☺.*\]" ;; patch) if [ "close" = "$1" ]; then echo "Closing bugs with patches?" exit 1 fi CRIT_RE="\[.*|+|.*\]" ;; all) if [ "close" = "$1" ]; then echo "Closing all bugs? Some may contain patches or may be closed already." exit 1 fi ;; *) if ! [ "refresh" = "$1" ]; then echo "Criteria must be one of open, closed, patch, all." do_usage fi ;; esac case "$ACTION" in refresh) # get an updated list of bugs if [ -f $DUMP ]; then rm -f $DUMP fi do_get_dump COUNT=--count CRITERIA="all" echo "Total bugs: `do_filter`" ;; list) # list bugs filtered by some criteria do_filter ;; count) # same as list, but display count only COUNT="--count" do_filter ;; bugs) # display just the bug numbers do_get_bugs ;; close) # do mass close (mail to -done) using prepared template do_close ;; *) do_usage ;; esac
signature.asc
Description: Digital signature