Author: adam-guest
Date: 2008-02-14 19:37:43 +0000 (Thu, 14 Feb 2008)
New Revision: 1014
Added:
trunk/scripts/tagpending.pl
Removed:
trunk/scripts/tagpending.1
trunk/scripts/tagpending.sh
Modified:
trunk/README
trunk/debian/changelog
trunk/debian/control
trunk/scripts/Makefile
Log:
* tagpending: Rewrite in perl using Debbugs.pm
* README, debian/control: Update description of tagpending
Modified: trunk/README
===================================================================
--- trunk/README 2008-02-12 09:33:17 UTC (rev 1013)
+++ trunk/README 2008-02-14 19:37:43 UTC (rev 1014)
@@ -183,7 +183,7 @@
tags in a repository independent fashion. Used by debcommit to generate
svn tags.
-- tagpending [wget]: shell script which runs from a Debian source tree and
+- tagpending [libsoap-lite-perl]: Runs from a Debian source tree and
tags bugs that are to be closed in the latest changelog as pending.
- uscan [libcrypt-ssleay-perl, libwww-perl]: Automatically scan for and
Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog 2008-02-12 09:33:17 UTC (rev 1013)
+++ trunk/debian/changelog 2008-02-14 19:37:43 UTC (rev 1014)
@@ -2,6 +2,8 @@
* checkbashisms: Fix a false positive in the $(( test (Closes: #465364)
* Debbugs.pm: Add status()
+ * tagpending: Rewrite in perl using Debbugs.pm
+ * README, debian/control: Update description of tagpending
-- Adam D. Barratt <[EMAIL PROTECTED]> Tue, 12 Feb 2008 08:50:01 +0000
Modified: trunk/debian/control
===================================================================
--- trunk/debian/control 2008-02-12 09:33:17 UTC (rev 1013)
+++ trunk/debian/control 2008-02-14 19:37:43 UTC (rev 1014)
@@ -100,9 +100,8 @@
- rmadison: remotely query the Debian archive database about packages
[wget | curl, liburi-perl]
- svnpath: print svn repository paths [subversion]
- - tagpending: shell script which runs from a Debian source tree and tags
- bugs that are to be closed in the latest changelog as pending.
- [wget, liburi-perl]
+ - tagpending: runs from a Debian source tree and tags bugs that are to
+ be closed in the latest changelog as pending. [libsoap-lite-perl]
- uscan: scan upstream sites for new releases of packages
[libcrypt-ssleay-perl, libwww-perl]
- uupdate: integrate upstream changes into a source package [patch]
Modified: trunk/scripts/Makefile
===================================================================
--- trunk/scripts/Makefile 2008-02-12 09:33:17 UTC (rev 1013)
+++ trunk/scripts/Makefile 2008-02-14 19:37:43 UTC (rev 1014)
@@ -15,7 +15,7 @@
GEN_MAN1S = bts.1 chdist.1 debcheckout.1 debcommit.1 deb-reversion.1 \
desktop2menu.1 dget.1 licensecheck.1 mass-bug.1 rmadison.1 \
- svnpath.1 build-rdeps.1
+ svnpath.1 tagpending.1 build-rdeps.1
BINDIR = /usr/bin
LIBDIR = /usr/lib/devscripts
Deleted: trunk/scripts/tagpending.1
===================================================================
--- trunk/scripts/tagpending.1 2008-02-12 09:33:17 UTC (rev 1013)
+++ trunk/scripts/tagpending.1 2008-02-14 19:37:43 UTC (rev 1014)
@@ -1,50 +0,0 @@
-.TH TAGPENDING 1 "Debian Utilities" "DEBIAN" \" -*- nroff -*-
-.SH NAME
-tagpending \- Tag all bugs not marked pending as such
-.SH SYNOPSIS
-\fBtagpending\fR [\fIoptions\fR]
-.SH DESCRIPTION
-\fBtagpending\fR looks for and parses debian/changelog and debian/control
-to find out what bugs the impending release would close, and sends mail using
-\fBmail(1)\fR to [EMAIL PROTECTED] tagging the bugs as pending. It
-queries the BTS to look up the bugs marked as pending for that package and
-excludes those from being re-tagged in the email.
-.SH OPTIONS
-.TP
-.BR \-n ", " \-\-noact
-Do not actually send an email, but print it to stdout.
-.TP
-.BR \-s ", " \-\-silent
-Don't print actions taken.
-.TP
-.BR \-v ", " \-\-verbose
-List every bug checked.
-.TP
-.BR \-f ", " \-\-force
-Do not query the BTS for already tagged or not owned bugs, that is, force all
-bugs to be tagged, even if they are already tagged or (worse still) belong to
-another source package.
-.TP
-.BR \-c ", " \-\-confirm
-For each bug tagged as pending, also tag it as confirmed.
-.TP
-.BR \-t ", " \-\-to " " \fIversion
-Use changelog information from all versions strictly later than
-\fIversion\fR (mimics dpkg-parsechangelog's -v option.)
-.TP
-.BR \-w ", " \-\-wnpp
-For each potentially not owned bug, check whether it is filed against wnpp
-and, if so, tag it. This allows e.g. ITA or ITPs to be tagged.
-.TP
-.BR \-h ", " \-\-help
-Show a brief usage message.
-.TP
-.BR \-V ", " \-\-version
-Show version and copyright information.
-.SH "SEE ALSO"
-.BR mailx (1)
-and
-.BR dpkg-parsechangelog (1)
-.SH AUTHOR
-Joshua Kwan <[EMAIL PROTECTED]>. This manpage and the associated
-programme are licensed under the terms of the GPL, version 2.
Added: trunk/scripts/tagpending.pl
===================================================================
--- trunk/scripts/tagpending.pl (rev 0)
+++ trunk/scripts/tagpending.pl 2008-02-14 19:37:43 UTC (rev 1014)
@@ -0,0 +1,336 @@
+#! /usr/bin/perl -w
+#
+# tagpending: Parse a Debian changelog for a list of bugs closed
+# and tag any that are not already pending as such.
+#
+# The original shell version of tagpending was written by Joshua Kwan
+# and is Copyright 2004 Joshua Kwan <[EMAIL PROTECTED]>
+# with changes copyright 2004-07 by their respective authors.
+#
+# This version is
+# Copyright 2008 Adam D. Barratt
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+use strict;
+use warnings;
+use Getopt::Long;
+use File::Basename;
+use lib '/usr/share/devscripts';
+use Devscripts::Debbugs;
+
+sub bugs_info;
+
+my $progname = basename($0);
+
+my ($opt_help, $opt_version, $opt_verbose, $opt_noact, $opt_silent);
+my ($opt_online, $opt_confirm, $opt_to, $opt_wnpp);
+
+# Default options
+$opt_silent = 0;
+$opt_verbose = 0;
+$opt_online = 1;
+$opt_noact = 0;
+$opt_confirm = 0;
+$opt_wnpp = 0;
+$opt_to = '';
+
+GetOptions("help|h" => \$opt_help,
+ "version" => \$opt_version,
+ "verbose|v!" => \$opt_verbose,
+ "noact|n" => \$opt_noact,
+ "silent|s" => \$opt_silent,
+ "force|f" => sub { $opt_online = 0; },
+ "confirm|c" => \$opt_confirm,
+ "to|t=s" => \$opt_to,
+ "wnpp|w" => \$opt_wnpp,
+ )
+ or die "Usage: $progname [options]\nRun $progname --help for more
details\n";
+
+$opt_to = "-v$opt_to" if $opt_to;
+
+if ($opt_help) {
+ help(); exit 0;
+} elsif ($opt_version) {
+ version(); exit 0;
+}
+
+if ($opt_verbose and $opt_silent) {
+ die "$0 error: --silent and --verbose contradict each other\n";
+}
+
+=head1 SYNOPSIS
+
+B<tagpending> [options]
+
+=head1 DESCRIPTION
+
+B<tagpending> parses debian/changelog and debian/control to determine
+which bugs would be closed if the package were uploaded. Each bug is
+then marked as pending, using B<bts>(1) if it is not already so.
+
+=head1 OPTIONS
+
+=over 4
+
+=item -n, --noact
+
+Check whether any bugs require tagging, but do not actually do so.
+
+=item -s, --silent
+
+Do not output any messages.
+
+=item -v, --verbose
+
+List each bug checked and tagged in turn.
+
+=item -f, --force
+
+Do not query the BTS, but (re)tag all bugs closed in the changelog.
+
+=item -c, --confirm
+
+Tag bugs as both confirmed and pending.
+
+=item -t, --to <version>
+
+Parse changelogs for all versions strictly greater than <version>.
+
+Equivalent to dpkg-parsechangelog's -v option.
+
+=item -w, --wnpp
+
+For each bug that does not appear to belong to the current package,
+check whether it is filed against wnpp. If so, tag it. This allows e.g.
+ITAs and ITPs closed in an upload to be tagged.
+
+=back
+
+=head1 SEE ALSO
+
+B<bts>(1) and B<dpkg-parsechangelog>(1)
+
+=cut
+
+my $source;
+my @closes;
+
+foreach my $file ("debian/control", "debian/changelog") {
+ if (! -f $file) {
+ die "$progname error: $file does not exist!\n";
+ }
+}
+
+open PARSED, "dpkg-parsechangelog $opt_to |";
+
+while (<PARSED>) {
+ if (/^Source: (.*)/) {
+ $source = $1;
+ } elsif (/^Closes: (.*)$/) {
+ @closes = split ' ', $1;
+ }
+}
+
+close PARSED;
+
+my $pending;
+my $open;
+
+if ($opt_online) {
+ $pending = Devscripts::Debbugs::select( "src:$source", "status:open",
"status:forwarded", "tag:pending" );
+ $open = Devscripts::Debbugs::select( "src:$source", "status:open",
"status:forwarded" );
+}
+
+my %bugs = map { $_ => 1} @closes;
+if ($pending) {
+ %bugs = ( %bugs, map { $_ => 1} @{$pending} );
+}
+
+my $bug;
+my $message;
+my @to_tag = ();
+my @wnpp_to_tag = ();
+
+foreach $bug (keys %bugs) {
+ print "Checking bug #$bug: " if $opt_verbose;
+
+ if (grep /^$bug$/, @{$pending}) {
+ print "already marked pending\n" if $opt_verbose;
+ } else {
+ if (grep /^$bug$/, @{$open} or not $opt_online) {
+ print "needs tag\n" if $opt_verbose;
+ push (@to_tag, $bug);
+ } else {
+ if ($opt_wnpp) {
+ my $status = Devscripts::Debbugs::status($bug);
+ if ($status->{$bug}->{package} eq 'wnpp') {
+ if (!$status->{$bug}->{tags} =~ /pending/) {
+ print "wnpp needs tag\n" if $opt_verbose;
+ push (@wnpp_to_tag, $bug);
+ } else {
+ print "wnpp already marked pending\n" if $opt_verbose;
+ }
+ } else {
+ $message = "is closed or does not belong to this package
(check bug # or force)\n";
+
+ print "Warning: #$bug " if not $opt_verbose;
+ print "$message";
+ }
+ } else {
+ $message = "is closed or does not belong to this package (check
bug # or force)\n";
+
+ print "Warning: #$bug " if not $opt_verbose;
+ print "$message";
+ }
+ }
+ }
+}
+
+if ([EMAIL PROTECTED] and [EMAIL PROTECTED]) {
+ print "$progname info: Nothing to do, exiting.\n"
+ if $opt_verbose or !$opt_silent;
+ exit 0;
+}
+
+my @sourcepkgs = ();
+if (@to_tag) {
+ open CONTROL, "debian/control";
+
+ while (<CONTROL>) {
+ if (/^(Package|Source): (.*)/) {
+ push (@sourcepkgs, $2);
+ }
+ }
+
+ close CONTROL;
+}
+
+my %packages = map { $_ => 1 } @sourcepkgs;
+my @bts_args = ("bts");
+
+if ($opt_noact) {
+ bugs_info;
+ bugs_info "wnpp" if $opt_wnpp;
+} else {
+ if (!$opt_silent) {
+ bugs_info;
+ bugs_info "wnpp" if $opt_wnpp;
+ }
+
+ if (@to_tag) {
+ push(@bts_args, "package", join " ", keys(%packages));
+
+ foreach my $bug (@to_tag) {
+ push(@bts_args, ".", "tag", $bug, "+ pending");
+ push(@bts_args, "confirmed") if $opt_confirm;
+ }
+ }
+ if (@wnpp_to_tag) {
+ push(@bts_args, ".") if scalar @bts_args > 1;
+ push(@bts_args, "package wnpp");
+ foreach my $wnpp_bug (@wnpp_to_tag) {
+ push(@bts_args, ".", "tag", $wnpp_bug, "+ pending");
+ }
+ }
+
+ system @bts_args;
+}
+
+sub bugs_info {
+ my $type = shift || '';
+ my @bugs;
+
+ if ($type eq "wnpp") {
+ if (@wnpp_to_tag) {
+ @bugs = @wnpp_to_tag;
+ } else {
+ return;
+ }
+ } else {
+ @bugs = @to_tag;
+ }
+
+ print "$progname info: ";
+
+ if ($opt_noact) {
+ print "would tag";
+ } else {
+ print "tagging";
+ }
+
+ print " these";
+ print " wnpp" if $type eq "wnpp";
+ print " bugs pending";
+ print " and confirmed" if $opt_confirm and $type ne "wnpp";
+ print ":";
+
+ foreach my $bug (@bugs) {
+ print " $bug";
+ }
+
+ print "\n";
+}
+
+sub help {
+ print <<"EOF";
+Usage: $progname [options]
+
+Valid options are:
+ --help, -h Display this message
+ --version Display version and copyright info
+ -n, --noact Only simulate what would happen during this run;
+ do not tag any bugs.
+ -s, --silent Silent mode
+ -v, --verbose Verbose mode: List bugs checked/tagged.
+ NOTE: Verbose and silent mode can't be used together.
+ -f, --force Do not query the BTS; (re-)tag all bug reports.
+ -c, --confirm Tag bugs as confirmed as well as pending
+ -t, --to <version> Use changelog information from all versions strictly
+ later than <version> (mimics dpkg-parsechangelog's
+ -v option.)
+ -w, --wnpp For each potentially not owned bug, check whether
+ it is filed against wnpp and, if so, tag it. This
+ allows e.g. ITA or ITPs to be tagged.
+
+EOF
+}
+
+sub version {
+ print <<"EOF";
+This is $progname, from the Debian devscripts package, version ###VERSION###
+Copyright 2008 by Adam D. Barratt <[EMAIL PROTECTED]>; based
+on the shell script by Joshua Kwan <[EMAIL PROTECTED]>.
+
+This program comes with ABSOLUTELY NO WARRANTY.
+You are free to redistribute this code under the terms of the
+GNU General Public License, version 2, or (at your option) any
+later version.
+EOF
+}
+
+=head1 COPYRIGHT
+
+This program is Copyright 2008 by Adam D. Barratt
+<[EMAIL PROTECTED]>.
+
+The shell script tagpending, on which this program is based, is
+Copyright 2004 by Joshua Kwan <[EMAIL PROTECTED]> with changes
+copyright 2004-7 by their respective authors.
+
+This program is licensed under the terms of the GPL, either version 2 of
+the License, or (at your option) any later version.
+
+=cut
Deleted: trunk/scripts/tagpending.sh
===================================================================
--- trunk/scripts/tagpending.sh 2008-02-12 09:33:17 UTC (rev 1013)
+++ trunk/scripts/tagpending.sh 2008-02-14 19:37:43 UTC (rev 1014)
@@ -1,260 +0,0 @@
-#! /bin/bash -e
-# tagpending by Joshua Kwan
-# Purpose: tag all bugs pending which are not so already
-#
-# Copyright 2004 Joshua Kwan <[EMAIL PROTECTED]>
-# Changes copyright 2004-07 by their respective authors.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-usage() {
- cat <<EOF
-Usage: tagpending [options]
- Options:
- -n, --noact Only simulate what would happen during this run, and
- print the message that would get sent to the BTS.
- -s, --silent Silent mode
- -v, --verbose Verbose mode: List bugs checked/tagged.
- NOTE: Verbose and silent mode can't be used together.
- -f, --force Do not query the BTS, (re-)tag all bug reports (force).
- -c, --confirm Tag bugs as confirmed as well as pending
- -t, --to <version> Use changelog information from all versions strictly
- later than <version> (mimics dpkg-parsechangelog's -v
option.)
- -w, --wnpp For each potentially not owned bug, check whether it is
filed
- against wnpp and, if so, tag it. This allows e.g. ITA
or ITPs
- to be tagged.
- -h, --help This usage screen.
- -V, --version Display the version and copyright information
-
- This script will read debian/changelog and tag all open bugs not already
- tagged pending as such. Requires wget to check against wnpp.
-EOF
-}
-
-version() {
- cat <<EOF
-This is tagpending, from the Debian devscripts package, version ###VERSION###
-This code is (C) 2004 by Joshua Kwan, all rights reserved.
-This program comes with ABSOLUTELY NO WARRANTY.
-You are free to redistribute this code under the terms of the
-GNU General Public License, version 2 or later.
-EOF
-}
-
-# Defaults
-ONLINE=1
-DRY=0
-SILENT=0
-VERBOSE=0
-CONFIRM=0
-WNPP=0
-
-BTS_BASE_URL="http://bugs.debian.org/cgi-bin/pkgreport.cgi"
-TAGS="<h3>Tags:"
-WNPP_MATCH="Package: <a
[^>]*href=\"\\(\\/cgi-bin\\/\\)\\?pkgreport.cgi?pkg=wnpp\">wnpp<\/a>;"
-
-while [ -n "$1" ]; do
- case "$1" in
- -n|--noact) DRY=1; shift ;;
- -s|--silent) SILENT=1; shift ;;
- -f|--force) ONLINE=0; shift ;;
- -V|--version) version; exit 0 ;;
- -v|--verbose) VERBOSE=1; shift ;;
- -c|--confirm) CONFIRM=1; shift ;;
- -t|--to) shift; TO="-v$1"; shift;;
- -w|--wnpp) WNPP=1; shift ;;
- --help | -h) usage; exit 0 ;;
- *)
- echo "tagpending error: unrecognized option $1" >&2
- echo
- usage
- exit 1
- ;;
- esac
-done
-
-if [ "$VERBOSE" = "1" ] && [ "$SILENT" = "1" ]; then
- echo "tagpending error: --silent and --verbose contradict each other" >&2
- echo
- usage
- exit 1
-fi
-
-if [ "$ONLINE" = "1" ] && [ "$WNPP" = "1" ] && ! command -v wget >/dev/null
2>&1; then
- echo "tagpending error: Sorry, either use the -f option or install the wget
package." >&2
- exit 1
-fi
-
-for file in debian/changelog debian/control; do
- if [ ! -f "$file" ]; then
- echo "tagpending error: $file does not exist!" >&2
- exit 1
- fi
-done
-
-parsed=$(dpkg-parsechangelog $TO)
-
-srcpkg=$(echo "$parsed" | awk '/^Source: / { print $2 }' | perl -ne 'use
URI::Escape; chomp; print uri_escape($_);')
-
-changelog_closes=$(echo "$parsed"| awk -F: '/^Closes: / { print $2 }' | \
- xargs -n1 echo)
-
-if [ "$ONLINE" = "1" ]; then
- bts_pending="$(bts select src:$srcpkg status:open status:forwarded
tag:pending)"
- bts_open="$(bts select src:$srcpkg status:open status:forwarded)"
-fi
-
-to_be_checked=$(printf '%s\n%s\n' "$changelog_closes" "$bts_pending" | sort -g
| uniq)
-
-# Now remove the ones tagged in the BTS but no longer in the changelog.
-to_be_tagged=""
-wnpp_to_be_tagged=""
-for bug in $to_be_checked; do
- if [ "$VERBOSE" = "1" ]; then
- echo -n "Checking bug #$bug: "
- fi
- if ! echo "$bts_pending" | grep -q "^${bug}$"; then
- if echo "$bts_open" | grep -q "^${bug}$" || [ "$ONLINE" = "0" ] ; then
- if [ "$VERBOSE" = "1" ]; then
- echo "needs tag"
- fi
- to_be_tagged="$to_be_tagged $bug"
- else
- if [ "$WNPP" = "1" ]; then
- wnpp_tags=$( (wget -q -O-
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=$bug; \
- echo $TAGS) | sed -ne "/$WNPP_MATCH/,/^$TAGS/ {/^$TAGS/p}" )
-
- if [ -n "$wnpp_tags" ]; then
- if ! echo "$wnpp_tags" | grep -q "pending"; then
- if [ "$VERBOSE" = "1" ]; then
- echo "wnpp needs tag"
- fi
- wnpp_to_be_tagged="$wnpp_to_be_tagged $bug"
- else
- if [ "$VERBOSE" = "1" ]; then
- echo "wnpp already marked pending"
- fi
- fi
- else
- msg="is closed or does not belong to this package (check bug no. or
force)"
- if [ "$VERBOSE" = "1" ]; then
- echo "$msg"
- else
- echo "Warning: #$bug $msg."
- fi
- fi
- else
- msg="is closed or does not belong to this package (check bug no. or
force)"
- if [ "$VERBOSE" = "1" ]; then
- echo "$msg"
- else
- echo "Warning: #$bug $msg."
- fi
- fi
- fi
- else
- if [ "$VERBOSE" = "1" ]; then
- echo "already marked pending"
- fi
- fi
-done
-
-if [ -z "$to_be_tagged" ] && [ -z "$wnpp_to_be_tagged" ]; then
- if [ "$SILENT" = 0 -o "$DRY" = 1 ]; then
- echo "tagpending info: Nothing to do, exiting."
- fi
- exit 0
-fi
-
-# Could use dh_listpackages, but no guarantee that it's installed.
-src_packages=$(awk '/Package: / { print $2 } /Source: / { print $2 }'
debian/control | sort | uniq)
-
-bugs_info() {
- if [ "$1" = "wnpp" ]; then
- bugs=$wnpp_to_be_tagged
- if [ -z "$bugs" ]; then
- return
- fi
- else
- bugs=$to_be_tagged
- fi
-
- msg="tagpending info: "
-
- if [ "$DRY" = 1 ]; then
- msg="$msg would tag"
- else
- msg="$msg tagging"
- fi
-
- msg="$msg these"
-
- if [ "$1" = "wnpp" ]; then
- msg="$msg wnpp"
- fi
-
- msg="$msg bugs pending"
-
- if [ "$CONFIRM" = 1 ] && [ "$1" != "wnpp" ]; then
- msg="$msg and confirmed"
- fi
- msg="$msg:"
-
- for bug in $bugs; do
- msg="$msg $bug"
- done
- echo $msg | fold -w 78 -s
-}
-
-if [ "$DRY" = 1 ]; then
- bugs_info
- bugs_info wnpp
-
- exit 0
-else
- if [ "$SILENT" = 0 ]; then
- bugs_info
- if [ "$WNPP" = 1 ]; then
- bugs_info wnpp
- fi
- fi
-
- if [ -n "$to_be_tagged" ]; then
- BTS_ARGS="package $src_packages"
-
- for bug in $to_be_tagged; do
- BTS_ARGS="$BTS_ARGS . tag $bug + pending"
-
- if [ "$CONFIRM" = 1 ]; then
- BTS_ARGS="$BTS_ARGS confirmed"
- fi
- done
- fi
-
- if [ -n "$wnpp_to_be_tagged" ]; then
- if [ -n "$BTS_ARGS" ]; then
- BTS_ARGS="$BTS_ARGS ."
- fi
- BTS_ARGS="$BTS_ARGS package wnpp"
-
- for bug in $wnpp_to_be_tagged; do
- BTS_ARGS="$BTS_ARGS . tag $bug + pending"
- done
- fi
-
- eval bts ${BTS_ARGS}
-fi
-
-exit 0
--
To unsubscribe, send mail to [EMAIL PROTECTED]